lean2/tests/lean/nested2.lean

32 lines
582 B
Text

import data.nat data.list
open nat
constant foo (a : nat) : a > 0 → nat
definition bla (a : nat) :=
foo
(succ (succ a))
abstract lt.step abstract zero_lt_succ a end end
print bla
print bla_1
print bla_2
definition test (a : nat) :=
foo
(succ (succ a))
abstract [reducible] lt.step abstract [irreducible] zero_lt_succ a end end
print test_1
print test_2
constant voo {A : Type} (a b : A) : a ≠ b → bool
set_option pp.universes true
open list
definition tst {A : Type} (a : A) (l : list A) :=
voo (a::l) [] abstract by contradiction end
print tst_1
print tst