File: .lake/packages/aesop/Aesop/Rule.lean

full_name: Aesop.instInhabitedNormRuleInfo
code: structure NormRuleInfo where
  penalty : Int
  deriving Inhabited
goal: Inhabited Aesop.NormRuleInfo

full_name: Aesop.NormRuleInfo.penalty
code: structure NormRuleInfo where
  penalty : Int
  deriving Inhabited
goal: Int

full_name: Aesop.NormRuleInfo
code: structure NormRuleInfo where
  penalty : Int
  deriving Inhabited
goal: Type

full_name: Aesop.instOrdNormRuleInfo
code: instance : Ord NormRuleInfo 
goal: Ord Aesop.NormRuleInfo

full_name: Aesop.instLTNormRuleInfo
code: instance : LT NormRuleInfo 
goal: LT Aesop.NormRuleInfo

full_name: Aesop.instLENormRuleInfo
code: instance : LE NormRuleInfo 
goal: LE Aesop.NormRuleInfo

full_name: Aesop.NormRule
code: abbrev NormRule 
goal: Type

full_name: Aesop.instToStringNormRule
code: instance : ToString NormRule 
goal: ToString Aesop.NormRule

full_name: Aesop.defaultNormPenalty
code: def defaultNormPenalty : Int 
goal: Int

full_name: Aesop.defaultSimpRulePriority
code: def defaultSimpRulePriority : Int 
goal: Int

full_name: Aesop.Safety.almostSafe
code: inductive Safety
  | safe
  | almostSafe
  deriving Inhabited
goal: Aesop.Safety

full_name: Aesop.Safety.safe
code: inductive Safety
  | safe
  | almostSafe
  deriving Inhabited
goal: Aesop.Safety

full_name: Aesop.Safety
code: inductive Safety
  | safe
  | almostSafe
  deriving Inhabited
goal: Type

full_name: Aesop.instInhabitedSafety
code: inductive Safety
  | safe
  | almostSafe
  deriving Inhabited
goal: Inhabited Aesop.Safety

full_name: Aesop.Safety.instToString
code: instance : ToString Safety 
goal: ToString Aesop.Safety

full_name: Aesop.SafeRuleInfo
code: structure SafeRuleInfo where
  penalty : Int
  safety : Safety
  deriving Inhabited
goal: Type

full_name: Aesop.SafeRuleInfo.safety
code: structure SafeRuleInfo where
  penalty : Int
  safety : Safety
  deriving Inhabited
goal: Aesop.Safety

full_name: Aesop.SafeRuleInfo.penalty
code: structure SafeRuleInfo where
  penalty : Int
  safety : Safety
  deriving Inhabited
goal: Int

full_name: Aesop.instInhabitedSafeRuleInfo
code: structure SafeRuleInfo where
  penalty : Int
  safety : Safety
  deriving Inhabited
goal: Inhabited Aesop.SafeRuleInfo

full_name: Aesop.instOrdSafeRuleInfo
code: instance : Ord SafeRuleInfo 
goal: Ord Aesop.SafeRuleInfo

full_name: Aesop.instLTSafeRuleInfo
code: instance : LT SafeRuleInfo 
goal: LT Aesop.SafeRuleInfo

full_name: Aesop.instLESafeRuleInfo
code: instance : LE SafeRuleInfo 
goal: LE Aesop.SafeRuleInfo

full_name: Aesop.SafeRule
code: abbrev SafeRule 
goal: Type

full_name: Aesop.instToStringSafeRule
code: instance : ToString SafeRule 
goal: ToString Aesop.SafeRule

full_name: Aesop.defaultSafePenalty
code: def defaultSafePenalty : Int 
goal: Int

full_name: Aesop.UnsafeRuleInfo.successProbability
code: structure UnsafeRuleInfo where
  successProbability : Percent
  deriving Inhabited
goal: Aesop.Percent

full_name: Aesop.UnsafeRuleInfo
code: structure UnsafeRuleInfo where
  successProbability : Percent
  deriving Inhabited
goal: Type

