File: .lake/packages/lean4/src/lean/Lean/Elab/Tactic/Conv/Basic.lean

full_name: Lean.Elab.Tactic.Conv.mkLHSGoal
code: /--
Annotate `e` with the LHS annotation. The delaborator displays
expressions of the form `lhs = rhs` as `lhs` when they have this annotation.
This is used to implement the infoview for the `conv` mode.
-/
def mkLHSGoal (e : Expr) : MetaM Expr 
goal: Lean.MetaM Lean.Expr

full_name: Lean.Elab.Tactic.Conv.mkConvGoalFor
code: /-- Given `lhs`, returns a pair of metavariables `(?rhs, ?newGoal)`
where `?newGoal : lhs = ?rhs`. `tag` is the name of `newGoal`. -/
def mkConvGoalFor (lhs : Expr) (tag : Name := .anonymous) : MetaM (Expr × Expr) 
goal: Lean.MetaM (Lean.Expr × Lean.Expr)

full_name: Lean.Elab.Tactic.Conv.markAsConvGoal
code: def markAsConvGoal (mvarId : MVarId) : MetaM MVarId 
goal: Lean.MetaM Lean.MVarId

full_name: Lean.Elab.Tactic.Conv.convert
code: /-- Given `lhs`, runs the `conv` tactic with the goal `⊢ lhs = ?rhs`.
`conv` should produce no remaining goals that are not solvable with refl.
Returns a pair of instantiated expressions `(?rhs, ?p)` where `?p : lhs = ?rhs`. -/
def convert (lhs : Expr) (conv : TacticM Unit) : TacticM (Expr × Expr) 
goal: Lean.Elab.Tactic.TacticM (Lean.Expr × Lean.Expr)

full_name: Lean.Elab.Tactic.Conv.getLhsRhsCore
code: def getLhsRhsCore (mvarId : MVarId) : MetaM (Expr × Expr) 
goal: Lean.MetaM (Lean.Expr × Lean.Expr)

full_name: Lean.Elab.Tactic.Conv.getLhsRhs
code: def getLhsRhs : TacticM (Expr × Expr) 
goal: Lean.Elab.Tactic.TacticM (Lean.Expr × Lean.Expr)

full_name: Lean.Elab.Tactic.Conv.getLhs
code: def getLhs : TacticM Expr 
goal: Lean.Elab.Tactic.TacticM Lean.Expr

full_name: Lean.Elab.Tactic.Conv.getRhs
code: def getRhs : TacticM Expr 
goal: Lean.Elab.Tactic.TacticM Lean.Expr

full_name: Lean.Elab.Tactic.Conv.updateLhs
code: /-- `⊢ lhs = rhs` ~~> `⊢ lhs' = rhs` using `h : lhs = lhs'`. -/
def updateLhs (lhs' : Expr) (h : Expr) : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: Lean.Elab.Tactic.Conv.changeLhs
code: /-- Replace `lhs` with the definitionally equal `lhs'`. -/
def changeLhs (lhs' : Expr) : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: Lean.Elab.Tactic.Conv.evalWhnf
code: @[builtin_tactic Lean.Parser.Tactic.Conv.whnf] def evalWhnf : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalReduce
code: @[builtin_tactic Lean.Parser.Tactic.Conv.reduce] def evalReduce : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalZeta
code: @[builtin_tactic Lean.Parser.Tactic.Conv.zeta] def evalZeta : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalSepByIndentConv
code: /-- Evaluate `sepByIndent conv "; " -/
def evalSepByIndentConv (stx : Syntax) : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: Lean.Elab.Tactic.Conv.evalConvSeq1Indented
code: @[builtin_tactic Lean.Parser.Tactic.Conv.convSeq1Indented] def evalConvSeq1Indented : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalConvSeqBracketed
code: @[builtin_tactic Lean.Parser.Tactic.Conv.convSeqBracketed] def evalConvSeqBracketed : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalNestedConv
code: @[builtin_tactic Lean.Parser.Tactic.Conv.nestedConv] def evalNestedConv : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalConvSeq
code: @[builtin_tactic Lean.Parser.Tactic.Conv.convSeq] def evalConvSeq : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalConvConvSeq
code: @[builtin_tactic Lean.Parser.Tactic.Conv.convConvSeq] def evalConvConvSeq : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalParen
code: @[builtin_tactic Lean.Parser.Tactic.Conv.paren] def evalParen : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.remarkAsConvGoal
code: /-- Mark goals of the form `⊢ a = ?m ..` with the conv goal annotation -/
def remarkAsConvGoal : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: Lean.Elab.Tactic.Conv.evalNestedTacticCore
code: @[builtin_tactic Lean.Parser.Tactic.Conv.nestedTacticCore] def evalNestedTacticCore : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalNestedTactic
code: @[builtin_tactic Lean.Parser.Tactic.Conv.nestedTactic] def evalNestedTactic : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalConvTactic
code: @[builtin_tactic Lean.Parser.Tactic.Conv.convTactic] def evalConvTactic : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Elab.Tactic.Conv.Basic.0.Lean.Elab.Tactic.Conv.convTarget
code: private def convTarget (conv : Syntax) : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Elab.Tactic.Conv.Basic.0.Lean.Elab.Tactic.Conv.convLocalDecl
code: private def convLocalDecl (conv : Syntax) (hUserName : Name) : TacticM Unit 
goal: Lean.Elab.Tactic.TacticM Unit

full_name: Lean.Elab.Tactic.Conv.evalConv
code: @[builtin_tactic Lean.Parser.Tactic.Conv.conv] def evalConv : Tactic 
goal: Lean.Elab.Tactic.Tactic

full_name: Lean.Elab.Tactic.Conv.evalFirst
code: @[builtin_tactic Lean.Parser.Tactic.Conv.first] partial def evalFirst : Tactic 
goal: Lean.Elab.Tactic.Tactic