29 lines
645 B
Text
29 lines
645 B
Text
theorem foo (n : Nat) : n + n = 2*n := by
|
|
rw [Nat.mul_comm, Nat.mul_succ, Nat.mul_succ, Nat.mul_zero, Nat.zero_add]
|
|
|
|
attribute [-simp] foo -- Error
|
|
|
|
theorem ex1 {a b : Nat} (h₁ : a = b) : 0 + a = b := by
|
|
simp
|
|
assumption
|
|
|
|
section
|
|
|
|
attribute [-simp] Nat.zero_add
|
|
|
|
theorem ex2 {a b : Nat} (h₁ : a = b) : 0 + a = b := by
|
|
simp -- did not apply `Nat.zero_add`
|
|
rw [Nat.zero_add]
|
|
assumption
|
|
|
|
end
|
|
-- Effect of the attribute command above is gone
|
|
|
|
theorem ex3 {a b : Nat} (h₁ : a = b) : 0 + a = b := by
|
|
simp
|
|
assumption
|
|
|
|
theorem ex4 {a b : Nat} (h₁ : a = b) : 0 + a = b := by
|
|
simp [-Nat.zero_add]
|
|
rw [Nat.zero_add]
|
|
assumption
|