Step
*
2
1
1
of Lemma
NextNonZero_wf
.....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 ∈ ℤ))))
BY
{ (D 0 With ⌜[<u1, u2> / Z]⌝  THEN Auto) }
1
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 ∈ ℤ
⊢ [<u1, u2> / v] = ([<u1, u2> / Z] @ NextNonZero(v)) ∈ ((T × ℤ) List)
Latex:
Latex:
.....set  predicate..... 
1.  T  :  Type
2.  u1  :  T
3.  u2  :  \mBbbZ{}
4.  v  :  (T  \mtimes{}  \mBbbZ{})  List
5.  NextNonZero(v)  =  NextNonZero(v)
6.  Z  :  (T  \mtimes{}  \{z:\mBbbZ{}|  z  =  0\}  )  List
7.  v  =  (Z  @  NextNonZero(v))
8.  0  <  ||NextNonZero(v)||  {}\mRightarrow{}  (\mneg{}((snd(hd(NextNonZero(v))))  =  0))
9.  u2  =  0
\mvdash{}  \mexists{}Z:(T  \mtimes{}  \{z:\mBbbZ{}|  z  =  0\}  )  List
      (([<u1,  u2>  /  v]  =  (Z  @  NextNonZero(v)))
      \mwedge{}  (0  <  ||NextNonZero(v)||  {}\mRightarrow{}  (\mneg{}((snd(hd(NextNonZero(v))))  =  0))))
By
Latex:
(D  0  With  \mkleeneopen{}[<u1,  u2>  /  Z]\mkleeneclose{}    THEN  Auto)
Home
Index