Monomial orders #
Monomial orders #
A monomial order is well ordering relation on a type of the form σ →₀ ℕ which
is compatible with addition and for which 0 is the smallest element.
Since several monomial orders may have to be used simultaneously, one cannot
get them as instances.
In this formalization, they are presented as a structure MonomialOrder which encapsulates
MonomialOrder.toSyn, an additive and monotone isomorphism to a linearly ordered cancellative
additive commutative monoid.
The entry MonomialOrder.wf asserts that MonomialOrder.syn is well founded.
The terminology comes from commutative algebra and algebraic geometry, especially Gröbner bases,
where c : σ →₀ ℕ are exponents of monomials.
Given a monomial order m : MonomialOrder σ, we provide the notation
c ≼[m] d and c ≺[m] d to compare c d : σ →₀ ℕ with respect to m.
It is activated using open scoped MonomialOrder.
Examples #
Commutative algebra defines many monomial orders, with different usefulness ranges.
In this file, we provide the basic example of lexicographic ordering.
For the graded lexicographic ordering, see Mathlib/Data/Finsupp/DegLex.lean
MonomialOrder.lex: the lexicographic ordering onσ →₀ ℕ. For this,σneeds to be embedded with an ordering relation which satisfiesWellFoundedGT σ. (This last property is automatic whenσis finite).
The type synonym is Lex (σ →₀ ℕ) and the two lemmas MonomialOrder.lex_le_iff
and MonomialOrder.lex_lt_iff rewrite the ordering as comparisons in the type Lex (σ →₀ ℕ).
References #
- [Cox, Little and O'Shea, Ideals, varieties, and algorithms][coxlittleoshea1997]
- [Becker and Weispfenning, Gröbner bases][Becker-Weispfenning1993]
Note #
In algebraic geometry, when the finitely many variables are indexed by integers,
it is customary to order them using the opposite order : MvPolynomial.X 0 > MvPolynomial.X 1 > …
Monomial orders : equivalence of σ →₀ ℕ with a well ordered type
- syn : Type u_2
The synonym type
- acm : AddCommMonoid self.syn
synis a additive commutative monoid - lo : LinearOrder self.syn
synis linearly ordered - iocam : IsOrderedCancelAddMonoid self.syn
synis a linearly ordered cancellative additive commutative monoid the additive equivalence from
σ →₀ ℕtosyntoSynis monotone- wf : WellFoundedLT self.syn
synis a well ordering
Instances For
Given a monomial order, notation for the corresponding strict order relation on σ →₀ ℕ
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a monomial order, notation for the corresponding order relation on σ →₀ ℕ
Equations
- One or more equations did not get rendered due to their size.
Instances For
The lexicographic order on σ →₀ ℕ, as a MonomialOrder
Equations
- One or more equations did not get rendered due to their size.