2015-06-13 18:32:59 +00:00
|
|
|
|
definition bla : ℕ → ℕ :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (a : ℕ), foo (succ (succ a)) (bla_2 a)
|
2015-06-13 18:32:59 +00:00
|
|
|
|
definition bla_1 : ∀ (x : ℕ), 0 < succ x :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (x : ℕ), zero_lt_succ x
|
2015-06-13 18:32:59 +00:00
|
|
|
|
definition bla_2 : ∀ (x : ℕ), 0 < succ (succ x) :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (x : ℕ), lt.step (bla_1 x)
|
2015-06-13 18:32:59 +00:00
|
|
|
|
definition test_1 [irreducible] : ∀ (x : ℕ), 0 < succ x :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (x : ℕ), zero_lt_succ x
|
2015-06-13 18:32:59 +00:00
|
|
|
|
definition test_2 [reducible] : ∀ (x : ℕ), 0 < succ (succ x) :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (x : ℕ), lt.step (test_1 x)
|
|
|
|
|
definition tst_1 : ∀ (x : Type.{l_1}) (x_1 : x) (x_2 : list.{l_1} x),
|
2015-06-13 18:32:59 +00:00
|
|
|
|
x_1 :: x_2 = nil.{l_1} → list.no_confusion_type.{0 l_1} false (x_1 :: x_2) nil.{l_1} :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (x : Type.{l_1}) (x_1 : x) (x_2 : list.{l_1} x), list.no_confusion.{0 l_1}
|
2015-06-13 18:32:59 +00:00
|
|
|
|
definition tst : Π {A : Type.{l_1}}, A → list.{l_1} A → bool :=
|
2015-06-13 00:32:18 +00:00
|
|
|
|
λ (A : Type.{l_1}) (a : A) (l : list.{l_1} A), voo.{(max 1 l_1)} (a :: l) nil.{l_1} (tst_1.{l_1} A a l)
|