# RationalFunction R¶

Utilities that provide the same top-level manipulations on fractions than on polynomials.

coerce: R -> Fraction Polynomial R
coerce(r) returns r viewed as a rational function over R.
eval: (Fraction Polynomial R, Equation Fraction Polynomial R) -> Fraction Polynomial R
eval(f, v = g) returns f with v replaced by g. Error: if v is not a symbol.
eval: (Fraction Polynomial R, List Equation Fraction Polynomial R) -> Fraction Polynomial R
eval(f, [v1 = g1, ..., vn = gn]) returns f with each vi replaced by gi in parallel, i.e. vi's appearing inside the gi's are not replaced. Error: if any vi is not a symbol.
eval: (Fraction Polynomial R, List Symbol, List Fraction Polynomial R) -> Fraction Polynomial R
eval(f, [v1, ..., vn], [g1, ..., gn]) returns f with each vi replaced by gi in parallel, i.e. vi's appearing inside the gi's are not replaced.
eval: (Fraction Polynomial R, Symbol, Fraction Polynomial R) -> Fraction Polynomial R
eval(f, v, g) returns f with v replaced by g.
mainVariable: Fraction Polynomial R -> Union(Symbol, failed)
mainVariable(f) returns the highest variable appearing in the numerator or the denominator of f, “failed” if f has no variables.
multivariate: (Fraction SparseUnivariatePolynomial Fraction Polynomial R, Symbol) -> Fraction Polynomial R
multivariate(f, v) applies both the numerator and denominator of f to v.
univariate: (Fraction Polynomial R, Symbol) -> Fraction SparseUnivariatePolynomial Fraction Polynomial R
univariate(f, v) returns f viewed as a univariate rational function in v.
variables: Fraction Polynomial R -> List Symbol
variables(f) returns the list of variables appearing in the numerator or the denominator of f.