2014-09-04 21:21:03 +00:00
|
|
|
import logic
|
2014-11-23 01:34:05 +00:00
|
|
|
namespace experiment
|
2014-10-02 23:20:52 +00:00
|
|
|
constant nat : Type.{1}
|
|
|
|
constant int : Type.{1}
|
|
|
|
constant of_nat : nat → int
|
2014-09-04 21:21:03 +00:00
|
|
|
coercion of_nat
|
2014-10-02 23:20:52 +00:00
|
|
|
constant nat_add : nat → nat → nat
|
|
|
|
constant int_add : int → int → int
|
2014-10-21 22:27:45 +00:00
|
|
|
infixl `+` := int_add
|
|
|
|
infixl `+` := nat_add
|
2014-09-04 21:21:03 +00:00
|
|
|
|
|
|
|
print "================"
|
2014-10-02 23:20:52 +00:00
|
|
|
constant tst (n m : nat) : @eq int (of_nat n + of_nat m) (n + m)
|
2014-09-04 21:21:03 +00:00
|
|
|
|
|
|
|
check tst
|
|
|
|
exit
|