Step 
*
 of Lemma 
fun-connected-induction
∀[T:Type]
  ∀f:T ⟶ T
    ∀[R:T ⟶ T ⟶ ℙ]
      ((∀x:T. R[x;x])
      ⇒ (∀x,y,z:T.  (y is f*(z) ⇒ R[y;z] ⇒ R[x;z]) supposing ((¬(x = y ∈ T)) and (x = (f y) ∈ T)))
      ⇒ {∀x,y:T.  (x is f*(y) ⇒ R[x;y])})
BY
 
{ xxx(Unfold `guard` 0 THEN RepeatFor 5 ((D 0 THENA Auto)) THEN FunConnectedInd THEN Auto)xxx }
1
1. [T] : Type
2. f : T ⟶ T
3. [R] : T ⟶ T ⟶ ℙ
4. ∀x:T. R[x;x]
5. ∀x,y,z:T.  (y is f*(z) ⇒ R[y;z] ⇒ R[x;z]) supposing ((¬(x = y ∈ T)) and (x = (f y) ∈ T))
6. u : T
7. v : T List
8. ∀x,y:T.  (x=f*(y) via v ⇒ R[x;y])
9. x : T
10. y : T
11. x = u ∈ T
12. 0 < ||v||
13. x = (f hd(v)) ∈ T
14. ¬(x = hd(v) ∈ T)
15. hd(v)=f*(y) via v
16. R[hd(v);y]
⊢ R[x;y]
 
Latex: 
Latex:
\mforall{}[T:Type]
    \mforall{}f:T  {}\mrightarrow{}  T
        \mforall{}[R:T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}]
            ((\mforall{}x:T.  R[x;x])
            {}\mRightarrow{}  (\mforall{}x,y,z:T.    (y  is  f*(z)  {}\mRightarrow{}  R[y;z]  {}\mRightarrow{}  R[x;z])  supposing  ((\mneg{}(x  =  y))  and  (x  =  (f  y))))
            {}\mRightarrow{}  \{\mforall{}x,y:T.    (x  is  f*(y)  {}\mRightarrow{}  R[x;y])\})
 By 
Latex:
xxx(Unfold  `guard`  0  THEN  RepeatFor  5  ((D  0  THENA  Auto))  THEN  FunConnectedInd  THEN  Auto)xxx
Home
Index