|  | Basic Polynomial Algebra Subprograms (BPAS)
    v. 1.791
    | 
A field of fractions templated by an arbitrary BPASGCDDomain. More...
#include <Fraction.hpp>
 Full inheritance diagram for Fraction< Domain >:
 Full inheritance diagram for Fraction< Domain >:| Public Member Functions | |
| Fraction () | |
| Construct the zero fraction function.  More... | |
| Fraction (const Fraction< Domain > &b) | |
| Copy constructor.  More... | |
| Fraction (Domain a, Domain b) | |
| constructor with two parameter  More... | |
| ~Fraction () | |
| Deconstructor for fraction.  More... | |
| void | setNumerator (const Domain &b) | 
| void | setDenominator (const Domain &b) | 
| void | set (const Domain &a, const Domain &b) | 
| Domain | numerator () const | 
| Get the fraction's numerator.  More... | |
| Domain | denominator () const | 
| Get the fraction's denominator.  More... | |
| bool | operator!= (const Fraction< Domain > &b) const | 
| Inequality test,.  More... | |
| bool | operator== (const Fraction< Domain > &b) const | 
| Equality test,.  More... | |
| Fraction< Domain > | operator+ (const Fraction< Domain > &b) const | 
| Addition. | |
| Fraction< Domain > & | operator+= (const Fraction< Domain > &b) | 
| Addition assignment. | |
| Fraction< Domain > | operator- (const Fraction< Domain > &b) const | 
| Subtraction. | |
| Fraction< Domain > & | operator-= (const Fraction< Domain > &b) | 
| Subtraction assignment. | |
| Fraction< Domain > | operator* (const Fraction< Domain > &b) const | 
| Multiplication. | |
| Fraction< Domain > & | operator*= (const Fraction< Domain > &b) | 
| Multiplication assignment. | |
| Fraction< Domain > | operator/ (const Fraction< Domain > &b) const | 
| Exact division.  More... | |
| Fraction< Domain > & | operator/= (const Fraction< Domain > &b) | 
| Exact division assignment.  More... | |
| Fraction< Domain > | operator- () const | 
| Negation. | |
| Fraction< Domain > | operator^ (long long int e) const | 
| Overload operator ^ replace xor operation by exponentiation.  More... | |
| Fraction< Domain > & | operator^= (long long int e) | 
| Overload operator ^= replace xor operation by exponentiation.  More... | |
| Fraction< Domain > | inverse () const | 
| Get the inverse of *this.  More... | |
| bool | isZero () const | 
| Determine if *this ring element is zero, that is the additive identity.  More... | |
| void | zero () | 
| Make *this ring element zero. | |
| bool | isOne () const | 
| Determine if *this ring element is one, that is the multiplication identity.  More... | |
| void | one () | 
| Make *this ring element one. | |
| bool | isNegativeOne () const | 
| void | negativeOne () | 
| int | isConstant () const | 
| Fraction< Domain > | unitCanonical (Fraction< Domain > *u=NULL, Fraction< Domain > *v=NULL) const | 
| Obtain the unit normal (a.k.a canonical associate) of an element.  More... | |
| Fraction< Domain > & | operator= (const Fraction< Domain > &b) | 
| Overload operator =.  More... | |
| void | print (std::ostream &ostream) const | 
| Print the Ring element.  More... | |
| Fraction< Domain > | quotient (const Fraction< Domain > &b) const | 
| Get the quotient of *this and b.  More... | |
| Fraction< Domain > | remainder (const Fraction< Domain > &b) const | 
| Get the remainder of *this and b.  More... | |
| Fraction< Domain > | operator% (const Fraction< Domain > &b) const | 
| Get the remainder of *this and b;.  More... | |
| Fraction< Domain > & | operator%= (const Fraction< Domain > &b) | 
| Assign *this to be the remainder of *this and b.  More... | |
| void | canonicalize () | 
| Canonicalize this fraction, reducing terms as needed. | |
| void | differentiate () | 
| void | normalize () | 
| ExpressionTree | convertToExpressionTree () const | 
| Convert this to an expression tree.  More... | |
| Fraction< Domain > | gcd (const Fraction< Domain > &b) const | 
| Get GCD of *this and other.  More... | |
| Factors< Fraction< Domain > > | squareFree () const | 
| Compute squarefree factorization of *this.  More... | |
| Integer | euclideanSize () const | 
| Get the euclidean size of *this. | |
| Fraction< Domain > | euclideanDivision (const Fraction< Domain > &b, Fraction< Domain > *q=NULL) const | 
| Perform the eucldiean division of *this and b.  More... | |
| Fraction< Domain > | extendedEuclidean (const Fraction< Domain > &b, Fraction< Domain > *s=NULL, Fraction< Domain > *t=NULL) const | 
| Perform the extended euclidean division on *this and b.  More... | |
A field of fractions templated by an arbitrary BPASGCDDomain.
Construct the zero fraction function.
Copy constructor.
| b | A rational function | 
constructor with two parameter
| a | the numerator | 
| b | the denominator | 
Deconstructor for fraction.
| 
 | inlinevirtual | 
