The field structure of rational functions #
Main definitions #
Working with rational functions as polynomials:
RatFunc.instFieldprovides a field structure You can useIsFractionRingAPI to treatRatFuncas the field of fractions of polynomials:
algebraMap K[X] (RatFunc K)maps polynomials to rational functionsIsFractionRing.algEquivmaps other fields of fractions ofK[X]toRatFunc K.
In particular:
FractionRing.algEquiv K[X] (RatFunc K)maps the generic field of fraction construction toRatFunc K. Combine this withAlgEquiv.restrictScalarsto change theFractionRing K[X] ≃ₐ[K[X]] RatFunc KtoFractionRing K[X] ≃ₐ[K] RatFunc K.
Working with rational functions as fractions:
RatFunc.numandRatFunc.denomgive the numerator and denominator. These values are chosen to be coprime and such thatRatFunc.denomis monic.
Lifting homomorphisms of polynomials to other types, by mapping and dividing, as long as the homomorphism retains the non-zero-divisor property:
RatFunc.liftMonoidWithZeroHomlifts aK[X] →*₀ G₀to aRatFunc K →*₀ G₀, where[CommRing K] [CommGroupWithZero G₀]RatFunc.liftRingHomlifts aK[X] →+* Lto aRatFunc K →+* L, where[CommRing K] [Field L]RatFunc.liftAlgHomlifts aK[X] →ₐ[S] Lto aRatFunc K →ₐ[S] L, where[CommRing K] [Field L] [CommSemiring S] [Algebra S K[X]] [Algebra S L]This is satisfied by injective homs.
We also have lifting homomorphisms of polynomials to other polynomials, with the same condition on retaining the non-zero-divisor property across the map:
RatFunc.mapliftsK[X] →* R[X]when[CommRing K] [CommRing R]RatFunc.mapRingHomliftsK[X] →+* R[X]when[CommRing K] [CommRing R]RatFunc.mapAlgHomliftsK[X] →ₐ[S] R[X]when[CommRing K] [IsDomain K] [CommRing R] [IsDomain R]
The zero rational function.
Equations
Instances For
The multiplicative unit of rational functions.
Equations
Instances For
Scalar multiplication of rational functions.
Equations
Instances For
Equations
RatFunc K is isomorphic to the field of fractions of K[X], as rings.
This is an auxiliary definition; simp-normal form is IsLocalization.algEquiv.
Equations
Instances For
RatFunc K is a commutative monoid.
This is an intermediate step on the way to the full instance RatFunc.instCommRing.
Equations
Instances For
RatFunc K is an additive commutative group.
This is an intermediate step on the way to the full instance RatFunc.instCommRing.
Equations
Instances For
Lift a monoid homomorphism that maps polynomials φ : R[X] →* S[X]
to a RatFunc R →* RatFunc S,
on the condition that φ maps non zero divisors to non zero divisors,
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
Lift a ring homomorphism that maps polynomials φ : R[X] →+* S[X]
to a RatFunc R →+* RatFunc S,
on the condition that φ maps non zero divisors to non zero divisors,
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
Lift a monoid with zero homomorphism R[X] →*₀ G₀ to a RatFunc R →*₀ G₀
on the condition that φ maps non zero divisors to non zero divisors,
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
Lift an injective ring homomorphism R[X] →+* L to a RatFunc R →+* L
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
Equations
RatFunc as field of fractions of Polynomial #
Equations
The coercion from polynomials to rational functions, implemented as the algebra map from a domain to its field of fractions
Equations
Instances For
Equations
Lift an algebra homomorphism that maps polynomials φ : K[X] →ₐ[S] R[X]
to a RatFunc K →ₐ[S] RatFunc R,
on the condition that φ maps non zero divisors to non zero divisors,
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
Lift an injective algebra homomorphism K[X] →ₐ[S] L to a RatFunc K →ₐ[S] L
by mapping both the numerator and denominator and quotienting them.
Equations
Instances For
RatFunc K is the field of fractions of the polynomials over K.
Induction principle for RatFunc K: if f p q : P (p / q) for all p q : K[X],
then P holds on all elements of RatFunc K.
See also induction_on', which is a recursion principle defined in terms of RatFunc.mk.
Numerator and denominator #
RatFunc.numDenom are numerator and denominator of a rational function over a field,
normalized such that the denominator is monic.
Equations
Instances For
RatFunc.num is the numerator of a rational function,
normalized such that the denominator is monic.
Equations
Instances For
A version of num_div_dvd with the LHS in simp normal form
RatFunc.denom is the denominator of a rational function,
normalized such that it is monic.