2014-08-05 23:46:43 +00:00
|
|
|
import data.nat.basic
|
2014-09-03 23:00:38 +00:00
|
|
|
open nat
|
2014-08-05 23:46:43 +00:00
|
|
|
|
|
|
|
set_option pp.coercion true
|
|
|
|
|
|
|
|
namespace foo
|
|
|
|
theorem trans {a b c : nat} (H1 : a = b) (H2 : b = c) : a = c :=
|
|
|
|
trans H1 H2
|
2014-08-07 23:59:08 +00:00
|
|
|
end foo
|
2014-08-05 23:46:43 +00:00
|
|
|
|
2014-09-03 23:00:38 +00:00
|
|
|
open foo
|
2014-08-05 23:46:43 +00:00
|
|
|
|
|
|
|
theorem tst (a b : nat) (H0 : b = a) (H : b = 0) : a = 0
|
|
|
|
:= have H1 : a = b, from symm H0,
|
|
|
|
trans H1 H
|
|
|
|
|
|
|
|
definition f (a b : nat) :=
|
|
|
|
let x := 3 in
|
|
|
|
a + x
|