- norm: Aesop.PhaseName
- safe: Aesop.PhaseName
- unsafe: Aesop.PhaseName
Instances For
Equations
- Aesop.instInhabitedPhaseName = { default := Aesop.PhaseName.norm }
Equations
- Aesop.instBEqPhaseName = { beq := Aesop.beqPhaseName✝ }
Equations
- Aesop.instHashablePhaseName = { hash := Aesop.hashPhaseName✝ }
Equations
- Aesop.PhaseName.instOrdPhaseName = { compare := fun s₁ s₂ => compare (Aesop.PhaseName.toCtorIdx s₁) (Aesop.PhaseName.toCtorIdx s₂) }
Equations
- One or more equations did not get rendered due to their size.
Equations
- Aesop.instInhabitedScopeName = { default := Aesop.ScopeName.global }
Equations
- Aesop.instBEqScopeName = { beq := Aesop.beqScopeName✝ }
Equations
- Aesop.instHashableScopeName = { hash := Aesop.hashScopeName✝ }
Equations
- Aesop.ScopeName.instOrdScopeName = { compare := fun s₁ s₂ => compare (Aesop.ScopeName.toCtorIdx s₁) (Aesop.ScopeName.toCtorIdx s₂) }
Equations
- Aesop.ScopeName.instToStringScopeName = { toString := fun x => match x with | Aesop.ScopeName.global => "global" | Aesop.ScopeName.local => "local" }
- apply: Aesop.BuilderName
- cases: Aesop.BuilderName
- constructors: Aesop.BuilderName
- destruct: Aesop.BuilderName
- forward: Aesop.BuilderName
- simp: Aesop.BuilderName
- tactic: Aesop.BuilderName
- unfold: Aesop.BuilderName
Instances For
Equations
- Aesop.instInhabitedBuilderName = { default := Aesop.BuilderName.apply }
Equations
- Aesop.instBEqBuilderName = { beq := Aesop.beqBuilderName✝ }
Equations
- Aesop.instHashableBuilderName = { hash := Aesop.hashBuilderName✝ }
Equations
- Aesop.BuilderName.instOrdBuilderName = { compare := fun b₁ b₂ => compare (Aesop.BuilderName.toCtorIdx b₁) (Aesop.BuilderName.toCtorIdx b₂) }
Equations
- One or more equations did not get rendered due to their size.
- name : Lean.Name
- builder : Aesop.BuilderName
- phase : Aesop.PhaseName
- scope : Aesop.ScopeName
- hash : UInt64
Instances For
Equations
- Aesop.instInhabitedRuleName = { default := { name := default, builder := default, phase := default, scope := default, hash := default } }
Equations
- Aesop.RuleName.instHashableRuleName = { hash := fun n => n.hash }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.RuleName.quickCompare n₁ n₂ = match compare n₁.hash n₂.hash with | Ordering.eq => Aesop.RuleName.compare n₁ n₂ | ord => ord
Instances For
Equations
- Aesop.RuleName.instOrdRuleName = { compare := Aesop.RuleName.compare }
- ruleName: Aesop.RuleName → Aesop.DisplayRuleName
- normSimp: Aesop.DisplayRuleName
- normUnfold: Aesop.DisplayRuleName
Instances For
Equations
- Aesop.instInhabitedDisplayRuleName = { default := Aesop.DisplayRuleName.ruleName default }
Equations
Equations
- Aesop.instOrdDisplayRuleName = { compare := Aesop.ordDisplayRuleName✝ }
Equations
Equations
- One or more equations did not get rendered due to their size.
- const: Lean.Name → Aesop.RuleIdent
- fvar: Lean.Name → Aesop.RuleIdent
Instances For
Equations
- Aesop.instInhabitedRuleIdent = { default := Aesop.RuleIdent.const default }
Equations
- Aesop.instBEqRuleIdent = { beq := Aesop.beqRuleIdent✝ }
Equations
- Aesop.instHashableRuleIdent = { hash := Aesop.hashRuleIdent✝ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- Aesop.RuleIdent.name x = match x with | Aesop.RuleIdent.const decl => decl | Aesop.RuleIdent.fvar userName => userName
Instances For
Equations
- Aesop.RuleIdent.scope x = match x with | Aesop.RuleIdent.const decl => Aesop.ScopeName.global | Aesop.RuleIdent.fvar userName => Aesop.ScopeName.local
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.RuleIdent.toRuleName
(phase : Aesop.PhaseName)
(builder : Aesop.BuilderName)
(i : Aesop.RuleIdent)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Aesop.RuleName.toRuleIdent i = match i.scope with | Aesop.ScopeName.global => Aesop.RuleIdent.const i.name | Aesop.ScopeName.local => Aesop.RuleIdent.fvar i.name