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
- Aesop.Frontend.instInhabitedPriority = { default := Aesop.Frontend.Priority.int default }
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.
Equations
- (Aesop.Frontend.Priority.int i).toInt? = some i
- x✝.toInt? = none
Instances For
Equations
- (Aesop.Frontend.Priority.percent p).toPercent? = some p
- x✝.toPercent? = none
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.Frontend.Parser.phaseSafe = Lean.ParserDescr.node `Aesop.Frontend.Parser.phaseSafe 1024 (Lean.ParserDescr.nonReservedSymbol "safe" false)
Instances For
Equations
- Aesop.Frontend.Parser.phaseNorm = Lean.ParserDescr.node `Aesop.Frontend.Parser.phaseNorm 1024 (Lean.ParserDescr.nonReservedSymbol "norm" false)
Instances For
Equations
- Aesop.Frontend.Parser.phaseUnsafe = Lean.ParserDescr.node `Aesop.Frontend.Parser.phaseUnsafe 1024 (Lean.ParserDescr.nonReservedSymbol "unsafe" false)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameApply = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameApply 1024 (Lean.ParserDescr.nonReservedSymbol "apply" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameSimp = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameSimp 1024 (Lean.ParserDescr.nonReservedSymbol "simp" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameUnfold = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameUnfold 1024 (Lean.ParserDescr.nonReservedSymbol "unfold" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameTactic = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameTactic 1024 (Lean.ParserDescr.nonReservedSymbol "tactic" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameConstructors = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameConstructors 1024 (Lean.ParserDescr.nonReservedSymbol "constructors" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameForward = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameForward 1024 (Lean.ParserDescr.nonReservedSymbol "forward" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameDestruct = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameDestruct 1024 (Lean.ParserDescr.nonReservedSymbol "destruct" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameCases = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameCases 1024 (Lean.ParserDescr.nonReservedSymbol "cases" false)
Instances For
Equations
- Aesop.Frontend.Parser.builder_nameDefault = Lean.ParserDescr.node `Aesop.Frontend.Parser.builder_nameDefault 1024 (Lean.ParserDescr.nonReservedSymbol "default" false)
Instances For
- regular (b : BuilderName) : DBuilderName
- default : DBuilderName
Instances For
Equations
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.
Equations
- (Aesop.Frontend.DBuilderName.regular b).toBuilderName? = some b
- x✝.toBuilderName? = none
Instances For
Equations
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.apply).toRuleBuilder = Aesop.RuleBuilder.apply
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.cases).toRuleBuilder = Aesop.RuleBuilder.cases
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.constructors).toRuleBuilder = Aesop.RuleBuilder.constructors
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.destruct).toRuleBuilder = Aesop.RuleBuilder.forward true
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.forward).toRuleBuilder = Aesop.RuleBuilder.forward false
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.simp).toRuleBuilder = Aesop.RuleBuilder.simp
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.tactic).toRuleBuilder = Aesop.RuleBuilder.tactic
- (Aesop.Frontend.DBuilderName.regular Aesop.BuilderName.unfold).toRuleBuilder = Aesop.RuleBuilder.unfold
- Aesop.Frontend.DBuilderName.default.toRuleBuilder = Aesop.RuleBuilder.default
Instances For
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
- Aesop.Frontend.Parser.indexing_modeUnindexed = Lean.ParserDescr.node `Aesop.Frontend.Parser.indexing_modeUnindexed 1024 (Lean.ParserDescr.nonReservedSymbol "unindexed " false)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.Frontend.elabSingleIndexingMode.elabKeys stx = liftM (Lean.withoutModifyingState do let __do_lift ← Aesop.elabPattern stx liftM (Aesop.mkDiscrTreePath __do_lift))
Instances For
Equations
Instances For
Equations
- Aesop.Frontend.CasesPattern.elab stx = do let __do_lift ← Aesop.elabPattern stx liftM (Lean.Meta.abstractMVars __do_lift)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.elabTransparency :
Lean.TSyntax `Aesop.Frontend.Parser.transparency → Lean.Elab.TermElabM Lean.Meta.TransparencyMode
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
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
- immediate (names : Array Lean.Name) : BuilderOption
- index (imode : IndexingMode) : BuilderOption
- pattern (stx : Lean.Term) : BuilderOption
- casesPatterns (pats : Array CasesPattern) : BuilderOption
- transparency (md : Lean.Meta.TransparencyMode) (alsoForIndex : Bool) : BuilderOption
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
- Aesop.Frontend.RuleSetName.elab stx = stx.getId.eraseMacroScopes
Instances For
Equations
- Aesop.Frontend.instInhabitedRuleSets = { default := { ruleSets := default } }
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
Instances For
Equations
- Aesop.Frontend.Parser.feature_ = Lean.ParserDescr.node `Aesop.Frontend.Parser.feature_ 1022 (Lean.ParserDescr.cat `Aesop.phase 0)
Instances For
Equations
- Aesop.Frontend.Parser.feature__1 = Lean.ParserDescr.node `Aesop.Frontend.Parser.feature__1 1022 (Lean.ParserDescr.cat `Aesop.priority 0)
Instances For
Equations
- Aesop.Frontend.Parser.feature__2 = Lean.ParserDescr.node `Aesop.Frontend.Parser.feature__2 1022 (Lean.ParserDescr.cat `Aesop.builder_name 0)
Instances For
Equations
- Aesop.Frontend.Parser.feature__3 = Lean.ParserDescr.node `Aesop.Frontend.Parser.feature__3 1022 (Lean.ParserDescr.cat `Aesop.builder_option 0)
Instances For
Equations
- Aesop.Frontend.Parser.feature__4 = Lean.ParserDescr.node `Aesop.Frontend.Parser.feature__4 1022 Aesop.Frontend.Parser.ruleSetsFeature
Instances For
Equations
- Aesop.Frontend.Parser.featIdent = Lean.ParserDescr.node `Aesop.Frontend.Parser.featIdent 1022 (Lean.ParserDescr.const `ident)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.Frontend.instInhabitedFeature = { default := Aesop.Frontend.Feature.phase default }
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.Frontend.Parser.rule_expr_ = Lean.ParserDescr.node `Aesop.Frontend.Parser.rule_expr_ 1022 (Lean.ParserDescr.cat `Aesop.feature 0)
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
def
Aesop.Frontend.RuleExpr.foldBranchesM
{σ : Type u_1}
{m : Type u_1 → Type u_2}
[Monad m]
(f : σ → Feature → m σ)
(init : σ)
(e : RuleExpr)
:
m (Array σ)
Equations
- Aesop.Frontend.RuleExpr.foldBranchesM f init e = Aesop.Frontend.RuleExpr.foldBranchesM.go f init #[] e
Instances For
- builder? : Option DBuilderName
- builderOptions : RuleBuilderOptions
- ruleSets : RuleSets
Instances For
def
Aesop.Frontend.RuleConfig.addFeature
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Feature → m RuleConfig
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.getPenalty
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(phase : PhaseName)
(c : RuleConfig)
:
m Int
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.getSuccessProbability
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
m Percent
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.getSimpPriority
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
m Nat
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.getTerm
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Equations
- c.getTerm = match c.term? with | some term => pure term | x => Lean.throwError (Lean.toMessageData "missing rule")
Instances For
def
Aesop.Frontend.RuleConfig.getPhase
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Equations
- c.getPhase = match c.phase? with | some phase => pure phase | x => Lean.throwError (Lean.toMessageData "missing phase (norm/safe/unsafe)")
Instances For
def
Aesop.Frontend.RuleConfig.getBuilder
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Equations
- c.getBuilder = match c.builder? with | some builder => pure builder | x => Lean.throwError (Lean.toMessageData "missing rule builder (apply, forward, simp, ...)")
Instances For
def
Aesop.Frontend.RuleConfig.getPhaseSpec
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- c.getRuleBuilderInput = do let term ← c.getTerm let phase ← c.getPhaseSpec let options : Aesop.RuleBuilderOptions := c.builderOptions pure { term := term, options := options, phase := phase }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- c.buildLocalRule = (fun (x : Aesop.LocalRuleSetMember × Array Aesop.RuleSetName) => x.fst) <$> c.buildRule
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.validateForAdditionalRules
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
(defaultRuleSet : RuleSetName)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleConfig.validateForAdditionalRules.getPhaseAndPriority
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : RuleConfig)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleExpr.toRuleConfigs
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(e : RuleExpr)
(init : RuleConfig)
:
m (Array RuleConfig)
Equations
- e.toRuleConfigs init = Aesop.Frontend.RuleExpr.foldBranchesM (fun (c : Aesop.Frontend.RuleConfig) (feature : Aesop.Frontend.Feature) => c.addFeature feature) init e
Instances For
def
Aesop.Frontend.RuleExpr.toAdditionalRules
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(e : RuleExpr)
(init : RuleConfig)
(defaultRuleSet : RuleSetName)
:
m (Array RuleConfig)
Equations
- e.toAdditionalRules init defaultRuleSet = do let cs ← e.toRuleConfigs init Array.mapM (fun (x : Aesop.Frontend.RuleConfig) => x.validateForAdditionalRules defaultRuleSet) cs
Instances For
def
Aesop.Frontend.RuleExpr.toAdditionalGlobalRules
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(decl? : Option Lean.Name)
(e : RuleExpr)
:
m (Array RuleConfig)
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
- e.toGlobalRuleFilters = do let __do_lift ← liftM Aesop.ElabM.Context.forGlobalErasing Aesop.ElabM.run __do_lift e.toRuleFilters
Instances For
Equations
- e.toLocalRuleFilters = do let __do_lift ← e.toRuleFilters pure (Array.map (fun (x : Aesop.RuleSetNameFilter × Aesop.RuleFilter) => x.snd) __do_lift)