Step
*
of Lemma
mul-ipoly-ringeq
∀r:CRng. ∀p,q:iMonomial() List.  ipolynomial-term(mul-ipoly(p;q)) ≡ ipolynomial-term(p) (*) ipolynomial-term(q)
BY
{ (Auto THEN D 2 THEN Unfold `mul-ipoly` 0 THEN (CallByValueReduce 0 THENA Auto) THEN Reduce 0) }
1
1. r : CRng
2. q : iMonomial() List
⊢ ipolynomial-term([]) ≡ ipolynomial-term([]) (*) ipolynomial-term(q)
2
1. r : CRng
2. u : iMonomial()
3. v : iMonomial() List
4. q : iMonomial() List
⊢ ipolynomial-term(let qq ⟵ q
                   in if null(qq)
                   then []
                   else eager-accum(sofar,m.add-ipoly(sofar;mul-mono-poly(m;qq));mul-mono-poly(u;qq);v)
                   fi ) ≡ ipolynomial-term([u / v]) (*) ipolynomial-term(q)
Latex:
Latex:
\mforall{}r:CRng.  \mforall{}p,q:iMonomial()  List.
    ipolynomial-term(mul-ipoly(p;q))  \mequiv{}  ipolynomial-term(p)  (*)  ipolynomial-term(q)
By
Latex:
(Auto  THEN  D  2  THEN  Unfold  `mul-ipoly`  0  THEN  (CallByValueReduce  0  THENA  Auto)  THEN  Reduce  0)
Home
Index