Documentation

Lean.Meta.Tactic.Grind.Arith.CommRing.EqCnstr

Returns some c, where c is an equation from the basis whose leading monomial divides m. Remark: if the current ring does not satisfy the property

∀ (k : Nat) (a : α), k ≠ 0 → OfNat.ofNat (α := α) k * a = 0 → a = 0

then the leading coefficient of the equation must also divide k

Instances For

    Returns some c, where c is an equation from the basis whose leading monomial divides some monomial in p.

    Instances For

      Simplifies d.p using c, and returns an extended polynomial derivation.

      Instances For

        Simplified d.p using the current basis, and returns the extended polynomial derivation.

        Instances For

          Simplifies c₁ using c₂.

          Instances For

            Simplifies c₁ using c₂.

            Instances For

              Simplifies c₁ using c₂ exhaustively.

              Simplify the given equation constraint using the current basis.

              Instances For

                Returns true if c.p is the constant polynomial.

                Instances For

                  Simplifies and checks whether the resulting constraint is trivial (i.e., 0 = 0), or inconsistent (i.e., k = 0 where k % c != 0 for a comm-ring with characteristic c), and returns none. Otherwise, returns the simplified constraint.

                  Instances For

                    Tries to convert the leading monomial into a monic one.

                    It exploits the fact that given a polynomial with leading coefficient k, if the ring has a nonzero characteristic p and gcd k p = 1, then k has an inverse.

                    It also handles the easy case where k is -1.

                    Remark: if the ring implements the class NoNatZeroDivisors, then the coefficients are divided by the gcd of all coefficients.

                    Instances For

                      Returns true if c.d.p is the constant polynomial.

                      Instances For
                        @[reducible, inline]
                        Instances For