lean2/tests/lean/run/all_goals2.lean
Leonardo de Moura a23118d357 feat(frontends/lean): add tactic_notation command
This addresses the first part of issue #461

We still need support for tactic definitions
2015-04-27 17:46:13 -07:00

23 lines
464 B
Text

import data.nat
open nat
attribute nat.add [unfold-c 2]
attribute nat.rec_on [unfold-c 2]
infixl `;`:15 := tactic.and_then
namespace tactic
definition then_all (t1 t2 : tactic) : tactic :=
focus (t1 ; all_goals t2)
end tactic
tactic_infixl `;;`:15 := tactic.then_all
open tactic
example (a b c : nat) : (a + 0 = 0 + a ∧ b + 0 = 0 + b) ∧ c = c :=
begin
apply and.intro,
apply and.intro ;; (esimp[of_num]; state; rewrite zero_add),
apply rfl
end