Step * 2 1 of Lemma nonzero-mul-polynom


1. : ℕ
2. ∀n:ℕn
     ∀[p,q:polynom(n)].  (poly-zero(n;mul-polynom(n;p;q)) ff) supposing (poly-zero(n;q) ff and poly-zero(n;p) ff)
3. polynom(n)
4. polynom(n)
5. poly-zero(n;p) ff
6. poly-zero(n;q) ff
7. ¬(n 0 ∈ ℤ)
8. ∀[p,q:polynom(n 1)].
     (poly-zero(n 1;mul-polynom(n 1;p;q)) ff) supposing (poly-zero(n 1;q) ff and poly-zero(n 1;p) ff)
9. ¬(n 0 ∈ ℤ)
⊢ poly-zero(n;if poly-zero(n;p) then p
  if poly-zero(n;q) then q
  else eager-accum(z,a.add-polynom(n;tt;if null(z) then [] else [polyconst(n 1;0)] fi ;if poly-zero(n 1;a)
       then []
       else map(λx.mul-polynom(n 1;a;x);q)
       fi );polyconst(n;0);p)
  fi 
ff
BY
((RecUnfold `polynom` THEN (SplitOnHypITE 3  THENA Auto) THEN Try (Trivial) THEN 3)
   THEN (RecUnfold `polynom` THEN (SplitOnHypITE 5  THENA Auto) THEN Try (Trivial) THEN 5)
   THEN RepeatFor (Thin (-1))) }

1
1. : ℕ
2. ∀n:ℕn
     ∀[p,q:polynom(n)].  (poly-zero(n;mul-polynom(n;p;q)) ff) supposing (poly-zero(n;q) ff and poly-zero(n;p) ff)
3. polynom(n 1) List
4. polyform-lead-nonzero(n;p)
5. polynom(n 1) List
6. polyform-lead-nonzero(n;q)
7. poly-zero(n;p) ff
8. poly-zero(n;q) ff
9. ¬(n 0 ∈ ℤ)
10. ∀[p,q:polynom(n 1)].
      (poly-zero(n 1;mul-polynom(n 1;p;q)) ff) supposing (poly-zero(n 1;q) ff and poly-zero(n 1;p) ff)
⊢ poly-zero(n;if poly-zero(n;p) then p
  if poly-zero(n;q) then q
  else eager-accum(z,a.add-polynom(n;tt;if null(z) then [] else [polyconst(n 1;0)] fi ;if poly-zero(n 1;a)
       then []
       else map(λx.mul-polynom(n 1;a;x);q)
       fi );polyconst(n;0);p)
  fi 
ff


Latex:


Latex:

1.  n  :  \mBbbN{}
2.  \mforall{}n:\mBbbN{}n
          \mforall{}[p,q:polynom(n)].
              (poly-zero(n;mul-polynom(n;p;q))  =  ff)  supposing 
                    (poly-zero(n;q)  =  ff  and 
                    poly-zero(n;p)  =  ff)
3.  p  :  polynom(n)
4.  q  :  polynom(n)
5.  poly-zero(n;p)  =  ff
6.  poly-zero(n;q)  =  ff
7.  \mneg{}(n  =  0)
8.  \mforall{}[p,q:polynom(n  -  1)].
          (poly-zero(n  -  1;mul-polynom(n  -  1;p;q))  =  ff)  supposing 
                (poly-zero(n  -  1;q)  =  ff  and 
                poly-zero(n  -  1;p)  =  ff)
9.  \mneg{}(n  =  0)
\mvdash{}  poly-zero(n;if  poly-zero(n;p)  then  p
    if  poly-zero(n;q)  then  q
    else  eager-accum(z,a.add-polynom(n;tt;if  null(z)
              then  []
              else  z  @  [polyconst(n  -  1;0)]
              fi  ;if  poly-zero(n  -  1;a)
              then  []
              else  map(\mlambda{}x.mul-polynom(n  -  1;a;x);q)
              fi  );polyconst(n;0);p)
    fi  ) 
=  ff


By


Latex:
((RecUnfold  `polynom`  3  THEN  (SplitOnHypITE  3    THENA  Auto)  THEN  Try  (Trivial)  THEN  D  3)
  THEN  (RecUnfold  `polynom`  5  THEN  (SplitOnHypITE  5    THENA  Auto)  THEN  Try  (Trivial)  THEN  D  5)
  THEN  RepeatFor  3  (Thin  (-1)))




Home Index