polydegmono,
polydegmono1,
polydegmono2 : VAR DegreeMono
mpoly,
mpoly1,mpoly2 : VAR MultiPolynomial
pprod,
pprod1,pprod2 : VAR Polyproduct
a : VAR real
X,Avars,Bvars : VAR Vars
v,jj : VAR nat
nvars,terms,
terms1,terms2 : VAR posnat
cf,cf1,cf2 : VAR Coeff
rel : VAR [[real,real]->bool]
boundedpts,
intendpts : VAR IntervalEndpoints
multipoly_translate_denormalize: LEMMA
lt_below?(nvars)(Avars,Bvars) AND bounded_points_exclusive?(nvars)(boundedpts) AND
(FORALL (ii:below(nvars)): (NOT (boundedpts(ii)`1AND boundedpts(ii)`2)) IMPLIES X(ii)/=0) IMPLIES LET pconst = product(0,nvars-1,LAMBDA (i:nat): IFNOT (boundedpts(i)`1AND boundedpts(i)`2) THEN
X(i)^polydegmono(i) ELSE1ENDIF) IN
multipoly_eval(multipoly_translate(mpoly,polydegmono,nvars,boundedpts)(Avars,Bvars),
polydegmono,cf,nvars,terms)(X)
=
pconst*multipoly_eval(mpoly,polydegmono,cf,nvars,terms)
(denormalize_lambda(nvars,X,boundedpts)(Avars,Bvars))
multipoly_translate_normalize: LEMMA
lt_below?(nvars)(Avars,Bvars) AND (FORALL (ii:below(nvars)): (boundedpts(ii)`1IMPLIES
X(ii)/=Avars(ii)-1) AND (boundedpts(ii)`2IMPLIES X(ii)/=Bvars(ii)+1)) AND bounded_points_exclusive?(nvars)(boundedpts) IMPLIES LET pconst = product(0,nvars-1,LAMBDA (i:nat): IF (boundedpts(i)`1ANDNOT boundedpts(i)`2) THEN
(X(i)-Avars(i)+1)^polydegmono(i) ELSIF (boundedpts(i)`2ANDNOT boundedpts(i)`1) THEN
(Bvars(i)+1-X(i))^polydegmono(i) ELSE1ENDIF) IN
pconst*multipoly_eval(multipoly_translate(mpoly,polydegmono,nvars,boundedpts)(Avars,Bvars),
polydegmono,cf,nvars,terms)(normalize_lambda(nvars,X,boundedpts)(Avars,Bvars)) =
multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(X)
multipoly_translate_bounded_def: LEMMA
boxbetween?(nvars)(Avars,Bvars,intendpts,boundedpts)(X) AND
bounded_points_true?(nvars)(boundedpts) IMPLIES
multipoly_eval(multipoly_translate(mpoly,polydegmono,nvars,boundedpts)(Avars,Bvars),
polydegmono,cf,nvars,terms)(normalize_lambda(nvars,X,boundedpts)(Avars,Bvars)) =
multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(X)
polyproduct_product(pprod1,pprod2,polydegmono1,polydegmono2)(v:nat)(d:nat): real = IF d<=mono_sum(polydegmono1,polydegmono2)(v) THEN
sigma(0,d,LAMBDA (i:nat):IF i<=polydegmono1(v) THEN pprod1(v)(i) ELSE0ENDIF* IF i<=d AND d-i<=polydegmono2(v) THEN pprod2(v)(d-i) ELSE0ENDIF) ELSE0ENDIF
multipoly_product_coeff(cf1,cf2,terms1,terms2,jj)(i:nat): RECURSIVE real = IF jj = 0THEN IF i<terms1 THEN cf1(i)*cf2(jj) ELSE0ENDIF ELSE IF i<jj*terms1 THEN multipoly_product_coeff(cf1,cf2,terms1,terms2,jj-1)(i) ELSIF i<(jj+1)*terms1 THEN cf1(i-jj*terms1)*cf2(jj) ELSE0ENDIF ENDIF MEASURE jj
multipoly_product(mpoly1,mpoly2,polydegmono1,polydegmono2,terms1,terms2,jj)(i:nat): RECURSIVE Polyproduct = IF jj=0THEN IF i<terms1 THEN polyproduct_product(mpoly1(i),mpoly2(jj),polydegmono1,polydegmono2) ELSE zero_poly_prod ENDIF ELSE IF i<jj*terms1 THEN
multipoly_product(mpoly1,mpoly2,polydegmono1,polydegmono2,terms1,terms2,jj-1)(i) ELSIF i<(jj+1)*terms1 THEN
polyproduct_product(mpoly1(i-jj*terms1),mpoly2(jj),polydegmono1,polydegmono2) ELSE zero_poly_prod ENDIF ENDIF MEASURE jj
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.