2014-08-24 19:58:48 -07:00
|
|
|
import logic
|
2014-06-30 00:51:11 -07:00
|
|
|
|
2014-07-22 09:43:18 -07:00
|
|
|
theorem tst (a b : Prop) (H : a ↔ b) : b ↔ a
|
2014-09-08 07:47:42 -07:00
|
|
|
:= have H1 [visible] : a → b, -- We need to mark H1 as fact, otherwise it is not visible by tactics
|
2014-09-04 21:25:21 -07:00
|
|
|
from iff.elim_left H,
|
2014-10-22 18:11:09 -07:00
|
|
|
by rapply iff.intro;
|
2014-10-23 22:36:32 -07:00
|
|
|
intro Ha;
|
|
|
|
apply (H1 Ha);
|
|
|
|
intro Hb;
|
|
|
|
apply (iff.elim_right H Hb)
|
2014-10-14 17:12:57 -07:00
|
|
|
|
|
|
|
theorem tst2 (a b : Prop) (H : a ↔ b) : b ↔ a
|
|
|
|
:= have H1 [visible] : a → b,
|
|
|
|
from iff.elim_left H,
|
|
|
|
begin
|
2014-10-22 18:11:09 -07:00
|
|
|
rapply iff.intro,
|
2014-10-23 22:36:32 -07:00
|
|
|
intro Ha;
|
|
|
|
apply (H1 Ha),
|
|
|
|
intro Hb;
|
|
|
|
apply (iff.elim_right H Hb)
|
2014-10-14 17:12:57 -07:00
|
|
|
end
|