full_name: Aesop.instInhabitedUnsafeRuleInfo
code: structure UnsafeRuleInfo where
  successProbability : Percent
  deriving Inhabited
goal: Inhabited Aesop.UnsafeRuleInfo

full_name: Aesop.instOrdUnsafeRuleInfo
code: instance : Ord UnsafeRuleInfo 
goal: Ord Aesop.UnsafeRuleInfo

full_name: Aesop.instLTUnsafeRuleInfo
code: instance : LT UnsafeRuleInfo 
goal: LT Aesop.UnsafeRuleInfo

full_name: Aesop.instLEUnsafeRuleInfo
code: instance : LE UnsafeRuleInfo 
goal: LE Aesop.UnsafeRuleInfo

full_name: Aesop.UnsafeRule
code: abbrev UnsafeRule 
goal: Type

full_name: Aesop.instToStringUnsafeRule
code: instance : ToString UnsafeRule 
goal: ToString Aesop.UnsafeRule

full_name: Aesop.defaultSuccessProbability
code: def defaultSuccessProbability : Percent 
goal: Aesop.Percent

full_name: Aesop.instBEqRegularRule
code: inductive RegularRule
  | safe (r : SafeRule)
  | «unsafe» (r : UnsafeRule)
  deriving Inhabited, BEq
goal: BEq Aesop.RegularRule

full_name: Aesop.instInhabitedRegularRule
code: inductive RegularRule
  | safe (r : SafeRule)
  | «unsafe» (r : UnsafeRule)
  deriving Inhabited, BEq
goal: Inhabited Aesop.RegularRule

full_name: Aesop.RegularRule
code: inductive RegularRule
  | safe (r : SafeRule)
  | «unsafe» (r : UnsafeRule)
  deriving Inhabited, BEq
goal: Type

full_name: Aesop.RegularRule.safe
code: inductive RegularRule
  | safe (r : SafeRule)
  | «unsafe» (r : UnsafeRule)
  deriving Inhabited, BEq
goal: Aesop.RegularRule

full_name: Aesop.RegularRule.unsafe
code: inductive RegularRule
  | safe (r : SafeRule)
  | «unsafe» (r : UnsafeRule)
  deriving Inhabited, BEq
goal: Aesop.RegularRule

full_name: Aesop.RegularRule.instToFormat
code: instance : ToFormat RegularRule 
goal: Lean.ToFormat Aesop.RegularRule

full_name: Aesop.RegularRule.successProbability
code: def successProbability : RegularRule → Percent
  
goal: Aesop.RegularRule → Aesop.Percent

full_name: Aesop.RegularRule.isSafe
code: def isSafe : RegularRule → Bool
  
goal: Aesop.RegularRule → Bool

full_name: Aesop.RegularRule.isUnsafe
code: def isUnsafe : RegularRule → Bool
  
goal: Aesop.RegularRule → Bool

full_name: Aesop.RegularRule.withRule
code: @[inline]
def withRule (f : ∀ {α}, Rule α → β) : RegularRule → β
  
goal: Aesop.RegularRule → β

full_name: Aesop.RegularRule.name
code: def name (r : RegularRule) : RuleName 
goal: Aesop.RuleName

full_name: Aesop.RegularRule.indexingMode
code: def indexingMode (r : RegularRule) : IndexingMode 
goal: Aesop.IndexingMode

full_name: Aesop.RegularRule.tac
code: def tac (r : RegularRule) : RuleTacDescr 
goal: Aesop.RuleTacDescr

full_name: Aesop.NormSimpRule
code: /--
A global rule for the norm simplifier. Each `SimpEntry` represents a member
of the simp set, e.g. a declaration whose type is an equality or a smart
unfolding theorem for a declaration.
-/
structure NormSimpRule where
  name : RuleName
  entries : Array SimpEntry
  deriving Inhabited
goal: Type

