Reset all grind attributes. This command is intended for testing purposes only and should not be used in applications.
Equations
- Lean.Parser.resetGrindAttrs = Lean.ParserDescr.node `Lean.Parser.resetGrindAttrs 1024 (Lean.ParserDescr.symbol "reset_grind_attrs%")
Instances For
Equations
- Lean.Parser.Attr.grindEq = Lean.ParserDescr.nodeWithAntiquot "grindEq" `Lean.Parser.Attr.grindEq (Lean.ParserDescr.symbol "= ")
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
- Lean.Parser.Attr.grindUsr = Lean.ParserDescr.nodeWithAntiquot "grindUsr" `Lean.Parser.Attr.grindUsr (Lean.ParserDescr.nonReservedSymbol "usr " false)
Instances For
Equations
- Lean.Parser.Attr.grindCases = Lean.ParserDescr.nodeWithAntiquot "grindCases" `Lean.Parser.Attr.grindCases (Lean.ParserDescr.nonReservedSymbol "cases " false)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Parser.Attr.grindIntro = Lean.ParserDescr.nodeWithAntiquot "grindIntro" `Lean.Parser.Attr.grindIntro (Lean.ParserDescr.nonReservedSymbol "intro " false)
Instances For
Equations
- Lean.Parser.Attr.grindExt = Lean.ParserDescr.nodeWithAntiquot "grindExt" `Lean.Parser.Attr.grindExt (Lean.ParserDescr.nonReservedSymbol "ext " false)
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
The configuration for grind.
Passed to grind using, for example, the grind (config := { matchEqs := true }) syntax.
- trace : Bool
- splits : Nat
Maximum number of case-splits in a proof search branch. It does not include splits performed during normalization.
- ematch : Nat
Maximum number of E-matching (aka heuristic theorem instantiation) rounds before each case split.
- gen : Nat
Maximum term generation. The input goal terms have generation 0. When we instantiate a theorem using a term from generation
n, the new terms have generationn+1. Thus, this parameter limits the length of an instantiation chain. - instances : Nat
Maximum number of theorem instances generated using E-matching in a proof search tree branch.
- matchEqs : Bool
- splitMatch : Bool
If
splitMatchistrue,grindperforms case-splitting onmatch-expressions during the search. - splitIte : Bool
- splitIndPred : Bool
If
splitIndPredistrue,grindperforms case-splitting on inductive predicates. Otherwise, it performs case-splitting only on types marked with[grind cases]attribute. - splitImp : Bool
- failures : Nat
By default,
grindhalts as soon as it encounters a sub-goal where no further progress can be made. - canonHeartbeats : Nat
Maximum number of heartbeats (in thousands) the canonicalizer can spend per definitional equality test.
- ext : Bool
- extAll : Bool
- funext : Bool
- lookahead : Bool
TODO
- verbose : Bool
If
verboseisfalse, additional diagnostics information is not collected. - clean : Bool
- qlia : Bool
- mbtc : Bool
- zetaDelta : Bool
When set to
true(default:true), local definitions are unfolded during normalization and internalization. In other words, given a local context with an entryx : t := e, the free variablexis reduced toe. Note that this behavior is also available insimp, but there its default isfalsebecausesimpis not always used as a terminal tactic, and it important to preserve the abstractions introduced by users. Additionally, ingrindwe observed thatzetaDeltais particularly important when combined with function induction. In such scenarios, the same let-expressions can be introduced by function induction and also by unfolding the corresponding definition. We want to avoid a situation in whichzetaDeltais not applied to let-declarations introduced by function induction whilezetaunfolds the definition, causing a mismatch. Finally, note that congruence closure is less effective on terms containing many binders such aslambdaandletexpressions. - zeta : Bool
When
true(default:true), performs zeta reduction of let expressions during normalization. That is,let x := v; e[x]reduces toe[v]. See alsozetaDelta. - ring : Bool
When
true(default:false), uses procedure for handling equalities over commutative rings. - ringSteps : Nat
- ringNull : Bool
When
true(default:false), the commutative ring procedure ingrindconstructs stepwise proof terms, instead of a single-step Nullstellensatz certificate
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
grind tactic and related tactics.
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.