Skip to content

Commit 799cd05

Browse files
committed
perf: avoid mkEqMP and mkEqMPR in simp
1 parent 1465c23 commit 799cd05

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

src/Lean/Meta/Tactic/Simp/Main.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -872,12 +872,12 @@ def simpTarget (mvarId : MVarId) (ctx : Simp.Context) (simprocs : SimprocsArray
872872
def applySimpResultToProp (mvarId : MVarId) (proof : Expr) (prop : Expr) (r : Simp.Result) (mayCloseGoal := true) : MetaM (Option (Expr × Expr)) := do
873873
if mayCloseGoal && r.expr.isFalse then
874874
match r.proof? with
875-
| some eqProof => mvarId.assign (← mkFalseElim (← mvarId.getType) (← mkEqMP eqProof proof))
875+
| some eqProof => mvarId.assign (← mkFalseElim (← mvarId.getType) (mkApp4 (mkConst ``Eq.mp [levelZero]) prop r.expr eqProof proof))
876876
| none => mvarId.assign (← mkFalseElim (← mvarId.getType) proof)
877877
return none
878878
else
879879
match r.proof? with
880-
| some eqProof => return some ((← mkEqMP eqProof proof), r.expr)
880+
| some eqProof => return some (mkApp4 (mkConst ``Eq.mp [levelZero]) proof r.expr eqProof proof, r.expr)
881881
| none =>
882882
if r.expr != prop then
883883
return some ((← mkExpectedTypeHint proof r.expr), r.expr)

src/Lean/Meta/Tactic/Simp/Rewrite.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -625,7 +625,7 @@ def dischargeDefault? (e : Expr) : SimpM (Option Expr) := do
625625
if let some r ← dischargeEqnThmHypothesis? e then return some r
626626
let r ← simp e
627627
if let some p ← dischargeRfl r.expr then
628-
return some (← mkEqMPR (← r.getProof) p)
628+
return some (mkApp4 (mkConst ``Eq.mpr [levelZero]) e r.expr (← r.getProof) p)
629629
else if r.expr.isTrue then
630630
return some (← mkOfEqTrue (← r.getProof))
631631
else

0 commit comments

Comments
 (0)