Step
*
3
1
2
2
1
1
1
1
1
of Lemma
mul-polynom-val
1. k : ℕ
2. ∀k:ℕk
     ∀[n:ℕ]. ∀[p,q:polyform(n)].
       (((tree_size(p) + tree_size(q)) ≤ k) 
⇒ (∀[l:{l:ℤ List| n ≤ ||l||} ]. (mul-polynom(p;q)@l = (p@l * q@l) ∈ ℤ)))
3. n : ℕ
4. left : tree(ℤ)
5. p2 : tree(ℤ)
6. ((↑(ispolyform(left) (n - 1))) ∧ (↑(ispolyform(p2) n))) ∧ 0 < n
7. q1 : ℤ
8. True
9. (((1 + tree_size(left)) + tree_size(p2)) + 0) ≤ k
10. u : ℤ
11. v : ℤ List
12. n ≤ (||v|| + 1)
13. mul-polynom(left;tree_leaf(q1)) ∈ polyform(n - 1)
14. mul-polynom(p2;tree_leaf(q1)) ∈ polyform(n)
15. mul-polynom(left;tree_leaf(q1))@v = (left@v * tree_leaf(q1)@v) ∈ ℤ
16. mul-polynom(p2;tree_leaf(q1))@[u / v] = (p2@[u / v] * tree_leaf(q1)@[u / v]) ∈ ℤ
17. left ∈ polyform(n - 1)
18. p2 ∈ polyform(n)
⊢ if p2@[u / v] * q1=0 then left@v * q1 else ((left@v * q1) + (u * p2@[u / v] * q1))
= (if p2@[u / v]=0 then left@v else (left@v + (u * p2@[u / v])) * q1)
∈ ℤ
BY
{ ((Decide ⌜p2@[u / v] = 0 ∈ ℤ⌝⋅ THENA Auto) THEN Reduce 0) }
1
1. k : ℕ
2. ∀k:ℕk
     ∀[n:ℕ]. ∀[p,q:polyform(n)].
       (((tree_size(p) + tree_size(q)) ≤ k) 
⇒ (∀[l:{l:ℤ List| n ≤ ||l||} ]. (mul-polynom(p;q)@l = (p@l * q@l) ∈ ℤ)))
3. n : ℕ
4. left : tree(ℤ)
5. p2 : tree(ℤ)
6. ((↑(ispolyform(left) (n - 1))) ∧ (↑(ispolyform(p2) n))) ∧ 0 < n
7. q1 : ℤ
8. True
9. (((1 + tree_size(left)) + tree_size(p2)) + 0) ≤ k
10. u : ℤ
11. v : ℤ List
12. n ≤ (||v|| + 1)
13. mul-polynom(left;tree_leaf(q1)) ∈ polyform(n - 1)
14. mul-polynom(p2;tree_leaf(q1)) ∈ polyform(n)
15. mul-polynom(left;tree_leaf(q1))@v = (left@v * tree_leaf(q1)@v) ∈ ℤ
16. mul-polynom(p2;tree_leaf(q1))@[u / v] = (p2@[u / v] * tree_leaf(q1)@[u / v]) ∈ ℤ
17. left ∈ polyform(n - 1)
18. p2 ∈ polyform(n)
19. p2@[u / v] = 0 ∈ ℤ
⊢ if p2@[u / v] * q1=0 then left@v * q1 else ((left@v * q1) + (u * p2@[u / v] * q1)) = (left@v * q1) ∈ ℤ
2
1. k : ℕ
2. ∀k:ℕk
     ∀[n:ℕ]. ∀[p,q:polyform(n)].
       (((tree_size(p) + tree_size(q)) ≤ k) 
⇒ (∀[l:{l:ℤ List| n ≤ ||l||} ]. (mul-polynom(p;q)@l = (p@l * q@l) ∈ ℤ)))
3. n : ℕ
4. left : tree(ℤ)
5. p2 : tree(ℤ)
6. ((↑(ispolyform(left) (n - 1))) ∧ (↑(ispolyform(p2) n))) ∧ 0 < n
7. q1 : ℤ
8. True
9. (((1 + tree_size(left)) + tree_size(p2)) + 0) ≤ k
10. u : ℤ
11. v : ℤ List
12. n ≤ (||v|| + 1)
13. mul-polynom(left;tree_leaf(q1)) ∈ polyform(n - 1)
14. mul-polynom(p2;tree_leaf(q1)) ∈ polyform(n)
15. mul-polynom(left;tree_leaf(q1))@v = (left@v * tree_leaf(q1)@v) ∈ ℤ
16. mul-polynom(p2;tree_leaf(q1))@[u / v] = (p2@[u / v] * tree_leaf(q1)@[u / v]) ∈ ℤ
17. left ∈ polyform(n - 1)
18. p2 ∈ polyform(n)
19. ¬(p2@[u / v] = 0 ∈ ℤ)
⊢ if p2@[u / v] * q1=0 then left@v * q1 else ((left@v * q1) + (u * p2@[u / v] * q1))
= ((left@v + (u * p2@[u / v])) * q1)
∈ ℤ
Latex:
Latex:
1.  k  :  \mBbbN{}
2.  \mforall{}k:\mBbbN{}k
          \mforall{}[n:\mBbbN{}].  \mforall{}[p,q:polyform(n)].
              (((tree\_size(p)  +  tree\_size(q))  \mleq{}  k)
              {}\mRightarrow{}  (\mforall{}[l:\{l:\mBbbZ{}  List|  n  \mleq{}  ||l||\}  ].  (mul-polynom(p;q)@l  =  (p@l  *  q@l))))
3.  n  :  \mBbbN{}
4.  left  :  tree(\mBbbZ{})
5.  p2  :  tree(\mBbbZ{})
6.  ((\muparrow{}(ispolyform(left)  (n  -  1)))  \mwedge{}  (\muparrow{}(ispolyform(p2)  n)))  \mwedge{}  0  <  n
7.  q1  :  \mBbbZ{}
8.  True
9.  (((1  +  tree\_size(left))  +  tree\_size(p2))  +  0)  \mleq{}  k
10.  u  :  \mBbbZ{}
11.  v  :  \mBbbZ{}  List
12.  n  \mleq{}  (||v||  +  1)
13.  mul-polynom(left;tree\_leaf(q1))  \mmember{}  polyform(n  -  1)
14.  mul-polynom(p2;tree\_leaf(q1))  \mmember{}  polyform(n)
15.  mul-polynom(left;tree\_leaf(q1))@v  =  (left@v  *  tree\_leaf(q1)@v)
16.  mul-polynom(p2;tree\_leaf(q1))@[u  /  v]  =  (p2@[u  /  v]  *  tree\_leaf(q1)@[u  /  v])
17.  left  \mmember{}  polyform(n  -  1)
18.  p2  \mmember{}  polyform(n)
\mvdash{}  if  p2@[u  /  v]  *  q1=0  then  left@v  *  q1  else  ((left@v  *  q1)  +  (u  *  p2@[u  /  v]  *  q1))
=  (if  p2@[u  /  v]=0  then  left@v  else  (left@v  +  (u  *  p2@[u  /  v]))  *  q1)
By
Latex:
((Decide  \mkleeneopen{}p2@[u  /  v]  =  0\mkleeneclose{}\mcdot{}  THENA  Auto)  THEN  Reduce  0)
Home
Index