Convert this to an expression tree.
returns an expression tree describing *this.
Implements ExpressionTreeConvert.
| 
 | virtual | 
Get the fraction's denominator.
Implements BPASFieldOfFractions< Domain, Fraction< Domain > >.
| 
 | inlinevirtual | 
Perform the eucldiean division of *this and b.
Returns the remainder. If q is not NULL, then returns the quotient in q.
| b | the divisor. | |
| [out] | q | a pointer to store the quotient in. | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | inlinevirtual | 
Perform the extended euclidean division on *this and b.
Returns the GCD. If s and t are not NULL, returns the bezout coefficients in them.
| b | the divisor. | |
| [out] | s | the bezout coefficient of this. | 
| [out] | t | the bezout coefficient of b. | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | inlinevirtual | 
Get GCD of *this and other.
| other | the other element to get a gcd with. | 
Implements BPASGCDDomain< Fraction< Domain > >.
| 
 | virtual | 
Determine if *this ring element is one, that is the multiplication identity.
returns true iff *this is one.
Implements BPASRing< Fraction< Domain > >.
| 
 | virtual | 
Determine if *this ring element is zero, that is the additive identity.
returns true iff *this is zero.
Implements BPASRing< Fraction< Domain > >.
| 
 | virtual | 
Get the fraction's numerator.
Implements BPASFieldOfFractions< Domain, Fraction< Domain > >.
| 
 | virtual | 
Get the remainder of *this and b;.
| b | the divisor | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | virtual | 
Assign *this to be the remainder of *this and b.
| b | the divisor | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | virtual | 
Exact division.
| d | the divisor. | 
Implements BPASIntegralDomain< Fraction< Domain > >.
| 
 | virtual | 
Exact division assignment.
| d | the divisor. | 
Implements BPASIntegralDomain< Fraction< Domain > >.
| 
 | virtual | 
Overload operator ^ replace xor operation by exponentiation.
| e | The exponentiation, e > 0 | 
Implements BPASRing< Fraction< Domain > >.
Overload operator ^= replace xor operation by exponentiation.
| e | The exponentiation, e > 0 | 
Implements BPASRing< Fraction< Domain > >.
| 
 | virtual | 
Print the Ring element.
Derived classes may override this to get custom printing that may be more expressive (and prettier) than expression tree printing.
Reimplemented from BPASRing< Fraction< Domain > >.
| 
 | virtual | 
Get the quotient of *this and b.
| b | the divisor | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | virtual | 
Get the remainder of *this and b.
| b | the divisor | 
Implements BPASEuclideanDomain< Fraction< Domain > >.
| 
 | inlinevirtual | 
Compute squarefree factorization of *this.
Implements BPASGCDDomain< Fraction< Domain > >.
| 
 | virtual | 
Obtain the unit normal (a.k.a canonical associate) of an element.
If either parameters u, v, are non-NULL then the units are returned such that b = ua, v = u^-1. Where b is the unit normal of a, and is the returned value.
Implements BPASRing< Fraction< Domain > >.
 1.8.13
 1.8.13