Step
*
2
1
of Lemma
NextNonZero_wf
1. T : Type
2. u1 : T
3. u2 : ℤ
4. v : (T × ℤ) List
5. NextNonZero(v) ∈ {L':(T × ℤ) List| 
                     ∃Z:(T × {z:ℤ| z = 0 ∈ ℤ} ) List
                      ((v = (Z @ L') ∈ ((T × ℤ) List)) ∧ (0 < ||L'|| 
⇒ (¬((snd(hd(L'))) = 0 ∈ ℤ))))} 
6. u2 = 0 ∈ ℤ
⊢ NextNonZero(v) ∈ {L':(T × ℤ) List| 
                    ∃Z:(T × {z:ℤ| z = 0 ∈ ℤ} ) List
                     (([<u1, u2> / v] = (Z @ L') ∈ ((T × ℤ) List)) ∧ (0 < ||L'|| 
⇒ (¬((snd(hd(L'))) = 0 ∈ ℤ))))} 
BY
{ ((MemTypeHD (-2) THENA Auto) THEN ExRepD THEN MemTypeCD THEN Auto) }
1
.....set predicate..... 
1. T : Type
2. u1 : T
3. u2 : ℤ
4. v : (T × ℤ) List
5. NextNonZero(v) = NextNonZero(v) ∈ ((T × ℤ) List)
6. Z : (T × {z:ℤ| z = 0 ∈ ℤ} ) List
7. v = (Z @ NextNonZero(v)) ∈ ((T × ℤ) List)
8. 0 < ||NextNonZero(v)|| 
⇒ (¬((snd(hd(NextNonZero(v)))) = 0 ∈ ℤ))
9. u2 = 0 ∈ ℤ
⊢ ∃Z:(T × {z:ℤ| z = 0 ∈ ℤ} ) List
   (([<u1, u2> / v] = (Z @ NextNonZero(v)) ∈ ((T × ℤ) List))
   ∧ (0 < ||NextNonZero(v)|| 
⇒ (¬((snd(hd(NextNonZero(v)))) = 0 ∈ ℤ))))
Latex:
Latex:
1.  T  :  Type
2.  u1  :  T
3.  u2  :  \mBbbZ{}
4.  v  :  (T  \mtimes{}  \mBbbZ{})  List
5.  NextNonZero(v)  \mmember{}  \{L':(T  \mtimes{}  \mBbbZ{})  List| 
                                          \mexists{}Z:(T  \mtimes{}  \{z:\mBbbZ{}|  z  =  0\}  )  List
                                            ((v  =  (Z  @  L'))  \mwedge{}  (0  <  ||L'||  {}\mRightarrow{}  (\mneg{}((snd(hd(L')))  =  0))))\} 
6.  u2  =  0
\mvdash{}  NextNonZero(v)  \mmember{}  \{L':(T  \mtimes{}  \mBbbZ{})  List| 
                                        \mexists{}Z:(T  \mtimes{}  \{z:\mBbbZ{}|  z  =  0\}  )  List
                                          (([<u1,  u2>  /  v]  =  (Z  @  L'))  \mwedge{}  (0  <  ||L'||  {}\mRightarrow{}  (\mneg{}((snd(hd(L')))  =  0))))\} 
By
Latex:
((MemTypeHD  (-2)  THENA  Auto)  THEN  ExRepD  THEN  MemTypeCD  THEN  Auto)
Home
Index