import data.nat open nat tactic example (a b : nat) : a = succ b → a = b + 1 := by do H ← intro `H, try (unfold_at [`nat.succ] H), unfold [`add], dsimp, unfold [`nat.add], trace_state, assumption