23 lines
721 B
Text
23 lines
721 B
Text
import data.finset data.num data.nat data.int algebra.ring
|
||
open finset num nat int algebra
|
||
|
||
check @finset.insert _ _ 1 (@finset.empty ℕ)
|
||
|
||
check '{(1:nat), 2, 3}
|
||
check ('{1, 2, 3} : finset ℕ)
|
||
check ('{1, 2, 3} : finset ℕ) -- finset ℕ
|
||
check ('{1, 2, 3} : finset ℤ) -- finset ℤ
|
||
|
||
example : finset nat :=
|
||
insert 1 (insert 2 (insert 3 empty))
|
||
|
||
check insert 1 (insert 2 (insert 3 empty)) -- finset num
|
||
check (insert 1 (insert 2 (insert 3 empty)) : finset nat)
|
||
|
||
check (insert (1:nat) (insert (2:nat) (insert (3:nat) empty)))
|
||
|
||
definition foo_nat (x : finset ℕ) : finset ℕ := x
|
||
definition foo_int (x : finset ℤ) : finset ℤ := x
|
||
|
||
check foo_nat '{1, 2, 3} -- finset ℕ
|
||
check foo_int '{1, 2, 3} -- finset ℤ
|