Instances For
Instances For
Classification state for a type with a Semiring instance.
Instances For
Equations
Equations
Classification state for a type with a CommRing instance.
Inverse function if
fieldInst?issome instIf this is a
OfSemiring.Q αring, this field contains thesemiringIdforα.- commSemiringInst : Expr
CommSemiringinstance fortype - commRingInst : Expr
NoNatZeroDivisorsinstance fortypeif available.
Instances For
Equations
Classification state for a type with a CommSemiring instance.
Recall that CommSemiring types are normalized using the OfSemiring.Q envelope.
- ringId : Nat
Id of the envelope ring
OfSemiring.Q type - commSemiringInst : Expr
CommSemiringinstance fortype AddRightCancelinstance fortypeif available.
Instances For
Result of classifying a type's algebraic structure.
- commRing (id : Nat) : ClassifyResult
- nonCommRing (id : Nat) : ClassifyResult
- commSemiring (id : Nat) : ClassifyResult
- nonCommSemiring (id : Nat) : ClassifyResult
- none : ClassifyResult
No algebraic structure found.
Instances For
Arith type classification state, stored as a SymExtension.
- exp : Nat
Exponent threshold for
HPowevaluation. Commutative rings.
- semirings : Array CommSemiring
Commutative semirings.
Non-commutative rings.
Non-commutative semirings.
- typeClassify : PHashMap ExprPtr ClassifyResult
Mapping from types to their classification result. Caches failures as
.none.
Instances For
Equations
Instances For
Instances For
Get the exponent threshold.
Equations
- Lean.Meta.Sym.Arith.getExpThreshold = do let __do_lift ← Lean.Meta.Sym.Arith.getArithState pure __do_lift.exp
Instances For
Set the exponent threshold.
Equations
- One or more equations did not get rendered due to their size.