Step
*
1
2
2
2
1
1
2
1
of Lemma
add-ipoly_wf
.....assertion..... 
1. n : ℤ
2. 0 < n
3. ∀p,q:iMonomial() List.
     (||p|| + ||q|| < n - 1
     
⇒ (∀i:ℕ||p||. ∀j:ℕi.  imonomial-less(p[j];p[i]))
     
⇒ (∀i:ℕ||q||. ∀j:ℕi.  imonomial-less(q[j];q[i]))
     
⇒ (↓∀i:ℕ||add-ipoly(p;q)||. ∀j:ℕi.  imonomial-less(add-ipoly(p;q)[j];add-ipoly(p;q)[i])))
4. u2 : ℤ-o
5. u3 : {vs:ℤ List| sorted(vs)} 
6. v : iMonomial() List
7. u4 : ℤ-o
8. u2 + u4 ≠ 0
9. u5 : {vs:ℤ List| sorted(vs)} 
10. v1 : iMonomial() List
11. ||[<u2, u3> / v]|| + ||[<u4, u5> / v1]|| < n
12. ∀i:ℕ||[<u2, u3> / v]||. ∀j:ℕi.  imonomial-less([<u2, u3> / v][j];[<u2, u3> / v][i])
13. ∀i:ℕ||[<u4, u5> / v1]||. ∀j:ℕi.  imonomial-less([<u4, u5> / v1][j];[<u4, u5> / v1][i])
14. ↑imonomial-le(<u2, u3><u4, u5>)
15. ↑imonomial-le(<u4, u5><u2, u3>)
16. ∀i:ℕ||add-ipoly(v;v1)||. ∀j:ℕi.  imonomial-less(add-ipoly(v;v1)[j];add-ipoly(v;v1)[i])
17. i : ℕ||add-ipoly(v;v1)|| + 1@i
18. j : ℕi@i
⊢ imonomial-less(<u2 + u4, u3>add-ipoly(v;v1)[0])
BY
{ ((Assert u3 = u5 ∈ (ℤ List) BY
          (∀h:hyp. (RepUR ``imonomial-le`` h THEN (RWO "eqtt_to_assert<" h THENA Auto)) 
           THEN FLemma `intlex-antisym` [-5;-4]
           THEN Auto))
   THEN Eliminate ⌜u3⌝⋅
   ) }
1
1. u5 : {vs:ℤ List| sorted(vs)} 
2. n : ℤ
3. 0 < n
4. ∀p,q:iMonomial() List.
     (||p|| + ||q|| < n - 1
     
⇒ (∀i:ℕ||p||. ∀j:ℕi.  imonomial-less(p[j];p[i]))
     
⇒ (∀i:ℕ||q||. ∀j:ℕi.  imonomial-less(q[j];q[i]))
     
⇒ (↓∀i:ℕ||add-ipoly(p;q)||. ∀j:ℕi.  imonomial-less(add-ipoly(p;q)[j];add-ipoly(p;q)[i])))
5. u2 : ℤ-o
6. u3 : {vs:ℤ List| sorted(vs)} 
7. v : iMonomial() List
8. u4 : ℤ-o
9. u2 + u4 ≠ 0
10. v1 : iMonomial() List
11. ||[<u2, u5> / v]|| + ||[<u4, u5> / v1]|| < n
12. ∀i:ℕ||[<u2, u5> / v]||. ∀j:ℕi.  imonomial-less([<u2, u5> / v][j];[<u2, u5> / v][i])
13. ∀i:ℕ||[<u4, u5> / v1]||. ∀j:ℕi.  imonomial-less([<u4, u5> / v1][j];[<u4, u5> / v1][i])
14. ↑imonomial-le(<u2, u5><u4, u5>)
15. ↑imonomial-le(<u4, u5><u2, u5>)
16. ∀i:ℕ||add-ipoly(v;v1)||. ∀j:ℕi.  imonomial-less(add-ipoly(v;v1)[j];add-ipoly(v;v1)[i])
17. i : ℕ||add-ipoly(v;v1)|| + 1@i
18. j : ℕi@i
19. u3 = u5 ∈ (ℤ List)
⊢ imonomial-less(<u2 + u4, u5>add-ipoly(v;v1)[0])
Latex:
Latex:
.....assertion..... 
1.  n  :  \mBbbZ{}
2.  0  <  n
3.  \mforall{}p,q:iMonomial()  List.
          (||p||  +  ||q||  <  n  -  1
          {}\mRightarrow{}  (\mforall{}i:\mBbbN{}||p||.  \mforall{}j:\mBbbN{}i.    imonomial-less(p[j];p[i]))
          {}\mRightarrow{}  (\mforall{}i:\mBbbN{}||q||.  \mforall{}j:\mBbbN{}i.    imonomial-less(q[j];q[i]))
          {}\mRightarrow{}  (\mdownarrow{}\mforall{}i:\mBbbN{}||add-ipoly(p;q)||.  \mforall{}j:\mBbbN{}i.    imonomial-less(add-ipoly(p;q)[j];add-ipoly(p;q)[i])))
4.  u2  :  \mBbbZ{}\msupminus{}\msupzero{}
5.  u3  :  \{vs:\mBbbZ{}  List|  sorted(vs)\} 
6.  v  :  iMonomial()  List
7.  u4  :  \mBbbZ{}\msupminus{}\msupzero{}
8.  u2  +  u4  \mneq{}  0
9.  u5  :  \{vs:\mBbbZ{}  List|  sorted(vs)\} 
10.  v1  :  iMonomial()  List
11.  ||[<u2,  u3>  /  v]||  +  ||[<u4,  u5>  /  v1]||  <  n
12.  \mforall{}i:\mBbbN{}||[<u2,  u3>  /  v]||.  \mforall{}j:\mBbbN{}i.    imonomial-less([<u2,  u3>  /  v][j];[<u2,  u3>  /  v][i])
13.  \mforall{}i:\mBbbN{}||[<u4,  u5>  /  v1]||.  \mforall{}j:\mBbbN{}i.    imonomial-less([<u4,  u5>  /  v1][j];[<u4,  u5>  /  v1][i])
14.  \muparrow{}imonomial-le(<u2,  u3><u4,  u5>)
15.  \muparrow{}imonomial-le(<u4,  u5><u2,  u3>)
16.  \mforall{}i:\mBbbN{}||add-ipoly(v;v1)||.  \mforall{}j:\mBbbN{}i.    imonomial-less(add-ipoly(v;v1)[j];add-ipoly(v;v1)[i])
17.  i  :  \mBbbN{}||add-ipoly(v;v1)||  +  1@i
18.  j  :  \mBbbN{}i@i
\mvdash{}  imonomial-less(<u2  +  u4,  u3>add-ipoly(v;v1)[0])
By
Latex:
((Assert  u3  =  u5  BY
                (\mforall{}h:hyp.  (RepUR  ``imonomial-le``  h  THEN  (RWO  "eqtt\_to\_assert<"  h  THENA  Auto)) 
                  THEN  FLemma  `intlex-antisym`  [-5;-4]
                  THEN  Auto))
  THEN  Eliminate  \mkleeneopen{}u3\mkleeneclose{}\mcdot{}
  )
Home
Index