Step
*
1
of Lemma
list-functionality-induction
1. T : Type
2. A : Type
3. F : Base
4. F[[]] ∈ A
5. ∀a1,a2,L1,L2:Base.  ((a1 = a2 ∈ T) 
⇒ (F[L1] = F[L2] ∈ A) 
⇒ (F[[a1 / L1]] = F[[a2 / L2]] ∈ A))
6. L : Base
7. L1 : Base
8. L = L1 ∈ (T List)
⊢ F[L] = F[L1] ∈ A
BY
{ Assert ⌜∀n:ℕ. ∀L,L2:Base.  ((L = L2 ∈ (T List)) 
⇒ (colength(L) = n ∈ ℤ) 
⇒ (F[L] = F[L2] ∈ A))⌝⋅ }
1
.....assertion..... 
1. T : Type
2. A : Type
3. F : Base
4. F[[]] ∈ A
5. ∀a1,a2,L1,L2:Base.  ((a1 = a2 ∈ T) 
⇒ (F[L1] = F[L2] ∈ A) 
⇒ (F[[a1 / L1]] = F[[a2 / L2]] ∈ A))
6. L : Base
7. L1 : Base
8. L = L1 ∈ (T List)
⊢ ∀n:ℕ. ∀L,L2:Base.  ((L = L2 ∈ (T List)) 
⇒ (colength(L) = n ∈ ℤ) 
⇒ (F[L] = F[L2] ∈ A))
2
1. T : Type
2. A : Type
3. F : Base
4. F[[]] ∈ A
5. ∀a1,a2,L1,L2:Base.  ((a1 = a2 ∈ T) 
⇒ (F[L1] = F[L2] ∈ A) 
⇒ (F[[a1 / L1]] = F[[a2 / L2]] ∈ A))
6. L : Base
7. L1 : Base
8. L = L1 ∈ (T List)
9. ∀n:ℕ. ∀L,L2:Base.  ((L = L2 ∈ (T List)) 
⇒ (colength(L) = n ∈ ℤ) 
⇒ (F[L] = F[L2] ∈ A))
⊢ F[L] = F[L1] ∈ A
Latex:
Latex:
1.  T  :  Type
2.  A  :  Type
3.  F  :  Base
4.  F[[]]  \mmember{}  A
5.  \mforall{}a1,a2,L1,L2:Base.    ((a1  =  a2)  {}\mRightarrow{}  (F[L1]  =  F[L2])  {}\mRightarrow{}  (F[[a1  /  L1]]  =  F[[a2  /  L2]]))
6.  L  :  Base
7.  L1  :  Base
8.  L  =  L1
\mvdash{}  F[L]  =  F[L1]
By
Latex:
Assert  \mkleeneopen{}\mforall{}n:\mBbbN{}.  \mforall{}L,L2:Base.    ((L  =  L2)  {}\mRightarrow{}  (colength(L)  =  n)  {}\mRightarrow{}  (F[L]  =  F[L2]))\mkleeneclose{}\mcdot{}
Home
Index