Step * 1 of Lemma mul-polynom_wf


1. : ℤ
2. 0 < n
3. ∀[p,q:polyform(n 1)].  (mul-polynom(n 1;p;q) ∈ polyform(n 1))
4. polyform(n)
5. polyform(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) ∈ polyform(n)
BY
((Assert polyconst(n;0) ∈ polyform(n 1) List BY
          (RecUnfold `polyconst` THEN Auto))
   THEN RepeatFor (((RecUnfold `polyform` (-3) THENA Auto) THEN (SplitOnHypITE -3  THENA Auto) THEN Try (Trivial)))
   THEN Try (((Assert ¬0 < BY Auto) THEN Trivial))
   THEN (RecUnfold `polyform` THEN (SplitOnConclITE THENA Auto) THEN Try (Trivial))
   THEN MemCD
   THEN Try (QuickAuto)) }

1
.....subterm..... T:t
1:n
1. : ℤ
2. 0 < n
3. ∀[p,q:polyform(n 1)].  (mul-polynom(n 1;p;q) ∈ polyform(n 1))
4. polyform(n 1) List
5. polyform(n 1) List
6. polyconst(n;0) ∈ polyform(n 1) List
7. ¬(n 0 ∈ ℤ)
8. ¬(n 0 ∈ ℤ)
9. ¬(n 0 ∈ ℤ)
10. polyform(n 1) List
11. polyform(n 1)
⊢ 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 ) ∈ polyform(n 1) List


Latex:


Latex:

1.  n  :  \mBbbZ{}
2.  0  <  n
3.  \mforall{}[p,q:polyform(n  -  1)].    (mul-polynom(n  -  1;p;q)  \mmember{}  polyform(n  -  1))
4.  p  :  polyform(n)
5.  q  :  polyform(n)
\mvdash{}  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)
    \mmember{}  polyform(n)


By


Latex:
((Assert  polyconst(n;0)  \mmember{}  polyform(n  -  1)  List  BY
                (RecUnfold  `polyconst`  0  THEN  Auto))
  THEN  RepeatFor  2  (((RecUnfold  `polyform`  (-3)  THENA  Auto)
                                        THEN  (SplitOnHypITE  -3    THENA  Auto)
                                        THEN  Try  (Trivial)))
  THEN  Try  (((Assert  \mneg{}0  <  n  BY  Auto)  THEN  Trivial))
  THEN  (RecUnfold  `polyform`  0  THEN  (SplitOnConclITE  THENA  Auto)  THEN  Try  (Trivial))
  THEN  MemCD
  THEN  Try  (QuickAuto))




Home Index