Commit 2025-08-14 12:53 ee835422
View on Github →feat(RatFunc): liftAlgebra and rank (#27640)
Add analogous results from FractionRing in the special case of RatFunc. This is needed as RatFunc is a one-field-struct. The first three are scoped instances lifting structure from K[X] to RatFunc K. Our application is two results stating that with appropriate context, the rank of RatFunc K over RatFunc k is the rank of K over k.
RatFunc.liftAlgebra(FractionRingversion)RatFunc.isScalarTower_liftAlgebra(FractionRingversion)RatFunc.faithfulSMul'(FractionRingversion)RatFunc.rank_ratFunc_ratFunc(mathlib has a version forFractionRingbut we use the version forIsFractionRingcombined withrank_polynomial_polynomial.)RatFunc.finrank_ratFunc_ratFuncThe first three are declared as scoped instances ofRatFunc. This creates a conflict with the currentLaurentSeriesfile. To fix this, I have refactored to use the algebra instance coming fromRatFunc.liftAlgebrainstead of thecoeAlgHommap defined inLaurentSeries. This has two main effects:- It simplifies the file.
- The instance
RatFunc.instCoePolynomialdoes not need to be hidden anymore. Looking forward to feedback! Xavier