full_name: Aesop.instInhabitedNormSimpRule
code: /--
A global rule for the norm simplifier. Each `SimpEntry` represents a member
of the simp set, e.g. a declaration whose type is an equality or a smart
unfolding theorem for a declaration.
-/
structure NormSimpRule where
  name : RuleName
  entries : Array SimpEntry
  deriving Inhabited
goal: Inhabited Aesop.NormSimpRule

full_name: Aesop.NormSimpRule.name
code: /--
A global rule for the norm simplifier. Each `SimpEntry` represents a member
of the simp set, e.g. a declaration whose type is an equality or a smart
unfolding theorem for a declaration.
-/
structure NormSimpRule where
  name : RuleName
  entries : Array SimpEntry
  deriving Inhabited
goal: Aesop.RuleName

full_name: Aesop.NormSimpRule.entries
code: /--
A global rule for the norm simplifier. Each `SimpEntry` represents a member
of the simp set, e.g. a declaration whose type is an equality or a smart
unfolding theorem for a declaration.
-/
structure NormSimpRule where
  name : RuleName
  entries : Array SimpEntry
  deriving Inhabited
goal: Array Lean.Meta.SimpEntry

full_name: Aesop.NormSimpRule.instBEq
code: instance : BEq NormSimpRule 
goal: BEq Aesop.NormSimpRule

full_name: Aesop.NormSimpRule.instHashable
code: instance : Hashable NormSimpRule 
goal: Hashable Aesop.NormSimpRule

full_name: Aesop.instInhabitedLocalNormSimpRule
code: /--
A local rule for the norm simplifier.
-/
structure LocalNormSimpRule where
  id : Name
  simpTheorem : Term
  deriving Inhabited
goal: Inhabited Aesop.LocalNormSimpRule

full_name: Aesop.LocalNormSimpRule.simpTheorem
code: /--
A local rule for the norm simplifier.
-/
structure LocalNormSimpRule where
  id : Name
  simpTheorem : Term
  deriving Inhabited
goal: Lean.Term

full_name: Aesop.LocalNormSimpRule
code: /--
A local rule for the norm simplifier.
-/
structure LocalNormSimpRule where
  id : Name
  simpTheorem : Term
  deriving Inhabited
goal: Type

full_name: Aesop.LocalNormSimpRule.id
code: /--
A local rule for the norm simplifier.
-/
structure LocalNormSimpRule where
  id : Name
  simpTheorem : Term
  deriving Inhabited
goal: Lean.Name

full_name: Aesop.LocalNormSimpRule.instBEq
code: instance : BEq LocalNormSimpRule 
goal: BEq Aesop.LocalNormSimpRule

full_name: Aesop.LocalNormSimpRule.instHashable
code: instance : Hashable LocalNormSimpRule 
goal: Hashable Aesop.LocalNormSimpRule

full_name: Aesop.LocalNormSimpRule.name
code: def name (r : LocalNormSimpRule) : RuleName 
goal: Aesop.RuleName

full_name: Aesop.instInhabitedUnfoldRule
code: structure UnfoldRule where
  decl : Name
  unfoldThm? : Option Name
  deriving Inhabited
goal: Inhabited Aesop.UnfoldRule

full_name: Aesop.UnfoldRule.decl
code: structure UnfoldRule where
  decl : Name
  unfoldThm? : Option Name
  deriving Inhabited
goal: Lean.Name

full_name: Aesop.UnfoldRule.unfoldThm?
code: structure UnfoldRule where
  decl : Name
  unfoldThm? : Option Name
  deriving Inhabited
goal: Option Lean.Name

full_name: Aesop.UnfoldRule
code: structure UnfoldRule where
  decl : Name
  unfoldThm? : Option Name
  deriving Inhabited
goal: Type

full_name: Aesop.UnfoldRule.instBEq
code: instance : BEq UnfoldRule 
goal: BEq Aesop.UnfoldRule

full_name: Aesop.UnfoldRule.instHashable
code: instance : Hashable UnfoldRule 
goal: Hashable Aesop.UnfoldRule

full_name: Aesop.UnfoldRule.name
code: def name (r : UnfoldRule) : RuleName 
goal: Aesop.RuleName