p x ≡ p xx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x, e : x = y ⊢ t ⟹ p xx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x, e : x = y ⊢ t ⟸ p xx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x, e : x = y ⊢ e ⟹ x = yp y ≡ p yx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x, e : x = y ⊢ J(x.y.o.p y, t, e) ⟹ p yx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x, e : x = y ⊢ J(x.y.o.p y, t, e) ⟸ p yx : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ], t : p x ⊢ λ e. J(x.y.o.p y, t, e) ⟸ (x = y) ⟶ (p y)x : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ], p : [ a ⟶ U0 ] ⊢ λ t. λ e. J(x.y.o.p y, t, e) ⟸ (p x) ⟶ (x = y) ⟶ (p y)x : N, e : (S x) = 0, a : [ U0 ], x : [ a ], y : [ a ] ⊢ λ p. λ t. λ e. J(x.y.o.p y, t, e) ⟸ ∀ p : a ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)x : N, e : (S x) = 0, a : [ U0 ], x : [ a ] ⊢ λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e) ⟸ ∀ y : a. ∀ p : a ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)N ≡ Nx : N, e : (S x) = 0 ⊢ x ⟹ Nx : N, e : (S x) = 0, a : [ U0 ] ⊢ λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e) ⟸ ∀ x : a. ∀ y : a. ∀ p : a ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)N ≡ Nx : N, e : (S x) = 0, n : N ⊢ n ⟹ Nx : N, e : (S x) = 0 ⊢ x ⟸ Nx : N, e : (S x) = 0 ⊢ λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e) ⟸ ∀ a : U0. ∀ x : a. ∀ y : a. ∀ p : a ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)x : N, e : (S x) = 0, n : N, r : N, o : U0 ⊢ Unit ⟸ U0x : N, e : (S x) = 0, n : N ⊢ ⊥ ⟸ U0x : N, e : (S x) = 0, n : N, _ : N ⊢ U0 ⟹ U1x : N, e : (S x) = 0, n : N ⊢ n ⟸ NN ≡ Nx : N, e : (S x) = 0 ⊢ S x ⟹ Nx : N, e : (S x) = 0 ⊢ N ⟸ U0x : N, e : (S x) = 0 ⊢ (λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e)) ⟹ ∀ a : U0. ∀ x : a. ∀ y : a. ∀ p : a ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)x : N, e : (S x) = 0, n : N ⊢ IndN(_.U0, ⊥, r.o.Unit, n) ⟹ U0N ≡ Nx : N, e : (S x) = 0 ⊢ 0 ⟹ Nx : N, e : (S x) = 0 ⊢ S x ⟸ Nx : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N ⟹ ∀ x : N. ∀ y : N. ∀ p : N ⟶ U0. (p x) ⟶ (x = y) ⟶ (p y)x : N, e : (S x) = 0, n : N ⊢ IndN(_.U0, ⊥, r.o.Unit, n) ⟸ U0x : N, e : (S x) = 0 ⊢ 0 ⟸ Nx : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) ⟹ ∀ y : N. ∀ p : N ⟶ U0. (p (S x)) ⟶ ((S x) = y) ⟶ (p y)Unit ≡ Unitx : N, e : (S x) = 0 ⊢ () ⟹ Unitx : N, e : (S x) = 0 ⊢ λ n. IndN(_.U0, ⊥, r.o.Unit, n) ⟸ N ⟶ U0x : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 ⟹ ∀ p : N ⟶ U0. (p (S x)) ⟶ ((S x) = 0) ⟶ (p 0)(S x) = 0 ≡ (S x) = 0x : N, e : (S x) = 0 ⊢ e ⟹ (S x) = 0x : N, e : (S x) = 0 ⊢ () ⟸ Unitx : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) ⟹ Unit ⟶ ((S x) = 0) ⟶ ⊥x : N, e : (S x) = 0 ⊢ e ⟸ (S x) = 0x : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () ⟹ ((S x) = 0) ⟶ ⊥⊥ ≡ ⊥x : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () e ⟹ ⊥x : N, e : (S x) = 0 ⊢ ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () e ⟸ ⊥x : N ⊢ λ e. ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () e ⟸ ((S x) = 0) ⟶ ⊥ ⊢ λ x. λ e. ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () e ⟸ Π x : N. ((S x) = 0) ⟶ ⊥ ⊢ (λ x. λ e. ((λ a. λ x. λ y. λ p. λ t. λ e. J(x.y.o.p y, t, e))) N (S x) 0 (λ n. IndN(_.U0, ⊥, r.o.Unit, n)) () e) ⟹ Π x : N. ((S x) = 0) ⟶ ⊥