Step
*
of Lemma
list-ext
∀[A:Type]. A List ≡ Unit ⋃ (A × (A List))
BY
{ (InstLemma `colist-ext` [] THEN Unfold `list` 0 THEN RepeatFor 3 (ParallelLast) THEN (D 0 THENA Auto)) }
1
.....subterm..... T:t
1:n
1. ∀[T:Type]. colist(T) ≡ Unit ⋃ (T × colist(T))
2. A : Type
3. (Unit ⋃ (A × colist(A))) ⊆r colist(A)
4. colist(A) ⊆r (Unit ⋃ (A × colist(A)))
5. x : {L:colist(A)| (colength(L))↓} 
⊢ x ∈ Unit ⋃ (A × {L:colist(A)| (colength(L))↓} )
2
.....subterm..... T:t
1:n
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. x : Unit ⋃ (A × {L:colist(A)| (colength(L))↓} )
⊢ x ∈ {L:colist(A)| (colength(L))↓} 
Latex:
Latex:
\mforall{}[A:Type].  A  List  \mequiv{}  Unit  \mcup{}  (A  \mtimes{}  (A  List))
By
Latex:
(InstLemma  `colist-ext`  []
  THEN  Unfold  `list`  0
  THEN  RepeatFor  3  (ParallelLast)
  THEN  (D  0  THENA  Auto))
Home
Index