Step
*
2
1
2
1
1
1
of Lemma
add-polynom_wf1
1. n : {1...}
2. ∀[p,q:polyform(n - 1)]. ∀[rmz:𝔹].  (add-polynom(n - 1;rmz;p;q) ∈ polyform(n - 1))
3. u : polyform(n - 1)
4. v : polyform(n - 1) List
5. ∀[q:polyform(n - 1) List]. ∀[rmz:𝔹].  (add-polynom(n;rmz;v;q) ∈ polyform(n - 1) List)
6. u1 : polyform(n - 1)
7. v1 : polyform(n - 1) List
8. ∀rmz:𝔹. (add-polynom(n;rmz;[u / v];v1) ∈ polyform(n - 1) List)
9. rmz : 𝔹@i
10. ¬(n = 0 ∈ ℤ)
11. A : polyform(n - 1) List@i
12. add-polynom(n;ff;[u / v];v1) = A ∈ (polyform(n - 1) List)
13. B : polyform(n - 1) List@i
14. add-polynom(n;ff;v;[u1 / v1]) = B ∈ (polyform(n - 1) List)
15. C : polyform(n - 1)@i
16. add-polynom(n - 1;tt;u;u1) = C ∈ polyform(n - 1)
17. D : polyform(n - 1) List@i
18. add-polynom(n;rmz;v;v1) = D ∈ (polyform(n - 1) List)
19. E : polyform(n - 1) List@i
20. add-polynom(n;ff;v;v1) = E ∈ (polyform(n - 1) List)
⊢ if (||v|| + 1) < (||v1|| + 1)
     then [u1 / A]
     else if (||v1|| + 1) < (||v|| + 1)  then [u / B]  else if rmz then rm-zeros(n - 1;[C / E]) else [C / E] fi 
  ∈ polyform(n - 1) List
BY
{ Assert ⌜rm-zeros(n - 1;[C / E]) ∈ polyform(n - 1) List⌝⋅ }
1
.....assertion..... 
1. n : {1...}
2. ∀[p,q:polyform(n - 1)]. ∀[rmz:𝔹].  (add-polynom(n - 1;rmz;p;q) ∈ polyform(n - 1))
3. u : polyform(n - 1)
4. v : polyform(n - 1) List
5. ∀[q:polyform(n - 1) List]. ∀[rmz:𝔹].  (add-polynom(n;rmz;v;q) ∈ polyform(n - 1) List)
6. u1 : polyform(n - 1)
7. v1 : polyform(n - 1) List
8. ∀rmz:𝔹. (add-polynom(n;rmz;[u / v];v1) ∈ polyform(n - 1) List)
9. rmz : 𝔹@i
10. ¬(n = 0 ∈ ℤ)
11. A : polyform(n - 1) List@i
12. add-polynom(n;ff;[u / v];v1) = A ∈ (polyform(n - 1) List)
13. B : polyform(n - 1) List@i
14. add-polynom(n;ff;v;[u1 / v1]) = B ∈ (polyform(n - 1) List)
15. C : polyform(n - 1)@i
16. add-polynom(n - 1;tt;u;u1) = C ∈ polyform(n - 1)
17. D : polyform(n - 1) List@i
18. add-polynom(n;rmz;v;v1) = D ∈ (polyform(n - 1) List)
19. E : polyform(n - 1) List@i
20. add-polynom(n;ff;v;v1) = E ∈ (polyform(n - 1) List)
⊢ rm-zeros(n - 1;[C / E]) ∈ polyform(n - 1) List
2
1. n : {1...}
2. ∀[p,q:polyform(n - 1)]. ∀[rmz:𝔹].  (add-polynom(n - 1;rmz;p;q) ∈ polyform(n - 1))
3. u : polyform(n - 1)
4. v : polyform(n - 1) List
5. ∀[q:polyform(n - 1) List]. ∀[rmz:𝔹].  (add-polynom(n;rmz;v;q) ∈ polyform(n - 1) List)
6. u1 : polyform(n - 1)
7. v1 : polyform(n - 1) List
8. ∀rmz:𝔹. (add-polynom(n;rmz;[u / v];v1) ∈ polyform(n - 1) List)
9. rmz : 𝔹@i
10. ¬(n = 0 ∈ ℤ)
11. A : polyform(n - 1) List@i
12. add-polynom(n;ff;[u / v];v1) = A ∈ (polyform(n - 1) List)
13. B : polyform(n - 1) List@i
14. add-polynom(n;ff;v;[u1 / v1]) = B ∈ (polyform(n - 1) List)
15. C : polyform(n - 1)@i
16. add-polynom(n - 1;tt;u;u1) = C ∈ polyform(n - 1)
17. D : polyform(n - 1) List@i
18. add-polynom(n;rmz;v;v1) = D ∈ (polyform(n - 1) List)
19. E : polyform(n - 1) List@i
20. add-polynom(n;ff;v;v1) = E ∈ (polyform(n - 1) List)
21. rm-zeros(n - 1;[C / E]) ∈ polyform(n - 1) List
⊢ if (||v|| + 1) < (||v1|| + 1)
     then [u1 / A]
     else if (||v1|| + 1) < (||v|| + 1)  then [u / B]  else if rmz then rm-zeros(n - 1;[C / E]) else [C / E] fi 
  ∈ polyform(n - 1) List
Latex:
Latex:
1.  n  :  \{1...\}
2.  \mforall{}[p,q:polyform(n  -  1)].  \mforall{}[rmz:\mBbbB{}].    (add-polynom(n  -  1;rmz;p;q)  \mmember{}  polyform(n  -  1))
3.  u  :  polyform(n  -  1)
4.  v  :  polyform(n  -  1)  List
5.  \mforall{}[q:polyform(n  -  1)  List].  \mforall{}[rmz:\mBbbB{}].    (add-polynom(n;rmz;v;q)  \mmember{}  polyform(n  -  1)  List)
6.  u1  :  polyform(n  -  1)
7.  v1  :  polyform(n  -  1)  List
8.  \mforall{}rmz:\mBbbB{}.  (add-polynom(n;rmz;[u  /  v];v1)  \mmember{}  polyform(n  -  1)  List)
9.  rmz  :  \mBbbB{}@i
10.  \mneg{}(n  =  0)
11.  A  :  polyform(n  -  1)  List@i
12.  add-polynom(n;ff;[u  /  v];v1)  =  A
13.  B  :  polyform(n  -  1)  List@i
14.  add-polynom(n;ff;v;[u1  /  v1])  =  B
15.  C  :  polyform(n  -  1)@i
16.  add-polynom(n  -  1;tt;u;u1)  =  C
17.  D  :  polyform(n  -  1)  List@i
18.  add-polynom(n;rmz;v;v1)  =  D
19.  E  :  polyform(n  -  1)  List@i
20.  add-polynom(n;ff;v;v1)  =  E
\mvdash{}  if  (||v||  +  1)  <  (||v1||  +  1)
          then  [u1  /  A]
          else  if  (||v1||  +  1)  <  (||v||  +  1)
                          then  [u  /  B]
                          else  if  rmz  then  rm-zeros(n  -  1;[C  /  E])  else  [C  /  E]  fi    \mmember{}  polyform(n  -  1)  List
By
Latex:
Assert  \mkleeneopen{}rm-zeros(n  -  1;[C  /  E])  \mmember{}  polyform(n  -  1)  List\mkleeneclose{}\mcdot{}
Home
Index