Step * 2 of Lemma NextNonZero_wf


1. Type
2. T × ℤ
3. (T × ℤList
4. NextNonZero(v) ∈ {L':(T × ℤList| 
                     ∃Z:(T × {z:ℤ0 ∈ ℤList
                      ((v (Z L') ∈ ((T × ℤList)) ∧ (0 < ||L'||  ((snd(hd(L'))) 0 ∈ ℤ))))} 
⊢ if snd(u)=0 then NextNonZero(v) else [u v] ∈ {L':(T × ℤList| 
                                                  ∃Z:(T × {z:ℤ0 ∈ ℤList
                                                   (([u v] (Z L') ∈ ((T × ℤList))
                                                   ∧ (0 < ||L'||  ((snd(hd(L'))) 0 ∈ ℤ))))} 
BY
((D THEN Reduce 0) THEN (Decide ⌜u2 0 ∈ ℤ⌝⋅ THENA Auto) THEN Reduce 0) }

1
1. Type
2. u1 T
3. u2 : ℤ
4. (T × ℤList
5. NextNonZero(v) ∈ {L':(T × ℤList| 
                     ∃Z:(T × {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:ℤ0 ∈ ℤList
                     (([<u1, u2> v] (Z L') ∈ ((T × ℤList)) ∧ (0 < ||L'||  ((snd(hd(L'))) 0 ∈ ℤ))))} 

2
1. Type
2. u1 T
3. u2 : ℤ
4. (T × ℤList
5. NextNonZero(v) ∈ {L':(T × ℤList| 
                     ∃Z:(T × {z:ℤ0 ∈ ℤList
                      ((v (Z L') ∈ ((T × ℤList)) ∧ (0 < ||L'||  ((snd(hd(L'))) 0 ∈ ℤ))))} 
6. ¬(u2 0 ∈ ℤ)
⊢ [<u1, u2> v] ∈ {L':(T × ℤList| 
                    ∃Z:(T × {z:ℤ0 ∈ ℤList
                     (([<u1, u2> v] (Z L') ∈ ((T × ℤList)) ∧ (0 < ||L'||  ((snd(hd(L'))) 0 ∈ ℤ))))} 


Latex:


Latex:

1.  T  :  Type
2.  u  :  T  \mtimes{}  \mBbbZ{}
3.  v  :  (T  \mtimes{}  \mBbbZ{})  List
4.  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))))\} 
\mvdash{}  if  snd(u)=0  then  NextNonZero(v)  else  [u  /  v]  \mmember{}  \{L':(T  \mtimes{}  \mBbbZ{})  List| 
                                                                                                    \mexists{}Z:(T  \mtimes{}  \{z:\mBbbZ{}|  z  =  0\}  )  List
                                                                                                      (([u  /  v]  =  (Z  @  L'))
                                                                                                      \mwedge{}  (0  <  ||L'||  {}\mRightarrow{}  (\mneg{}((snd(hd(L')))  =  0))))\} 


By


Latex:
((D  2  THEN  Reduce  0)  THEN  (Decide  \mkleeneopen{}u2  =  0\mkleeneclose{}\mcdot{}  THENA  Auto)  THEN  Reduce  0)




Home Index