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;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)) 
ff
BY
(OnVar `p' (\h. (RecUnfold `polynom` THEN (SplitOnHypITE h  THENA Auto) THEN Try (Trivial) THEN h))⋅
   THEN OnVar `q' (\h. (RecUnfold `polynom` THEN (SplitOnHypITE h  THENA Auto) THEN Try (Trivial) THEN h))⋅
   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;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)) 
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;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)) 
=  ff


By


Latex:
(OnVar  `p'  (\mbackslash{}h.  (RecUnfold  `polynom`  h
                                  THEN  (SplitOnHypITE  h    THENA  Auto)
                                  THEN  Try  (Trivial)
                                  THEN  D  h))\mcdot{}
  THEN  OnVar  `q'  (\mbackslash{}h.  (RecUnfold  `polynom`  h
                                            THEN  (SplitOnHypITE  h    THENA  Auto)
                                            THEN  Try  (Trivial)
                                            THEN  D  h))\mcdot{}
  THEN  RepeatFor  3  (Thin  (-1)))




Home Index