2013-12-26 23:54:53 +00:00
|
|
|
(** import("tactic.lua") **)
|
2013-12-07 21:09:39 +00:00
|
|
|
Variable f : Int -> Int -> Int
|
|
|
|
|
|
|
|
(**
|
|
|
|
refl_tac = apply_tac("Refl")
|
|
|
|
congr_tac = apply_tac("Congr")
|
|
|
|
symm_tac = apply_tac("Symm")
|
|
|
|
trans_tac = apply_tac("Trans")
|
|
|
|
unfold_homo_eq_tac = unfold_tac("eq")
|
2013-12-26 23:54:53 +00:00
|
|
|
auto = unfold_homo_eq_tac .. Repeat(OrElse(refl_tac, congr_tac, assumption_tac(), Then(symm_tac, assumption_tac(), now_tac())))
|
2013-12-07 21:09:39 +00:00
|
|
|
**)
|
|
|
|
|
|
|
|
Theorem T1 (a b c : Int) (H1 : a = b) (H2 : a = c) : (f (f a a) b) = (f (f b c) a).
|
2013-12-26 23:54:53 +00:00
|
|
|
auto.
|
2013-12-07 21:09:39 +00:00
|
|
|
done.
|
|
|
|
|
|
|
|
Theorem T2 (a b c : Int) (H1 : a = b) (H2 : a = c) : (f (f a c)) = (f (f b a)).
|
2013-12-26 23:54:53 +00:00
|
|
|
auto.
|
2013-12-07 21:09:39 +00:00
|
|
|
done.
|
|
|
|
|
|
|
|
Show Environment 2.
|