lean2/tests/lean/tactic10.lean

25 lines
570 B
Text
Raw Normal View History

(* import("tactic.lua") *)
definition f(a : Bool) : Bool := not a.
definition g(a b : Bool) : Bool := a \/ b.
theorem T1 (a b : Bool) : (g a b) => (f b) => a := _.
unfold_all
apply discharge
apply discharge
disj_hyp
exact
absurd
done.
(*
simple_tac = Repeat(unfold_tac()) .. Repeat(OrElse(imp_tac(), conj_hyp_tac(), assumption_tac(), absurd_tac(), conj_hyp_tac(), disj_hyp_tac()))
*)
definition h(a b : Bool) : Bool := g a b.
theorem T2 (a b : Bool) : (h a b) => (f b) => a := _.
simple_tac
done.
print environment 1.