Step * 2 2 2 1 of Lemma list-ext


1. ∀[T:Type]. colist(T) ≡ Unit ⋃ (T × colist(T))
2. Type
3. colist(A) ⊆(Unit ⋃ (A × colist(A)))
4. (Unit ⋃ (A × colist(A))) ⊆colist(A)
5. a2 A
6. a3 colist(A)
7. (colength(a3))↓
⊢ (1 colength(a3))↓
BY
(Assert colength(a3) ∈ ℕ BY
         (BLemma  `termination` THEN Auto)) }

1
1. ∀[T:Type]. colist(T) ≡ Unit ⋃ (T × colist(T))
2. Type
3. colist(A) ⊆(Unit ⋃ (A × colist(A)))
4. (Unit ⋃ (A × colist(A))) ⊆colist(A)
5. a2 A
6. a3 colist(A)
7. (colength(a3))↓
8. colength(a3) ∈ ℕ
⊢ (1 colength(a3))↓


Latex:


Latex:

1.  \mforall{}[T:Type].  colist(T)  \mequiv{}  Unit  \mcup{}  (T  \mtimes{}  colist(T))
2.  A  :  Type
3.  colist(A)  \msubseteq{}r  (Unit  \mcup{}  (A  \mtimes{}  colist(A)))
4.  (Unit  \mcup{}  (A  \mtimes{}  colist(A)))  \msubseteq{}r  colist(A)
5.  a2  :  A
6.  a3  :  colist(A)
7.  (colength(a3))\mdownarrow{}
\mvdash{}  (1  +  colength(a3))\mdownarrow{}


By


Latex:
(Assert  colength(a3)  \mmember{}  \mBbbN{}  BY
              (BLemma    `termination`  THEN  Auto))




Home Index