19 lines
517 B
Text
19 lines
517 B
Text
open tactic nat expr option
|
|
|
|
definition succ_eq_add [defeq] (n : nat) : succ n = n + 1 :=
|
|
rfl
|
|
|
|
example (a b : nat) : a = b → succ (succ a) = succ (b + 1) :=
|
|
by do intro "Heq",
|
|
t ← target,
|
|
trace_state,
|
|
t' ← defeq_simp t,
|
|
change t',
|
|
trace "---- after change ----",
|
|
trace_state,
|
|
get_local "a" >>= subst,
|
|
t ← target,
|
|
match is_eq t with
|
|
| some (lhs, rhs) := do pr ← mk_app ("eq" <.> "refl") [lhs], exact pr
|
|
| none := failed
|
|
end
|