mpoly : VAR MultiPolynomial
polydegmono : VAR DegreeMono
nvars,terms : VAR posnat
cf : VAR Coeff
boundedpts,
intendpts : VAR IntervalEndpoints
depth,v : VAR nat
Avars,Bvars : VAR Vars
varselect : VAR VarSelector
rel : VAR [[real,real]->bool]
localexit : VAR [Outminmax -> bool]
globalexit : VAR [Outminmax->bool]
omm : VAR Outminmax
% Points in a finite interval [A,B]
box_poly_lb?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm): bool =
cons?(omm`lb_var) IMPLIES
(length(omm`lb_var) = nvars AND LET lb_varlam = list2array(0)(omm`lb_var) IN
(FORALL (iup:below(nvars)):
interval_between?(Avars(iup),Bvars(iup),intendpts(iup),boundedpts(iup))(lb_varlam(iup))) AND
multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(lb_varlam) = omm`lb_max)
box_poly_ub?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm): bool =
cons?(omm`ub_var) IMPLIES
(length(omm`ub_var) = nvars AND LET ub_varlam = list2array(0)(omm`ub_var) IN
(FORALL (iup:below(nvars)):
interval_between?(Avars(iup),Bvars(iup),intendpts(iup),boundedpts(iup))(ub_varlam(iup))) AND
multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(ub_varlam) = omm`ub_min)
% Points in an infinite interval
inf_box_poly_lb?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(rel,omm): bool =
cons?(omm`lb_var) IMPLIES
(length(omm`lb_var) = nvars AND LET lb_varlam = list2array(0)(omm`lb_var) IN
(FORALL (iup:below(nvars)):
interval_between?(Avars(iup),Bvars(iup),intendpts(iup),boundedpts(iup))(lb_varlam(iup))) AND
(rel(omm`lb_max,0) IFF
rel(multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(lb_varlam),0)))
inf_box_poly_ub?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(rel,omm): bool =
cons?(omm`ub_var) IMPLIES
(length(omm`ub_var) = nvars AND LET ub_varlam = list2array(0)(omm`ub_var) IN
(FORALL (iup:below(nvars)):
interval_between?(Avars(iup),Bvars(iup),intendpts(iup),boundedpts(iup))(ub_varlam(iup))) AND
(rel(omm`ub_min,0) IFF
rel(multipoly_eval(mpoly,polydegmono,cf,nvars,terms)(ub_varlam),0)))
% Soundness on a finite interval [A,B]
sound_poly_fin?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) : bool =
forall_X_poly_between(omm`lb_min,omm`ub_max)(mpoly,polydegmono,cf,nvars,terms,Avars,Bvars,
intendpts,boundedpts) AND
box_poly_lb?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) AND
box_poly_ub?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) AND
length_eq?(nvars)(omm)
% Soundness on an infinite interval
sound_poly_inf?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) : bool = FORALL (relreal:RealOrder):
(relreal(omm`lb_min,0) AND relreal(omm`ub_max,0) IMPLIES
forall_X_poly_rel(relreal,0)(mpoly,polydegmono,cf,nvars,terms,Avars,Bvars,
intendpts,boundedpts)) AND
inf_box_poly_lb?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)
(relreal,omm) AND
inf_box_poly_ub?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)
(relreal,omm) AND
length_eq?(nvars)(omm) AND
omm`lb_min <= omm`ub_max
sound_poly?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) : bool =
lt_below?(nvars)(Avars,Bvars) AND
bounded_points_exclusive?(nvars)(boundedpts) IMPLIES
((bounded_points_true?(nvars)(boundedpts) AND
sound_poly_fin?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm)) OR
((NOT bounded_points_true?(nvars)(boundedpts)) AND
sound_poly_inf?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm)))
sound_poly_lb_le_ub: LEMMA
sound_poly?(mpoly,polydegmono,nvars,terms,cf,Avars,Bvars,boundedpts,intendpts)(omm) AND
lt_below?(nvars)(Avars,Bvars) AND
bounded_points_exclusive?(nvars)(boundedpts) IMPLIES
lb_le_ub?(omm)
% mpoly: A multi-variate polynomial, e.g., LAMBDA(terms:nat)(variable:nat)(deg:nat):coefficient % polydegmono: The degree of each variable, e.g., LAMBDA(variable:nat):degree % nvars: Number of variables % terms: Number of terms % cf : Coeffients per term, e.g., LAMBDA(terms:nat):coefficient % Avars: Lower bounds of variables, e.g., LAMBDA(variable:nat):lower_bound % Bvars: Upper bounds of variables, e.g., LAMBDA(variable:nat):upper_bound % depth: Search depth % localexit: A function that determines when a branch can be pruned. Unless you know what you % are doing consider using eps_localexit(precision), where precision is a positive real number. % globalexit: A function that determines when the algorithm must terminate (for any other reason % than normal termination or maximum depth). Unless you know what you are doing consider % using false_globalexit. % intendpts: Encoding of open/close lower and upper variable bounds, e.g., % LAMBDA(variables:nat):(lb_bool,ub_bool), where true = closed and false=open. % boundedpts: Encoding of finite/infinite lower and upper variable bounds, e.g., % LAMBDA(variables:nat):(lb_bool,ub_bool), where true = finite and false=infinite. % [IMPORTANT REMARK: Independently of the value of boundpts, Avars < Bvars] % varselect: A function that selects the next varible to sub-divide and which sub-interval % should be considered first, e.g., left=true, right=false. Unless you know what you are % doing consider using maxvarselect.
poly : VAR Polynomial
deg : VAR nat
intendpt,
boundedpt : VAR [bool,bool]
var_lb,
var_ub : VAR real
% poly: A one-variable polynomial, e.g., LAMBDA(deg:nat):coefficient % deg: The degree of the polynomial % var_lb: Lower bound of the variable % var_ub: Upper bound of the variable % [IMPORTANT REMARK: Independently of the value of boundpts, var_lb < var_ub] % depth: Search depth, e.g., 40 % localexit,globalexit: see multipolynomial_minmax. % intendpoints: Encoding of open/close lower and upper variable bound, e.g., % (lb_bool,ub_bool), where true = closed and false=open. % boundedpt: Encoding of finite/infinite lower and upper variable bound, e.g., % (lb_bool,ub_bool), where true = finite and false=infinite. % varselect: see multipolynomial_minmax.
¤ 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.0.13Bemerkung:
(vorverarbeitet)
¤
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 ist noch experimentell.