Step
*
2
2
2
of Lemma
list-ext
.....set predicate..... 
1. ∀[T:Type]. colist(T) ≡ Unit ⋃ (T × colist(T))
2. A : Type
3. colist(A) ⊆r (Unit ⋃ (A × colist(A)))
4. (Unit ⋃ (A × colist(A))) ⊆r colist(A)
5. a2 : A
6. a3 : colist(A)
7. (colength(a3))↓
⊢ (colength(<a2, a3>))↓
BY
{ (RecUnfold `colength` 0 THEN Reduce 0) }
1
1. ∀[T:Type]. colist(T) ≡ Unit ⋃ (T × colist(T))
2. A : Type
3. colist(A) ⊆r (Unit ⋃ (A × colist(A)))
4. (Unit ⋃ (A × colist(A))) ⊆r colist(A)
5. a2 : A
6. a3 : colist(A)
7. (colength(a3))↓
⊢ (1 + colength(a3))↓
Latex:
Latex:
.....set  predicate..... 
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{}  (colength(<a2,  a3>))\mdownarrow{}
By
Latex:
(RecUnfold  `colength`  0  THEN  Reduce  0)
Home
Index