Step * 2 1 1 2 2 1 of Lemma add-polynom-int-val


1. {1...}
2. : ℤ
3. : ℤ List
4. ∀[p,q:polyform(n 1)]. ∀[rmz:𝔹].  (add-polynom(n 1;rmz;p;q)@v (p@v q@v) ∈ ℤ)
5. v ∈ {l:ℤ List| ||l|| (n 1) ∈ ℤ
6. [u v] ∈ {l:ℤ List| ||l|| n ∈ ℤ
7. u1 polyform(n 1)
8. v1 polyform(n 1) List
9. ∀[q:polyform(n 1) List]. ∀[rmz:𝔹].  (add-polynom(n;rmz;v1;q)@[u v] (v1@[u v] q@[u v]) ∈ ℤ)
10. u2 polyform(n 1)
11. v2 polyform(n 1) List
12. ∀[rmz:𝔹]. (add-polynom(n;rmz;[u1 v1];v2)@[u v] ([u1 v1]@[u v] v2@[u v]) ∈ ℤ)
13. [u1 v1] ∈ polyform(n)
14. v1 ∈ polyform(n)
15. [u2 v2] ∈ polyform(n)
16. v2 ∈ polyform(n)
17. rmz : 𝔹
⊢ add-polynom(n;rmz;[u1 v1];[u2 v2])@[u v]
(((u1@v u^||v1||) v1@[u v]) (u2@v u^||v2||) v2@[u v])
∈ ℤ
BY
(RecUnfold `add-polynom` 0
   THEN (SplitOnConclITE THENA Auto)
   THEN Try ((Assert ⌜False⌝⋅ THEN Complete (Auto)))
   THEN RepeatFor ((CallByValueReduce THENA Auto))
   THEN Reduce 0
   THEN RepeatFor ((CallByValueReduce THENA Auto))) }

1
1. {1...}
2. : ℤ
3. : ℤ List
4. ∀[p,q:polyform(n 1)]. ∀[rmz:𝔹].  (add-polynom(n 1;rmz;p;q)@v (p@v q@v) ∈ ℤ)
5. v ∈ {l:ℤ List| ||l|| (n 1) ∈ ℤ
6. [u v] ∈ {l:ℤ List| ||l|| n ∈ ℤ
7. u1 polyform(n 1)
8. v1 polyform(n 1) List
9. ∀[q:polyform(n 1) List]. ∀[rmz:𝔹].  (add-polynom(n;rmz;v1;q)@[u v] (v1@[u v] q@[u v]) ∈ ℤ)
10. u2 polyform(n 1)
11. v2 polyform(n 1) List
12. ∀[rmz:𝔹]. (add-polynom(n;rmz;[u1 v1];v2)@[u v] ([u1 v1]@[u v] v2@[u v]) ∈ ℤ)
13. [u1 v1] ∈ polyform(n)
14. v1 ∈ polyform(n)
15. [u2 v2] ∈ polyform(n)
16. v2 ∈ polyform(n)
17. rmz : 𝔹
18. ¬(n 0 ∈ ℤ)
⊢ if (||v1|| 1) < (||v2|| 1)
     then let cs ⟵ add-polynom(n;ff;[u1 v1];v2)
          in [u2 cs]
     else if (||v2|| 1) < (||v1|| 1)
             then let cs ⟵ add-polynom(n;ff;v1;[u2 v2])
                  in [u1 cs]
             else let c ⟵ add-polynom(n 1;tt;u1;u2)
                  in let cs ⟵ add-polynom(n;ff;v1;v2)
                     in if rmz then rm-zeros(n 1;[c cs]) else [c cs] fi @[u v]
(((u1@v u^||v1||) v1@[u v]) (u2@v u^||v2||) v2@[u v])
∈ ℤ


Latex:


Latex:

1.  n  :  \{1...\}
2.  u  :  \mBbbZ{}
3.  v  :  \mBbbZ{}  List
4.  \mforall{}[p,q:polyform(n  -  1)].  \mforall{}[rmz:\mBbbB{}].    (add-polynom(n  -  1;rmz;p;q)@v  =  (p@v  +  q@v))
5.  v  \mmember{}  \{l:\mBbbZ{}  List|  ||l||  =  (n  -  1)\} 
6.  [u  /  v]  \mmember{}  \{l:\mBbbZ{}  List|  ||l||  =  n\} 
7.  u1  :  polyform(n  -  1)
8.  v1  :  polyform(n  -  1)  List
9.  \mforall{}[q:polyform(n  -  1)  List].  \mforall{}[rmz:\mBbbB{}].
          (add-polynom(n;rmz;v1;q)@[u  /  v]  =  (v1@[u  /  v]  +  q@[u  /  v]))
10.  u2  :  polyform(n  -  1)
11.  v2  :  polyform(n  -  1)  List
12.  \mforall{}[rmz:\mBbbB{}].  (add-polynom(n;rmz;[u1  /  v1];v2)@[u  /  v]  =  ([u1  /  v1]@[u  /  v]  +  v2@[u  /  v]))
13.  [u1  /  v1]  \mmember{}  polyform(n)
14.  v1  \mmember{}  polyform(n)
15.  [u2  /  v2]  \mmember{}  polyform(n)
16.  v2  \mmember{}  polyform(n)
17.  rmz  :  \mBbbB{}
\mvdash{}  add-polynom(n;rmz;[u1  /  v1];[u2  /  v2])@[u  /  v]
=  (((u1@v  *  u\^{}||v1||)  +  v1@[u  /  v])  +  (u2@v  *  u\^{}||v2||)  +  v2@[u  /  v])


By


Latex:
(RecUnfold  `add-polynom`  0
  THEN  (SplitOnConclITE  THENA  Auto)
  THEN  Try  ((Assert  \mkleeneopen{}False\mkleeneclose{}\mcdot{}  THEN  Complete  (Auto)))
  THEN  RepeatFor  2  ((CallByValueReduce  0  THENA  Auto))
  THEN  Reduce  0
  THEN  RepeatFor  2  ((CallByValueReduce  0  THENA  Auto)))




Home Index