Returns a context of type RArray α containing the variables of the given ring.
α is the type of the ring.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Lean.Meta.Grind.Arith.CommRing.getPolyConst (Lean.Grind.CommRing.Poly.num k) = pure k
Instances For
Proof term for a Nullstellensatz certificate.
A "pre" Nullstellensatz certificate.
Recall that, given the hypotheses h₁ : lhs₁ = rhs₁ ... hₙ : lhsₙ = rhsₙ,
a Nullstellensatz certificate is of the form
q₁*(lhs₁ - rhs₁) + ... + qₙ*(lhsₙ - rhsₙ)
Each hypothesis is an EqCnstr justified by a .core .. EqnCnstrProof.
We dynamically associate them with unique indices based on the order we find them
during traversal.
For the other EqCnstrs we compute a "pre" certificate as a dense array
containing q₁ ... qₙ needed to create the EqCnstr.
We are assuming the number of hypotheses used to derive a conclusion is small and a dense array is a reasonable representation.
- d : Int
We don't use rational coefficients in the polynomials. Thus, we need to track a denominator to justify the proof step
div.
Instances For
Instances For
Equations
Instances For
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- cache : Std.HashMap UInt64 PreNullCert
Mapping from
EqCnstrtoPreNullCert - hyps : Array NullCertHypothesis
Instances For
Equations
Instances For
- d : Int
- qhs : Array (Poly × NullCertHypothesis)
Instances For
Equations
- One or more equations did not get rendered due to their size.
- (Lean.Meta.Grind.Arith.CommRing.PolyDerivation.input p).toPreNullCert = pure Lean.Meta.Grind.Arith.CommRing.Null.PreNullCert.zero
Instances For
Returns the multiplier k for the input polynomial. See comment at PolyDerivation.step.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Lean.Meta.Grind.Arith.CommRing.PolyDerivation.getMultiplier.go (Lean.Meta.Grind.Arith.CommRing.PolyDerivation.input p) acc = acc
Instances For
Equations
Instances For
Equations
Instances For
Equations
- c.mkNullCertExt = c.d.mkNullCertExt
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a pr, returns pr h₁ ... hₙ, where n is size nc.qhs.size, and hᵢs
are the equalities in the certificate.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Alternative proof term construction where we generate a sub-term for each step in the derivation.
- cache : Std.HashMap UInt64 Expr
- polyMap : Std.HashMap Poly Expr
- monMap : Std.HashMap Mon Expr
- exprMap : Std.HashMap RingExpr Expr
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.