Documentation

Lean.Meta.Tactic.Grind.Arith.CommRing.Poly

@[irreducible]

sharesVar m₁ m₂ returns true if m₁ and m₂ shares at least one variable.

Equations
    Instances For
      @[irreducible]

      lcm m₁ m₂ returns the least common multiple of the given monomials.

      Equations
        Instances For

          divides m₁ m₂ returns true if monomial m₁ divides m₂ Example: x^2.z divides w.x^3.y^2.z

          Equations
            Instances For

              Given m₁ and m₂ such that m₂.divides m₁, then m₁.div m₂ returns the result. Example w.x^3.y^2.z div x^2.z returns w.x.y^2

              Equations
                Instances For
                  @[irreducible]

                  coprime m₁ m₂ returns true if the given monomials do not have any variable in common.

                  Equations
                    Instances For

                      Contains the S-polynomial resulting from superposing two polynomials p₁ and p₂, along with coefficients and monomials used in their construction.

                      • spol : Poly

                        The computed S-polynomial.

                      • k₁ : Int

                        Coefficient applied to polynomial p₁.

                      • m₁ : Mon

                        Monomial factor applied to polynomial p₁.

                      • k₂ : Int

                        Coefficient applied to polynomial p₂.

                      • m₂ : Mon

                        Monomial factor applied to polynomial p₂.

                      Instances For
                        Equations
                          Instances For
                            def Lean.Grind.CommRing.Poly.mulMon' (p : Poly) (k : Int) (m : Mon) (char? : Option Nat := none) :
                            Equations
                              Instances For
                                def Lean.Grind.CommRing.Poly.combine' (p₁ p₂ : Poly) (char? : Option Nat := none) :
                                Equations
                                  Instances For

                                    Returns the S-polynomial of polynomials p₁ and p₂, and coefficients&terms used to construct it. Given polynomials with leading terms k₁*m₁ and k₂*m₂, the S-polynomial is defined as:

                                    S(p₁, p₂) = (k₂/gcd(k₁, k₂)) * (lcm(m₁, m₂)/m₁) * p₁ - (k₁/gcd(k₁, k₂)) * (lcm(m₁, m₂)/m₂) * p₂
                                    

                                    Remark: if char? = some c, then c is the characteristic of the ring.

                                    Equations
                                      Instances For

                                        Result of simplifying a polynomial p₁ using a polynomial p₂.

                                        The simplification rewrites the first monomial of p₁ that can be divided by the leading monomial of p₂.

                                        • p : Poly

                                          The resulting simplified polynomial after rewriting.

                                        • k₁ : Int

                                          The integer coefficient multiplied with polynomial p₁ in the rewriting step.

                                        • k₂ : Int

                                          The integer coefficient multiplied with polynomial p₂ during rewriting.

                                        • m₂ : Mon

                                          The monomial factor applied to polynomial p₂.

                                        Instances For

                                          Simplifies polynomial p₁ using polynomial p₂ by rewriting.

                                          This function attempts to rewrite p₁ by eliminating the first occurrence of the leading monomial of p₂.

                                          Remark: if char? = some c, then c is the characteristic of the ring.

                                          Equations
                                            Instances For
                                              def Lean.Grind.CommRing.Poly.simp?.go? (char? : Option Nat := none) (k₂' : Int) (m₂ : Mon) (p₂ p₁ : Poly) :
                                              Equations
                                                Instances For
                                                  Equations
                                                    Instances For

                                                      Returns true if the leading monomial of p divides m.

                                                      Equations
                                                        Instances For

                                                          Returns the leading coefficient of the given polynomial

                                                          Equations
                                                            Instances For

                                                              Returns the leading monomial of the given polynomial.

                                                              Equations
                                                                Instances For
                                                                  Equations
                                                                    Instances For
                                                                      Equations
                                                                        Instances For
                                                                          Equations
                                                                            Instances For
                                                                              Equations
                                                                                Instances For
                                                                                  Equations
                                                                                    Instances For
                                                                                      Equations
                                                                                        Instances For
                                                                                          Equations
                                                                                            Instances For