Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
- Aesop.Frontend.Parser.«priority_%» = Lean.ParserDescr.node `Aesop.Frontend.Parser.priority_% 1022 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.const `num) (Lean.ParserDescr.symbol "%"))
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- int: Int → Aesop.Frontend.Priority
- percent: Aesop.Percent → Aesop.Frontend.Priority
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
- x.toInt? = match x with | Aesop.Frontend.Priority.int i => some i | x => none
Instances For
Equations
- x.toPercent? = match x with | Aesop.Frontend.Priority.percent p => some p | x => none
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
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: Aesop.BuilderName → Aesop.Frontend.DBuilderName
- default: Aesop.Frontend.DBuilderName
Instances For
Equations
- Aesop.Frontend.instInhabitedDBuilderName = { default := Aesop.Frontend.DBuilderName.regular 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
- x.toBuilderName? = match x with | Aesop.Frontend.DBuilderName.regular b => some b | x => none
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
- 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
- One or more equations did not get rendered due to their size.
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: Array Lean.Name → Aesop.Frontend.BuilderOption
- index: Aesop.IndexingMode → Aesop.Frontend.BuilderOption
- pattern: Lean.Term → Aesop.Frontend.BuilderOption
- casesPatterns: Array Aesop.CasesPattern → Aesop.Frontend.BuilderOption
- transparency: Lean.Meta.TransparencyMode → Bool → Aesop.Frontend.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
Instances For
Equations
- One or more equations did not get rendered due to their size.
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
- phase: Aesop.PhaseName → Aesop.Frontend.Feature
- priority: Aesop.Frontend.Priority → Aesop.Frontend.Feature
- builder: Aesop.Frontend.DBuilderName → Aesop.Frontend.Feature
- builderOption: Aesop.Frontend.BuilderOption → Aesop.Frontend.Feature
- term: Lean.Term → Aesop.Frontend.Feature
- ruleSets: Aesop.Frontend.RuleSets → Aesop.Frontend.Feature
Instances For
Equations
- Aesop.Frontend.instInhabitedFeature = { default := Aesop.Frontend.Feature.phase default }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
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
Instances For
Equations
- Aesop.Frontend.instInhabitedRuleExpr = { default := Aesop.Frontend.RuleExpr.node default default }
def
Aesop.Frontend.RuleExpr.foldBranchesM
{σ : Type u_1}
{m : Type u_1 → Type u_2}
[Monad m]
(f : σ → Aesop.Frontend.Feature → m σ)
(init : σ)
(e : Aesop.Frontend.RuleExpr)
:
m (Array σ)
Equations
- Aesop.Frontend.RuleExpr.foldBranchesM f init e = Aesop.Frontend.RuleExpr.foldBranchesM.go f init #[] e
Instances For
partial def
Aesop.Frontend.RuleExpr.foldBranchesM.go
{σ : Type u_1}
{m : Type u_1 → Type u_2}
[Monad m]
(f : σ → Aesop.Frontend.Feature → m σ)
(c : σ)
(acc : Array σ)
:
Aesop.Frontend.RuleExpr → m (Array σ)
- phase? : Option Aesop.PhaseName
- priority? : Option Aesop.Frontend.Priority
- builder? : Option Aesop.Frontend.DBuilderName
- builderOptions : Aesop.RuleBuilderOptions
- ruleSets : Aesop.Frontend.RuleSets
Instances For
def
Aesop.Frontend.RuleConfig.addFeature
{m : Type → Type}
[Monad m]
[Lean.MonadError m]
(c : Aesop.Frontend.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 : Aesop.PhaseName)
(c : Aesop.Frontend.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 : Aesop.Frontend.RuleConfig)
:
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 : Aesop.Frontend.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 : Aesop.Frontend.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 : Aesop.Frontend.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 : Aesop.Frontend.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 : Aesop.Frontend.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 : Aesop.Frontend.RuleConfig)
(defaultRuleSet : Aesop.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 : Aesop.Frontend.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 : Aesop.Frontend.RuleExpr)
(init : Aesop.Frontend.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 : Aesop.Frontend.RuleExpr)
(init : Aesop.Frontend.RuleConfig)
(defaultRuleSet : Aesop.RuleSetName)
:
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 : Aesop.Frontend.RuleExpr)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.Frontend.RuleExpr.buildAdditionalGlobalRules
(decl? : Option Lean.Name)
(e : Aesop.Frontend.RuleExpr)
:
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
def
Aesop.Frontend.RuleExpr.buildAdditionalLocalRules
(goal : Lean.MVarId)
(e : Aesop.Frontend.RuleExpr)
:
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)