DSimproc DSL for Sym.dsimp #
A syntax category for specifying pre and post dsimproc chains in Sym.dsimp variants.
Primitives #
ground— evaluates ground (fully concrete) termsbeta— beta reductionzeta- zeta reductionzeta_delta [ids]- zeta delta reductionproj- reduce projectionsmatch- reduce match-expressions
Combinators #
a >> b— applya, then applybto the result (andThen)a <|> b— trya, if no progress tryb(orElse)
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Do nothing
Equations
- Lean.Parser.Sym.DSimp.none = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.none 1024 (Lean.ParserDescr.nonReservedSymbol "none" false)
Instances For
Evaluate ground (fully concrete) terms.
Equations
- Lean.Parser.Sym.DSimp.ground = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.ground 1024 (Lean.ParserDescr.nonReservedSymbol "ground" false)
Instances For
Beta reduction
Equations
- Lean.Parser.Sym.DSimp.beta = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.beta 1024 (Lean.ParserDescr.nonReservedSymbol "beta" false)
Instances For
zeta reduction. That is, expands let-expressions.
Equations
- Lean.Parser.Sym.DSimp.zeta = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.zeta 1024 (Lean.ParserDescr.nonReservedSymbol "zeta" false)
Instances For
zeta delta reduction. That is, expands all let-declarations.
Equations
- Lean.Parser.Sym.DSimp.zetaDelta = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.zetaDelta 1024 (Lean.ParserDescr.nonReservedSymbol "zeta_delta" false)
Instances For
Projection reduction.
Equations
- Lean.Parser.Sym.DSimp.proj = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.proj 1024 (Lean.ParserDescr.nonReservedSymbol "proj" false)
Instances For
match-expression reduction.
Equations
- Lean.Parser.Sym.DSimp.reduceMatch = Lean.ParserDescr.node `Lean.Parser.Sym.DSimp.reduceMatch 1024 (Lean.ParserDescr.nonReservedSymbol "match" false)
Instances For
Apply a, then apply b to the result.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try a, if no progress try b.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Parenthesized dsimproc expression.
Equations
- One or more equations did not get rendered due to their size.
Instances For
register_sym_dsimp command #
Declares a named Sym.dsimp variant with pre/post simproc chains and optional config overrides.
register_sym_dsimp myVariant where
pre := match
post := ground >> zeta_delta
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pre-processing simproc chain.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Post-processing simproc chain.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Maximum number of simplification steps.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Register a named Sym.dsimp variant.
register_sym_dsimp myVariant where
pre := match
post := ground >> zeta_delta
maxSteps := 50000
Equations
- One or more equations did not get rendered due to their size.