diff --git a/.github/workflows/build_docker.yml b/.github/workflows/build_docker.yml index 2d4a407a2..8b9a6339d 100644 --- a/.github/workflows/build_docker.yml +++ b/.github/workflows/build_docker.yml @@ -36,6 +36,8 @@ jobs: # Create a switch with the system compiler (no compilation needed). # And then, install external (no need for depext with opam 2.1) and libs deps. + # Don't install alt-ergo-osdp since depext not available + - run: mv alt-ergo-osdp.opam alt-ergo-osdp.noinstall - run: opam switch create . ocaml-system --deps-only # Install the project packages diff --git a/.github/workflows/build_js.yml b/.github/workflows/build_js.yml index 2d802c22b..e92eb9178 100644 --- a/.github/workflows/build_js.yml +++ b/.github/workflows/build_js.yml @@ -56,7 +56,7 @@ jobs: # Install external dependencies # remove this step when opam 2.1 will be used - name: Install depext - run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo + run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo alt-ergo-osdp # Install dependencies - name: Install deps diff --git a/.github/workflows/build_macos.yml b/.github/workflows/build_macos.yml index 66c6a6e7a..e66444bdd 100644 --- a/.github/workflows/build_macos.yml +++ b/.github/workflows/build_macos.yml @@ -48,8 +48,9 @@ jobs: # Pin the packages, this is needed for opam depext # remove this step when opam 2.1 will be used + # Don't install alt-ergo-osdp since depext not available on MacOS - name: Pin no action - run: opam pin add . --no-action + run: mv alt-ergo-osdp.opam alt-ergo-osdp.noinstall && opam pin add . --no-action # Install external dependencies # remove this step when opam 2.1 will be used @@ -63,11 +64,12 @@ jobs: # Build and install with opam - name: Install - run: opam reinstall . + run: opam install ./*.opam # Run non regression tests + # don't run the OSDP tests since we don't have it - name: Run non regression tests - run: opam exec -- rsc/extra/non_regression.sh + run: rm -rf non-regression/valid/osdp && opam exec -- rsc/extra/non_regression.sh # Get and Set version of the installed alt-ergo binary # Get and Set the path where alt-ergo binary is located diff --git a/.github/workflows/build_make.yml b/.github/workflows/build_make.yml index 13768389a..f031a13c1 100644 --- a/.github/workflows/build_make.yml +++ b/.github/workflows/build_make.yml @@ -54,12 +54,15 @@ jobs: # Install external dependencies # remove this step when opam 2.1 will be used - name: opam install depext - run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo + run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo alt-ergo-osdp # Install dependencies - name: opam install deps run: opam install ./*.opam --deps-only + - name: test + run: opam list + # make use `dune build` which update .opam file if the dune-project is updated - name: Make run: opam exec -- make diff --git a/.github/workflows/build_ubuntu.yml b/.github/workflows/build_ubuntu.yml index a4e132a0f..afdc9002e 100644 --- a/.github/workflows/build_ubuntu.yml +++ b/.github/workflows/build_ubuntu.yml @@ -61,7 +61,7 @@ jobs: # Install external dependencies # remove this step when opam 2.1 will be used - name: Install depext - run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo + run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo alt-ergo-osdp # Install dependencies - name: Install deps diff --git a/.github/workflows/build_windows.yml b/.github/workflows/build_windows.yml index 599417595..85df82672 100644 --- a/.github/workflows/build_windows.yml +++ b/.github/workflows/build_windows.yml @@ -52,7 +52,7 @@ jobs: # Install external dependencies # remove this step when opam 2.1 will be used - name: opam install depext - run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo + run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo alt-ergo-osdp # Install dependencies - name: Install deps diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 57ce0fcdf..ceec45fea 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -64,7 +64,7 @@ jobs: # Install external dependencies # remove this step when opam 2.1 will be used - name: opam install depext - run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo + run: opam depext alt-ergo-lib alt-ergo-parsers alt-ergo altgr-ergo alt-ergo-osdp # Install dependencies if the cache is not retrieved # odoc is installed as deps with { with-doc } in opam files diff --git a/Makefile b/Makefile index 760b8c78e..88aebf342 100644 --- a/Makefile +++ b/Makefile @@ -51,7 +51,7 @@ SPHINXBUILD = sphinx-build # - .ml files generated by menhir or ocamllex # (since they reside in dune specific directory) GENERATED_USEFUL=$(UTIL_DIR)/config.ml $(BTEXT_DIR)/flags.dune -GENERATED_LINKS=alt-ergo altgr-ergo alt-ergo.js alt-ergo-worker.js AB-Why3-plugin.cma AB-Why3-plugin.cmxs fm-simplex-plugin.cma fm-simplex-plugin.cmxs +GENERATED_LINKS=alt-ergo altgr-ergo alt-ergo.js alt-ergo-worker.js AB-Why3-plugin.cma AB-Why3-plugin.cmxs fm-simplex-plugin.cma fm-simplex-plugin.cmxs osdp-plugin.cma osdp-plugin.cmxs GENERATED=$(GENERATED_USEFUL) $(GENERATED_LINKS) @@ -108,6 +108,14 @@ fm-simplex: ln -sf $(INSTALL_DIR)/default/share/alt-ergo/plugins/fm-simplex-plugin.cma fm-simplex-plugin.cma ln -sf $(INSTALL_DIR)/default/share/alt-ergo/plugins/fm-simplex-plugin.cmxs fm-simplex-plugin.cmxs +# OSDP plugin +osdp: + $(DUNE) build $(DUNE_FLAGS) \ + $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cma \ + $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cmxs + ln -sf $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cma osdp-plugin.cma + ln -sf $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cmxs osdp-plugin.cmxs + # Ab-Why3 plugin AB-Why3: $(DUNE) build $(DUNE_FLAGS) \ @@ -121,6 +129,8 @@ plugins: $(DUNE) build $(DUNE_FLAGS) \ $(INSTALL_DIR)/default/share/alt-ergo/plugins/fm-simplex-plugin.cma \ $(INSTALL_DIR)/default/share/alt-ergo/plugins/fm-simplex-plugin.cmxs \ + $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cma \ + $(INSTALL_DIR)/default/share/alt-ergo/plugins/osdp-plugin.cmxs \ $(INSTALL_DIR)/default/share/alt-ergo/plugins/AB-Why3-plugin.cma \ $(INSTALL_DIR)/default/share/alt-ergo/plugins/AB-Why3-plugin.cmxs @@ -135,7 +145,7 @@ all: gen # declare these targets as phony to avoid name clashes with existing directories, # particularly the "plugins" target -.PHONY: lib bin gui fm-simplex AB-Why3 plugins all +.PHONY: lib bin gui fm-simplex osdp AB-Why3 plugins all # ===================== diff --git a/alt-ergo-osdp.opam b/alt-ergo-osdp.opam new file mode 100644 index 000000000..276a8d4d1 --- /dev/null +++ b/alt-ergo-osdp.opam @@ -0,0 +1,43 @@ +# This file is generated by dune, edit dune-project instead +opam-version: "2.0" +version: "dev" +synopsis: "The Alt-Ergo SMT prover: OSDP PLugin" +description: """ +This is the OSDP plugin for the Alt-Ergo SMT solver. + +Alt-Ergo is an automatic theorem prover of mathematical formulas. It was developed at LRI, and is now maintained at OCamlPro. + +See more details on http://alt-ergo.ocamlpro.com/ + +The OSDP plugin relies on the OSDP library to attempt to solve goals +with polynomial inequalities using SDP (SemiDefinite Programming) +numerical solvers as backend. Despite the numerical solvers providing +only approximate solutions, the OSDP library performs an a-posteriori +rigorous check to ensure soundness. The ValidSDP library provides a +Coq verified version of this soundness check. + +To use, run alt-ergo with option +alt-ergo --polynomial-plugin osdp-plugin.cmxs""" +maintainer: ["Alt-Ergo developers"] +authors: ["Alt-Ergo developers"] +license: "LGPL-3" +homepage: "https://alt-ergo.ocamlpro.com/" +doc: "https://ocamlpro.github.io/alt-ergo" +bug-reports: "https://github.com/OCamlPro/alt-ergo/issues" +depends: [ + "ocaml" {>= "4.05.0"} + "dune" {>= "2.9" & >= "2.9"} + "dune-configurator" + "alt-ergo" + "alt-ergo-lib" {= version} + "alt-ergo" + "osdp" {>= "1.1.0"} + "odoc" {with-doc} +] + +build: [ + ["ocaml" "unix.cma" "configure.ml" name "--prefix" prefix "--libdir" lib "--mandir" man] + ["dune" "subst"] {dev} + ["dune" "build" "-p" name "-j" jobs] +] +dev-repo: "git+https://github.com/OCamlPro/alt-ergo.git" diff --git a/alt-ergo-osdp.opam.template b/alt-ergo-osdp.opam.template new file mode 100644 index 000000000..ca9c679c2 --- /dev/null +++ b/alt-ergo-osdp.opam.template @@ -0,0 +1,12 @@ +# This part comes from the template. Please edit alt-ergo-osdp.opam.template +# and not alt-ergo-osdp.opam which is generated by dune + +license: [ + "LGPL-3" +] + +build: [ + ["ocaml" "unix.cma" "configure.ml" name "--prefix" prefix "--libdir" lib "--mandir" man] + ["dune" "subst"] {pinned} + ["dune" "build" "-p" name "-j" jobs] +] diff --git a/configure.ml b/configure.ml index bf090675d..d06545b31 100644 --- a/configure.ml +++ b/configure.ml @@ -161,7 +161,10 @@ let datadir = |> Filename.dirname |> follow Filename.parent_dir_name |> follow "share" - |> follow "alt-ergo" + +let osdp_pluginsdir = datadir |> follow "alt-ergo-osdp" |> follow "plugins" + +let datadir = datadir |> follow "alt-ergo" let pluginsdir = datadir |> follow "plugins" diff --git a/dune-project b/dune-project index ecb144523..ba08984f9 100644 --- a/dune-project +++ b/dune-project @@ -1,5 +1,4 @@ -(lang dune 2.0) -(allow_approximate_merlin) +(lang dune 2.9) ; Since we want to generate opam files we need to provide informations ; (generate_opam_files true) @@ -114,3 +113,37 @@ See more details on http://alt-ergo.ocamlpro.com/" (odoc :with-doc) ) ) + +; Fifth package, the alt-ergo OSDP plugin + +(package + (name alt-ergo-osdp) + (synopsis "The Alt-Ergo SMT prover: OSDP PLugin") + (description "\ +This is the OSDP plugin for the Alt-Ergo SMT solver. + +Alt-Ergo is an automatic theorem prover of mathematical formulas. It was developed at LRI, and is now maintained at OCamlPro. + +See more details on http://alt-ergo.ocamlpro.com/ + +The OSDP plugin relies on the OSDP library to attempt to solve goals +with polynomial inequalities using SDP (SemiDefinite Programming) +numerical solvers as backend. Despite the numerical solvers providing +only approximate solutions, the OSDP library performs an a-posteriori +rigorous check to ensure soundness. The ValidSDP library provides a +Coq verified version of this soundness check. + +To use, run alt-ergo with option +alt-ergo --polynomial-plugin osdp-plugin.cmxs" + ) (license "LGPL-3.0-or-later") + + (depends + (ocaml (>= 4.05.0)) + (dune (>= 2.9)) + dune-configurator + alt-ergo + (alt-ergo-lib (= :version)) + alt-ergo + (osdp (>= 1.1.0)) + ) +) diff --git a/examples/valid/poly_v10_d1_s121_2.ae b/examples/valid/poly_v10_d1_s121_2.ae new file mode 100644 index 000000000..b1c13a9d3 --- /dev/null +++ b/examples/valid/poly_v10_d1_s121_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9:real. + 4.66599589671989*x0 * x0 + 5.44030782356989*x0*x1 + 4.86253647018718*x0*x2 + 5.78216238523859*x0*x3 + 5.51925877424655*x0*x4 + 6.60534392790455*x0*x5 + 3.75227069449988*x0*x6 + 5.70370161441604*x0*x7 + 7.69339787773855*x0*x8 + 7.12222231250226*x0*x9 + 6.68558506060876*x0 + 2.53648277537877*x1 * x1 + 3.28352733582592*x1*x2 + 3.85450290502748*x1*x3 + 4.48951551408735*x1*x4 + 4.26791605229313*x1*x5 + 2.27143280170943*x1*x6 + 3.82235211808492*x1*x7 + 4.78813235074348*x1*x8 + 4.88042925417463*x1*x9 + 3.77504572888355*x1 + 1.78354087266182*x2 * x2 + 3.77689378813167*x2*x3 + 4.00806258405655*x2*x4 + 3.45749896727473*x2*x5 + 1.82706457527954*x2*x6 + 2.91350805428827*x2*x7 + 3.89007652776802*x2*x8 + 3.82791983574596*x2*x9 + 3.23017374573781*x2 + 2.91287718862589*x3 * x3 + 4.80655583675996*x3*x4 + 3.8093661953241*x3*x5 + 2.25263131648088*x3*x6 + 2.97220460172864*x3*x7 + 5.91166978288215*x3*x8 + 4.77758315442805*x3*x9 + 3.5823149304611*x3 + 2.9228150679484*x4 * x4 + 4.01245022289054*x4*x5 + 1.71896073812602*x4*x6 + 3.5049159095768*x4*x7 + 4.5770407110903*x4*x8 + 5.16893279801215*x4*x9 + 4.37530648538669*x4 + 2.6946703738345*x5 * x5 + 2.51388816704055*x5*x6 + 4.41650120194594*x5*x7 + 5.19475489721844*x5*x8 + 5.28737231945276*x5*x9 + 4.56881600192816*x5 + 1.02837791930916*x6 * x6 + 2.11160213607309*x6*x7 + 3.75585643668981*x6*x8 + 2.57090661226126*x6*x9 + 2.19061543714949*x6 + 2.23078471405026*x7 * x7 + 4.47701159683909*x7*x8 + 4.96412957059534*x7*x9 + 4.36849060887653*x7 + 4.20242678972929*x8 * x8 + 5.98225131904998*x8*x9 + 4.72611589454344*x8 + 3.21204838235355*x9 * x9 + 5.3694230537461*x9 + 2.99979973557218 >= 0. diff --git a/examples/valid/poly_v11_d1_s144.ae b/examples/valid/poly_v11_d1_s144.ae new file mode 100644 index 000000000..4df896667 --- /dev/null +++ b/examples/valid/poly_v11_d1_s144.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10:real. + 4.24377189200859*x0 * x0 + 7.07822432021484*x0*x1 + 6.70810502354405*x0*x10 + 3.77443060690717*x0*x2 + 5.77234362509289*x0*x3 + 4.57279406684069*x0*x4 + 5.69503470484061*x0*x5 + 7.2678051050147*x0*x6 + 4.06456494962836*x0*x7 + 5.48182611132358*x0*x8 + 6.71190211313931*x0*x9 + 4.33615675677875*x0 + 3.30669935703648*x1 * x1 + 6.08221667574597*x1*x10 + 3.45689024031082*x1*x2 + 4.92169693013621*x1*x3 + 4.55430930304004*x1*x4 + 5.17262286476038*x1*x5 + 5.85860721937296*x1*x6 + 2.91558197318275*x1*x7 + 4.59479244996331*x1*x8 + 6.32747345083722*x1*x9 + 4.15800457136264*x1 + 3.52542526185143*x10 * x10 + 2.94280830346092*x10*x2 + 5.82229167438256*x10*x3 + 4.12853351423838*x10*x4 + 4.64318949749067*x10*x5 + 5.73823007907904*x10*x6 + 3.98182931181197*x10*x7 + 4.36357902816048*x10*x8 + 6.27898599261738*x10*x9 + 4.02580887420205*x10 + 1.06114660967939*x2 * x2 + 2.6085723200662*x2*x3 + 2.21217888989074*x2*x4 + 2.7829021128658*x2*x5 + 3.41119240573835*x2*x6 + 1.65753910890614*x2*x7 + 2.24209831677702*x2*x8 + 3.01355266749208*x2*x9 + 2.32575155454443*x2 + 3.21539325909752*x3 * x3 + 3.29521472090781*x3*x4 + 4.09902918013888*x3*x5 + 5.62825838551548*x3*x6 + 4.05229911146811*x3*x7 + 3.92988492639456*x3*x8 + 5.73387308792003*x3*x9 + 3.76552759277205*x3 + 2.59965757616045*x4 * x4 + 3.97900860948233*x4*x5 + 4.3644366652006*x4*x6 + 1.76480643887881*x4*x7 + 3.55682080927437*x4*x8 + 5.86258301279279*x4*x9 + 3.04224412645116*x4 + 2.55786806835177*x5 * x5 + 5.66380495156692*x5*x6 + 2.958922834759*x5*x7 + 4.13254853625108*x5*x8 + 5.63389851495912*x5*x9 + 4.11864999950547*x5 + 4.06958879372296*x6 * x6 + 4.6855965507652*x6*x7 + 5.31410867488205*x6*x8 + 6.4202575833643*x6*x9 + 5.10836629417853*x6 + 1.94495829270157*x7 * x7 + 2.75443759264689*x7*x8 + 3.24593399270224*x7*x9 + 2.44803598812575*x7 + 2.12087702490646*x8 * x8 + 5.21758656350205*x8*x9 + 3.51552050395994*x8 + 3.98992001067828*x9 * x9 + 4.94409460725083*x9 + 2.48249314671914 >= 0. diff --git a/examples/valid/poly_v12_d1_s169.ae b/examples/valid/poly_v12_d1_s169.ae new file mode 100644 index 000000000..42b63a1ae --- /dev/null +++ b/examples/valid/poly_v12_d1_s169.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11:real. + 3.78789117344196*x0 * x0 + 5.50636575663713*x0*x1 + 5.76800227547484*x0*x10 + 8.50079042638222*x0*x11 + 4.95226881585845*x0*x2 + 6.348310388855*x0*x3 + 5.77998496019916*x0*x4 + 4.79117972700113*x0*x5 + 4.77626614851139*x0*x6 + 7.02555238033268*x0*x7 + 6.69902620876129*x0*x8 + 4.15188073973749*x0*x9 + 2.43369799442552*x0 + 3.3792119361662*x1 * x1 + 6.03577146781658*x1*x10 + 7.74019587723462*x1*x11 + 3.98407508263698*x1*x2 + 5.76848804114997*x1*x3 + 4.40235546837408*x1*x4 + 5.26466332946827*x1*x5 + 4.47083591263493*x1*x6 + 5.26140181509637*x1*x7 + 5.80399591062533*x1*x8 + 4.24450987295115*x1*x9 + 2.72446373587487*x1 + 4.33475710102188*x10 * x10 + 8.29891975683631*x10*x11 + 5.88030267983263*x10*x2 + 7.28787477489123*x10*x3 + 4.42287493480225*x10*x4 + 6.67367792630676*x10*x5 + 4.47867692615852*x10*x6 + 6.42228068625723*x10*x7 + 6.86415015466853*x10*x8 + 4.29265589333101*x10*x9 + 2.67156767185587*x10 + 6.37836550832093*x11 * x11 + 7.65669814471314*x11*x2 + 9.00362278171107*x11*x3 + 7.4088826516463*x11*x4 + 8.34865018673983*x11*x5 + 6.70731087851813*x11*x6 + 8.86849006302579*x11*x7 + 8.87716144810621*x11*x8 + 6.61012035897661*x11*x9 + 4.78429890238261*x11 + 3.66613286853186*x2 * x2 + 6.03843732377242*x2*x3 + 4.70949045713566*x2*x4 + 5.62489452190249*x2*x5 + 5.2228296086109*x2*x6 + 5.75895673086989*x2*x7 + 5.76756402568235*x2*x8 + 4.12721377487065*x2*x9 + 2.91443032413838*x2 + 4.57430803715456*x3 * x3 + 5.4391637457494*x3*x4 + 6.34905130182843*x3*x5 + 4.97504116913045*x3*x6 + 6.72432580145434*x3*x7 + 7.05480521047214*x3*x8 + 4.41137286826602*x3*x9 + 3.08583578243987*x3 + 2.62089318584753*x4 * x4 + 4.22567196463169*x4*x5 + 3.68020890856631*x4*x6 + 5.40288097911125*x4*x7 + 5.23454259297348*x4*x8 + 3.98630276459232*x4*x9 + 2.72881975190473*x4 + 3.51152695371882*x5 * x5 + 4.56073731445259*x5*x6 + 5.4108674011187*x5*x7 + 5.5526372646395*x5*x8 + 4.94290213654144*x5*x9 + 3.42794452015534*x5 + 2.93414905791984*x6 * x6 + 4.98420247417378*x6*x7 + 5.2994445019168*x6*x8 + 3.15626101538272*x6*x9 + 2.32606790730931*x6 + 4.21432764387877*x7 * x7 + 7.73679579846689*x7*x8 + 4.18800173265495*x7*x9 + 2.60776374695464*x7 + 4.23946816258*x8 * x8 + 4.50281407686828*x8*x9 + 3.0206408451216*x8 + 2.26117946929622*x9 * x9 + 2.94757853346605*x9 + 1.26526532456826 >= 0. diff --git a/examples/valid/poly_v13_d1_s196.ae b/examples/valid/poly_v13_d1_s196.ae new file mode 100644 index 000000000..a1c606045 --- /dev/null +++ b/examples/valid/poly_v13_d1_s196.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12:real. + 2.83102888299718*x0 * x0 + 6.42572751371778*x0*x1 + 8.25129911435135*x0*x10 + 5.69559635923303*x0*x11 + 5.92481178553981*x0*x12 + 6.40801707188141*x0*x2 + 4.45554945694266*x0*x3 + 4.22400532761251*x0*x4 + 4.8274232196426*x0*x5 + 3.48028805745454*x0*x6 + 5.78748914362644*x0*x7 + 5.21064397488342*x0*x8 + 5.0793315545896*x0*x9 + 5.1862877193636*x0 + 5.41352138522961*x1 * x1 + 11.3548655923759*x1*x10 + 7.83838360683478*x1*x11 + 8.22294739107078*x1*x12 + 9.45331015083392*x1*x2 + 8.23532738555902*x1*x3 + 7.44396710394009*x1*x4 + 7.03463115038658*x1*x5 + 5.72702589443565*x1*x6 + 8.97553124713695*x1*x7 + 7.30547593063181*x1*x8 + 7.11289034545645*x1*x9 + 7.13147868676461*x1 + 7.39053287368915*x10 * x10 + 9.8585370992914*x10*x11 + 9.30487038802938*x10*x12 + 10.7435557582942*x10*x2 + 9.36717836185677*x10*x3 + 8.39506492631014*x10*x4 + 9.44251568584143*x10*x5 + 7.56959591716191*x10*x6 + 10.5979696294947*x10*x7 + 9.77365395020882*x10*x8 + 9.75860570439304*x10*x9 + 8.87466106589898*x10 + 4.0113960765002*x11 * x11 + 6.60778478207752*x11*x12 + 7.55727192983668*x11*x2 + 5.60263086589518*x11*x3 + 5.81408722893603*x11*x4 + 6.05413766453025*x11*x5 + 5.7651429012274*x11*x6 + 7.33213022036221*x11*x7 + 6.2820263310694*x11*x8 + 6.49351841578276*x11*x9 + 6.40341481795197*x11 + 4.77950866429708*x12 * x12 + 7.17468768766861*x12*x2 + 6.01397420396598*x12*x3 + 4.69150807901878*x12*x4 + 6.24332181268*x12*x5 + 4.71947753366447*x12*x6 + 7.94121292178011*x12*x7 + 7.83388596172375*x12*x8 + 6.80460442955207*x12*x9 + 6.71302785117923*x12 + 4.84230860940341*x2 * x2 + 6.96211651017846*x2*x3 + 6.92247290682851*x2*x4 + 7.11932314305198*x2*x5 + 5.47875816829853*x2*x6 + 7.35666395735198*x2*x7 + 6.53863009741832*x2*x8 + 6.76101366463307*x2*x9 + 7.43623396686927*x2 + 4.07662006409758*x3 * x3 + 6.19479771336636*x3*x4 + 6.22057491918846*x3*x5 + 4.99808762145413*x3*x6 + 7.38466307073201*x3*x7 + 6.33250779142934*x3*x8 + 6.41941541320814*x3*x9 + 5.03782318336003*x3 + 3.54575861333983*x4 * x4 + 5.75643766633469*x4*x5 + 4.85141067205359*x4*x6 + 6.78109619222705*x4*x7 + 5.48500226186499*x4*x8 + 5.8725725602546*x4*x9 + 5.01918918494266*x4 + 3.77949334818819*x5 * x5 + 5.47271314695513*x5*x6 + 6.30109416667329*x5*x7 + 7.08206999789588*x5*x8 + 6.84213475530338*x5*x9 + 6.6487557402538*x5 + 3.44789342086681*x6 * x6 + 6.42214457970531*x6*x7 + 5.56545097458968*x6*x8 + 5.48430793839471*x6*x9 + 5.59505198744665*x6 + 5.08067621964833*x7 * x7 + 7.9675258570982*x7*x8 + 7.20535509063727*x7*x9 + 6.65592796406722*x7 + 4.36663874534883*x8 * x8 + 7.74186369044291*x8*x9 + 6.55457010998327*x8 + 3.91290587481992*x9 * x9 + 5.63806506952456*x9 + 3.85442937686288 >= 0. diff --git a/examples/valid/poly_v14_d1_s225.ae b/examples/valid/poly_v14_d1_s225.ae new file mode 100644 index 000000000..4319d9674 --- /dev/null +++ b/examples/valid/poly_v14_d1_s225.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13:real. + 5.20069702719802*x0 * x0 + 7.53608054940219*x0*x1 + 6.05131263723083*x0*x10 + 8.39084473063288*x0*x11 + 6.67555684261105*x0*x12 + 6.002183415403*x0*x13 + 6.73844831707171*x0*x2 + 8.67811490615751*x0*x3 + 6.10294761600771*x0*x4 + 8.39950817076024*x0*x5 + 7.19373721551743*x0*x6 + 6.71517408737968*x0*x7 + 8.62332170187402*x0*x8 + 8.46467325692776*x0*x9 + 6.3318127266468*x0 + 3.67350721864764*x1 * x1 + 6.59379626439342*x1*x10 + 7.23854126533879*x1*x11 + 6.02900781254261*x1*x12 + 5.68592284579669*x1*x13 + 5.99361163074825*x1*x2 + 7.27110317773823*x1*x3 + 5.84221955203892*x1*x4 + 7.63938996016919*x1*x5 + 5.79127877546497*x1*x6 + 6.31195325876313*x1*x7 + 7.05731667180805*x1*x8 + 6.38602982207813*x1*x9 + 5.74129393312462*x1 + 3.62248389751733*x10 * x10 + 6.2821004545803*x10*x11 + 5.65231660525092*x10*x12 + 5.82784159752243*x10*x13 + 6.10288847268411*x10*x2 + 6.22637042470593*x10*x3 + 5.01700882327523*x10*x4 + 6.51510130765544*x10*x5 + 4.93974931056265*x10*x6 + 5.6256816877966*x10*x7 + 6.72914517801187*x10*x8 + 4.96686808436078*x10*x9 + 6.17037642759293*x10 + 5.57569904264085*x11 * x11 + 8.12140546388304*x11*x12 + 5.9660006129615*x11*x13 + 6.39743505490717*x11*x2 + 9.49865028009726*x11*x3 + 6.59927568451274*x11*x4 + 9.12907114772293*x11*x5 + 7.70277662777272*x11*x6 + 9.04878431089197*x11*x7 + 9.05721166708443*x11*x8 + 8.99281751148634*x11*x9 + 6.12203722306015*x11 + 3.60925706982294*x12 * x12 + 4.65707607435361*x12*x13 + 5.25330453925254*x12*x2 + 6.63895899873905*x12*x3 + 4.36712491896783*x12*x4 + 6.28299385926603*x12*x5 + 5.3578381970556*x12*x6 + 6.50650528450198*x12*x7 + 7.25171593790691*x12*x8 + 6.20079283829486*x12*x9 + 4.99351743381761*x12 + 2.85180921313409*x13 * x13 + 5.13282521494796*x13*x2 + 6.33591434348381*x13*x3 + 5.11073696233841*x13*x4 + 6.77369768292767*x13*x5 + 4.7382785313596*x13*x6 + 5.19868844045019*x13*x7 + 5.61934241027194*x13*x8 + 5.35043582290454*x13*x9 + 5.69969588285863*x13 + 3.19330820503791*x2 * x2 + 6.45825467260804*x2*x3 + 4.52630450106244*x2*x4 + 6.38621840102042*x2*x5 + 5.38816965637592*x2*x6 + 5.34119323216027*x2*x7 + 7.2724157089898*x2*x8 + 5.85242294896847*x2*x9 + 5.70864348763458*x2 + 5.32678225507799*x3 * x3 + 7.2264612489966*x3*x4 + 8.95517147205484*x3*x5 + 6.45515385268987*x3*x6 + 7.9842661501043*x3*x7 + 7.7690346675748*x3*x8 + 8.97964657281888*x3*x9 + 6.47086270427767*x3 + 3.12703782755349*x4 * x4 + 6.90947384962358*x4*x5 + 5.24054047785407*x4*x6 + 6.20121012769971*x4*x7 + 4.75467598089617*x4*x8 + 5.7931855216945*x4*x9 + 4.49609092793175*x4 + 5.35222858777788*x5 * x5 + 6.83813330514548*x5*x6 + 7.82807530798146*x5*x7 + 8.23245320709019*x5*x8 + 7.8056453210039*x5*x9 + 6.65797236684249*x5 + 3.84123000514164*x6 * x6 + 5.9545493720279*x6*x7 + 7.08176330379764*x6*x8 + 6.74967590887571*x6*x9 + 4.67453532102803*x6 + 4.21637050323931*x7 * x7 + 6.82105869141069*x7*x8 + 6.67303496677002*x7*x9 + 4.84835676018316*x7 + 5.16719629005669*x8 * x8 + 8.15803686061166*x8*x9 + 6.91209526823022*x8 + 4.97615397012031*x9 * x9 + 6.11457171657512*x9 + 3.26127903143988 >= 0. diff --git a/examples/valid/poly_v15_d1_s256.ae b/examples/valid/poly_v15_d1_s256.ae new file mode 100644 index 000000000..c697d1738 --- /dev/null +++ b/examples/valid/poly_v15_d1_s256.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14:real. + 4.90784451310851*x0 * x0 + 6.95777279774054*x0*x1 + 7.61344031325948*x0*x10 + 6.21371863629082*x0*x11 + 6.42930565083384*x0*x12 + 10.0624532040709*x0*x13 + 6.81286678610389*x0*x14 + 7.91829708014799*x0*x2 + 8.01070242888366*x0*x3 + 4.7934580306468*x0*x4 + 8.03753036402662*x0*x5 + 10.480263310907*x0*x6 + 8.10201662995664*x0*x7 + 7.97713838184423*x0*x8 + 7.72625108522354*x0*x9 + 8.95744660970421*x0 + 4.02995303615789*x1 * x1 + 5.8377848401799*x1*x10 + 6.01339741676987*x1*x11 + 5.40444850701769*x1*x12 + 9.10297234702314*x1*x13 + 6.98471371181697*x1*x14 + 5.19111209677519*x1*x2 + 6.62343388914426*x1*x3 + 3.19030290788219*x1*x4 + 5.99393171478378*x1*x5 + 8.4046353721056*x1*x6 + 7.24516078620125*x1*x7 + 6.41282411540355*x1*x8 + 6.02561021729804*x1*x9 + 7.90367713696207*x1 + 4.3866847891957*x10 * x10 + 6.01398378210806*x10*x11 + 5.59539789016639*x10*x12 + 9.11537069902037*x10*x13 + 5.80161159593148*x10*x14 + 6.63609966056659*x10*x2 + 7.75747884218977*x10*x3 + 4.64711693229245*x10*x4 + 7.46823811824156*x10*x5 + 8.87993076494897*x10*x6 + 6.73306790728197*x10*x7 + 7.45129732072466*x10*x8 + 4.991453361731*x10*x9 + 6.55179487075309*x10 + 3.82600281332733*x11 * x11 + 5.4284957056539*x11*x12 + 8.15270083711497*x11*x13 + 4.98191006662925*x11*x14 + 5.11798328939841*x11*x2 + 6.3777375871125*x11*x3 + 2.87490958919631*x11*x4 + 5.95641496237211*x11*x5 + 7.20088719517305*x11*x6 + 5.45125492482391*x11*x7 + 6.17041335486452*x11*x8 + 5.20017255089321*x11*x9 + 6.45270312349468*x11 + 3.87300009942739*x12 * x12 + 7.49320907351114*x12*x13 + 6.04864137802745*x12*x14 + 5.26070042384066*x12*x2 + 7.87477757995356*x12*x3 + 4.37010657387624*x12*x4 + 6.46899469204513*x12*x5 + 8.45012440493523*x12*x6 + 6.3210341823802*x12*x7 + 6.15635533848926*x12*x8 + 7.50976582586304*x12*x9 + 7.25206291211283*x12 + 6.63436026213695*x13 * x13 + 8.53281158814638*x13*x14 + 8.66236237061566*x13*x2 + 9.23235381251799*x13*x3 + 5.70248112027158*x13*x4 + 9.79361942658914*x13*x5 + 11.8013848946091*x13*x6 + 9.2135867026671*x13*x7 + 9.58360451227493*x13*x8 + 7.3225708689162*x13*x9 + 10.0849715551308*x13 + 4.31464259573723*x14 * x14 + 6.0814217315878*x14*x2 + 8.08826099432599*x14*x3 + 4.86232357377527*x14*x4 + 6.67998688006584*x14*x5 + 8.50073714847365*x14*x6 + 8.19060803712261*x14*x7 + 5.23975131624556*x14*x8 + 6.48661619420059*x14*x9 + 7.52137844693014*x14 + 4.38311565307169*x2 * x2 + 6.74105838173484*x2*x3 + 4.17383999090034*x2*x4 + 8.08466099627066*x2*x5 + 8.75067415424924*x2*x6 + 7.73797562669645*x2*x7 + 6.4248465757467*x2*x8 + 5.94706072972178*x2*x9 + 7.38140657537119*x2 + 5.61776319218204*x3 * x3 + 5.53182711981081*x3*x4 + 7.50126283063792*x3*x5 + 9.96136413813394*x3*x6 + 8.7891916585443*x3*x7 + 6.76596342823444*x3*x8 + 8.65083871192725*x3*x9 + 9.06401864355348*x3 + 2.3013327958001*x4 * x4 + 5.17322828130848*x4*x5 + 5.47581130287655*x4*x6 + 4.81903595458495*x4*x7 + 3.97084255789998*x4*x8 + 3.93985717509984*x4*x9 + 4.12918593614717*x4 + 4.44791740252163*x5 * x5 + 9.28423810597129*x5*x6 + 7.39607579832889*x5*x7 + 7.18281995583299*x5*x8 + 6.07181420640947*x5*x9 + 7.4979617811581*x5 + 6.71281609396061*x6 * x6 + 10.006972694308*x6*x7 + 9.34562683957831*x6*x8 + 8.39774840907159*x6*x9 + 10.082870846084*x6 + 5.4177030884114*x7 * x7 + 6.58055111419526*x7*x8 + 7.29116527090562*x7*x9 + 8.5326868171951*x7 + 4.07784816089342*x8 * x8 + 5.94630413460713*x8*x9 + 7.58112495574671*x8 + 5.06153730630768*x9 * x9 + 9.33338373324894*x9 + 5.25154193116207 >= 0. diff --git a/examples/valid/poly_v16_d1_s289.ae b/examples/valid/poly_v16_d1_s289.ae new file mode 100644 index 000000000..d35c41b3d --- /dev/null +++ b/examples/valid/poly_v16_d1_s289.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15:real. + 5.2799970218848*x0 * x0 + 6.53471088943752*x0*x1 + 9.26706411070358*x0*x10 + 8.16459659090237*x0*x11 + 8.02127468099654*x0*x12 + 6.10223400213804*x0*x13 + 5.29597776080387*x0*x14 + 7.86885593671438*x0*x15 + 7.81999025603101*x0*x2 + 6.30003559298913*x0*x3 + 9.94280702746183*x0*x4 + 9.17987521915625*x0*x5 + 7.3136824229256*x0*x6 + 7.22349911208932*x0*x7 + 7.98322381594949*x0*x8 + 8.14719066092968*x0*x9 + 9.38168132370878*x0 + 5.79622869028531*x1 * x1 + 7.1497907517583*x1*x10 + 8.91270216374376*x1*x11 + 7.97539835922881*x1*x12 + 7.57600355983667*x1*x13 + 6.44029563817317*x1*x14 + 5.86835000237231*x1*x15 + 7.77820319378263*x1*x2 + 8.85681110004382*x1*x3 + 7.78349732684574*x1*x4 + 10.6542652359666*x1*x5 + 8.67700207263912*x1*x6 + 7.80266890946781*x1*x7 + 8.49512343933307*x1*x8 + 7.34374519680241*x1*x9 + 9.40019399850188*x1 + 5.19140989639819*x10 * x10 + 8.33019547010678*x10*x11 + 8.51505631449431*x10*x12 + 6.49275116797212*x10*x13 + 5.25689761656312*x10*x14 + 7.67165513129443*x10*x15 + 7.48288222861669*x10*x2 + 7.77362674623039*x10*x3 + 8.71257317104542*x10*x4 + 9.48301126167735*x10*x5 + 6.94117623531133*x10*x6 + 7.35234012219531*x10*x7 + 8.97202599933349*x10*x8 + 8.99570488168217*x10*x9 + 8.55717992433628*x10 + 5.71520345734078*x11 * x11 + 8.50606407003269*x11*x12 + 7.84886389936111*x11*x13 + 5.38702663801542*x11*x14 + 7.08862239413419*x11*x15 + 8.46083811221407*x11*x2 + 8.59527306162114*x11*x3 + 8.76407887137055*x11*x4 + 10.7889669899838*x11*x5 + 6.93869238738338*x11*x6 + 7.04408536697158*x11*x7 + 6.76364968489294*x11*x8 + 8.27347516012289*x11*x9 + 10.5449562328708*x11 + 4.79052119527133*x12 * x12 + 6.21291728853122*x12*x13 + 5.2529761113152*x12*x14 + 6.01007638267644*x12*x15 + 7.18758343761193*x12*x2 + 7.02785106178697*x12*x3 + 8.55114234180523*x12*x4 + 9.48201295167917*x12*x5 + 7.19292366953414*x12*x6 + 7.01430427409981*x12*x7 + 7.22679894276159*x12*x8 + 8.78963268893411*x12*x9 + 8.38208016505929*x12 + 4.09910325548049*x13 * x13 + 6.14983479905704*x13*x14 + 6.11203904703535*x13*x15 + 6.00170008943916*x13*x2 + 7.03832845178866*x13*x3 + 5.571542514982*x13*x4 + 9.20163954535098*x13*x5 + 6.00866575099947*x13*x6 + 5.69457085916712*x13*x7 + 5.79054792243893*x13*x8 + 6.64888387150368*x13*x9 + 8.42118692885047*x13 + 2.82898911387831*x14 * x14 + 4.87828655658489*x14*x15 + 4.89829951434621*x14*x2 + 5.61219570487169*x14*x3 + 4.92722616464649*x14*x4 + 7.4673920177622*x14*x5 + 5.46313676191822*x14*x6 + 4.51401628772717*x14*x7 + 5.51754275663563*x14*x8 + 5.73956659918008*x14*x9 + 6.56395536132512*x14 + 4.79778869473825*x15 * x15 + 7.85763441601522*x15*x2 + 6.60146443085661*x15*x3 + 9.00683578176543*x15*x4 + 8.22754143762352*x15*x5 + 6.48380653748194*x15*x6 + 6.75763479893009*x15*x7 + 7.20590148630253*x15*x8 + 6.9428956800943*x15*x9 + 7.97335880910619*x15 + 4.26949717686265*x2 * x2 + 7.27972772493866*x2*x3 + 9.03676547748645*x2*x4 + 9.19039046914537*x2*x5 + 7.09039761529214*x2*x6 + 6.77650471856775*x2*x7 + 7.18899598390552*x2*x8 + 7.29300144863571*x2*x9 + 8.47654890964201*x2 + 4.70262904647382*x3 * x3 + 7.24672688810131*x3*x4 + 10.101846948318*x3*x5 + 6.90308080946928*x3*x6 + 6.62636696974893*x3*x7 + 7.67007956423399*x3*x8 + 8.03943709024063*x3*x9 + 8.45238511525917*x3 + 5.98245938585927*x4 * x4 + 9.65205537218213*x4*x5 + 8.49645349912134*x4*x6 + 8.2097429788454*x4*x7 + 8.19860997466399*x4*x8 + 8.43137157450544*x4*x9 + 10.149411497287*x4 + 6.62451537362177*x5 * x5 + 8.50005431421276*x5*x6 + 8.36586201390922*x5*x7 + 8.53453477946331*x5*x8 + 9.98184991926226*x5*x9 + 10.9422516236118*x5 + 4.54765695436197*x6 * x6 + 7.12469184513967*x6*x7 + 7.78569409094506*x6*x8 + 7.29345624958318*x6*x9 + 8.25075361948782*x6 + 4.21905627610022*x7 * x7 + 7.17460820068426*x7*x8 + 6.633462560591*x7*x9 + 7.98399724565895*x7 + 5.06708648385542*x8 * x8 + 7.54937619088018*x8*x9 + 7.74263199741004*x8 + 4.83274611918938*x9 * x9 + 8.35204636613484*x9 + 6.58062719783377 >= 0. diff --git a/examples/valid/poly_v1_d1_s4_2.ae b/examples/valid/poly_v1_d1_s4_2.ae new file mode 100644 index 000000000..57992759e --- /dev/null +++ b/examples/valid/poly_v1_d1_s4_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.727065890131904*x0 * x0 + 1.05426654185582*x0 + 0.382180760143207 >= 0. diff --git a/examples/valid/poly_v1_d2_s9.ae b/examples/valid/poly_v1_d2_s9.ae new file mode 100644 index 000000000..063aa7b5f --- /dev/null +++ b/examples/valid/poly_v1_d2_s9.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.742738572613597*x0 * x0 * x0 * x0 + 1.58199078569821*x0 * x0 * x0 + 2.50608687538092*x0 * x0 + 1.77179234514513*x0 + 0.931652001921465 >= 0. diff --git a/examples/valid/poly_v1_d2_s9_2.ae b/examples/valid/poly_v1_d2_s9_2.ae new file mode 100644 index 000000000..576d19828 --- /dev/null +++ b/examples/valid/poly_v1_d2_s9_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.000136577443878112*x0 * x0 * x0 * x0 + 0.0168861125803027*x0 * x0 * x0 + 0.528578183732382*x0 * x0 + 0.173600987928758*x0 + 0.0143305471396714 >= 0. diff --git a/examples/valid/poly_v1_d3_s16.ae b/examples/valid/poly_v1_d3_s16.ae new file mode 100644 index 000000000..9c069649c --- /dev/null +++ b/examples/valid/poly_v1_d3_s16.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.249739970483859*x0 * x0 * x0 * x0 * x0 * x0 + 0.883906331166171*x0 * x0 * x0 * x0 * x0 + 1.51545076498496*x0 * x0 * x0 * x0 + 2.52396505662831*x0 * x0 * x0 + 3.27734199492384*x0 * x0 + 1.79977942022502*x0 + 1.22045365273251 >= 0. diff --git a/examples/valid/poly_v1_d3_s16_2.ae b/examples/valid/poly_v1_d3_s16_2.ae new file mode 100644 index 000000000..0f8ebabd5 --- /dev/null +++ b/examples/valid/poly_v1_d3_s16_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.833190408695415*x0 * x0 * x0 * x0 * x0 * x0 + 1.98445702105145*x0 * x0 * x0 * x0 * x0 + 2.09653391597633*x0 * x0 * x0 * x0 + 3.04152004117275*x0 * x0 * x0 + 2.75420739228966*x0 * x0 + 1.08148042897402*x0 + 1.27191123891198 >= 0. diff --git a/examples/valid/poly_v1_d4_s25.ae b/examples/valid/poly_v1_d4_s25.ae new file mode 100644 index 000000000..b07968a26 --- /dev/null +++ b/examples/valid/poly_v1_d4_s25.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.9808694965113*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 1.79062474061962*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 2.02916773436879*x0 * x0 * x0 * x0 * x0 * x0 + 2.04178703758381*x0 * x0 * x0 * x0 * x0 + 3.78674923052137*x0 * x0 * x0 * x0 + 2.21689021106193*x0 * x0 * x0 + 2.9805149124396*x0 * x0 + 1.30987029048078*x0 + 1.00669496095358 >= 0. diff --git a/examples/valid/poly_v1_d4_s25_2.ae b/examples/valid/poly_v1_d4_s25_2.ae new file mode 100644 index 000000000..5489ed0fa --- /dev/null +++ b/examples/valid/poly_v1_d4_s25_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.950233319737974*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 1.37455184955943*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 2.24168089191394*x0 * x0 * x0 * x0 * x0 * x0 + 1.73040638900866*x0 * x0 * x0 * x0 * x0 + 2.60905183203789*x0 * x0 * x0 * x0 + 0.654630522491572*x0 * x0 * x0 + 1.27912827539021*x0 * x0 + 0.100374382321294*x0 + 0.027072342241489 >= 0. diff --git a/examples/valid/poly_v1_d5_s36.ae b/examples/valid/poly_v1_d5_s36.ae new file mode 100644 index 000000000..e91346487 --- /dev/null +++ b/examples/valid/poly_v1_d5_s36.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 0.0739892201468967*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 0.856393374546642*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 3.7876198963828*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 4.18392913183044*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 6.62072737097085*x0 * x0 * x0 * x0 * x0 * x0 + 9.43398964880862*x0 * x0 * x0 * x0 * x0 + 10.5677577748558*x0 * x0 * x0 * x0 + 7.51904705585908*x0 * x0 * x0 + 6.78927966453463*x0 * x0 + 4.93218329356497*x0 + 2.45851352019595 >= 0. diff --git a/examples/valid/poly_v1_d5_s36_2.ae b/examples/valid/poly_v1_d5_s36_2.ae new file mode 100644 index 000000000..33ca7cd14 --- /dev/null +++ b/examples/valid/poly_v1_d5_s36_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0:real. + 1.09586459985073*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 2.12879512090627*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 2.51559450289165*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 3.41905294741662*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 5.50312630635024*x0 * x0 * x0 * x0 * x0 * x0 + 6.52400664868257*x0 * x0 * x0 * x0 * x0 + 5.52692975874215*x0 * x0 * x0 * x0 + 4.30889305017585*x0 * x0 * x0 + 3.39995900462505*x0 * x0 + 3.09148816827759*x0 + 2.17401651740591 >= 0. diff --git a/examples/valid/poly_v2_d1_s9_2.ae b/examples/valid/poly_v2_d1_s9_2.ae new file mode 100644 index 000000000..f0a1ba99d --- /dev/null +++ b/examples/valid/poly_v2_d1_s9_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 0.229186507695414*x0 * x0 + 0.0746490035986283*x0*x1 + 0.061533831756865*x0 + 0.00607956250849183*x1 * x1 + 0.0100212253262546*x1 + 0.00413129219076353 >= 0. diff --git a/examples/valid/poly_v2_d2_s36.ae b/examples/valid/poly_v2_d2_s36.ae new file mode 100644 index 000000000..105f2e49e --- /dev/null +++ b/examples/valid/poly_v2_d2_s36.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 2.26370812598646*x0 * x0 * x0 * x0 + 2.24311166170367*x0 * x0 * x0*x1 + 3.30252461109441*x0 * x0 * x0 + 2.02793892458754*x0 * x0*x1 * x1 + 5.8789880239781*x0 * x0*x1 + 3.67162947820525*x0 * x0 + 1.12080109976291*x0*x1 * x1 * x1 + 2.84524992141218*x0*x1 * x1 + 4.58796744954945*x0*x1 + 1.2819740342138*x0 + 0.542931583399102*x1 * x1 * x1 * x1 + 1.5210864858191*x1 * x1 * x1 + 3.77737880436947*x1 * x1 + 2.39646987347093*x1 + 0.865843166686152 >= 0. diff --git a/examples/valid/poly_v2_d2_s36_2.ae b/examples/valid/poly_v2_d2_s36_2.ae new file mode 100644 index 000000000..14c6605e2 --- /dev/null +++ b/examples/valid/poly_v2_d2_s36_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 1.29995650893924*x0 * x0 * x0 * x0 + 1.68796889167675*x0 * x0 * x0*x1 + 1.78120183312122*x0 * x0 * x0 + 2.02245487435569*x0 * x0*x1 * x1 + 4.14505902965719*x0 * x0*x1 + 3.97927128450389*x0 * x0 + 1.48212032367935*x0*x1 * x1 * x1 + 3.65188308942849*x0*x1 * x1 + 4.09779542515272*x0*x1 + 2.39293782797691*x0 + 0.601912453128112*x1 * x1 * x1 * x1 + 1.5925029622961*x1 * x1 * x1 + 3.42717297594421*x1 * x1 + 2.70993854038145*x1 + 1.38526373566144 >= 0. diff --git a/examples/valid/poly_v2_d3_s100.ae b/examples/valid/poly_v2_d3_s100.ae new file mode 100644 index 000000000..57fbbf9d4 --- /dev/null +++ b/examples/valid/poly_v2_d3_s100.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 1.65803091174854*x0 * x0 * x0 * x0 * x0 * x0 + 3.82315246214825*x0 * x0 * x0 * x0 * x0*x1 + 2.82210449104482*x0 * x0 * x0 * x0 * x0 + 3.97810657504416*x0 * x0 * x0 * x0*x1 * x1 + 6.73314711535641*x0 * x0 * x0 * x0*x1 + 5.96298904716069*x0 * x0 * x0 * x0 + 4.11167209544511*x0 * x0 * x0*x1 * x1 * x1 + 9.95743546920474*x0 * x0 * x0*x1 * x1 + 12.2887226975541*x0 * x0 * x0*x1 + 8.73111500957071*x0 * x0 * x0 + 2.9936975954647*x0 * x0*x1 * x1 * x1 * x1 + 10.7578880115781*x0 * x0*x1 * x1 * x1 + 13.1071081452665*x0 * x0*x1 * x1 + 13.5302684604417*x0 * x0*x1 + 8.16265809140229*x0 * x0 + 1.60764771559053*x0*x1 * x1 * x1 * x1 * x1 + 5.2166247523766*x0*x1 * x1 * x1 * x1 + 12.2068148262871*x0*x1 * x1 * x1 + 12.3926770988685*x0*x1 * x1 + 11.1003954558822*x0*x1 + 4.8466059604806*x0 + 2.01797971642501*x1 * x1 * x1 * x1 * x1 * x1 + 3.20038847896779*x1 * x1 * x1 * x1 * x1 + 7.71468166176729*x1 * x1 * x1 * x1 + 9.06745818913997*x1 * x1 * x1 + 9.35989094628238*x1 * x1 + 5.14642881554979*x1 + 3.33207746490057 >= 0. diff --git a/examples/valid/poly_v2_d3_s100_2.ae b/examples/valid/poly_v2_d3_s100_2.ae new file mode 100644 index 000000000..f1fef6ccb --- /dev/null +++ b/examples/valid/poly_v2_d3_s100_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 4.70026984508077*x0 * x0 * x0 * x0 * x0 * x0 + 4.85226138792754*x0 * x0 * x0 * x0 * x0*x1 + 8.06802726853957*x0 * x0 * x0 * x0 * x0 + 6.77414637723623*x0 * x0 * x0 * x0*x1 * x1 + 9.96733520950267*x0 * x0 * x0 * x0*x1 + 9.41201638229875*x0 * x0 * x0 * x0 + 10.4975983286951*x0 * x0 * x0*x1 * x1 * x1 + 14.2999355091606*x0 * x0 * x0*x1 * x1 + 14.1574472525802*x0 * x0 * x0*x1 + 11.2786322839995*x0 * x0 * x0 + 5.98365392736509*x0 * x0*x1 * x1 * x1 * x1 + 14.1577436226557*x0 * x0*x1 * x1 * x1 + 16.4359680654035*x0 * x0*x1 * x1 + 12.9648247940649*x0 * x0*x1 + 7.97296437739254*x0 * x0 + 4.34477220342992*x0*x1 * x1 * x1 * x1 * x1 + 9.03412256171648*x0*x1 * x1 * x1 * x1 + 12.0741375681379*x0*x1 * x1 * x1 + 11.6303025362652*x0*x1 * x1 + 7.22508062301147*x0*x1 + 3.6108930667509*x0 + 3.33563826475881*x1 * x1 * x1 * x1 * x1 * x1 + 4.52011757593976*x1 * x1 * x1 * x1 * x1 + 7.22558646404132*x1 * x1 * x1 * x1 + 9.36218738096792*x1 * x1 * x1 + 6.43299491669628*x1 * x1 + 4.22824800988438*x1 + 2.7019226329843 >= 0. diff --git a/examples/valid/poly_v2_d4_s225.ae b/examples/valid/poly_v2_d4_s225.ae new file mode 100644 index 000000000..1a925523c --- /dev/null +++ b/examples/valid/poly_v2_d4_s225.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 4.79411022435831*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 7.78259533195262*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 6.19939008742803*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 11.9519588032879*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 11.8578017834839*x0 * x0 * x0 * x0 * x0 * x0*x1 + 8.49347287028797*x0 * x0 * x0 * x0 * x0 * x0 + 15.0941498356619*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 16.6173698044743*x0 * x0 * x0 * x0 * x0*x1 * x1 + 19.9066290137567*x0 * x0 * x0 * x0 * x0*x1 + 10.3780175924344*x0 * x0 * x0 * x0 * x0 + 20.3407315294476*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 27.3331995107295*x0 * x0 * x0 * x0*x1 * x1 * x1 + 26.5799794818784*x0 * x0 * x0 * x0*x1 * x1 + 24.3587832554065*x0 * x0 * x0 * x0*x1 + 15.4855586696075*x0 * x0 * x0 * x0 + 15.9037961108941*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 24.971763435696*x0 * x0 * x0*x1 * x1 * x1 * x1 + 31.5809450417196*x0 * x0 * x0*x1 * x1 * x1 + 29.6293711505841*x0 * x0 * x0*x1 * x1 + 25.7462422047589*x0 * x0 * x0*x1 + 10.2410870910876*x0 * x0 * x0 + 12.0529605265729*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 21.532422552569*x0 * x0*x1 * x1 * x1 * x1 * x1 + 31.3280337284442*x0 * x0*x1 * x1 * x1 * x1 + 30.2304323172095*x0 * x0*x1 * x1 * x1 + 30.8160525251849*x0 * x0*x1 * x1 + 21.0984026557585*x0 * x0*x1 + 9.44626983021486*x0 * x0 + 5.97479046274735*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 13.4827781748528*x0*x1 * x1 * x1 * x1 * x1 * x1 + 20.559427531474*x0*x1 * x1 * x1 * x1 * x1 + 27.4564092094972*x0*x1 * x1 * x1 * x1 + 26.3126901384265*x0*x1 * x1 * x1 + 18.4225626634287*x0*x1 * x1 + 12.6502339136636*x0*x1 + 6.10875866203898*x0 + 5.22139054085639*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 9.62305391232763*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 10.652702391274*x1 * x1 * x1 * x1 * x1 * x1 + 13.9179306889259*x1 * x1 * x1 * x1 * x1 + 19.0935597959163*x1 * x1 * x1 * x1 + 13.4395392730327*x1 * x1 * x1 + 10.3491524721017*x1 * x1 + 7.64945314602109*x1 + 4.8718270633193 >= 0. diff --git a/examples/valid/poly_v2_d4_s225_2.ae b/examples/valid/poly_v2_d4_s225_2.ae new file mode 100644 index 000000000..d176f8f4d --- /dev/null +++ b/examples/valid/poly_v2_d4_s225_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 4.00972755188296*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 4.04549116949634*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 5.18989733346084*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 8.14606161276238*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 10.3619508462137*x0 * x0 * x0 * x0 * x0 * x0*x1 + 10.759459793067*x0 * x0 * x0 * x0 * x0 * x0 + 10.7057427608891*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 17.0966629895216*x0 * x0 * x0 * x0 * x0*x1 * x1 + 17.937378646645*x0 * x0 * x0 * x0 * x0*x1 + 12.6874159390267*x0 * x0 * x0 * x0 * x0 + 13.2331165956058*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 21.523409936088*x0 * x0 * x0 * x0*x1 * x1 * x1 + 26.8117317094265*x0 * x0 * x0 * x0*x1 * x1 + 23.5102977573438*x0 * x0 * x0 * x0*x1 + 18.0516583407553*x0 * x0 * x0 * x0 + 10.1982185247533*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 19.6306439613334*x0 * x0 * x0*x1 * x1 * x1 * x1 + 29.4910362916788*x0 * x0 * x0*x1 * x1 * x1 + 30.5908397752525*x0 * x0 * x0*x1 * x1 + 25.6540679405981*x0 * x0 * x0*x1 + 15.062419785236*x0 * x0 * x0 + 8.89516332170732*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 15.4971189923167*x0 * x0*x1 * x1 * x1 * x1 * x1 + 28.4147896573603*x0 * x0*x1 * x1 * x1 * x1 + 31.4354903836619*x0 * x0*x1 * x1 * x1 + 29.4978753777528*x0 * x0*x1 * x1 + 19.8360305474841*x0 * x0*x1 + 12.2037985365965*x0 * x0 + 6.7042411856089*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 10.8566557494388*x0*x1 * x1 * x1 * x1 * x1 * x1 + 19.1876237445242*x0*x1 * x1 * x1 * x1 * x1 + 27.8117388082744*x0*x1 * x1 * x1 * x1 + 28.292018606519*x0*x1 * x1 * x1 + 20.672539022611*x0*x1 * x1 + 12.7638149005243*x0*x1 + 6.3598668293009*x0 + 3.23338500939616*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 3.97845832820682*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 8.19960843785996*x1 * x1 * x1 * x1 * x1 * x1 + 11.9122153936388*x1 * x1 * x1 * x1 * x1 + 14.7922332084504*x1 * x1 * x1 * x1 + 11.3159268016797*x1 * x1 * x1 + 11.7987870163063*x1 * x1 + 9.48097909130329*x1 + 4.91053324838568 >= 0. diff --git a/examples/valid/poly_v2_d5_s441.ae b/examples/valid/poly_v2_d5_s441.ae new file mode 100644 index 000000000..892280891 --- /dev/null +++ b/examples/valid/poly_v2_d5_s441.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 4.86464642264301*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 8.80098916460227*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 9.4532540241635*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 17.0062510263277*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 21.8821429458838*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 14.0250900790912*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 20.4379243652562*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 30.8188905061289*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 29.9327855205107*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 17.0707196370967*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 21.9845030902035*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 43.2377314667029*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 46.5127646476988*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 38.9757655295615*x0 * x0 * x0 * x0 * x0 * x0*x1 + 23.2841303484981*x0 * x0 * x0 * x0 * x0 * x0 + 27.7428689589541*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 47.8258368345947*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 61.8109937336736*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 57.6330259505391*x0 * x0 * x0 * x0 * x0*x1 * x1 + 46.9155365829407*x0 * x0 * x0 * x0 * x0*x1 + 25.9397130318023*x0 * x0 * x0 * x0 * x0 + 25.3741417417898*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 50.6986965220216*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 69.0338337616847*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 70.1479218869357*x0 * x0 * x0 * x0*x1 * x1 * x1 + 64.2164835330762*x0 * x0 * x0 * x0*x1 * x1 + 51.6215188846437*x0 * x0 * x0 * x0*x1 + 25.2342341577835*x0 * x0 * x0 * x0 + 17.9864699096018*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 40.6264396733502*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 57.8485535980171*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 64.1932583176114*x0 * x0 * x0*x1 * x1 * x1 * x1 + 67.1809235012847*x0 * x0 * x0*x1 * x1 * x1 + 58.1751716620161*x0 * x0 * x0*x1 * x1 + 38.6368449799951*x0 * x0 * x0*x1 + 16.0920040064793*x0 * x0 * x0 + 13.6719362096916*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 26.5248970895522*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 43.140725341845*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 58.4873889515124*x0 * x0*x1 * x1 * x1 * x1 * x1 + 62.0836653860942*x0 * x0*x1 * x1 * x1 * x1 + 58.3338234118577*x0 * x0*x1 * x1 * x1 + 46.1503958312473*x0 * x0*x1 * x1 + 31.2061408999762*x0 * x0*x1 + 15.9987139816653*x0 * x0 + 6.98215460347426*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 18.5020178946557*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 30.1212572391839*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 36.4338581619326*x0*x1 * x1 * x1 * x1 * x1 * x1 + 47.5961001702488*x0*x1 * x1 * x1 * x1 * x1 + 50.3690535880542*x0*x1 * x1 * x1 * x1 + 41.08614249769*x0*x1 * x1 * x1 + 28.3325365270841*x0*x1 * x1 + 18.4887563764458*x0*x1 + 8.20558077148973*x0 + 6.39824100931078*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 9.579500621022*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 17.2309957706451*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 21.9506927865616*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 29.275576494868*x1 * x1 * x1 * x1 * x1 * x1 + 31.9308374598999*x1 * x1 * x1 * x1 * x1 + 30.282868518087*x1 * x1 * x1 * x1 + 22.964188581245*x1 * x1 * x1 + 17.4579608177489*x1 * x1 + 10.0949294053331*x1 + 7.02032180119658 >= 0. diff --git a/examples/valid/poly_v2_d5_s441_2.ae b/examples/valid/poly_v2_d5_s441_2.ae new file mode 100644 index 000000000..d5aea8bb6 --- /dev/null +++ b/examples/valid/poly_v2_d5_s441_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1:real. + 5.77493355935853*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 9.75939623028204*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 9.61359486285144*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 17.7422622742857*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 19.6233634086289*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 18.9772658821128*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 20.423624624044*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 26.6069514298973*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 30.8770189364129*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 21.6275381612362*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 29.774461529034*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 39.4924125381481*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 46.1865550964465*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 40.418490988263*x0 * x0 * x0 * x0 * x0 * x0*x1 + 26.7955825871975*x0 * x0 * x0 * x0 * x0 * x0 + 29.7147004109382*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 47.4422431880112*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 60.5839452589987*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 58.1904483466212*x0 * x0 * x0 * x0 * x0*x1 * x1 + 51.7263366266997*x0 * x0 * x0 * x0 * x0*x1 + 30.1401887587419*x0 * x0 * x0 * x0 * x0 + 31.1682948493709*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 53.5693578581178*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 73.8504872265411*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 72.4766961487398*x0 * x0 * x0 * x0*x1 * x1 * x1 + 64.4231636491434*x0 * x0 * x0 * x0*x1 * x1 + 49.4671859113969*x0 * x0 * x0 * x0*x1 + 27.7198238805048*x0 * x0 * x0 * x0 + 21.1541357389836*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 38.4394448046468*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 59.1175333967597*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 71.3802264744754*x0 * x0 * x0*x1 * x1 * x1 * x1 + 68.3766798882235*x0 * x0 * x0*x1 * x1 * x1 + 55.6150556965547*x0 * x0 * x0*x1 * x1 + 39.6472864939148*x0 * x0 * x0*x1 + 19.7598731188102*x0 * x0 * x0 + 18.4637579353695*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 32.4126264017615*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 49.8741498471029*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 64.0659692583947*x0 * x0*x1 * x1 * x1 * x1 * x1 + 67.6249954240116*x0 * x0*x1 * x1 * x1 * x1 + 57.3221723357641*x0 * x0*x1 * x1 * x1 + 42.1051580415616*x0 * x0*x1 * x1 + 28.1410454531696*x0 * x0*x1 + 15.7564260495098*x0 * x0 + 10.6524162824044*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 22.0606599144547*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 31.0928696070274*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 41.8538791962543*x0*x1 * x1 * x1 * x1 * x1 * x1 + 51.0970000948274*x0*x1 * x1 * x1 * x1 * x1 + 53.9843455280992*x0*x1 * x1 * x1 * x1 + 40.1301974719946*x0*x1 * x1 * x1 + 27.9628403161767*x0*x1 * x1 + 19.6369482756381*x0*x1 + 8.76983741796373*x0 + 6.23923520167816*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 11.5763504099735*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 17.3269718679662*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 20.0743177780323*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 26.6772653077829*x1 * x1 * x1 * x1 * x1 * x1 + 28.5979953024335*x1 * x1 * x1 * x1 * x1 + 24.937052285472*x1 * x1 * x1 * x1 + 16.2926793833308*x1 * x1 * x1 + 14.5320421430051*x1 * x1 + 9.57062622850005*x1 + 5.80613396327724 >= 0. diff --git a/examples/valid/poly_v3_d1_s16_2.ae b/examples/valid/poly_v3_d1_s16_2.ae new file mode 100644 index 000000000..ecb6d4e7e --- /dev/null +++ b/examples/valid/poly_v3_d1_s16_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 0.294888612385786*x0 * x0 + 0.431802778176279*x0*x1 + 0.648036048248533*x0*x2 + 1.11631722418192*x0 + 0.18787249206197*x1 * x1 + 0.469208115191351*x1*x2 + 0.892022724791277*x1 + 0.356258327406665*x2 * x2 + 1.2200107772311*x2 + 1.10330469700562 >= 0. diff --git a/examples/valid/poly_v3_d2_s100.ae b/examples/valid/poly_v3_d2_s100.ae new file mode 100644 index 000000000..b5f9c532c --- /dev/null +++ b/examples/valid/poly_v3_d2_s100.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 1.38377852604329*x0 * x0 * x0 * x0 + 2.17746131062225*x0 * x0 * x0*x1 + 2.787176842562*x0 * x0 * x0*x2 + 3.68146992117486*x0 * x0 * x0 + 4.18977824036412*x0 * x0*x1 * x1 + 7.61557604441252*x0 * x0*x1*x2 + 5.17578770905842*x0 * x0*x1 + 5.73967513103958*x0 * x0*x2 * x2 + 7.55076092388515*x0 * x0*x2 + 4.84424133062288*x0 * x0 + 2.69277913977606*x0*x1 * x1 * x1 + 8.17312423354548*x0*x1 * x1*x2 + 6.40449637395897*x0*x1 * x1 + 7.31928711485046*x0*x1*x2 * x2 + 12.8940177942619*x0*x1*x2 + 5.93604408397925*x0*x1 + 4.57284533696664*x0*x2 * x2 * x2 + 9.63315054720321*x0*x2 * x2 + 9.79341962370601*x0*x2 + 3.31886549083604*x0 + 2.20789995315161*x1 * x1 * x1 * x1 + 4.57625491388189*x1 * x1 * x1*x2 + 3.4719974470562*x1 * x1 * x1 + 7.20996933328323*x1 * x1*x2 * x2 + 8.78953456015972*x1 * x1*x2 + 6.07944688721468*x1 * x1 + 4.75716576917661*x1*x2 * x2 * x2 + 9.21134000653251*x1*x2 * x2 + 8.58705730900764*x1*x2 + 3.6231348814065*x1 + 2.4083490891875*x2 * x2 * x2 * x2 + 5.38227249089345*x2 * x2 * x2 + 7.44679548854425*x2 * x2 + 5.01890148767012*x2 + 2.34220871983263 >= 0. diff --git a/examples/valid/poly_v3_d2_s100_2.ae b/examples/valid/poly_v3_d2_s100_2.ae new file mode 100644 index 000000000..b153a26d0 --- /dev/null +++ b/examples/valid/poly_v3_d2_s100_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 2.80774464984344*x0 * x0 * x0 * x0 + 3.92615435802206*x0 * x0 * x0*x1 + 3.28313553998873*x0 * x0 * x0*x2 + 4.63387542296536*x0 * x0 * x0 + 7.65193430965993*x0 * x0*x1 * x1 + 7.65623551934402*x0 * x0*x1*x2 + 10.819632623281*x0 * x0*x1 + 7.65678992893301*x0 * x0*x2 * x2 + 7.38984114171862*x0 * x0*x2 + 7.81394297497791*x0 * x0 + 4.44925135526689*x0*x1 * x1 * x1 + 7.67574325631225*x0*x1 * x1*x2 + 11.4207600370565*x0*x1 * x1 + 8.44368880526466*x0*x1*x2 * x2 + 14.8060253879*x0*x1*x2 + 9.07917023542835*x0*x1 + 5.0460060584853*x0*x2 * x2 * x2 + 10.7888534993201*x0*x2 * x2 + 9.65074232615634*x0*x2 + 4.75218965696324*x0 + 3.77365211086878*x1 * x1 * x1 * x1 + 5.15067428375695*x1 * x1 * x1*x2 + 5.71851609381262*x1 * x1 * x1 + 9.84986138576195*x1 * x1*x2 * x2 + 11.1354904045051*x1 * x1*x2 + 8.01531552801832*x1 * x1 + 5.75484163739175*x1*x2 * x2 * x2 + 11.8299966084791*x1*x2 * x2 + 9.58170592134665*x1*x2 + 4.3050341287608*x1 + 4.6148045638238*x2 * x2 * x2 * x2 + 7.1412242319337*x2 * x2 * x2 + 9.36470798133458*x2 * x2 + 4.64790407108329*x2 + 2.06144305624141 >= 0. diff --git a/examples/valid/poly_v3_d3_s400.ae b/examples/valid/poly_v3_d3_s400.ae new file mode 100644 index 000000000..174505555 --- /dev/null +++ b/examples/valid/poly_v3_d3_s400.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 5.33663950857385*x0 * x0 * x0 * x0 * x0 * x0 + 9.27022672960912*x0 * x0 * x0 * x0 * x0*x1 + 11.188581719361*x0 * x0 * x0 * x0 * x0*x2 + 8.43802285587288*x0 * x0 * x0 * x0 * x0 + 13.1863801777345*x0 * x0 * x0 * x0*x1 * x1 + 20.8876595122704*x0 * x0 * x0 * x0*x1*x2 + 16.5127583098556*x0 * x0 * x0 * x0*x1 + 17.5917244001826*x0 * x0 * x0 * x0*x2 * x2 + 20.8724196540217*x0 * x0 * x0 * x0*x2 + 14.4303234022887*x0 * x0 * x0 * x0 + 16.0520271618602*x0 * x0 * x0*x1 * x1 * x1 + 25.7315074999839*x0 * x0 * x0*x1 * x1*x2 + 27.9290532470683*x0 * x0 * x0*x1 * x1 + 26.0070373262444*x0 * x0 * x0*x1*x2 * x2 + 40.252322751899*x0 * x0 * x0*x1*x2 + 25.2481599656488*x0 * x0 * x0*x1 + 16.9872742381917*x0 * x0 * x0*x2 * x2 * x2 + 26.0750390593645*x0 * x0 * x0*x2 * x2 + 28.1831383865251*x0 * x0 * x0*x2 + 18.9462092598463*x0 * x0 * x0 + 15.4822544140097*x0 * x0*x1 * x1 * x1 * x1 + 29.7597831461982*x0 * x0*x1 * x1 * x1*x2 + 27.8541925263516*x0 * x0*x1 * x1 * x1 + 33.1411524673835*x0 * x0*x1 * x1*x2 * x2 + 46.7156408465723*x0 * x0*x1 * x1*x2 + 32.8687652261506*x0 * x0*x1 * x1 + 29.42437256966*x0 * x0*x1*x2 * x2 * x2 + 50.0068924454421*x0 * x0*x1*x2 * x2 + 44.6581996553202*x0 * x0*x1*x2 + 26.9113756488763*x0 * x0*x1 + 14.7958250611406*x0 * x0*x2 * x2 * x2 * x2 + 25.1019547276585*x0 * x0*x2 * x2 * x2 + 31.5791898394973*x0 * x0*x2 * x2 + 27.4698369458607*x0 * x0*x2 + 14.0339916095833*x0 * x0 + 7.4647754980052*x0*x1 * x1 * x1 * x1 * x1 + 14.0434448878914*x0*x1 * x1 * x1 * x1*x2 + 18.9980737357031*x0*x1 * x1 * x1 * x1 + 23.5996673412289*x0*x1 * x1 * x1*x2 * x2 + 33.6963240964679*x0*x1 * x1 * x1*x2 + 25.699673284233*x0*x1 * x1 * x1 + 21.1119572398401*x0*x1 * x1*x2 * x2 * x2 + 42.0510819077511*x0*x1 * x1*x2 * x2 + 37.9861110264084*x0*x1 * x1*x2 + 22.8057354332594*x0*x1 * x1 + 14.6549739443213*x0*x1*x2 * x2 * x2 * x2 + 32.1164384662175*x0*x1*x2 * x2 * x2 + 42.4375465766159*x0*x1*x2 * x2 + 31.2753465323313*x0*x1*x2 + 15.8113636237869*x0*x1 + 5.07794949697898*x0*x2 * x2 * x2 * x2 * x2 + 13.1945128316727*x0*x2 * x2 * x2 * x2 + 21.089550856926*x0*x2 * x2 * x2 + 24.7484642355796*x0*x2 * x2 + 13.0718903895416*x0*x2 + 9.24234869355346*x0 + 7.12652882445605*x1 * x1 * x1 * x1 * x1 * x1 + 10.7104119838742*x1 * x1 * x1 * x1 * x1*x2 + 11.6252570283963*x1 * x1 * x1 * x1 * x1 + 16.7720561994372*x1 * x1 * x1 * x1*x2 * x2 + 23.6145976954257*x1 * x1 * x1 * x1*x2 + 15.4264811252519*x1 * x1 * x1 * x1 + 18.1180965158406*x1 * x1 * x1*x2 * x2 * x2 + 32.9047241628709*x1 * x1 * x1*x2 * x2 + 29.2533710922086*x1 * x1 * x1*x2 + 17.4519072912675*x1 * x1 * x1 + 14.071478069096*x1 * x1*x2 * x2 * x2 * x2 + 28.4474207587846*x1 * x1*x2 * x2 * x2 + 31.9858268097834*x1 * x1*x2 * x2 + 28.0255779721099*x1 * x1*x2 + 13.1855059635185*x1 * x1 + 8.37551521582725*x1*x2 * x2 * x2 * x2 * x2 + 17.3341034524245*x1*x2 * x2 * x2 * x2 + 24.0633430337803*x1*x2 * x2 * x2 + 27.1048804698067*x1*x2 * x2 + 16.9379031749459*x1*x2 + 7.46550451210918*x1 + 3.99029140439492*x2 * x2 * x2 * x2 * x2 * x2 + 6.45702613039132*x2 * x2 * x2 * x2 * x2 + 13.0816236519015*x2 * x2 * x2 * x2 + 15.2346119591593*x2 * x2 * x2 + 13.7159558942893*x2 * x2 + 7.58103577626931*x2 + 6.51025783985604 >= 0. diff --git a/examples/valid/poly_v3_d3_s400_2.ae b/examples/valid/poly_v3_d3_s400_2.ae new file mode 100644 index 000000000..44662824f --- /dev/null +++ b/examples/valid/poly_v3_d3_s400_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 5.76451199508743*x0 * x0 * x0 * x0 * x0 * x0 + 10.0492217760026*x0 * x0 * x0 * x0 * x0*x1 + 9.61645760037593*x0 * x0 * x0 * x0 * x0*x2 + 4.79721582796365*x0 * x0 * x0 * x0 * x0 + 15.4661340943734*x0 * x0 * x0 * x0*x1 * x1 + 17.7536507389111*x0 * x0 * x0 * x0*x1*x2 + 14.9479310356238*x0 * x0 * x0 * x0*x1 + 16.4282473153076*x0 * x0 * x0 * x0*x2 * x2 + 15.9646739798612*x0 * x0 * x0 * x0*x2 + 12.3331314383852*x0 * x0 * x0 * x0 + 21.493783392841*x0 * x0 * x0*x1 * x1 * x1 + 27.5406675556384*x0 * x0 * x0*x1 * x1*x2 + 21.6629586967999*x0 * x0 * x0*x1 * x1 + 29.6120814060786*x0 * x0 * x0*x1*x2 * x2 + 33.2821201952579*x0 * x0 * x0*x1*x2 + 26.2226540899497*x0 * x0 * x0*x1 + 15.6362709481403*x0 * x0 * x0*x2 * x2 * x2 + 26.4859476408958*x0 * x0 * x0*x2 * x2 + 24.7616982407518*x0 * x0 * x0*x2 + 15.7109910118567*x0 * x0 * x0 + 19.4439085642398*x0 * x0*x1 * x1 * x1 * x1 + 28.4348424208344*x0 * x0*x1 * x1 * x1*x2 + 22.4291699671056*x0 * x0*x1 * x1 * x1 + 38.862181406925*x0 * x0*x1 * x1*x2 * x2 + 38.7492011867968*x0 * x0*x1 * x1*x2 + 33.1858605305382*x0 * x0*x1 * x1 + 26.881114688861*x0 * x0*x1*x2 * x2 * x2 + 48.170157350841*x0 * x0*x1*x2 * x2 + 46.3304648926524*x0 * x0*x1*x2 + 24.9539498127455*x0 * x0*x1 + 14.419924980495*x0 * x0*x2 * x2 * x2 * x2 + 27.9306090303654*x0 * x0*x2 * x2 * x2 + 33.6186159509717*x0 * x0*x2 * x2 + 27.1479756251972*x0 * x0*x2 + 11.0417128335643*x0 * x0 + 10.3354066801364*x0*x1 * x1 * x1 * x1 * x1 + 19.7278356821055*x0*x1 * x1 * x1 * x1*x2 + 16.6075118124941*x0*x1 * x1 * x1 * x1 + 30.4295221252784*x0*x1 * x1 * x1*x2 * x2 + 34.1016104421294*x0*x1 * x1 * x1*x2 + 26.4524760367615*x0*x1 * x1 * x1 + 22.9005076001566*x0*x1 * x1*x2 * x2 * x2 + 44.5224999290554*x0*x1 * x1*x2 * x2 + 46.2134409910217*x0*x1 * x1*x2 + 26.2425241934117*x0*x1 * x1 + 17.1513875621088*x0*x1*x2 * x2 * x2 * x2 + 35.3571719349258*x0*x1*x2 * x2 * x2 + 44.3715936752784*x0*x1*x2 * x2 + 39.6711959308708*x0*x1*x2 + 21.2586548448962*x0*x1 + 8.08294083297229*x0*x2 * x2 * x2 * x2 * x2 + 19.2003431299648*x0*x2 * x2 * x2 * x2 + 26.9884443655989*x0*x2 * x2 * x2 + 30.8931677852502*x0*x2 * x2 + 20.6349162966604*x0*x2 + 9.54355986217769*x0 + 7.92228963731463*x1 * x1 * x1 * x1 * x1 * x1 + 10.9472812061575*x1 * x1 * x1 * x1 * x1*x2 + 9.6517312642617*x1 * x1 * x1 * x1 * x1 + 18.8613110494281*x1 * x1 * x1 * x1*x2 * x2 + 16.3592878714881*x1 * x1 * x1 * x1*x2 + 17.3360018996784*x1 * x1 * x1 * x1 + 18.7649309251962*x1 * x1 * x1*x2 * x2 * x2 + 28.515836934063*x1 * x1 * x1*x2 * x2 + 31.4382363846502*x1 * x1 * x1*x2 + 19.714480052705*x1 * x1 * x1 + 14.1250064265985*x1 * x1*x2 * x2 * x2 * x2 + 27.5577114660733*x1 * x1*x2 * x2 * x2 + 35.0864023138401*x1 * x1*x2 * x2 + 29.4351425131496*x1 * x1*x2 + 14.958460091013*x1 * x1 + 7.50335898604802*x1*x2 * x2 * x2 * x2 * x2 + 15.7532345413934*x1*x2 * x2 * x2 * x2 + 30.2667025573236*x1*x2 * x2 * x2 + 32.9139997578406*x1*x2 * x2 + 20.033649209514*x1*x2 + 11.5347053962882*x1 + 4.78058777071782*x2 * x2 * x2 * x2 * x2 * x2 + 7.76462163000228*x2 * x2 * x2 * x2 * x2 + 14.3369415944888*x2 * x2 * x2 * x2 + 18.904093803019*x2 * x2 * x2 + 17.0842751232765*x2 * x2 + 10.6900330653823*x2 + 6.95896653456775 >= 0. diff --git a/examples/valid/poly_v3_d4_s1225.ae b/examples/valid/poly_v3_d4_s1225.ae new file mode 100644 index 000000000..85327d4b0 --- /dev/null +++ b/examples/valid/poly_v3_d4_s1225.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 11.1432848884319*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 15.3528570292323*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 20.0633830539384*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 15.0938510885124*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 24.1280206610639*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 36.2852886428599*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 31.6925925543837*x0 * x0 * x0 * x0 * x0 * x0*x1 + 33.6419817959429*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 32.6341203474169*x0 * x0 * x0 * x0 * x0 * x0*x2 + 25.8022980923764*x0 * x0 * x0 * x0 * x0 * x0 + 27.7745148354117*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 51.5380010823503*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 46.557716217341*x0 * x0 * x0 * x0 * x0*x1 * x1 + 55.356583341768*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 65.6203152260618*x0 * x0 * x0 * x0 * x0*x1*x2 + 50.0583744254667*x0 * x0 * x0 * x0 * x0*x1 + 37.9810752727798*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 53.6766819557732*x0 * x0 * x0 * x0 * x0*x2 * x2 + 50.0556023727846*x0 * x0 * x0 * x0 * x0*x2 + 31.2207796636505*x0 * x0 * x0 * x0 * x0 + 41.4935343758132*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 68.7668894690213*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 59.1045766363222*x0 * x0 * x0 * x0*x1 * x1 * x1 + 79.0506536046707*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 99.2641976426356*x0 * x0 * x0 * x0*x1 * x1*x2 + 73.7959333688562*x0 * x0 * x0 * x0*x1 * x1 + 72.1179776730843*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 100.231908616739*x0 * x0 * x0 * x0*x1*x2 * x2 + 100.690382474715*x0 * x0 * x0 * x0*x1*x2 + 63.0580942836462*x0 * x0 * x0 * x0*x1 + 47.1502469317859*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 67.6357857415873*x0 * x0 * x0 * x0*x2 * x2 * x2 + 83.9787669077473*x0 * x0 * x0 * x0*x2 * x2 + 64.8555195599411*x0 * x0 * x0 * x0*x2 + 41.3513159436122*x0 * x0 * x0 * x0 + 29.4780179613491*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 73.0072981544546*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 60.7284033235281*x0 * x0 * x0*x1 * x1 * x1 * x1 + 84.7640029427155*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 111.375195332855*x0 * x0 * x0*x1 * x1 * x1*x2 + 82.4106911562966*x0 * x0 * x0*x1 * x1 * x1 + 87.740933272046*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 128.795206458559*x0 * x0 * x0*x1 * x1*x2 * x2 + 131.341029413953*x0 * x0 * x0*x1 * x1*x2 + 80.9898448332795*x0 * x0 * x0*x1 * x1 + 71.435317592588*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 118.996077818314*x0 * x0 * x0*x1*x2 * x2 * x2 + 137.489903895401*x0 * x0 * x0*x1*x2 * x2 + 110.015956429308*x0 * x0 * x0*x1*x2 + 60.4546130569026*x0 * x0 * x0*x1 + 37.1368975559711*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 65.2559498270438*x0 * x0 * x0*x2 * x2 * x2 * x2 + 85.9874411325365*x0 * x0 * x0*x2 * x2 * x2 + 85.2471850458817*x0 * x0 * x0*x2 * x2 + 63.5420160170097*x0 * x0 * x0*x2 + 28.3090064645863*x0 * x0 * x0 + 24.6685460372255*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 59.6621771789266*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 48.7082802634236*x0 * x0*x1 * x1 * x1 * x1 * x1 + 80.6286650109789*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 98.8357423745808*x0 * x0*x1 * x1 * x1 * x1*x2 + 80.0069345279745*x0 * x0*x1 * x1 * x1 * x1 + 88.7638996542101*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 131.846707378933*x0 * x0*x1 * x1 * x1*x2 * x2 + 135.072908240458*x0 * x0*x1 * x1 * x1*x2 + 81.2747028093375*x0 * x0*x1 * x1 * x1 + 80.3914637242399*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 137.671644247219*x0 * x0*x1 * x1*x2 * x2 * x2 + 164.366843425568*x0 * x0*x1 * x1*x2 * x2 + 128.259802505216*x0 * x0*x1 * x1*x2 + 75.7751822446437*x0 * x0*x1 * x1 + 49.9336198635928*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 100.920326707218*x0 * x0*x1*x2 * x2 * x2 * x2 + 141.439435652208*x0 * x0*x1*x2 * x2 * x2 + 129.79477843522*x0 * x0*x1*x2 * x2 + 99.1763246540137*x0 * x0*x1*x2 + 44.1760528021497*x0 * x0*x1 + 26.6924253520399*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 50.0793457663889*x0 * x0*x2 * x2 * x2 * x2 * x2 + 75.6711123037591*x0 * x0*x2 * x2 * x2 * x2 + 83.5786001323408*x0 * x0*x2 * x2 * x2 + 78.6875135815885*x0 * x0*x2 * x2 + 42.6481235944633*x0 * x0*x2 + 24.7653383295439*x0 * x0 + 15.1354328245057*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 33.711867364039*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 34.4531028256276*x0*x1 * x1 * x1 * x1 * x1 * x1 + 52.9485517239196*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 66.1374484077476*x0*x1 * x1 * x1 * x1 * x1*x2 + 50.3654752887664*x0*x1 * x1 * x1 * x1 * x1 + 71.7387645004701*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 96.2150532082849*x0*x1 * x1 * x1 * x1*x2 * x2 + 99.9509611094955*x0*x1 * x1 * x1 * x1*x2 + 67.710783414255*x0*x1 * x1 * x1 * x1 + 66.1867346821547*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 114.673457280023*x0*x1 * x1 * x1*x2 * x2 * x2 + 133.128184175287*x0*x1 * x1 * x1*x2 * x2 + 114.742853887373*x0*x1 * x1 * x1*x2 + 65.0336717182034*x0*x1 * x1 * x1 + 50.9997590674182*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 95.0490798726567*x0*x1 * x1*x2 * x2 * x2 * x2 + 135.849614873954*x0*x1 * x1*x2 * x2 * x2 + 127.001698329844*x0*x1 * x1*x2 * x2 + 94.7785115453366*x0*x1 * x1*x2 + 48.158472819096*x0*x1 * x1 + 32.644109534603*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 66.6524256769917*x0*x1*x2 * x2 * x2 * x2 * x2 + 100.592900591025*x0*x1*x2 * x2 * x2 * x2 + 114.346018160745*x0*x1*x2 * x2 * x2 + 98.7864748306151*x0*x1*x2 * x2 + 59.2819454853038*x0*x1*x2 + 30.9800561653599*x0*x1 + 16.2414611345213*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 30.588454595568*x0*x2 * x2 * x2 * x2 * x2 * x2 + 52.6481469453152*x0*x2 * x2 * x2 * x2 * x2 + 65.4015684221339*x0*x2 * x2 * x2 * x2 + 67.7679122666497*x0*x2 * x2 * x2 + 52.261696157795*x0*x2 * x2 + 32.4291692417604*x0*x2 + 14.170927513871*x0 + 12.8233104363393*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 21.3782515691565*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 16.8933430133922*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 32.4219068116535*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 36.1825975593219*x1 * x1 * x1 * x1 * x1 * x1*x2 + 30.141163404628*x1 * x1 * x1 * x1 * x1 * x1 + 39.051377793116*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 51.8505096752653*x1 * x1 * x1 * x1 * x1*x2 * x2 + 55.2251794270192*x1 * x1 * x1 * x1 * x1*x2 + 32.5813128250266*x1 * x1 * x1 * x1 * x1 + 48.0072261572228*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 70.1952640528462*x1 * x1 * x1 * x1*x2 * x2 * x2 + 80.8113084877576*x1 * x1 * x1 * x1*x2 * x2 + 67.9795152057882*x1 * x1 * x1 * x1*x2 + 41.3593382071982*x1 * x1 * x1 * x1 + 35.1119878464434*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 66.244179503149*x1 * x1 * x1*x2 * x2 * x2 * x2 + 92.3257720435175*x1 * x1 * x1*x2 * x2 * x2 + 84.1643385875865*x1 * x1 * x1*x2 * x2 + 64.253556572994*x1 * x1 * x1*x2 + 28.7766830077329*x1 * x1 * x1 + 27.5174499655171*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 45.356666584708*x1 * x1*x2 * x2 * x2 * x2 * x2 + 75.8386285505345*x1 * x1*x2 * x2 * x2 * x2 + 81.1487830696493*x1 * x1*x2 * x2 * x2 + 71.5154382445089*x1 * x1*x2 * x2 + 46.3732877582244*x1 * x1*x2 + 22.455884699731*x1 * x1 + 17.7755475430401*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 34.413778106543*x1*x2 * x2 * x2 * x2 * x2 * x2 + 51.7954890293228*x1*x2 * x2 * x2 * x2 * x2 + 65.9844137961165*x1*x2 * x2 * x2 * x2 + 64.0938849147272*x1*x2 * x2 * x2 + 45.5701728775579*x1*x2 * x2 + 26.0782200208485*x1*x2 + 13.2027995048923*x1 + 8.99470603249258*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 13.4397050464249*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 25.805927888576*x2 * x2 * x2 * x2 * x2 * x2 + 32.5727730553226*x2 * x2 * x2 * x2 * x2 + 40.2944326178327*x2 * x2 * x2 * x2 + 29.4830885785178*x2 * x2 * x2 + 25.2008201390226*x2 * x2 + 13.6482533063773*x2 + 10.1954911466396 >= 0. diff --git a/examples/valid/poly_v3_d4_s1225_2.ae b/examples/valid/poly_v3_d4_s1225_2.ae new file mode 100644 index 000000000..38fa59864 --- /dev/null +++ b/examples/valid/poly_v3_d4_s1225_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 8.41205493167868*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 14.5153815752733*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 13.9938328403549*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 12.6343220402769*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 27.5998798286748*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 30.6411389704508*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 31.0450524908003*x0 * x0 * x0 * x0 * x0 * x0*x1 + 24.5478087085178*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 31.6119413386188*x0 * x0 * x0 * x0 * x0 * x0*x2 + 26.1068684239342*x0 * x0 * x0 * x0 * x0 * x0 + 34.861050812465*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 51.0784050206498*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 52.8708221308976*x0 * x0 * x0 * x0 * x0*x1 * x1 + 47.736308572962*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 69.380736501895*x0 * x0 * x0 * x0 * x0*x1*x2 + 46.6723432132966*x0 * x0 * x0 * x0 * x0*x1 + 29.9193941824309*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 47.0126790586273*x0 * x0 * x0 * x0 * x0*x2 * x2 + 49.0896829637407*x0 * x0 * x0 * x0 * x0*x2 + 33.1923077018355*x0 * x0 * x0 * x0 * x0 + 46.128484714541*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 66.9472383750443*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 69.0064060885501*x0 * x0 * x0 * x0*x1 * x1 * x1 + 80.3720563299647*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 104.344238980547*x0 * x0 * x0 * x0*x1 * x1*x2 + 81.3717505558756*x0 * x0 * x0 * x0*x1 * x1 + 63.0819475683796*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 99.2401369026581*x0 * x0 * x0 * x0*x1*x2 * x2 + 94.7510687012864*x0 * x0 * x0 * x0*x1*x2 + 66.2542807261931*x0 * x0 * x0 * x0*x1 + 39.1821385163475*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 62.0862010904993*x0 * x0 * x0 * x0*x2 * x2 * x2 + 76.1123000033072*x0 * x0 * x0 * x0*x2 * x2 + 68.6357603340554*x0 * x0 * x0 * x0*x2 + 48.2637998517199*x0 * x0 * x0 * x0 + 39.5277460400803*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 67.8962963997091*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 71.7370527162858*x0 * x0 * x0*x1 * x1 * x1 * x1 + 90.1317201554607*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 125.647093048175*x0 * x0 * x0*x1 * x1 * x1*x2 + 86.7136089319911*x0 * x0 * x0*x1 * x1 * x1 + 89.3809483864895*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 134.851443856194*x0 * x0 * x0*x1 * x1*x2 * x2 + 130.717732212208*x0 * x0 * x0*x1 * x1*x2 + 90.3635203602981*x0 * x0 * x0*x1 * x1 + 64.5203212212121*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 113.665713679541*x0 * x0 * x0*x1*x2 * x2 * x2 + 127.790642572733*x0 * x0 * x0*x1*x2 * x2 + 119.750748756182*x0 * x0 * x0*x1*x2 + 72.1252904554793*x0 * x0 * x0*x1 + 31.6979728694729*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 64.9339343928752*x0 * x0 * x0*x2 * x2 * x2 * x2 + 83.2239373893196*x0 * x0 * x0*x2 * x2 * x2 + 84.9651466056628*x0 * x0 * x0*x2 * x2 + 71.5706578898224*x0 * x0 * x0*x2 + 38.6869568795036*x0 * x0 * x0 + 33.781034985171*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 54.8714185363554*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 52.4358070894479*x0 * x0*x1 * x1 * x1 * x1 * x1 + 83.7405608630001*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 107.94943911013*x0 * x0*x1 * x1 * x1 * x1*x2 + 78.7463070159862*x0 * x0*x1 * x1 * x1 * x1 + 88.6642579664064*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 141.517832056211*x0 * x0*x1 * x1 * x1*x2 * x2 + 136.553493270283*x0 * x0*x1 * x1 * x1*x2 + 87.3633037356413*x0 * x0*x1 * x1 * x1 + 80.1429704589396*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 136.841178366957*x0 * x0*x1 * x1*x2 * x2 * x2 + 155.019122405446*x0 * x0*x1 * x1*x2 * x2 + 130.514107497213*x0 * x0*x1 * x1*x2 + 81.8635420493946*x0 * x0*x1 * x1 + 48.816047391273*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 95.4356274734787*x0 * x0*x1*x2 * x2 * x2 * x2 + 132.166641584359*x0 * x0*x1*x2 * x2 * x2 + 131.215313213879*x0 * x0*x1*x2 * x2 + 102.401746631418*x0 * x0*x1*x2 + 49.2152203153445*x0 * x0*x1 + 25.8732144845675*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 46.3393151846748*x0 * x0*x2 * x2 * x2 * x2 * x2 + 74.4100753606623*x0 * x0*x2 * x2 * x2 * x2 + 82.542633611094*x0 * x0*x2 * x2 * x2 + 83.3145935819647*x0 * x0*x2 * x2 + 56.8713875201185*x0 * x0*x2 + 34.4045543739262*x0 * x0 + 18.1905044866866*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 36.4545942488309*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 34.9016064138702*x0*x1 * x1 * x1 * x1 * x1 * x1 + 51.9163348989744*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 73.8143822770193*x0*x1 * x1 * x1 * x1 * x1*x2 + 49.594917917287*x0*x1 * x1 * x1 * x1 * x1 + 71.305917979439*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 102.066848221232*x0*x1 * x1 * x1 * x1*x2 * x2 + 98.5844479604327*x0*x1 * x1 * x1 * x1*x2 + 63.0950825309276*x0*x1 * x1 * x1 * x1 + 68.8716185953952*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 120.598572978103*x0*x1 * x1 * x1*x2 * x2 * x2 + 128.648915016719*x0*x1 * x1 * x1*x2 * x2 + 111.156251187084*x0*x1 * x1 * x1*x2 + 64.5723769783186*x0*x1 * x1 * x1 + 50.6851613810959*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 96.829794933759*x0*x1 * x1*x2 * x2 * x2 * x2 + 128.771251240538*x0*x1 * x1*x2 * x2 * x2 + 132.313367011957*x0*x1 * x1*x2 * x2 + 99.4220252648078*x0*x1 * x1*x2 + 50.122816904491*x0*x1 * x1 + 29.175073189334*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 63.9076991638082*x0*x1*x2 * x2 * x2 * x2 * x2 + 95.7582279646053*x0*x1*x2 * x2 * x2 * x2 + 115.587659095532*x0*x1*x2 * x2 * x2 + 101.726094185685*x0*x1*x2 * x2 + 69.1587757657443*x0*x1*x2 + 31.9105991564623*x0*x1 + 12.2588395288869*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 29.0901302042112*x0*x2 * x2 * x2 * x2 * x2 * x2 + 45.4741528880285*x0*x2 * x2 * x2 * x2 * x2 + 64.2756112423823*x0*x2 * x2 * x2 * x2 + 66.619117628498*x0*x2 * x2 * x2 + 51.0895423320573*x0*x2 * x2 + 38.3161779201774*x0*x2 + 20.3619644263624*x0 + 11.2749272396081*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 15.084962957732*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 15.8312724522101*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 28.285696489357*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 29.4741367404642*x1 * x1 * x1 * x1 * x1 * x1*x2 + 24.2640031981976*x1 * x1 * x1 * x1 * x1 * x1 + 33.6388541759284*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 48.4506643731619*x1 * x1 * x1 * x1 * x1*x2 * x2 + 44.3526981381871*x1 * x1 * x1 * x1 * x1*x2 + 29.844633193356*x1 * x1 * x1 * x1 * x1 + 45.4807037835229*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 64.631312212796*x1 * x1 * x1 * x1*x2 * x2 * x2 + 70.4739742821266*x1 * x1 * x1 * x1*x2 * x2 + 63.2340795436565*x1 * x1 * x1 * x1*x2 + 42.0457229509696*x1 * x1 * x1 * x1 + 31.42995346391*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 66.504688300506*x1 * x1 * x1*x2 * x2 * x2 * x2 + 77.7226639743183*x1 * x1 * x1*x2 * x2 * x2 + 76.7609323948651*x1 * x1 * x1*x2 * x2 + 62.6795628884014*x1 * x1 * x1*x2 + 32.2810548466948*x1 * x1 * x1 + 28.8536250046695*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 44.6888458195223*x1 * x1*x2 * x2 * x2 * x2 * x2 + 72.2622843160339*x1 * x1*x2 * x2 * x2 * x2 + 81.1273327898914*x1 * x1*x2 * x2 * x2 + 74.381494222668*x1 * x1*x2 * x2 + 47.5950443643754*x1 * x1*x2 + 27.0454569636339*x1 * x1 + 14.6826331587482*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 29.7367084848666*x1*x2 * x2 * x2 * x2 * x2 * x2 + 48.9856182025355*x1*x2 * x2 * x2 * x2 * x2 + 64.9486625755511*x1*x2 * x2 * x2 * x2 + 69.5299850841931*x1*x2 * x2 * x2 + 53.7163285990437*x1*x2 * x2 + 33.9796667221427*x1*x2 + 18.6294431638806*x1 + 9.47848399188494*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 13.4836055830977*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 25.1297394672745*x2 * x2 * x2 * x2 * x2 * x2 + 34.1181486340386*x2 * x2 * x2 * x2 * x2 + 45.866701151226*x2 * x2 * x2 * x2 + 37.2826266271486*x2 * x2 * x2 + 31.1689819177182*x2 * x2 + 20.7144342055739*x2 + 13.6391415024778 >= 0. diff --git a/examples/valid/poly_v3_d5_s3136.ae b/examples/valid/poly_v3_d5_s3136.ae new file mode 100644 index 000000000..2e0b67384 --- /dev/null +++ b/examples/valid/poly_v3_d5_s3136.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 19.6794059155268*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 33.7435139067719*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 24.390272483076*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 33.4759827740114*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 45.3149809916296*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 57.2922965894307*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 68.2868146569855*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 46.5073584835925*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 54.533260662747*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 52.7758298867276*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 51.2439837201085*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 83.3689064917565*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 88.6544617494199*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 87.8502831937703*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 118.497929955249*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 91.8121822124708*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 51.4025784958183*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 79.3294595683556*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 86.0434176890381*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 63.3339309153151*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 72.5383886817753*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 104.767234290758*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 113.850868096439*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 128.62507693317*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 170.263959203447*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 133.107398726585*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 107.129391405798*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 166.63159794148*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 174.334389142019*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 114.998526066749*x0 * x0 * x0 * x0 * x0 * x0*x1 + 66.4996964656913*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 109.705382496817*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 128.218971979716*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 114.454414622914*x0 * x0 * x0 * x0 * x0 * x0*x2 + 78.4293807952689*x0 * x0 * x0 * x0 * x0 * x0 + 77.6742831360573*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 132.001804694687*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 144.209386694722*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 160.252117695591*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 226.969125745549*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 175.880922744923*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 157.55218157557*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 254.656551295012*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 254.544122756462*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 166.078830519693*x0 * x0 * x0 * x0 * x0*x1 * x1 + 134.07478244704*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 229.063644305643*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 249.284246084015*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 225.618332208315*x0 * x0 * x0 * x0 * x0*x1*x2 + 143.213961469532*x0 * x0 * x0 * x0 * x0*x1 + 68.3950554289174*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 135.760864000594*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 168.929636755205*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 166.892148560016*x0 * x0 * x0 * x0 * x0*x2 * x2 + 143.893681503829*x0 * x0 * x0 * x0 * x0*x2 + 92.188830270975*x0 * x0 * x0 * x0 * x0 + 64.5343168355213*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 133.354594865354*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 137.780974966844*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 172.476636651245*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 248.643440060774*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 183.353530360658*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 177.948562992036*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 306.202347060739*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 312.982953977515*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 194.348901342386*x0 * x0 * x0 * x0*x1 * x1 * x1 + 174.755282499583*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 299.830114035675*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 355.794969270442*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 310.668638772211*x0 * x0 * x0 * x0*x1 * x1*x2 + 182.190062009412*x0 * x0 * x0 * x0*x1 * x1 + 135.570253708191*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 254.699858245606*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 294.299805405176*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 299.221031540822*x0 * x0 * x0 * x0*x1*x2 * x2 + 250.314216902324*x0 * x0 * x0 * x0*x1*x2 + 146.080119036726*x0 * x0 * x0 * x0*x1 + 64.6735267691126*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 132.813047496685*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 188.37950904272*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 184.529458136008*x0 * x0 * x0 * x0*x2 * x2 * x2 + 181.090783413785*x0 * x0 * x0 * x0*x2 * x2 + 139.345425556045*x0 * x0 * x0 * x0*x2 + 77.3579498521918*x0 * x0 * x0 * x0 + 50.4373130333727*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 102.898975717635*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 102.127350225596*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 161.001371858774*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 214.47285169244*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 154.722483853736*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 180.283926623248*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 295.917150113631*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 313.365127943126*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 182.44042365311*x0 * x0 * x0*x1 * x1 * x1 * x1 + 179.549877360148*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 331.170099103284*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 383.085190951322*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 321.499696845967*x0 * x0 * x0*x1 * x1 * x1*x2 + 181.292509844225*x0 * x0 * x0*x1 * x1 * x1 + 152.843408736068*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 308.162827020946*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 377.934332063399*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 379.842926717929*x0 * x0 * x0*x1 * x1*x2 * x2 + 305.892274860998*x0 * x0 * x0*x1 * x1*x2 + 156.58214217915*x0 * x0 * x0*x1 * x1 + 112.910611152659*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 218.621713860928*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 295.665777252633*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 323.102753093647*x0 * x0 * x0*x1*x2 * x2 * x2 + 302.530728261079*x0 * x0 * x0*x1*x2 * x2 + 232.73934938155*x0 * x0 * x0*x1*x2 + 112.372748091718*x0 * x0 * x0*x1 + 47.8067757926935*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 110.616389115074*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 165.67025856828*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 190.519492346806*x0 * x0 * x0*x2 * x2 * x2 * x2 + 199.864031336453*x0 * x0 * x0*x2 * x2 * x2 + 169.107101294575*x0 * x0 * x0*x2 * x2 + 112.066687829822*x0 * x0 * x0*x2 + 54.1285125422575*x0 * x0 * x0 + 42.5772948604129*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 76.6874397422938*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 78.2416302806669*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 123.900003570064*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 161.679582959906*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 122.399548777241*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 156.348375857585*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 240.011782810823*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 247.144010517923*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 162.380857752352*x0 * x0*x1 * x1 * x1 * x1 * x1 + 177.491456523671*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 295.162645769875*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 341.71251209592*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 295.438940010082*x0 * x0*x1 * x1 * x1 * x1*x2 + 177.420269449157*x0 * x0*x1 * x1 * x1 * x1 + 157.001396912437*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 295.481315844963*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 376.066590783963*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 371.997337281117*x0 * x0*x1 * x1 * x1*x2 * x2 + 303.517100335996*x0 * x0*x1 * x1 * x1*x2 + 164.563709686839*x0 * x0*x1 * x1 * x1 + 118.110618300463*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 242.650274881711*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 344.523038772111*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 369.948681953053*x0 * x0*x1 * x1*x2 * x2 * x2 + 336.04784195749*x0 * x0*x1 * x1*x2 * x2 + 254.815215748384*x0 * x0*x1 * x1*x2 + 123.840465419516*x0 * x0*x1 * x1 + 77.3001756022873*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 156.099468232522*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 243.333115370601*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 290.065062957149*x0 * x0*x1*x2 * x2 * x2 * x2 + 284.955131672192*x0 * x0*x1*x2 * x2 * x2 + 235.665825452359*x0 * x0*x1*x2 * x2 + 167.192197560764*x0 * x0*x1*x2 + 75.1327953738044*x0 * x0*x1 + 36.8825604495266*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 74.0601284412083*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 124.748937937875*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 156.683205960437*x0 * x0*x2 * x2 * x2 * x2 * x2 + 181.259138398583*x0 * x0*x2 * x2 * x2 * x2 + 164.706647452563*x0 * x0*x2 * x2 * x2 + 125.865536588203*x0 * x0*x2 * x2 + 90.0069113096003*x0 * x0*x2 + 45.8565829502929*x0 * x0 + 25.1000226826039*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 50.4811869915414*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 49.4803662102368*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 80.8645608602*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 106.768660210266*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 81.3009399215131*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 104.434933409056*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 162.332464893652*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 167.052977364364*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 106.566884443111*x0*x1 * x1 * x1 * x1 * x1 * x1 + 129.215341147501*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 221.79182930298*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 245.661597828018*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 220.946689583542*x0*x1 * x1 * x1 * x1 * x1*x2 + 129.55279211532*x0*x1 * x1 * x1 * x1 * x1 + 137.07694521997*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 252.75565326404*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 303.606573075853*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 301.799092357445*x0*x1 * x1 * x1 * x1*x2 * x2 + 250.129804312941*x0*x1 * x1 * x1 * x1*x2 + 131.722439466703*x0*x1 * x1 * x1 * x1 + 106.589537999795*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 223.083562458882*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 317.067731091758*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 335.005464179528*x0*x1 * x1 * x1*x2 * x2 * x2 + 307.828556343261*x0*x1 * x1 * x1*x2 * x2 + 224.165009381542*x0*x1 * x1 * x1*x2 + 111.189076188268*x0*x1 * x1 * x1 + 77.0456890398575*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 171.13413098678*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 250.462199634204*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 297.694863688267*x0*x1 * x1*x2 * x2 * x2 * x2 + 300.776365438041*x0*x1 * x1*x2 * x2 * x2 + 251.44636896997*x0*x1 * x1*x2 * x2 + 165.098588901495*x0*x1 * x1*x2 + 75.0219627341058*x0*x1 * x1 + 51.920027160996*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 110.588998850814*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 170.35109793367*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 221.023227451394*x0*x1*x2 * x2 * x2 * x2 * x2 + 246.292301865806*x0*x1*x2 * x2 * x2 * x2 + 217.675394449181*x0*x1*x2 * x2 * x2 + 164.054280716284*x0*x1*x2 * x2 + 110.384653520986*x0*x1*x2 + 53.5172653890611*x0*x1 + 21.8320518015956*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 55.5277957263846*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 85.711327174297*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 108.830677557576*x0*x2 * x2 * x2 * x2 * x2 * x2 + 135.071223011859*x0*x2 * x2 * x2 * x2 * x2 + 141.441543186387*x0*x2 * x2 * x2 * x2 + 109.744481473819*x0*x2 * x2 * x2 + 82.7213644423176*x0*x2 * x2 + 55.813975794394*x0*x2 + 28.9128112941534*x0 + 16.0580999556417*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 28.5151808443283*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 21.4347559542867*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 44.8207236515976*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 50.0343083634841*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 43.6320033928831*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 49.3261773193119*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 80.375728074943*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 81.8564392440377*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 53.6820179982791*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 71.7113078705088*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 110.795304442928*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 123.290235937468*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 103.282109820858*x1 * x1 * x1 * x1 * x1 * x1*x2 + 66.8340719081632*x1 * x1 * x1 * x1 * x1 * x1 + 81.2944246844648*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 140.0397359264*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 156.617617752437*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 164.428765929357*x1 * x1 * x1 * x1 * x1*x2 * x2 + 134.042221866741*x1 * x1 * x1 * x1 * x1*x2 + 82.2152473569858*x1 * x1 * x1 * x1 * x1 + 75.8384202181268*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 145.715152160983*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 187.416637171606*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 189.14388357766*x1 * x1 * x1 * x1*x2 * x2 * x2 + 184.517998556586*x1 * x1 * x1 * x1*x2 * x2 + 138.947663766004*x1 * x1 * x1 * x1*x2 + 73.6342714024296*x1 * x1 * x1 * x1 + 56.5480931654207*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 116.709708597174*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 172.316875064729*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 204.652910203232*x1 * x1 * x1*x2 * x2 * x2 * x2 + 192.521675639304*x1 * x1 * x1*x2 * x2 * x2 + 169.422823893474*x1 * x1 * x1*x2 * x2 + 116.954747775067*x1 * x1 * x1*x2 + 57.8282063156877*x1 * x1 * x1 + 45.3894309422887*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 87.5756763944518*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 128.439247697254*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 166.047920533477*x1 * x1*x2 * x2 * x2 * x2 * x2 + 189.001272030325*x1 * x1*x2 * x2 * x2 * x2 + 163.915993332207*x1 * x1*x2 * x2 * x2 + 129.404804051892*x1 * x1*x2 * x2 + 90.8077751380332*x1 * x1*x2 + 46.6935988393118*x1 * x1 + 29.7363359250089*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 59.3293242452605*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 82.9114662796889*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 108.655842827298*x1*x2 * x2 * x2 * x2 * x2 * x2 + 140.783309215513*x1*x2 * x2 * x2 * x2 * x2 + 141.623353829744*x1*x2 * x2 * x2 * x2 + 108.329823861275*x1*x2 * x2 * x2 + 81.6664160016629*x1*x2 * x2 + 58.5217269868481*x1*x2 + 27.6256134400144*x1 + 17.6855803612341*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 31.6612903347642*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 46.2714977738713*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 56.1691848950989*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 77.8903337604318*x2 * x2 * x2 * x2 * x2 * x2 + 88.7715098799764*x2 * x2 * x2 * x2 * x2 + 78.3624017629602*x2 * x2 * x2 * x2 + 56.4994775708728*x2 * x2 * x2 + 50.1961415449387*x2 * x2 + 31.4051711624694*x2 + 19.9668063151006 >= 0. diff --git a/examples/valid/poly_v3_d5_s3136_2.ae b/examples/valid/poly_v3_d5_s3136_2.ae new file mode 100644 index 000000000..22df6e40e --- /dev/null +++ b/examples/valid/poly_v3_d5_s3136_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2:real. + 17.9346055991035*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 26.3277010991276*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 26.9287531300003*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 27.1530792569099*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 43.475558244932*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 49.5447635255938*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 54.9759627194774*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 44.7336253505321*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 51.7437113694289*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 49.0199998539334*x0 * x0 * x0 * x0 * x0 * x0 * x0 * x0 + 54.5088179335074*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 77.0715657777724*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 76.9647841059791*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 75.5010008550081*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 98.0537235871678*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 78.3738345649785*x0 * x0 * x0 * x0 * x0 * x0 * x0*x1 + 52.8880091322965*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 76.307382605044*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 79.5360009457678*x0 * x0 * x0 * x0 * x0 * x0 * x0*x2 + 61.7318014968252*x0 * x0 * x0 * x0 * x0 * x0 * x0 + 75.0907083654607*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 100.399962905727*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 97.2059527924916*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 113.747775815098*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 150.985834623671*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 119.290919349535*x0 * x0 * x0 * x0 * x0 * x0*x1 * x1 + 89.7592569298374*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 145.295244577035*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 154.163954717475*x0 * x0 * x0 * x0 * x0 * x0*x1*x2 + 111.036445441614*x0 * x0 * x0 * x0 * x0 * x0*x1 + 70.2533361615659*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 101.68136054811*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 130.735296282264*x0 * x0 * x0 * x0 * x0 * x0*x2 * x2 + 116.118456259856*x0 * x0 * x0 * x0 * x0 * x0*x2 + 77.7426466677235*x0 * x0 * x0 * x0 * x0 * x0 + 85.2868408001694*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 128.784675224124*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 124.555762627826*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 151.894776654554*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 200.322394550801*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 150.955138175302*x0 * x0 * x0 * x0 * x0*x1 * x1 * x1 + 148.46775951916*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 223.665196135508*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 232.710996941203*x0 * x0 * x0 * x0 * x0*x1 * x1*x2 + 158.298434705119*x0 * x0 * x0 * x0 * x0*x1 * x1 + 119.878228520813*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 192.056050597386*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 236.114953771426*x0 * x0 * x0 * x0 * x0*x1*x2 * x2 + 222.591670341211*x0 * x0 * x0 * x0 * x0*x1*x2 + 141.330962907083*x0 * x0 * x0 * x0 * x0*x1 + 78.9361659994742*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 132.196261313216*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 162.402342633645*x0 * x0 * x0 * x0 * x0*x2 * x2 * x2 + 161.443464273148*x0 * x0 * x0 * x0 * x0*x2 * x2 + 137.645396385536*x0 * x0 * x0 * x0 * x0*x2 + 81.5636620976746*x0 * x0 * x0 * x0 * x0 + 75.6397006368413*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 126.438649178158*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 128.202471733102*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 170.461266283161*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 229.247977153367*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 170.059584656105*x0 * x0 * x0 * x0*x1 * x1 * x1 * x1 + 173.994185812638*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 280.190721872807*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 282.798303486369*x0 * x0 * x0 * x0*x1 * x1 * x1*x2 + 187.113978468264*x0 * x0 * x0 * x0*x1 * x1 * x1 + 166.111485582813*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 272.862722185874*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 328.272937933826*x0 * x0 * x0 * x0*x1 * x1*x2 * x2 + 283.636943277055*x0 * x0 * x0 * x0*x1 * x1*x2 + 179.801924681837*x0 * x0 * x0 * x0*x1 * x1 + 117.127039307223*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 221.204424634259*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 284.305840584838*x0 * x0 * x0 * x0*x1*x2 * x2 * x2 + 293.410745663233*x0 * x0 * x0 * x0*x1*x2 * x2 + 241.848009312573*x0 * x0 * x0 * x0*x1*x2 + 136.338889008646*x0 * x0 * x0 * x0*x1 + 68.7770315635789*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 135.078001642815*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 182.461394796946*x0 * x0 * x0 * x0*x2 * x2 * x2 * x2 + 191.977581369844*x0 * x0 * x0 * x0*x2 * x2 * x2 + 183.372077153178*x0 * x0 * x0 * x0*x2 * x2 + 136.512692678399*x0 * x0 * x0 * x0*x2 + 72.9433591498294*x0 * x0 * x0 * x0 + 60.0005568722677*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 110.322457996791*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 103.168865285692*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 157.690139538724*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 203.004556973879*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 159.405355296745*x0 * x0 * x0*x1 * x1 * x1 * x1 * x1 + 175.036454555757*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 278.455991912921*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 289.939620956299*x0 * x0 * x0*x1 * x1 * x1 * x1*x2 + 187.978788077038*x0 * x0 * x0*x1 * x1 * x1 * x1 + 180.645172817893*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 304.523455457064*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 368.623533162667*x0 * x0 * x0*x1 * x1 * x1*x2 * x2 + 317.028008356644*x0 * x0 * x0*x1 * x1 * x1*x2 + 181.165739335251*x0 * x0 * x0*x1 * x1 * x1 + 150.428097036566*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 276.136802305529*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 360.043049021482*x0 * x0 * x0*x1 * x1*x2 * x2 * x2 + 374.410535197881*x0 * x0 * x0*x1 * x1*x2 * x2 + 297.738565089701*x0 * x0 * x0*x1 * x1*x2 + 161.177907567681*x0 * x0 * x0*x1 * x1 + 98.8506190794683*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 194.268098318826*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 282.659603764077*x0 * x0 * x0*x1*x2 * x2 * x2 * x2 + 315.525520202854*x0 * x0 * x0*x1*x2 * x2 * x2 + 298.331539276954*x0 * x0 * x0*x1*x2 * x2 + 214.034788052639*x0 * x0 * x0*x1*x2 + 110.542086049293*x0 * x0 * x0*x1 + 54.457780482956*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 102.928739592969*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 164.946602012752*x0 * x0 * x0*x2 * x2 * x2 * x2 * x2 + 190.460474001839*x0 * x0 * x0*x2 * x2 * x2 * x2 + 192.293450058997*x0 * x0 * x0*x2 * x2 * x2 + 164.742534885177*x0 * x0 * x0*x2 * x2 + 113.354890990226*x0 * x0 * x0*x2 + 56.5624449532948*x0 * x0 * x0 + 49.9428687902735*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 85.1853810213593*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 73.9817789043471*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 123.480703771957*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 155.090182985131*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 117.141526028709*x0 * x0*x1 * x1 * x1 * x1 * x1 * x1 + 152.375327940003*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 234.256602125618*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 235.592672422859*x0 * x0*x1 * x1 * x1 * x1 * x1*x2 + 164.762586605599*x0 * x0*x1 * x1 * x1 * x1 * x1 + 170.51779366878*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 282.196043528094*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 336.045661598089*x0 * x0*x1 * x1 * x1 * x1*x2 * x2 + 297.93204061671*x0 * x0*x1 * x1 * x1 * x1*x2 + 177.601437894225*x0 * x0*x1 * x1 * x1 * x1 + 157.673571159434*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 278.362746564971*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 366.66712558843*x0 * x0*x1 * x1 * x1*x2 * x2 * x2 + 374.917752405984*x0 * x0*x1 * x1 * x1*x2 * x2 + 296.504971109077*x0 * x0*x1 * x1 * x1*x2 + 158.017251147433*x0 * x0*x1 * x1 * x1 + 120.081137615211*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 229.301406961024*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 330.60398655514*x0 * x0*x1 * x1*x2 * x2 * x2 * x2 + 371.703052242052*x0 * x0*x1 * x1*x2 * x2 * x2 + 346.270905504531*x0 * x0*x1 * x1*x2 * x2 + 249.865503986854*x0 * x0*x1 * x1*x2 + 125.654927888168*x0 * x0*x1 * x1 + 71.7423328286579*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 148.971066149138*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 236.898625350324*x0 * x0*x1*x2 * x2 * x2 * x2 * x2 + 298.402758823213*x0 * x0*x1*x2 * x2 * x2 * x2 + 305.408280684666*x0 * x0*x1*x2 * x2 * x2 + 248.224788420912*x0 * x0*x1*x2 * x2 + 168.670134021001*x0 * x0*x1*x2 + 81.7435544039656*x0 * x0*x1 + 41.3359380477607*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 77.4012662040336*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 121.187132808945*x0 * x0*x2 * x2 * x2 * x2 * x2 * x2 + 164.919916800778*x0 * x0*x2 * x2 * x2 * x2 * x2 + 184.092005897938*x0 * x0*x2 * x2 * x2 * x2 + 169.329777132459*x0 * x0*x2 * x2 * x2 + 130.544307290207*x0 * x0*x2 * x2 + 81.8980151708171*x0 * x0*x2 + 42.4757002639925*x0 * x0 + 30.1718896817262*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 49.2698230883174*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 51.2172947404849*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 78.5203968453134*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 101.445270472268*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 72.180008878523*x0*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 102.408921862866*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 153.121205088324*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 149.208845469732*x0*x1 * x1 * x1 * x1 * x1 * x1*x2 + 107.616836468612*x0*x1 * x1 * x1 * x1 * x1 * x1 + 130.096943142028*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 198.546971545004*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 242.201378978355*x0*x1 * x1 * x1 * x1 * x1*x2 * x2 + 220.688024953457*x0*x1 * x1 * x1 * x1 * x1*x2 + 126.052673399379*x0*x1 * x1 * x1 * x1 * x1 + 127.525568672908*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 228.507120745926*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 286.372073870343*x0*x1 * x1 * x1 * x1*x2 * x2 * x2 + 292.668723979961*x0*x1 * x1 * x1 * x1*x2 * x2 + 236.496336947286*x0*x1 * x1 * x1 * x1*x2 + 127.839188646254*x0*x1 * x1 * x1 * x1 + 101.500045682268*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 202.850601740988*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 286.467523268286*x0*x1 * x1 * x1*x2 * x2 * x2 * x2 + 318.556609389054*x0*x1 * x1 * x1*x2 * x2 * x2 + 288.63804466354*x0*x1 * x1 * x1*x2 * x2 + 214.609520654455*x0*x1 * x1 * x1*x2 + 103.364050126475*x0*x1 * x1 * x1 + 75.0703122481059*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 158.033587794425*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 236.024421559762*x0*x1 * x1*x2 * x2 * x2 * x2 * x2 + 308.871576465829*x0*x1 * x1*x2 * x2 * x2 * x2 + 298.702093131282*x0*x1 * x1*x2 * x2 * x2 + 246.469444193858*x0*x1 * x1*x2 * x2 + 165.571319774018*x0*x1 * x1*x2 + 75.9831309122625*x0*x1 * x1 + 52.4494464725721*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 102.43298696999*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 160.335467112366*x0*x1*x2 * x2 * x2 * x2 * x2 * x2 + 215.258950265748*x0*x1*x2 * x2 * x2 * x2 * x2 + 244.634509470427*x0*x1*x2 * x2 * x2 * x2 + 215.706595075493*x0*x1*x2 * x2 * x2 + 163.100234646457*x0*x1*x2 * x2 + 112.734437568072*x0*x1*x2 + 50.7790454735307*x0*x1 + 27.7997481429567*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 56.70555203227*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 83.4342341501539*x0*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 105.000458687687*x0*x2 * x2 * x2 * x2 * x2 * x2 + 139.622432044898*x0*x2 * x2 * x2 * x2 * x2 + 133.213448356144*x0*x2 * x2 * x2 * x2 + 112.692709963842*x0*x2 * x2 * x2 + 83.5428010934218*x0*x2 * x2 + 52.3915744821312*x0*x2 + 24.4342632428817*x0 + 18.3735191378087*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 23.3765671463222*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 23.7296480292873*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 45.5965329213117*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 55.930835443663*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 42.154428213058*x1 * x1 * x1 * x1 * x1 * x1 * x1 * x1 + 50.5111668374958*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 84.5792817085836*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 77.2496944751816*x1 * x1 * x1 * x1 * x1 * x1 * x1*x2 + 55.5952479139807*x1 * x1 * x1 * x1 * x1 * x1 * x1 + 73.7480019183611*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 108.988586112118*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 132.083341029387*x1 * x1 * x1 * x1 * x1 * x1*x2 * x2 + 107.718186942575*x1 * x1 * x1 * x1 * x1 * x1*x2 + 70.0205010644629*x1 * x1 * x1 * x1 * x1 * x1 + 82.9350619949086*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 138.712119059268*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 168.683350827351*x1 * x1 * x1 * x1 * x1*x2 * x2 * x2 + 167.608613505282*x1 * x1 * x1 * x1 * x1*x2 * x2 + 139.336375592704*x1 * x1 * x1 * x1 * x1*x2 + 78.0958725039919*x1 * x1 * x1 * x1 * x1 + 73.6931310673781*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 136.266110327774*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 188.157425675089*x1 * x1 * x1 * x1*x2 * x2 * x2 * x2 + 188.895122198298*x1 * x1 * x1 * x1*x2 * x2 * x2 + 187.080310175916*x1 * x1 * x1 * x1*x2 * x2 + 134.990340602513*x1 * x1 * x1 * x1*x2 + 69.6689876561785*x1 * x1 * x1 * x1 + 57.9433746742464*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 113.666925823475*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 165.475037334021*x1 * x1 * x1*x2 * x2 * x2 * x2 * x2 + 199.446042358915*x1 * x1 * x1*x2 * x2 * x2 * x2 + 197.207124155198*x1 * x1 * x1*x2 * x2 * x2 + 166.999641343267*x1 * x1 * x1*x2 * x2 + 105.752736694292*x1 * x1 * x1*x2 + 49.9498094220369*x1 * x1 * x1 + 46.1809593927237*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 88.9976940155245*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 129.397827067613*x1 * x1*x2 * x2 * x2 * x2 * x2 * x2 + 173.035333532643*x1 * x1*x2 * x2 * x2 * x2 * x2 + 191.093553095094*x1 * x1*x2 * x2 * x2 * x2 + 178.405987946323*x1 * x1*x2 * x2 * x2 + 131.48232189796*x1 * x1*x2 * x2 + 85.5704560609953*x1 * x1*x2 + 42.2640531705529*x1 * x1 + 28.0096996719271*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 53.4247533941511*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 80.8863578430818*x1*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 110.18731932482*x1*x2 * x2 * x2 * x2 * x2 * x2 + 142.377269838007*x1*x2 * x2 * x2 * x2 * x2 + 138.51361905546*x1*x2 * x2 * x2 * x2 + 109.831665693988*x1*x2 * x2 * x2 + 86.1707523622944*x1*x2 * x2 + 57.3468609201716*x1*x2 + 23.716794139413*x1 + 18.2015053350094*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 25.3303294996419*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 43.452087714592*x2 * x2 * x2 * x2 * x2 * x2 * x2 * x2 + 51.8935548282737*x2 * x2 * x2 * x2 * x2 * x2 * x2 + 71.7194885539999*x2 * x2 * x2 * x2 * x2 * x2 + 77.967930016948*x2 * x2 * x2 * x2 * x2 + 69.9453942717131*x2 * x2 * x2 * x2 + 57.864044767462*x2 * x2 * x2 + 46.3373709300683*x2 * x2 + 27.1274428097841*x2 + 15.7355696598173 >= 0. diff --git a/examples/valid/poly_v4_d1_s25_2.ae b/examples/valid/poly_v4_d1_s25_2.ae new file mode 100644 index 000000000..cb4cb9860 --- /dev/null +++ b/examples/valid/poly_v4_d1_s25_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3:real. + 0.679706235592259*x0 * x0 + 1.27338142223727*x0*x1 + 1.69114230764343*x0*x2 + 2.04569593534791*x0*x3 + 1.72708787192804*x0 + 1.1175653163164*x1 * x1 + 1.76685863333156*x1*x2 + 2.38241171071844*x1*x3 + 1.81801321335631*x1 + 1.2676315285576*x2 * x2 + 2.29437446210714*x2*x3 + 2.43041001359616*x2 + 1.78166941753179*x3 * x3 + 2.48325983917994*x3 + 1.19256744429141 >= 0. diff --git a/examples/valid/poly_v4_d2_s225.ae b/examples/valid/poly_v4_d2_s225.ae new file mode 100644 index 000000000..edc2de63a --- /dev/null +++ b/examples/valid/poly_v4_d2_s225.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3:real. + 3.46309818349603*x0 * x0 * x0 * x0 + 5.42832178390819*x0 * x0 * x0*x1 + 6.12555406351081*x0 * x0 * x0*x2 + 5.07315087858388*x0 * x0 * x0*x3 + 6.11862877281509*x0 * x0 * x0 + 11.086481191908*x0 * x0*x1 * x1 + 14.1468761717769*x0 * x0*x1*x2 + 13.1087852314964*x0 * x0*x1*x3 + 14.1263167865558*x0 * x0*x1 + 9.93217810001507*x0 * x0*x2 * x2 + 12.5652300331063*x0 * x0*x2*x3 + 14.609511267846*x0 * x0*x2 + 10.5740244122403*x0 * x0*x3 * x3 + 10.8185607119283*x0 * x0*x3 + 10.4348464353138*x0 * x0 + 8.31752865062901*x0*x1 * x1 * x1 + 17.3632445844018*x0*x1 * x1*x2 + 15.3000869195664*x0*x1 * x1*x3 + 15.5267991601536*x0*x1 * x1 + 14.1877668882146*x0*x1*x2 * x2 + 22.0250674095581*x0*x1*x2*x3 + 23.2716137366541*x0*x1*x2 + 14.6663725043033*x0*x1*x3 * x3 + 19.1704942379202*x0*x1*x3 + 14.5490668568148*x0*x1 + 7.06531927392702*x0*x2 * x2 * x2 + 15.2291738048765*x0*x2 * x2*x3 + 13.2420014024647*x0*x2 * x2 + 16.3289916488533*x0*x2*x3 * x3 + 20.3894550370847*x0*x2*x3 + 16.2665886988317*x0*x2 + 8.09837434808626*x0*x3 * x3 * x3 + 15.5486698539484*x0*x3 * x3 + 12.5639211578405*x0*x3 + 6.96068229954684*x0 + 6.48432983463549*x1 * x1 * x1 * x1 + 9.61961419690235*x1 * x1 * x1*x2 + 8.50510225394465*x1 * x1 * x1*x3 + 9.49757935342965*x1 * x1 * x1 + 12.9697595985887*x1 * x1*x2 * x2 + 18.545291478655*x1 * x1*x2*x3 + 17.3647495436797*x1 * x1*x2 + 14.6416794598333*x1 * x1*x3 * x3 + 16.8506588623615*x1 * x1*x3 + 14.9234236878079*x1 * x1 + 7.34207366212696*x1*x2 * x2 * x2 + 14.5568844908257*x1*x2 * x2*x3 + 16.6346439464809*x1*x2 * x2 + 15.6018535528659*x1*x2*x3 * x3 + 21.0017653857479*x1*x2*x3 + 17.0451995512058*x1*x2 + 7.53154926949065*x1*x3 * x3 * x3 + 12.5829793989315*x1*x3 * x3 + 12.3867895943871*x1*x3 + 8.01581748298898*x1 + 3.69609983633187*x2 * x2 * x2 * x2 + 6.4211007439324*x2 * x2 * x2*x3 + 7.23985424553325*x2 * x2 * x2 + 12.2706863547801*x2 * x2*x3 * x3 + 12.2282432604794*x2 * x2*x3 + 12.3707745868211*x2 * x2 + 7.72602636615436*x2*x3 * x3 * x3 + 15.1196988253313*x2*x3 * x3 + 13.0978580731169*x2*x3 + 8.1375571545524*x2 + 4.7746677981368*x3 * x3 * x3 * x3 + 5.98302562087179*x3 * x3 * x3 + 11.5695743163498*x3 * x3 + 5.9121091494498*x3 + 4.60927831524208 >= 0. diff --git a/examples/valid/poly_v4_d2_s225_2.ae b/examples/valid/poly_v4_d2_s225_2.ae new file mode 100644 index 000000000..f08d2274b --- /dev/null +++ b/examples/valid/poly_v4_d2_s225_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3:real. + 1.83556094076279*x0 * x0 * x0 * x0 + 4.96982593579417*x0 * x0 * x0*x1 + 4.79609137706563*x0 * x0 * x0*x2 + 3.76474178079292*x0 * x0 * x0*x3 + 3.53857231095069*x0 * x0 * x0 + 10.2944202077413*x0 * x0*x1 * x1 + 10.7458926141808*x0 * x0*x1*x2 + 11.0465513120442*x0 * x0*x1*x3 + 10.0142629776352*x0 * x0*x1 + 7.57901331905509*x0 * x0*x2 * x2 + 10.7779178122484*x0 * x0*x2*x3 + 9.91728772284553*x0 * x0*x2 + 7.40148234720686*x0 * x0*x3 * x3 + 10.0924828177497*x0 * x0*x3 + 9.08836862411669*x0 * x0 + 8.81286019407668*x0*x1 * x1 * x1 + 12.9098243715759*x0*x1 * x1*x2 + 16.0731579435772*x0*x1 * x1*x3 + 16.3824837775901*x0*x1 * x1 + 9.79326423480886*x0*x1*x2 * x2 + 20.5845758369314*x0*x1*x2*x3 + 20.4699429560361*x0*x1*x2 + 13.3328833660027*x0*x1*x3 * x3 + 21.0623891985869*x0*x1*x3 + 14.8245847005021*x0*x1 + 5.35267603731528*x0*x2 * x2 * x2 + 10.8914859383005*x0*x2 * x2*x3 + 10.7631014979074*x0*x2 * x2 + 15.3607768163549*x0*x2*x3 * x3 + 19.0352417871526*x0*x2*x3 + 14.060164083485*x0*x2 + 5.83581919279636*x0*x3 * x3 * x3 + 11.164025997516*x0*x3 * x3 + 11.5366781390467*x0*x3 + 7.08717391870963*x0 + 5.33155514506593*x1 * x1 * x1 * x1 + 5.55011115092394*x1 * x1 * x1*x2 + 9.34413235644528*x1 * x1 * x1*x3 + 7.76328502988658*x1 * x1 * x1 + 6.62679460439137*x1 * x1*x2 * x2 + 14.4273585715237*x1 * x1*x2*x3 + 13.1499293562405*x1 * x1*x2 + 12.5986447432635*x1 * x1*x3 * x3 + 13.4721592204778*x1 * x1*x3 + 12.1395322626731*x1 * x1 + 3.63009586823475*x1*x2 * x2 * x2 + 8.98356836199314*x1*x2 * x2*x3 + 9.040464758911*x1*x2 * x2 + 12.9179707021222*x1*x2*x3 * x3 + 19.8485632099615*x1*x2*x3 + 12.6478868822887*x1*x2 + 7.31351804255339*x1*x3 * x3 * x3 + 12.4214242152277*x1*x3 * x3 + 11.7718173047874*x1*x3 + 5.89667604999639*x1 + 2.24503005910323*x2 * x2 * x2 * x2 + 3.91894025287816*x2 * x2 * x2*x3 + 3.94158345389883*x2 * x2 * x2 + 8.74707183925137*x2 * x2*x3 * x3 + 10.6343553132994*x2 * x2*x3 + 9.60246449845908*x2 * x2 + 7.275955677518*x2*x3 * x3 * x3 + 12.0383175444397*x2*x3 * x3 + 13.6808610859807*x2*x3 + 6.34135737964104*x2 + 3.69784844668585*x3 * x3 * x3 * x3 + 4.56183931760238*x3 * x3 * x3 + 8.85162705350063*x3 * x3 + 6.17471229086413*x3 + 4.39684283738717 >= 0. diff --git a/examples/valid/poly_v4_d3_s1225.ae b/examples/valid/poly_v4_d3_s1225.ae new file mode 100644 index 000000000..3e34c0de3 --- /dev/null +++ b/examples/valid/poly_v4_d3_s1225.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3:real. + 10.5925441846126*x0 * x0 * x0 * x0 * x0 * x0 + 18.7394657482287*x0 * x0 * x0 * x0 * x0*x1 + 15.2432321151154*x0 * x0 * x0 * x0 * x0*x2 + 13.2165579611908*x0 * x0 * x0 * x0 * x0*x3 + 19.134757722625*x0 * x0 * x0 * x0 * x0 + 29.1802322306857*x0 * x0 * x0 * x0*x1 * x1 + 31.2654832958955*x0 * x0 * x0 * x0*x1*x2 + 36.4559798636725*x0 * x0 * x0 * x0*x1*x3 + 37.0710052594167*x0 * x0 * x0 * x0*x1 + 26.0664617815971*x0 * x0 * x0 * x0*x2 * x2 + 32.3734271345062*x0 * x0 * x0 * x0*x2*x3 + 33.8687015870976*x0 * x0 * x0 * x0*x2 + 26.7536758891214*x0 * x0 * x0 * x0*x3 * x3 + 37.0375737711978*x0 * x0 * x0 * x0*x3 + 25.7968799975349*x0 * x0 * x0 * x0 + 31.7031684323005*x0 * x0 * x0*x1 * x1 * x1 + 53.1950243417339*x0 * x0 * x0*x1 * x1*x2 + 55.8768835588012*x0 * x0 * x0*x1 * x1*x3 + 52.9404664440197*x0 * x0 * x0*x1 * x1 + 50.522547799077*x0 * x0 * x0*x1*x2 * x2 + 68.7195577426556*x0 * x0 * x0*x1*x2*x3 + 66.2361042305635*x0 * x0 * x0*x1*x2 + 55.6399715483746*x0 * x0 * x0*x1*x3 * x3 + 80.2465868269384*x0 * x0 * x0*x1*x3 + 53.6119060606821*x0 * x0 * x0*x1 + 33.9949676902505*x0 * x0 * x0*x2 * x2 * x2 + 47.8182341325435*x0 * x0 * x0*x2 * x2*x3 + 48.739388679061*x0 * x0 * x0*x2 * x2 + 52.7648855875056*x0 * x0 * x0*x2*x3 * x3 + 69.1570589852564*x0 * x0 * x0*x2*x3 + 46.5621515733795*x0 * x0 * x0*x2 + 29.8811929019941*x0 * x0 * x0*x3 * x3 * x3 + 54.1535545929893*x0 * x0 * x0*x3 * x3 + 51.9335014505055*x0 * x0 * x0*x3 + 31.4181454837751*x0 * x0 * x0 + 29.478352723517*x0 * x0*x1 * x1 * x1 * x1 + 49.7528537728497*x0 * x0*x1 * x1 * x1*x2 + 54.633718284761*x0 * x0*x1 * x1 * x1*x3 + 53.6121003825563*x0 * x0*x1 * x1 * x1 + 65.163990860822*x0 * x0*x1 * x1*x2 * x2 + 91.5254389953649*x0 * x0*x1 * x1*x2*x3 + 89.1550840737438*x0 * x0*x1 * x1*x2 + 70.612322882631*x0 * x0*x1 * x1*x3 * x3 + 97.7047154544148*x0 * x0*x1 * x1*x3 + 64.1842790484423*x0 * x0*x1 * x1 + 53.4505724882772*x0 * x0*x1*x2 * x2 * x2 + 84.7635172340378*x0 * x0*x1*x2 * x2*x3 + 86.0030121835291*x0 * x0*x1*x2 * x2 + 87.3293091283546*x0 * x0*x1*x2*x3 * x3 + 124.287006518898*x0 * x0*x1*x2*x3 + 83.0985370774157*x0 * x0*x1*x2 + 53.6301528274652*x0 * x0*x1*x3 * x3 * x3 + 95.419725956421*x0 * x0*x1*x3 * x3 + 93.1676514826004*x0 * x0*x1*x3 + 53.9846246486806*x0 * x0*x1 + 26.6603189572727*x0 * x0*x2 * x2 * x2 * x2 + 51.0318116551037*x0 * x0*x2 * x2 * x2*x3 + 51.9534153681737*x0 * x0*x2 * x2 * x2 + 64.6783916320318*x0 * x0*x2 * x2*x3 * x3 + 85.0198809171181*x0 * x0*x2 * x2*x3 + 58.1681162468401*x0 * x0*x2 * x2 + 52.8052850620401*x0 * x0*x2*x3 * x3 * x3 + 88.4268425332332*x0 * x0*x2*x3 * x3 + 86.4134458893081*x0 * x0*x2*x3 + 46.9759285557755*x0 * x0*x2 + 27.0672520952674*x0 * x0*x3 * x3 * x3 * x3 + 49.0292885199017*x0 * x0*x3 * x3 * x3 + 64.3875825152688*x0 * x0*x3 * x3 + 50.7267173073761*x0 * x0*x3 + 27.1830320105755*x0 * x0 + 15.4591562948428*x0*x1 * x1 * x1 * x1 * x1 + 35.9318715125329*x0*x1 * x1 * x1 * x1*x2 + 35.3325160048388*x0*x1 * x1 * x1 * x1*x3 + 31.3503346139497*x0*x1 * x1 * x1 * x1 + 53.3480120060033*x0*x1 * x1 * x1*x2 * x2 + 76.2867610707878*x0*x1 * x1 * x1*x2*x3 + 68.7691915599485*x0*x1 * x1 * x1*x2 + 56.88823267376*x0*x1 * x1 * x1*x3 * x3 + 71.8019148403736*x0*x1 * x1 * x1*x3 + 51.7026354259574*x0*x1 * x1 * x1 + 53.7647127959808*x0*x1 * x1*x2 * x2 * x2 + 93.5142010193858*x0*x1 * x1*x2 * x2*x3 + 88.7293598738518*x0*x1 * x1*x2 * x2 + 94.3983144801653*x0*x1 * x1*x2*x3 * x3 + 127.855874783191*x0*x1 * x1*x2*x3 + 84.3377311017782*x0*x1 * x1*x2 + 56.3917322567627*x0*x1 * x1*x3 * x3 * x3 + 91.708791623439*x0*x1 * x1*x3 * x3 + 91.466779943205*x0*x1 * x1*x3 + 50.3225435971816*x0*x1 * x1 + 37.5740099287802*x0*x1*x2 * x2 * x2 * x2 + 76.1764438142697*x0*x1*x2 * x2 * x2*x3 + 70.1051671420445*x0*x1*x2 * x2 * x2 + 88.541651550697*x0*x1*x2 * x2*x3 * x3 + 125.666059072107*x0*x1*x2 * x2*x3 + 79.7325787139493*x0*x1*x2 * x2 + 72.7629005414475*x0*x1*x2*x3 * x3 * x3 + 125.222899791006*x0*x1*x2*x3 * x3 + 124.503829963236*x0*x1*x2*x3 + 65.5284026296658*x0*x1*x2 + 37.6117175734155*x0*x1*x3 * x3 * x3 * x3 + 74.630495554707*x0*x1*x3 * x3 * x3 + 92.2915444636409*x0*x1*x3 * x3 + 73.2909145531096*x0*x1*x3 + 33.7913630114413*x0*x1 + 18.1650181834459*x0*x2 * x2 * x2 * x2 * x2 + 37.0792931360973*x0*x2 * x2 * x2 * x2*x3 + 32.0431573723278*x0*x2 * x2 * x2 * x2 + 53.9554294632331*x0*x2 * x2 * x2*x3 * x3 + 70.6453216376721*x0*x2 * x2 * x2*x3 + 45.5587304822121*x0*x2 * x2 * x2 + 48.4315398180532*x0*x2 * x2*x3 * x3 * x3 + 86.5123313206424*x0*x2 * x2*x3 * x3 + 79.7777080002159*x0*x2 * x2*x3 + 42.7913954647667*x0*x2 * x2 + 36.3630873089316*x0*x2*x3 * x3 * x3 * x3 + 65.8617541655778*x0*x2*x3 * x3 * x3 + 87.4586237995157*x0*x2*x3 * x3 + 63.9375636498466*x0*x2*x3 + 29.2810624172201*x0*x2 + 16.0515216412142*x0*x3 * x3 * x3 * x3 * x3 + 31.4018737316281*x0*x3 * x3 * x3 * x3 + 49.5095517768177*x0*x3 * x3 * x3 + 49.4522670167017*x0*x3 * x3 + 32.3194672001882*x0*x3 + 15.5541907556953*x0 + 10.0517029578057*x1 * x1 * x1 * x1 * x1 * x1 + 18.1229963032565*x1 * x1 * x1 * x1 * x1*x2 + 17.6920178430892*x1 * x1 * x1 * x1 * x1*x3 + 16.7355300105873*x1 * x1 * x1 * x1 * x1 + 32.0619987328214*x1 * x1 * x1 * x1*x2 * x2 + 36.1983326860853*x1 * x1 * x1 * x1*x2*x3 + 35.1460620040191*x1 * x1 * x1 * x1*x2 + 30.0341849672292*x1 * x1 * x1 * x1*x3 * x3 + 35.0068148061501*x1 * x1 * x1 * x1*x3 + 26.0875640866374*x1 * x1 * x1 * x1 + 40.6266777150795*x1 * x1 * x1*x2 * x2 * x2 + 54.7081958055351*x1 * x1 * x1*x2 * x2*x3 + 56.0929683742543*x1 * x1 * x1*x2 * x2 + 56.3552041422286*x1 * x1 * x1*x2*x3 * x3 + 70.2624442402585*x1 * x1 * x1*x2*x3 + 57.0120014294352*x1 * x1 * x1*x2 + 31.8319986309014*x1 * x1 * x1*x3 * x3 * x3 + 53.5483903117018*x1 * x1 * x1*x3 * x3 + 51.8524791869151*x1 * x1 * x1*x3 + 33.0305238479699*x1 * x1 * x1 + 34.3791215292744*x1 * x1*x2 * x2 * x2 * x2 + 57.0877774077724*x1 * x1*x2 * x2 * x2*x3 + 59.2947404388061*x1 * x1*x2 * x2 * x2 + 69.1124718197223*x1 * x1*x2 * x2*x3 * x3 + 86.9123339520507*x1 * x1*x2 * x2*x3 + 66.7941339890201*x1 * x1*x2 * x2 + 52.6305554754947*x1 * x1*x2*x3 * x3 * x3 + 90.1736129924427*x1 * x1*x2*x3 * x3 + 93.61933484836*x1 * x1*x2*x3 + 54.3532512500084*x1 * x1*x2 + 28.0349876624784*x1 * x1*x3 * x3 * x3 * x3 + 53.2440461691877*x1 * x1*x3 * x3 * x3 + 66.1722594483827*x1 * x1*x3 * x3 + 51.7453321984153*x1 * x1*x3 + 27.9019447931514*x1 * x1 + 20.2502363359906*x1*x2 * x2 * x2 * x2 * x2 + 36.368431642842*x1*x2 * x2 * x2 * x2*x3 + 37.432479300911*x1*x2 * x2 * x2 * x2 + 55.9154278394627*x1*x2 * x2 * x2*x3 * x3 + 70.1570075995179*x1*x2 * x2 * x2*x3 + 52.8413518782087*x1*x2 * x2 * x2 + 53.2589261568528*x1*x2 * x2*x3 * x3 * x3 + 87.2678980798465*x1*x2 * x2*x3 * x3 + 85.2537448052323*x1*x2 * x2*x3 + 49.5453976696959*x1*x2 * x2 + 32.1279898595518*x1*x2*x3 * x3 * x3 * x3 + 66.9698772984604*x1*x2*x3 * x3 * x3 + 86.5672906738497*x1*x2*x3 * x3 + 67.1144865190708*x1*x2*x3 + 32.4507425072132*x1*x2 + 15.7439905313544*x1*x3 * x3 * x3 * x3 * x3 + 33.0086524761831*x1*x3 * x3 * x3 * x3 + 52.0657651758398*x1*x3 * x3 * x3 + 54.3728935599905*x1*x3 * x3 + 35.8343593632714*x1*x3 + 16.2602156212905*x1 + 12.8317434709808*x2 * x2 * x2 * x2 * x2 * x2 + 18.6467010505718*x2 * x2 * x2 * x2 * x2*x3 + 18.1240004638798*x2 * x2 * x2 * x2 * x2 + 30.1516870268834*x2 * x2 * x2 * x2*x3 * x3 + 34.6881083904769*x2 * x2 * x2 * x2*x3 + 27.7542155506875*x2 * x2 * x2 * x2 + 32.7852967110533*x2 * x2 * x2*x3 * x3 * x3 + 52.9879496492407*x2 * x2 * x2*x3 * x3 + 49.3940974171347*x2 * x2 * x2*x3 + 34.9675859022504*x2 * x2 * x2 + 26.6884733689106*x2 * x2*x3 * x3 * x3 * x3 + 45.4651023323994*x2 * x2*x3 * x3 * x3 + 63.2245570478121*x2 * x2*x3 * x3 + 48.6894959988918*x2 * x2*x3 + 25.560438852617*x2 * x2 + 17.1215844491794*x2*x3 * x3 * x3 * x3 * x3 + 34.884022469103*x2*x3 * x3 * x3 * x3 + 52.4629365839524*x2*x3 * x3 * x3 + 51.8091323556381*x2*x3 * x3 + 33.9151233766882*x2*x3 + 15.0993463547695*x2 + 9.76218004601566*x3 * x3 * x3 * x3 * x3 * x3 + 14.9109115377571*x3 * x3 * x3 * x3 * x3 + 26.8791329102829*x3 * x3 * x3 * x3 + 32.3026557799404*x3 * x3 * x3 + 27.6199266763985*x3 * x3 + 16.025562776357*x3 + 10.7463963781307 >= 0. diff --git a/examples/valid/poly_v4_d3_s1225_2.ae b/examples/valid/poly_v4_d3_s1225_2.ae new file mode 100644 index 000000000..541198b86 --- /dev/null +++ b/examples/valid/poly_v4_d3_s1225_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3:real. + 12.5887586776202*x0 * x0 * x0 * x0 * x0 * x0 + 20.3727276399705*x0 * x0 * x0 * x0 * x0*x1 + 18.1033694226432*x0 * x0 * x0 * x0 * x0*x2 + 18.5542641949532*x0 * x0 * x0 * x0 * x0*x3 + 12.8989848136927*x0 * x0 * x0 * x0 * x0 + 29.683277754387*x0 * x0 * x0 * x0*x1 * x1 + 36.0406734140556*x0 * x0 * x0 * x0*x1*x2 + 36.6390200698231*x0 * x0 * x0 * x0*x1*x3 + 34.8844596932041*x0 * x0 * x0 * x0*x1 + 30.4047625233521*x0 * x0 * x0 * x0*x2 * x2 + 38.2809520771143*x0 * x0 * x0 * x0*x2*x3 + 31.008985685654*x0 * x0 * x0 * x0*x2 + 31.0651225646311*x0 * x0 * x0 * x0*x3 * x3 + 32.9947535457383*x0 * x0 * x0 * x0*x3 + 22.0069103555319*x0 * x0 * x0 * x0 + 32.7866576661383*x0 * x0 * x0*x1 * x1 * x1 + 51.5568705341842*x0 * x0 * x0*x1 * x1*x2 + 54.4173365062678*x0 * x0 * x0*x1 * x1*x3 + 51.577193373246*x0 * x0 * x0*x1 * x1 + 54.2739168417181*x0 * x0 * x0*x1*x2 * x2 + 70.6597389353171*x0 * x0 * x0*x1*x2*x3 + 63.7224184244835*x0 * x0 * x0*x1*x2 + 53.2763031504579*x0 * x0 * x0*x1*x3 * x3 + 69.3963707051814*x0 * x0 * x0*x1*x3 + 45.3258730684149*x0 * x0 * x0*x1 + 36.6175148933018*x0 * x0 * x0*x2 * x2 * x2 + 55.1967006083072*x0 * x0 * x0*x2 * x2*x3 + 52.4450432875114*x0 * x0 * x0*x2 * x2 + 59.7110800079645*x0 * x0 * x0*x2*x3 * x3 + 64.1862953731053*x0 * x0 * x0*x2*x3 + 49.5826150495497*x0 * x0 * x0*x2 + 35.1789379007786*x0 * x0 * x0*x3 * x3 * x3 + 57.8272443733933*x0 * x0 * x0*x3 * x3 + 49.3245308320769*x0 * x0 * x0*x3 + 30.3836328198557*x0 * x0 * x0 + 22.791912744117*x0 * x0*x1 * x1 * x1 * x1 + 48.6523659437182*x0 * x0*x1 * x1 * x1*x2 + 44.1787604341287*x0 * x0*x1 * x1 * x1*x3 + 43.7863648779175*x0 * x0*x1 * x1 * x1 + 62.6454517199697*x0 * x0*x1 * x1*x2 * x2 + 84.1858463593953*x0 * x0*x1 * x1*x2*x3 + 80.8816220799343*x0 * x0*x1 * x1*x2 + 60.2578932278424*x0 * x0*x1 * x1*x3 * x3 + 82.2926137788769*x0 * x0*x1 * x1*x3 + 52.5148142588617*x0 * x0*x1 * x1 + 51.9593708646815*x0 * x0*x1*x2 * x2 * x2 + 89.2496562860926*x0 * x0*x1*x2 * x2*x3 + 79.5031036974141*x0 * x0*x1*x2 * x2 + 89.3530631457793*x0 * x0*x1*x2*x3 * x3 + 113.757274562818*x0 * x0*x1*x2*x3 + 79.1719855463352*x0 * x0*x1*x2 + 53.047483103299*x0 * x0*x1*x3 * x3 * x3 + 87.0437377592148*x0 * x0*x1*x3 * x3 + 86.8450271143371*x0 * x0*x1*x3 + 49.6495833190291*x0 * x0*x1 + 30.1680623150063*x0 * x0*x2 * x2 * x2 * x2 + 52.3307214133622*x0 * x0*x2 * x2 * x2*x3 + 43.2630949817326*x0 * x0*x2 * x2 * x2 + 70.9331075587654*x0 * x0*x2 * x2*x3 * x3 + 83.2626610347458*x0 * x0*x2 * x2*x3 + 57.9238459374697*x0 * x0*x2 * x2 + 55.588578733789*x0 * x0*x2*x3 * x3 * x3 + 86.4333750235865*x0 * x0*x2*x3 * x3 + 81.0904761682212*x0 * x0*x2*x3 + 50.4415487183075*x0 * x0*x2 + 31.7122338152738*x0 * x0*x3 * x3 * x3 * x3 + 50.0634278837133*x0 * x0*x3 * x3 * x3 + 59.5347365494065*x0 * x0*x3 * x3 + 49.5881859406445*x0 * x0*x3 + 23.1265429596331*x0 * x0 + 10.3246484876774*x0*x1 * x1 * x1 * x1 * x1 + 29.7251921476396*x0*x1 * x1 * x1 * x1*x2 + 29.286887289807*x0*x1 * x1 * x1 * x1*x3 + 30.0433221790907*x0*x1 * x1 * x1 * x1 + 48.241886016598*x0*x1 * x1 * x1*x2 * x2 + 62.3269155031417*x0*x1 * x1 * x1*x2*x3 + 57.416415814866*x0*x1 * x1 * x1*x2 + 46.537678827267*x0*x1 * x1 * x1*x3 * x3 + 64.7738510487274*x0*x1 * x1 * x1*x3 + 41.1000863335306*x0*x1 * x1 * x1 + 49.4715150517495*x0*x1 * x1*x2 * x2 * x2 + 82.1876052187281*x0*x1 * x1*x2 * x2*x3 + 77.6736666438709*x0*x1 * x1*x2 * x2 + 88.3191568392399*x0*x1 * x1*x2*x3 * x3 + 116.325449664825*x0*x1 * x1*x2*x3 + 78.055418702771*x0*x1 * x1*x2 + 51.5257799326098*x0*x1 * x1*x3 * x3 * x3 + 81.8972845848679*x0*x1 * x1*x3 * x3 + 86.1528413488962*x0*x1 * x1*x3 + 50.3975202534275*x0*x1 * x1 + 33.1903114528592*x0*x1*x2 * x2 * x2 * x2 + 67.9935173912173*x0*x1*x2 * x2 * x2*x3 + 60.6067861477039*x0*x1*x2 * x2 * x2 + 86.7203110316143*x0*x1*x2 * x2*x3 * x3 + 115.755907169549*x0*x1*x2 * x2*x3 + 80.3495231193221*x0*x1*x2 * x2 + 72.3031813639451*x0*x1*x2*x3 * x3 * x3 + 119.151957758848*x0*x1*x2*x3 * x3 + 119.043963357343*x0*x1*x2*x3 + 64.804717848362*x0*x1*x2 + 35.1083993572773*x0*x1*x3 * x3 * x3 * x3 + 69.7839645742765*x0*x1*x3 * x3 * x3 + 90.867047741181*x0*x1*x3 * x3 + 72.4722732621043*x0*x1*x3 + 32.1295500300381*x0*x1 + 15.667818686609*x0*x2 * x2 * x2 * x2 * x2 + 32.6123412936535*x0*x2 * x2 * x2 * x2*x3 + 29.2874291295049*x0*x2 * x2 * x2 * x2 + 53.1948582558691*x0*x2 * x2 * x2*x3 * x3 + 64.5317806288709*x0*x2 * x2 * x2*x3 + 46.1098386392002*x0*x2 * x2 * x2 + 56.5217944861346*x0*x2 * x2*x3 * x3 * x3 + 88.7681673471064*x0*x2 * x2*x3 * x3 + 84.0200324972372*x0*x2 * x2*x3 + 49.1329250787903*x0*x2 * x2 + 39.6212071501224*x0*x2*x3 * x3 * x3 * x3 + 70.6564974183544*x0*x2*x3 * x3 * x3 + 87.9088384400607*x0*x2*x3 * x3 + 72.5065091501048*x0*x2*x3 + 32.5405620294947*x0*x2 + 17.9088472844347*x0*x3 * x3 * x3 * x3 * x3 + 36.2555832744801*x0*x3 * x3 * x3 * x3 + 53.2013497281746*x0*x3 * x3 * x3 + 55.0875432667595*x0*x3 * x3 + 34.4104337542874*x0*x3 + 15.5456318985458*x0 + 6.77462103184083*x1 * x1 * x1 * x1 * x1 * x1 + 13.4363512287007*x1 * x1 * x1 * x1 * x1*x2 + 14.4336022444344*x1 * x1 * x1 * x1 * x1*x3 + 11.7147710226581*x1 * x1 * x1 * x1 * x1 + 22.7461010678042*x1 * x1 * x1 * x1*x2 * x2 + 31.1997959486842*x1 * x1 * x1 * x1*x2*x3 + 26.4519669423292*x1 * x1 * x1 * x1*x2 + 22.836040807771*x1 * x1 * x1 * x1*x3 * x3 + 31.7926522344464*x1 * x1 * x1 * x1*x3 + 26.2629760624874*x1 * x1 * x1 * x1 + 28.0836715775025*x1 * x1 * x1*x2 * x2 * x2 + 44.0342320912*x1 * x1 * x1*x2 * x2*x3 + 42.1607407501696*x1 * x1 * x1*x2 * x2 + 46.9903317250701*x1 * x1 * x1*x2*x3 * x3 + 61.9235508742908*x1 * x1 * x1*x2*x3 + 47.6699421093546*x1 * x1 * x1*x2 + 25.4142426613562*x1 * x1 * x1*x3 * x3 * x3 + 44.1707112827648*x1 * x1 * x1*x3 * x3 + 52.2323733909372*x1 * x1 * x1*x3 + 30.5771534591169*x1 * x1 * x1 + 24.745548933924*x1 * x1*x2 * x2 * x2 * x2 + 44.5314128720538*x1 * x1*x2 * x2 * x2*x3 + 44.8637163868039*x1 * x1*x2 * x2 * x2 + 58.5109054890749*x1 * x1*x2 * x2*x3 * x3 + 76.9751297509713*x1 * x1*x2 * x2*x3 + 59.8696117399844*x1 * x1*x2 * x2 + 47.8752897548328*x1 * x1*x2*x3 * x3 * x3 + 83.5183991762111*x1 * x1*x2*x3 * x3 + 88.3414120877358*x1 * x1*x2*x3 + 53.4780522906947*x1 * x1*x2 + 23.7453051947087*x1 * x1*x3 * x3 * x3 * x3 + 51.4454452459882*x1 * x1*x3 * x3 * x3 + 68.6160269101682*x1 * x1*x3 * x3 + 58.8553865160265*x1 * x1*x3 + 32.2493084910641*x1 * x1 + 15.2490961447148*x1*x2 * x2 * x2 * x2 * x2 + 29.2034373389065*x1*x2 * x2 * x2 * x2*x3 + 26.3873077403949*x1*x2 * x2 * x2 * x2 + 47.8635476425438*x1*x2 * x2 * x2*x3 * x3 + 61.9981326342254*x1*x2 * x2 * x2*x3 + 51.5164776622782*x1*x2 * x2 * x2 + 46.3834093134109*x1*x2 * x2*x3 * x3 * x3 + 73.4006368203135*x1*x2 * x2*x3 * x3 + 82.4462557791034*x1*x2 * x2*x3 + 50.3059849354193*x1*x2 * x2 + 31.2355398792919*x1*x2*x3 * x3 * x3 * x3 + 68.243270349434*x1*x2*x3 * x3 * x3 + 82.7890172847712*x1*x2*x3 * x3 + 74.5971898722636*x1*x2*x3 + 38.2468080922808*x1*x2 + 13.0444090431929*x1*x3 * x3 * x3 * x3 * x3 + 30.9244578660282*x1*x3 * x3 * x3 * x3 + 51.108626306044*x1*x3 * x3 * x3 + 54.5401584289296*x1*x3 * x3 + 40.2239287526839*x1*x3 + 18.8445836235122*x1 + 9.12044399226592*x2 * x2 * x2 * x2 * x2 * x2 + 15.3532901563886*x2 * x2 * x2 * x2 * x2*x3 + 12.8812482894945*x2 * x2 * x2 * x2 * x2 + 28.4337222725862*x2 * x2 * x2 * x2*x3 * x3 + 30.3920210249528*x2 * x2 * x2 * x2*x3 + 28.2249824548551*x2 * x2 * x2 * x2 + 31.0569636648365*x2 * x2 * x2*x3 * x3 * x3 + 47.8222668074849*x2 * x2 * x2*x3 * x3 + 52.5362076116815*x2 * x2 * x2*x3 + 34.3283409406576*x2 * x2 * x2 + 27.9798844345779*x2 * x2*x3 * x3 * x3 * x3 + 50.9118430234507*x2 * x2*x3 * x3 * x3 + 67.0395048898905*x2 * x2*x3 * x3 + 55.8533067771144*x2 * x2*x3 + 31.6501658831317*x2 * x2 + 18.705742346468*x2*x3 * x3 * x3 * x3 * x3 + 31.0555604652473*x2*x3 * x3 * x3 * x3 + 59.0763412283918*x2*x3 * x3 * x3 + 58.82489257126*x2*x3 * x3 + 40.0007681495575*x2*x3 + 23.6386454031887*x2 + 10.4032575220422*x3 * x3 * x3 * x3 * x3 * x3 + 15.071580465784*x3 * x3 * x3 * x3 * x3 + 32.3782677058182*x3 * x3 * x3 * x3 + 40.0806379069024*x3 * x3 * x3 + 32.5756773166677*x3 * x3 + 23.7428412789238*x3 + 13.2751994252374 >= 0. diff --git a/examples/valid/poly_v5_d1_s36_2.ae b/examples/valid/poly_v5_d1_s36_2.ae new file mode 100644 index 000000000..62e452b0c --- /dev/null +++ b/examples/valid/poly_v5_d1_s36_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4:real. + 1.53962738630823*x0 * x0 + 2.44765427408216*x0*x1 + 1.65261486806887*x0*x2 + 2.60386566183437*x0*x3 + 1.91513079399553*x0*x4 + 2.319182237184*x0 + 1.03435883596155*x1 * x1 + 1.36255647131603*x1*x2 + 1.84673166648757*x1*x3 + 1.25193212825487*x1*x4 + 1.97098443310694*x1 + 0.792564151367715*x2 * x2 + 1.42165732719117*x2*x3 + 1.00495410823211*x2*x4 + 1.27079053514466*x2 + 1.3712017391511*x3 * x3 + 2.40487243169011*x3*x4 + 1.8649105725211*x3 + 1.23439948037812*x4 * x4 + 1.49146045706806*x4 + 1.02174283061735 >= 0. diff --git a/examples/valid/poly_v5_d2_s441.ae b/examples/valid/poly_v5_d2_s441.ae new file mode 100644 index 000000000..4590d2702 --- /dev/null +++ b/examples/valid/poly_v5_d2_s441.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4:real. + 5.99673218073405*x0 * x0 * x0 * x0 + 7.2138962910484*x0 * x0 * x0*x1 + 9.101649652155*x0 * x0 * x0*x2 + 7.07082180674835*x0 * x0 * x0*x3 + 11.5983283339655*x0 * x0 * x0*x4 + 9.84735055557586*x0 * x0 * x0 + 14.4727524982352*x0 * x0*x1 * x1 + 15.1256989303837*x0 * x0*x1*x2 + 15.7203567200208*x0 * x0*x1*x3 + 18.0646068185077*x0 * x0*x1*x4 + 15.2586086416323*x0 * x0*x1 + 16.7116609956678*x0 * x0*x2 * x2 + 20.9378768434389*x0 * x0*x2*x3 + 22.7633437441267*x0 * x0*x2*x4 + 20.8749142552265*x0 * x0*x2 + 13.3215232685794*x0 * x0*x3 * x3 + 18.7400021933769*x0 * x0*x3*x4 + 19.917640584319*x0 * x0*x3 + 16.501621004693*x0 * x0*x4 * x4 + 22.9747568096082*x0 * x0*x4 + 15.8790286417576*x0 * x0 + 9.48830556899839*x0*x1 * x1 * x1 + 19.1483950990329*x0*x1 * x1*x2 + 16.9210368843732*x0*x1 * x1*x3 + 23.325438000289*x0*x1 * x1*x4 + 17.5417843359022*x0*x1 * x1 + 17.2174547772708*x0*x1*x2 * x2 + 27.1618786511994*x0*x1*x2*x3 + 30.8983648974981*x0*x1*x2*x4 + 26.1522746926865*x0*x1*x2 + 17.0136672789879*x0*x1*x3 * x3 + 31.0754161732534*x0*x1*x3*x4 + 27.2962219158832*x0*x1*x3 + 21.3309266175528*x0*x1*x4 * x4 + 33.196079354626*x0*x1*x4 + 17.021231953701*x0*x1 + 10.7589317905721*x0*x2 * x2 * x2 + 19.1325545678733*x0*x2 * x2*x3 + 22.7143609408852*x0*x2 * x2*x4 + 20.3940127615864*x0*x2 * x2 + 16.7516500865683*x0*x2*x3 * x3 + 30.9371012581944*x0*x2*x3*x4 + 25.7132864772426*x0*x2*x3 + 22.7398992764905*x0*x2*x4 * x4 + 32.1379621207136*x0*x2*x4 + 16.261277535113*x0*x2 + 7.92772153855623*x0*x3 * x3 * x3 + 18.6310095592186*x0*x3 * x3*x4 + 18.0056355932229*x0*x3 * x3 + 19.4518537785254*x0*x3*x4 * x4 + 29.148857141755*x0*x3*x4 + 15.5552208935494*x0*x3 + 9.51999105727312*x0*x4 * x4 * x4 + 23.1585368917234*x0*x4 * x4 + 21.426345241647*x0*x4 + 7.67820833281749*x0 + 7.68273706381469*x1 * x1 * x1 * x1 + 10.2998703668628*x1 * x1 * x1*x2 + 10.4619379470524*x1 * x1 * x1*x3 + 12.5991158696136*x1 * x1 * x1*x4 + 10.7388462645334*x1 * x1 * x1 + 16.1683118782713*x1 * x1*x2 * x2 + 20.9039859291472*x1 * x1*x2*x3 + 22.6764310501201*x1 * x1*x2*x4 + 18.2257360845179*x1 * x1*x2 + 15.9749163581549*x1 * x1*x3 * x3 + 21.7442221943702*x1 * x1*x3*x4 + 19.4188518136914*x1 * x1*x3 + 17.3823967321098*x1 * x1*x4 * x4 + 22.4965236816078*x1 * x1*x4 + 14.3689917154288*x1 * x1 + 10.8526835547336*x1*x2 * x2 * x2 + 19.6392741537218*x1*x2 * x2*x3 + 22.509846051955*x1*x2 * x2*x4 + 16.0765932938253*x1*x2 * x2 + 18.4061159856289*x1*x2*x3 * x3 + 29.5260144840579*x1*x2*x3*x4 + 22.8087902750463*x1*x2*x3 + 20.6713063611968*x1*x2*x4 * x4 + 31.3229644301593*x1*x2*x4 + 15.0258239963635*x1*x2 + 9.18125596225583*x1*x3 * x3 * x3 + 19.1364024499429*x1*x3 * x3*x4 + 14.8839708551427*x1*x3 * x3 + 21.1697400546484*x1*x3*x4 * x4 + 30.2499297966788*x1*x3*x4 + 15.0455385047398*x1*x3 + 11.6035353810825*x1*x4 * x4 * x4 + 19.3563242274153*x1*x4 * x4 + 18.394358119185*x1*x4 + 6.16578313543237*x1 + 7.33999781762798*x2 * x2 * x2 * x2 + 11.5976155448194*x2 * x2 * x2*x3 + 10.7335556095155*x2 * x2 * x2*x4 + 9.57418866573802*x2 * x2 * x2 + 17.860152853881*x2 * x2*x3 * x3 + 21.807009813241*x2 * x2*x3*x4 + 18.8316265039715*x2 * x2*x3 + 17.937650513347*x2 * x2*x4 * x4 + 21.0860176227656*x2 * x2*x4 + 13.0377878283728*x2 * x2 + 10.1938023226452*x2*x3 * x3 * x3 + 20.3609224860287*x2*x3 * x3*x4 + 16.6716085511445*x2*x3 * x3 + 20.7182245760686*x2*x3*x4 * x4 + 29.4111439892089*x2*x3*x4 + 16.2946980361044*x2*x3 + 9.04885369412023*x2*x4 * x4 * x4 + 18.9723868322457*x2*x4 * x4 + 17.3342479942939*x2*x4 + 7.18087594627672*x2 + 6.13695935523319*x3 * x3 * x3 * x3 + 9.25146372139091*x3 * x3 * x3*x4 + 8.15023662573354*x3 * x3 * x3 + 15.5683038458862*x3 * x3*x4 * x4 + 16.6293443437123*x3 * x3*x4 + 11.497838971973*x3 * x3 + 10.2542260500133*x3*x4 * x4 * x4 + 17.7858693456433*x3*x4 * x4 + 16.7754961353514*x3*x4 + 6.03121588639959*x3 + 5.2175299430011*x4 * x4 * x4 * x4 + 8.97072400792515*x4 * x4 * x4 + 13.2039600102441*x4 * x4 + 8.66018587974845*x4 + 3.84419935032877 >= 0. diff --git a/examples/valid/poly_v5_d2_s441_2.ae b/examples/valid/poly_v5_d2_s441_2.ae new file mode 100644 index 000000000..2772a5c61 --- /dev/null +++ b/examples/valid/poly_v5_d2_s441_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4:real. + 6.73884668470191*x0 * x0 * x0 * x0 + 8.40920639059107*x0 * x0 * x0*x1 + 12.4903955797318*x0 * x0 * x0*x2 + 10.6906117972881*x0 * x0 * x0*x3 + 8.9726756464787*x0 * x0 * x0*x4 + 10.1233867602385*x0 * x0 * x0 + 17.1273955533711*x0 * x0*x1 * x1 + 20.6035569327256*x0 * x0*x1*x2 + 14.8252377523719*x0 * x0*x1*x3 + 19.3575092823375*x0 * x0*x1*x4 + 19.6018822495017*x0 * x0*x1 + 20.1648796095632*x0 * x0*x2 * x2 + 20.2093264439024*x0 * x0*x2*x3 + 20.5825072395095*x0 * x0*x2*x4 + 20.9538721053635*x0 * x0*x2 + 18.3914576376145*x0 * x0*x3 * x3 + 19.3695789730446*x0 * x0*x3*x4 + 17.9514376486451*x0 * x0*x3 + 14.5768059425559*x0 * x0*x4 * x4 + 19.6637595297271*x0 * x0*x4 + 14.8826501038364*x0 * x0 + 6.19649259083507*x0*x1 * x1 * x1 + 20.1033127756605*x0*x1 * x1*x2 + 17.6950047532981*x0*x1 * x1*x3 + 19.6643140860418*x0*x1 * x1*x4 + 17.4429120725563*x0*x1 * x1 + 20.8828340617002*x0*x1*x2 * x2 + 27.9730643212936*x0*x1*x2*x3 + 32.5077166975734*x0*x1*x2*x4 + 29.1704414903415*x0*x1*x2 + 16.2522831528119*x0*x1*x3 * x3 + 25.6371228417149*x0*x1*x3*x4 + 26.6951872840858*x0*x1*x3 + 18.8306173632187*x0*x1*x4 * x4 + 28.3967086715022*x0*x1*x4 + 17.1425509477863*x0*x1 + 13.2732791813702*x0*x2 * x2 * x2 + 18.4440041239652*x0*x2 * x2*x3 + 19.8684744445467*x0*x2 * x2*x4 + 18.9299875798863*x0*x2 * x2 + 22.6501055424063*x0*x2*x3 * x3 + 25.8277715280071*x0*x2*x3*x4 + 26.3138146273992*x0*x2*x3 + 18.5330103931432*x0*x2*x4 * x4 + 32.5448506265021*x0*x2*x4 + 19.6953336797811*x0*x2 + 11.7634968047489*x0*x3 * x3 * x3 + 17.7604571507888*x0*x3 * x3*x4 + 18.6738801670642*x0*x3 * x3 + 17.0403508972288*x0*x3*x4 * x4 + 29.4404384572838*x0*x3*x4 + 18.9362192470106*x0*x3 + 6.74789304941784*x0*x4 * x4 * x4 + 18.8187031316666*x0*x4 * x4 + 18.4292103490457*x0*x4 + 8.66311820052825*x0 + 5.46934323748034*x1 * x1 * x1 * x1 + 8.69100955844263*x1 * x1 * x1*x2 + 7.01979618103739*x1 * x1 * x1*x3 + 10.3277247584496*x1 * x1 * x1*x4 + 9.83047193822994*x1 * x1 * x1 + 15.2006732146713*x1 * x1*x2 * x2 + 15.2211048245142*x1 * x1*x2*x3 + 20.1526462413363*x1 * x1*x2*x4 + 17.6758354563759*x1 * x1*x2 + 16.7583776288237*x1 * x1*x3 * x3 + 18.6536536285854*x1 * x1*x3*x4 + 14.5358033135934*x1 * x1*x3 + 15.6262775693384*x1 * x1*x4 * x4 + 22.6040015207378*x1 * x1*x4 + 14.140961378518*x1 * x1 + 9.53320067243592*x1*x2 * x2 * x2 + 14.4897479352289*x1*x2 * x2*x3 + 22.4177669031298*x1*x2 * x2*x4 + 19.4605340865542*x1*x2 * x2 + 16.9855623891587*x1*x2*x3 * x3 + 27.4349303808465*x1*x2*x3*x4 + 22.7097103567372*x1*x2*x3 + 20.2347167524115*x1*x2*x4 * x4 + 31.070862016762*x1*x2*x4 + 17.1463803961221*x1*x2 + 8.98077770713754*x1*x3 * x3 * x3 + 20.7116268192936*x1*x3 * x3*x4 + 19.2228589338922*x1*x3 * x3 + 19.818329871188*x1*x3*x4 * x4 + 28.8594054308192*x1*x3*x4 + 16.4050079776434*x1*x3 + 10.5416399585227*x1*x4 * x4 * x4 + 22.6551790777437*x1*x4 * x4 + 21.3488981066562*x1*x4 + 8.17684669910053*x1 + 5.99227884464963*x2 * x2 * x2 * x2 + 7.26304446231781*x2 * x2 * x2*x3 + 10.1578568539012*x2 * x2 * x2*x4 + 7.17819130167253*x2 * x2 * x2 + 15.8433128060422*x2 * x2*x3 * x3 + 16.7586351841891*x2 * x2*x3*x4 + 14.6592909329011*x2 * x2*x3 + 15.3377261911688*x2 * x2*x4 * x4 + 19.6118888666048*x2 * x2*x4 + 13.5174085490322*x2 * x2 + 8.047057492069*x2*x3 * x3 * x3 + 17.9472144503285*x2*x3 * x3*x4 + 15.5802346460274*x2*x3 * x3 + 18.2524653796367*x2*x3*x4 * x4 + 24.6590831261195*x2*x3*x4 + 13.3624832966233*x2*x3 + 9.18866014532147*x2*x4 * x4 * x4 + 18.6860992333548*x2*x4 * x4 + 17.7136290471604*x2*x4 + 6.14281479232675*x2 + 7.57779548444001*x3 * x3 * x3 * x3 + 10.546127085985*x3 * x3 * x3*x4 + 8.90225151042062*x3 * x3 * x3 + 15.1345258817491*x3 * x3*x4 * x4 + 21.8515575598321*x3 * x3*x4 + 14.0739733231005*x3 * x3 + 8.55925667114882*x3*x4 * x4 * x4 + 19.7949153010006*x3*x4 * x4 + 17.4429269861338*x3*x4 + 6.59136189592906*x3 + 5.43370697096428*x4 * x4 * x4 * x4 + 10.0100466646123*x4 * x4 * x4 + 16.836440960944*x4 * x4 + 10.1940698647903*x4 + 5.51156628170494 >= 0. diff --git a/examples/valid/poly_v5_d3_s3136.ae b/examples/valid/poly_v5_d3_s3136.ae new file mode 100644 index 000000000..42c2a73d5 --- /dev/null +++ b/examples/valid/poly_v5_d3_s3136.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4:real. + 20.984446376281*x0 * x0 * x0 * x0 * x0 * x0 + 36.3025492040673*x0 * x0 * x0 * x0 * x0*x1 + 28.2834855304485*x0 * x0 * x0 * x0 * x0*x2 + 33.2025602866781*x0 * x0 * x0 * x0 * x0*x3 + 34.888279882266*x0 * x0 * x0 * x0 * x0*x4 + 27.6286652301703*x0 * x0 * x0 * x0 * x0 + 53.4853155402594*x0 * x0 * x0 * x0*x1 * x1 + 58.9636141842615*x0 * x0 * x0 * x0*x1*x2 + 58.448399474263*x0 * x0 * x0 * x0*x1*x3 + 68.4814376968584*x0 * x0 * x0 * x0*x1*x4 + 60.0492206105071*x0 * x0 * x0 * x0*x1 + 45.6720272082993*x0 * x0 * x0 * x0*x2 * x2 + 55.4722019846576*x0 * x0 * x0 * x0*x2*x3 + 56.5617425757559*x0 * x0 * x0 * x0*x2*x4 + 55.6740225286713*x0 * x0 * x0 * x0*x2 + 49.3038849526454*x0 * x0 * x0 * x0*x3 * x3 + 62.5166083704643*x0 * x0 * x0 * x0*x3*x4 + 59.1245024195999*x0 * x0 * x0 * x0*x3 + 50.767841301806*x0 * x0 * x0 * x0*x4 * x4 + 56.0266017788269*x0 * x0 * x0 * x0*x4 + 49.3529369883105*x0 * x0 * x0 * x0 + 62.881249954646*x0 * x0 * x0*x1 * x1 * x1 + 88.3965450503299*x0 * x0 * x0*x1 * x1*x2 + 90.6970662081049*x0 * x0 * x0*x1 * x1*x3 + 101.176386067346*x0 * x0 * x0*x1 * x1*x4 + 87.6986854850791*x0 * x0 * x0*x1 * x1 + 86.9009818983621*x0 * x0 * x0*x1*x2 * x2 + 112.410064740727*x0 * x0 * x0*x1*x2*x3 + 127.141094378186*x0 * x0 * x0*x1*x2*x4 + 117.08280603995*x0 * x0 * x0*x1*x2 + 88.6304043762195*x0 * x0 * x0*x1*x3 * x3 + 128.798954266114*x0 * x0 * x0*x1*x3*x4 + 113.37079915361*x0 * x0 * x0*x1*x3 + 97.0597783354626*x0 * x0 * x0*x1*x4 * x4 + 112.302072670227*x0 * x0 * x0*x1*x4 + 88.7736109438513*x0 * x0 * x0*x1 + 57.2415404592617*x0 * x0 * x0*x2 * x2 * x2 + 81.5444913606447*x0 * x0 * x0*x2 * x2*x3 + 83.6905879989997*x0 * x0 * x0*x2 * x2*x4 + 81.3101675680057*x0 * x0 * x0*x2 * x2 + 79.4270071553822*x0 * x0 * x0*x2*x3 * x3 + 110.91708181856*x0 * x0 * x0*x2*x3*x4 + 111.184106415458*x0 * x0 * x0*x2*x3 + 75.4244472794892*x0 * x0 * x0*x2*x4 * x4 + 110.288302293535*x0 * x0 * x0*x2*x4 + 87.5143147007672*x0 * x0 * x0*x2 + 65.4927387310908*x0 * x0 * x0*x3 * x3 * x3 + 92.7716366586404*x0 * x0 * x0*x3 * x3*x4 + 86.9521244235114*x0 * x0 * x0*x3 * x3 + 89.4225395004825*x0 * x0 * x0*x3*x4 * x4 + 120.475053249059*x0 * x0 * x0*x3*x4 + 85.2991293063203*x0 * x0 * x0*x3 + 59.8775926102836*x0 * x0 * x0*x4 * x4 * x4 + 85.052139227554*x0 * x0 * x0*x4 * x4 + 87.349878463801*x0 * x0 * x0*x4 + 61.6190190573078*x0 * x0 * x0 + 50.0873688964101*x0 * x0*x1 * x1 * x1 * x1 + 87.9862830484383*x0 * x0*x1 * x1 * x1*x2 + 82.254091012279*x0 * x0*x1 * x1 * x1*x3 + 92.599759637697*x0 * x0*x1 * x1 * x1*x4 + 80.3254641183504*x0 * x0*x1 * x1 * x1 + 108.801886170699*x0 * x0*x1 * x1*x2 * x2 + 142.643035699385*x0 * x0*x1 * x1*x2*x3 + 151.209238902926*x0 * x0*x1 * x1*x2*x4 + 139.505412332878*x0 * x0*x1 * x1*x2 + 104.354649129529*x0 * x0*x1 * x1*x3 * x3 + 152.216093887853*x0 * x0*x1 * x1*x3*x4 + 139.719580565038*x0 * x0*x1 * x1*x3 + 107.964452531188*x0 * x0*x1 * x1*x4 * x4 + 140.215313929065*x0 * x0*x1 * x1*x4 + 105.471924971076*x0 * x0*x1 * x1 + 91.1443664609363*x0 * x0*x1*x2 * x2 * x2 + 138.416898664339*x0 * x0*x1*x2 * x2*x3 + 151.891117773525*x0 * x0*x1*x2 * x2*x4 + 141.013296952001*x0 * x0*x1*x2 * x2 + 132.879815412926*x0 * x0*x1*x2*x3 * x3 + 200.561209814056*x0 * x0*x1*x2*x3*x4 + 193.693339759565*x0 * x0*x1*x2*x3 + 148.726995097024*x0 * x0*x1*x2*x4 * x4 + 190.456154746927*x0 * x0*x1*x2*x4 + 143.403775182281*x0 * x0*x1*x2 + 94.9407352608883*x0 * x0*x1*x3 * x3 * x3 + 149.993221425518*x0 * x0*x1*x3 * x3*x4 + 146.926913843811*x0 * x0*x1*x3 * x3 + 149.481877963403*x0 * x0*x1*x3*x4 * x4 + 202.338555121126*x0 * x0*x1*x3*x4 + 143.801121686826*x0 * x0*x1*x3 + 88.5236360859858*x0 * x0*x1*x4 * x4 * x4 + 137.377432583611*x0 * x0*x1*x4 * x4 + 146.369890347515*x0 * x0*x1*x4 + 89.9300361565006*x0 * x0*x1 + 45.4417086969532*x0 * x0*x2 * x2 * x2 * x2 + 79.54362513632*x0 * x0*x2 * x2 * x2*x3 + 78.7409494158647*x0 * x0*x2 * x2 * x2*x4 + 81.5732141021096*x0 * x0*x2 * x2 * x2 + 94.5156306986002*x0 * x0*x2 * x2*x3 * x3 + 131.124250991538*x0 * x0*x2 * x2*x3*x4 + 131.697181303508*x0 * x0*x2 * x2*x3 + 91.8632673511986*x0 * x0*x2 * x2*x4 * x4 + 125.560669865255*x0 * x0*x2 * x2*x4 + 99.2020929603655*x0 * x0*x2 * x2 + 78.2806609252126*x0 * x0*x2*x3 * x3 * x3 + 142.236969432199*x0 * x0*x2*x3 * x3*x4 + 141.222479008047*x0 * x0*x2*x3 * x3 + 128.403379262637*x0 * x0*x2*x3*x4 * x4 + 188.348572967931*x0 * x0*x2*x3*x4 + 136.68004061894*x0 * x0*x2*x3 + 73.2137459404146*x0 * x0*x2*x4 * x4 * x4 + 123.118656651385*x0 * x0*x2*x4 * x4 + 134.728212295862*x0 * x0*x2*x4 + 89.1091468842463*x0 * x0*x2 + 50.4397569358902*x0 * x0*x3 * x3 * x3 * x3 + 95.905702337228*x0 * x0*x3 * x3 * x3*x4 + 84.1738008379598*x0 * x0*x3 * x3 * x3 + 107.330278187821*x0 * x0*x3 * x3*x4 * x4 + 141.116471987148*x0 * x0*x3 * x3*x4 + 103.115294625213*x0 * x0*x3 * x3 + 88.6226133713414*x0 * x0*x3*x4 * x4 * x4 + 143.685095222698*x0 * x0*x3*x4 * x4 + 136.442846129837*x0 * x0*x3*x4 + 82.9520873271502*x0 * x0*x3 + 44.8058547435337*x0 * x0*x4 * x4 * x4 * x4 + 77.9707362414042*x0 * x0*x4 * x4 * x4 + 101.584191970731*x0 * x0*x4 * x4 + 91.3513898215544*x0 * x0*x4 + 47.0714040179418*x0 * x0 + 27.1364392779686*x0*x1 * x1 * x1 * x1 * x1 + 56.2510469441469*x0*x1 * x1 * x1 * x1*x2 + 53.9009892616597*x0*x1 * x1 * x1 * x1*x3 + 55.2545861393066*x0*x1 * x1 * x1 * x1*x4 + 57.2227747452163*x0*x1 * x1 * x1 * x1 + 86.9315655466621*x0*x1 * x1 * x1*x2 * x2 + 109.886805150662*x0*x1 * x1 * x1*x2*x3 + 121.019442641065*x0*x1 * x1 * x1*x2*x4 + 114.24783868153*x0*x1 * x1 * x1*x2 + 79.573509119825*x0*x1 * x1 * x1*x3 * x3 + 116.289402573106*x0*x1 * x1 * x1*x3*x4 + 112.453626637424*x0*x1 * x1 * x1*x3 + 80.719061685225*x0*x1 * x1 * x1*x4 * x4 + 107.836576102349*x0*x1 * x1 * x1*x4 + 85.4813249639826*x0*x1 * x1 * x1 + 89.4362069851149*x0*x1 * x1*x2 * x2 * x2 + 141.907091022986*x0*x1 * x1*x2 * x2*x3 + 140.810369834527*x0*x1 * x1*x2 * x2*x4 + 138.769150630871*x0*x1 * x1*x2 * x2 + 135.502516380436*x0*x1 * x1*x2*x3 * x3 + 202.743670095575*x0*x1 * x1*x2*x3*x4 + 204.271977273576*x0*x1 * x1*x2*x3 + 143.11778716642*x0*x1 * x1*x2*x4 * x4 + 193.674673716084*x0*x1 * x1*x2*x4 + 149.982385751175*x0*x1 * x1*x2 + 83.3673189126753*x0*x1 * x1*x3 * x3 * x3 + 147.357462456371*x0*x1 * x1*x3 * x3*x4 + 144.570320672922*x0*x1 * x1*x3 * x3 + 140.222126675521*x0*x1 * x1*x3*x4 * x4 + 196.542019126762*x0*x1 * x1*x3*x4 + 142.249986174233*x0*x1 * x1*x3 + 81.6704845928444*x0*x1 * x1*x4 * x4 * x4 + 135.537158969943*x0*x1 * x1*x4 * x4 + 138.290047432233*x0*x1 * x1*x4 + 90.7697035897209*x0*x1 * x1 + 58.4882543362219*x0*x1*x2 * x2 * x2 * x2 + 111.436066005401*x0*x1*x2 * x2 * x2*x3 + 120.31756273637*x0*x1*x2 * x2 * x2*x4 + 121.916200857696*x0*x1*x2 * x2 * x2 + 134.785295792104*x0*x1*x2 * x2*x3 * x3 + 201.667964435981*x0*x1*x2 * x2*x3*x4 + 195.682518330205*x0*x1*x2 * x2*x3 + 139.25409907046*x0*x1*x2 * x2*x4 * x4 + 192.990608118136*x0*x1*x2 * x2*x4 + 143.880395812025*x0*x1*x2 * x2 + 111.89372759795*x0*x1*x2*x3 * x3 * x3 + 205.149488236877*x0*x1*x2*x3 * x3*x4 + 193.887120814472*x0*x1*x2*x3 * x3 + 197.471314112032*x0*x1*x2*x3*x4 * x4 + 281.362813942586*x0*x1*x2*x3*x4 + 198.321267397505*x0*x1*x2*x3 + 110.15942144355*x0*x1*x2*x4 * x4 * x4 + 189.207589736145*x0*x1*x2*x4 * x4 + 200.375409166525*x0*x1*x2*x4 + 118.767408217204*x0*x1*x2 + 58.7483403099973*x0*x1*x3 * x3 * x3 * x3 + 123.559175822599*x0*x1*x3 * x3 * x3*x4 + 115.555311027289*x0*x1*x3 * x3 * x3 + 142.01641381506*x0*x1*x3 * x3*x4 * x4 + 196.405140781698*x0*x1*x3 * x3*x4 + 145.063857951703*x0*x1*x3 * x3 + 114.052562690756*x0*x1*x3*x4 * x4 * x4 + 194.576650337548*x0*x1*x3*x4 * x4 + 202.7982877477*x0*x1*x3*x4 + 112.969167337209*x0*x1*x3 + 56.9771067502455*x0*x1*x4 * x4 * x4 * x4 + 106.250415568251*x0*x1*x4 * x4 * x4 + 139.197499733287*x0*x1*x4 * x4 + 115.51734755118*x0*x1*x4 + 61.0558062731269*x0*x1 + 31.3159553447447*x0*x2 * x2 * x2 * x2 * x2 + 56.7247116682291*x0*x2 * x2 * x2 * x2*x3 + 51.096142813277*x0*x2 * x2 * x2 * x2*x4 + 57.2949684680058*x0*x2 * x2 * x2 * x2 + 74.8151387275765*x0*x2 * x2 * x2*x3 * x3 + 108.337304035832*x0*x2 * x2 * x2*x3*x4 + 115.054218449153*x0*x2 * x2 * x2*x3 + 73.0288063106064*x0*x2 * x2 * x2*x4 * x4 + 96.5121464873948*x0*x2 * x2 * x2*x4 + 89.4510837183039*x0*x2 * x2 * x2 + 82.4789612984937*x0*x2 * x2*x3 * x3 * x3 + 130.349172519594*x0*x2 * x2*x3 * x3*x4 + 137.408244438013*x0*x2 * x2*x3 * x3 + 126.135611421593*x0*x2 * x2*x3*x4 * x4 + 187.72158829238*x0*x2 * x2*x3*x4 + 143.483967845626*x0*x2 * x2*x3 + 72.4723590093148*x0*x2 * x2*x4 * x4 * x4 + 122.079445036547*x0*x2 * x2*x4 * x4 + 129.17385835269*x0*x2 * x2*x4 + 91.0752680584523*x0*x2 * x2 + 53.8830193422835*x0*x2*x3 * x3 * x3 * x3 + 109.488759475931*x0*x2*x3 * x3 * x3*x4 + 123.503982130278*x0*x2*x3 * x3 * x3 + 128.600987779943*x0*x2*x3 * x3*x4 * x4 + 191.986122756896*x0*x2*x3 * x3*x4 + 139.275909758507*x0*x2*x3 * x3 + 101.161856731983*x0*x2*x3*x4 * x4 * x4 + 184.637695718351*x0*x2*x3*x4 * x4 + 192.056045271032*x0*x2*x3*x4 + 124.123828979379*x0*x2*x3 + 45.3689635969607*x0*x2*x4 * x4 * x4 * x4 + 98.6146668090908*x0*x2*x4 * x4 * x4 + 134.458553683305*x0*x2*x4 * x4 + 110.86542590075*x0*x2*x4 + 64.2608922721783*x0*x2 + 29.1400969564998*x0*x3 * x3 * x3 * x3 * x3 + 56.6169842230108*x0*x3 * x3 * x3 * x3*x4 + 64.5178493953091*x0*x3 * x3 * x3 * x3 + 89.5997217321017*x0*x3 * x3 * x3*x4 * x4 + 122.035439769561*x0*x3 * x3 * x3*x4 + 91.8812260159381*x0*x3 * x3 * x3 + 83.3828376845432*x0*x3 * x3*x4 * x4 * x4 + 146.944369402358*x0*x3 * x3*x4 * x4 + 141.974563316368*x0*x3 * x3*x4 + 89.1020634853736*x0*x3 * x3 + 53.4014083704376*x0*x3*x4 * x4 * x4 * x4 + 106.9638509571*x0*x3*x4 * x4 * x4 + 140.775379580673*x0*x3*x4 * x4 + 115.659178967961*x0*x3*x4 + 61.5580225254118*x0*x3 + 24.6513897007211*x0*x4 * x4 * x4 * x4 * x4 + 50.1621506277619*x0*x4 * x4 * x4 * x4 + 78.6824423557887*x0*x4 * x4 * x4 + 85.5982522669085*x0*x4 * x4 + 60.662390163427*x0*x4 + 33.9864118661726*x0 + 17.6769916818512*x1 * x1 * x1 * x1 * x1 * x1 + 29.4387832873312*x1 * x1 * x1 * x1 * x1*x2 + 28.5045559246711*x1 * x1 * x1 * x1 * x1*x3 + 29.8999444328*x1 * x1 * x1 * x1 * x1*x4 + 30.0482989102402*x1 * x1 * x1 * x1 * x1 + 49.5993281649793*x1 * x1 * x1 * x1*x2 * x2 + 61.2874172453787*x1 * x1 * x1 * x1*x2*x3 + 61.5786958814618*x1 * x1 * x1 * x1*x2*x4 + 57.7414171111875*x1 * x1 * x1 * x1*x2 + 47.7286399334623*x1 * x1 * x1 * x1*x3 * x3 + 60.6598606631822*x1 * x1 * x1 * x1*x3*x4 + 57.200814910948*x1 * x1 * x1 * x1*x3 + 49.1422006662226*x1 * x1 * x1 * x1*x4 * x4 + 55.9925137202819*x1 * x1 * x1 * x1*x4 + 49.8134434698818*x1 * x1 * x1 * x1 + 61.9869668901135*x1 * x1 * x1*x2 * x2 * x2 + 84.7298855492868*x1 * x1 * x1*x2 * x2*x3 + 90.2741415526803*x1 * x1 * x1*x2 * x2*x4 + 87.5873461064848*x1 * x1 * x1*x2 * x2 + 81.5668101122199*x1 * x1 * x1*x2*x3 * x3 + 119.6007625148*x1 * x1 * x1*x2*x3*x4 + 119.613636547493*x1 * x1 * x1*x2*x3 + 89.7460837150308*x1 * x1 * x1*x2*x4 * x4 + 114.177278529099*x1 * x1 * x1*x2*x4 + 87.7654936942189*x1 * x1 * x1*x2 + 61.2769890065965*x1 * x1 * x1*x3 * x3 * x3 + 92.7341421339512*x1 * x1 * x1*x3 * x3*x4 + 94.5604431860904*x1 * x1 * x1*x3 * x3 + 90.365596059345*x1 * x1 * x1*x3*x4 * x4 + 118.582985780135*x1 * x1 * x1*x3*x4 + 85.3223694183821*x1 * x1 * x1*x3 + 54.4664741971357*x1 * x1 * x1*x4 * x4 * x4 + 85.8399930605401*x1 * x1 * x1*x4 * x4 + 88.5254926537429*x1 * x1 * x1*x4 + 62.0977952457221*x1 * x1 * x1 + 50.9524440408602*x1 * x1*x2 * x2 * x2 * x2 + 87.1608915463404*x1 * x1*x2 * x2 * x2*x3 + 92.0437263701181*x1 * x1*x2 * x2 * x2*x4 + 88.9465659037364*x1 * x1*x2 * x2 * x2 + 107.286928489437*x1 * x1*x2 * x2*x3 * x3 + 142.82317160096*x1 * x1*x2 * x2*x3*x4 + 141.198177595676*x1 * x1*x2 * x2*x3 + 107.595398760871*x1 * x1*x2 * x2*x4 * x4 + 141.172451226228*x1 * x1*x2 * x2*x4 + 104.758816022428*x1 * x1*x2 * x2 + 93.5989420156274*x1 * x1*x2*x3 * x3 * x3 + 149.790052501806*x1 * x1*x2*x3 * x3*x4 + 146.34222450725*x1 * x1*x2*x3 * x3 + 147.150607578676*x1 * x1*x2*x3*x4 * x4 + 205.877683596607*x1 * x1*x2*x3*x4 + 149.464827361104*x1 * x1*x2*x3 + 83.8887728140545*x1 * x1*x2*x4 * x4 * x4 + 136.147135816462*x1 * x1*x2*x4 * x4 + 145.614658232851*x1 * x1*x2*x4 + 90.6099155385421*x1 * x1*x2 + 54.0829072106923*x1 * x1*x3 * x3 * x3 * x3 + 97.4968201000605*x1 * x1*x3 * x3 * x3*x4 + 96.8939650708613*x1 * x1*x3 * x3 * x3 + 117.363914487359*x1 * x1*x3 * x3*x4 * x4 + 158.725289702433*x1 * x1*x3 * x3*x4 + 111.78880798299*x1 * x1*x3 * x3 + 87.3451619639461*x1 * x1*x3*x4 * x4 * x4 + 147.991079026074*x1 * x1*x3*x4 * x4 + 146.171437469762*x1 * x1*x3*x4 + 89.0703406054815*x1 * x1*x3 + 46.9271146570355*x1 * x1*x4 * x4 * x4 * x4 + 90.4174407987552*x1 * x1*x4 * x4 * x4 + 111.684638957408*x1 * x1*x4 * x4 + 92.1981945879138*x1 * x1*x4 + 53.6971793919761*x1 * x1 + 33.3362942763804*x1*x2 * x2 * x2 * x2 * x2 + 55.2436195937502*x1*x2 * x2 * x2 * x2*x3 + 64.9698278183494*x1*x2 * x2 * x2 * x2*x4 + 55.9409657178526*x1*x2 * x2 * x2 * x2 + 82.3070072206722*x1*x2 * x2 * x2*x3 * x3 + 116.308058794822*x1*x2 * x2 * x2*x3*x4 + 111.666737545643*x1*x2 * x2 * x2*x3 + 83.6243183955043*x1*x2 * x2 * x2*x4 * x4 + 109.169969708762*x1*x2 * x2 * x2*x4 + 83.4160938056296*x1*x2 * x2 * x2 + 86.943202903355*x1*x2 * x2*x3 * x3 * x3 + 145.382072989668*x1*x2 * x2*x3 * x3*x4 + 140.343739354087*x1*x2 * x2*x3 * x3 + 133.165882870726*x1*x2 * x2*x3*x4 * x4 + 191.326507046414*x1*x2 * x2*x3*x4 + 132.260321135352*x1*x2 * x2*x3 + 80.9855141300121*x1*x2 * x2*x4 * x4 * x4 + 133.828005373767*x1*x2 * x2*x4 * x4 + 137.19616608862*x1*x2 * x2*x4 + 83.6178848633152*x1*x2 * x2 + 57.0341241427286*x1*x2*x3 * x3 * x3 * x3 + 122.755922172258*x1*x2*x3 * x3 * x3*x4 + 122.69689791974*x1*x2*x3 * x3 * x3 + 144.268918215878*x1*x2*x3 * x3*x4 * x4 + 209.776468802897*x1*x2*x3 * x3*x4 + 140.466507225515*x1*x2*x3 * x3 + 114.810940353708*x1*x2*x3*x4 * x4 * x4 + 203.77190422055*x1*x2*x3*x4 * x4 + 192.928923967405*x1*x2*x3*x4 + 116.444401484173*x1*x2*x3 + 53.28655117208*x1*x2*x4 * x4 * x4 * x4 + 106.976185092384*x1*x2*x4 * x4 * x4 + 134.96211842435*x1*x2*x4 * x4 + 115.854300807136*x1*x2*x4 + 59.5656915660055*x1*x2 + 35.1542292443196*x1*x3 * x3 * x3 * x3 * x3 + 69.5061125864634*x1*x3 * x3 * x3 * x3*x4 + 65.032092494986*x1*x3 * x3 * x3 * x3 + 97.8812241645682*x1*x3 * x3 * x3*x4 * x4 + 123.628345508553*x1*x3 * x3 * x3*x4 + 89.5790081931943*x1*x3 * x3 * x3 + 95.3054581326443*x1*x3 * x3*x4 * x4 * x4 + 156.949026419085*x1*x3 * x3*x4 * x4 + 148.54654986131*x1*x3 * x3*x4 + 90.9778673213923*x1*x3 * x3 + 57.1311825164195*x1*x3*x4 * x4 * x4 * x4 + 114.338755729292*x1*x3*x4 * x4 * x4 + 147.275084864527*x1*x3*x4 * x4 + 119.243769941037*x1*x3*x4 + 54.9311443297231*x1*x3 + 27.8942540861918*x1*x4 * x4 * x4 * x4 * x4 + 52.5479908104646*x1*x4 * x4 * x4 * x4 + 84.9523466111239*x1*x4 * x4 * x4 + 88.7790906467017*x1*x4 * x4 + 60.0051406803885*x1*x4 + 32.6317235604657*x1 + 20.4242176986763*x2 * x2 * x2 * x2 * x2 * x2 + 27.7846476197942*x2 * x2 * x2 * x2 * x2*x3 + 29.3849710791818*x2 * x2 * x2 * x2 * x2*x4 + 24.8644500452443*x2 * x2 * x2 * x2 * x2 + 40.9945565555271*x2 * x2 * x2 * x2*x3 * x3 + 51.7847109513412*x2 * x2 * x2 * x2*x3*x4 + 55.6924783981191*x2 * x2 * x2 * x2*x3 + 41.7515232048391*x2 * x2 * x2 * x2*x4 * x4 + 47.6617821704544*x2 * x2 * x2 * x2*x4 + 44.7308661056774*x2 * x2 * x2 * x2 + 55.8355195488665*x2 * x2 * x2*x3 * x3 * x3 + 84.1391584320214*x2 * x2 * x2*x3 * x3*x4 + 84.149036600433*x2 * x2 * x2*x3 * x3 + 81.1320917973674*x2 * x2 * x2*x3*x4 * x4 + 106.504770052555*x2 * x2 * x2*x3*x4 + 76.9362674308345*x2 * x2 * x2*x3 + 50.6754122172085*x2 * x2 * x2*x4 * x4 * x4 + 74.0372350937862*x2 * x2 * x2*x4 * x4 + 77.1836976673032*x2 * x2 * x2*x4 + 59.3855123010821*x2 * x2 * x2 + 46.066308296356*x2 * x2*x3 * x3 * x3 * x3 + 78.9926884359391*x2 * x2*x3 * x3 * x3*x4 + 84.6914412799952*x2 * x2*x3 * x3 * x3 + 97.3664699026411*x2 * x2*x3 * x3*x4 * x4 + 133.273164160777*x2 * x2*x3 * x3*x4 + 96.0216353394023*x2 * x2*x3 * x3 + 70.2489973221251*x2 * x2*x3*x4 * x4 * x4 + 125.120854282179*x2 * x2*x3*x4 * x4 + 128.197558657949*x2 * x2*x3*x4 + 79.3707131284393*x2 * x2*x3 + 41.03291656037*x2 * x2*x4 * x4 * x4 * x4 + 68.1732988206858*x2 * x2*x4 * x4 * x4 + 90.7094338381703*x2 * x2*x4 * x4 + 80.5605266197865*x2 * x2*x4 + 45.2743748369359*x2 * x2 + 29.9950676353005*x2*x3 * x3 * x3 * x3 * x3 + 57.9040262938483*x2*x3 * x3 * x3 * x3*x4 + 62.0278941258152*x2*x3 * x3 * x3 * x3 + 81.1991450112948*x2*x3 * x3 * x3*x4 * x4 + 119.405325251162*x2*x3 * x3 * x3*x4 + 89.0294495029553*x2*x3 * x3 * x3 + 75.0950558811102*x2*x3 * x3*x4 * x4 * x4 + 135.614889067257*x2*x3 * x3*x4 * x4 + 137.860239361646*x2*x3 * x3*x4 + 84.5778773488051*x2*x3 * x3 + 51.3779639259499*x2*x3*x4 * x4 * x4 * x4 + 107.633000146805*x2*x3*x4 * x4 * x4 + 135.017201213781*x2*x3*x4 * x4 + 112.123850327234*x2*x3*x4 + 57.6913640639067*x2*x3 + 21.3110654732665*x2*x4 * x4 * x4 * x4 * x4 + 45.1667109606721*x2*x4 * x4 * x4 * x4 + 75.9797353058676*x2*x4 * x4 * x4 + 76.5087691568202*x2*x4 * x4 + 55.1043807465066*x2*x4 + 28.8032390792729*x2 + 22.7242041737365*x3 * x3 * x3 * x3 * x3 * x3 + 37.4785908443823*x3 * x3 * x3 * x3 * x3*x4 + 34.8359195364096*x3 * x3 * x3 * x3 * x3 + 57.2632165608436*x3 * x3 * x3 * x3*x4 * x4 + 67.6644322173722*x3 * x3 * x3 * x3*x4 + 52.1691708734358*x3 * x3 * x3 * x3 + 64.1554856429048*x3 * x3 * x3*x4 * x4 * x4 + 92.6625222116165*x3 * x3 * x3*x4 * x4 + 94.6344023585268*x3 * x3 * x3*x4 + 60.2438139890504*x3 * x3 * x3 + 48.1522414556792*x3 * x3*x4 * x4 * x4 * x4 + 90.686169142055*x3 * x3*x4 * x4 * x4 + 109.57571397093*x3 * x3*x4 * x4 + 92.4955223928448*x3 * x3*x4 + 51.0846874089484*x3 * x3 + 25.2382771230284*x3*x4 * x4 * x4 * x4 * x4 + 59.7080820006337*x3*x4 * x4 * x4 * x4 + 84.3221307987068*x3*x4 * x4 * x4 + 86.5348469315101*x3*x4 * x4 + 59.9967090927038*x3*x4 + 26.0613308100825*x3 + 15.5959280762435*x4 * x4 * x4 * x4 * x4 * x4 + 27.6490608716522*x4 * x4 * x4 * x4 * x4 + 45.6296200938607*x4 * x4 * x4 * x4 + 58.5983521344122*x4 * x4 * x4 + 52.1064039843138*x4 * x4 + 32.0692654034328*x4 + 21.1937603010763 >= 0. diff --git a/examples/valid/poly_v5_d3_s3136_2.ae b/examples/valid/poly_v5_d3_s3136_2.ae new file mode 100644 index 000000000..f4cde4008 --- /dev/null +++ b/examples/valid/poly_v5_d3_s3136_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4:real. + 15.2752440470166*x0 * x0 * x0 * x0 * x0 * x0 + 27.219498334089*x0 * x0 * x0 * x0 * x0*x1 + 21.0556183794566*x0 * x0 * x0 * x0 * x0*x2 + 25.8258212090959*x0 * x0 * x0 * x0 * x0*x3 + 26.1600566324559*x0 * x0 * x0 * x0 * x0*x4 + 21.9926643395078*x0 * x0 * x0 * x0 * x0 + 45.8542690455463*x0 * x0 * x0 * x0*x1 * x1 + 52.4929131794576*x0 * x0 * x0 * x0*x1*x2 + 55.4552924465634*x0 * x0 * x0 * x0*x1*x3 + 54.8318949481931*x0 * x0 * x0 * x0*x1*x4 + 53.0886123036311*x0 * x0 * x0 * x0*x1 + 46.7525615643501*x0 * x0 * x0 * x0*x2 * x2 + 51.1942912180142*x0 * x0 * x0 * x0*x2*x3 + 48.4410669184965*x0 * x0 * x0 * x0*x2*x4 + 46.7076036865022*x0 * x0 * x0 * x0*x2 + 43.8596831455066*x0 * x0 * x0 * x0*x3 * x3 + 47.9193978494152*x0 * x0 * x0 * x0*x3*x4 + 47.9283270741853*x0 * x0 * x0 * x0*x3 + 40.1015625732244*x0 * x0 * x0 * x0*x4 * x4 + 47.8980005909157*x0 * x0 * x0 * x0*x4 + 39.401513152705*x0 * x0 * x0 * x0 + 58.961212210291*x0 * x0 * x0*x1 * x1 * x1 + 78.0812850280934*x0 * x0 * x0*x1 * x1*x2 + 88.0550576926685*x0 * x0 * x0*x1 * x1*x3 + 79.292923614383*x0 * x0 * x0*x1 * x1*x4 + 78.3396269183875*x0 * x0 * x0*x1 * x1 + 83.507740849134*x0 * x0 * x0*x1*x2 * x2 + 112.417918743831*x0 * x0 * x0*x1*x2*x3 + 103.738223931473*x0 * x0 * x0*x1*x2*x4 + 100.477314842987*x0 * x0 * x0*x1*x2 + 85.9661230911299*x0 * x0 * x0*x1*x3 * x3 + 106.079973205017*x0 * x0 * x0*x1*x3*x4 + 106.030043669427*x0 * x0 * x0*x1*x3 + 71.5930626093484*x0 * x0 * x0*x1*x4 * x4 + 102.550697951969*x0 * x0 * x0*x1*x4 + 81.4000701076222*x0 * x0 * x0*x1 + 52.529827167168*x0 * x0 * x0*x2 * x2 * x2 + 88.0733261051374*x0 * x0 * x0*x2 * x2*x3 + 77.2847150204544*x0 * x0 * x0*x2 * x2*x4 + 78.3118992901347*x0 * x0 * x0*x2 * x2 + 78.9194275023089*x0 * x0 * x0*x2*x3 * x3 + 99.8808330364132*x0 * x0 * x0*x2*x3*x4 + 102.232699630616*x0 * x0 * x0*x2*x3 + 69.1973671397363*x0 * x0 * x0*x2*x4 * x4 + 104.92017500267*x0 * x0 * x0*x2*x4 + 74.790092708421*x0 * x0 * x0*x2 + 52.5901664915618*x0 * x0 * x0*x3 * x3 * x3 + 70.3122340996199*x0 * x0 * x0*x3 * x3*x4 + 69.5794760381706*x0 * x0 * x0*x3 * x3 + 74.4513430158028*x0 * x0 * x0*x3*x4 * x4 + 97.6631935622999*x0 * x0 * x0*x3*x4 + 77.2553086867819*x0 * x0 * x0*x3 + 48.5387405557319*x0 * x0 * x0*x4 * x4 * x4 + 67.027319894749*x0 * x0 * x0*x4 * x4 + 76.9963705600795*x0 * x0 * x0*x4 + 46.7916372127917*x0 * x0 * x0 + 54.4630645843838*x0 * x0*x1 * x1 * x1 * x1 + 83.1076503198015*x0 * x0*x1 * x1 * x1*x2 + 91.2536508896591*x0 * x0*x1 * x1 * x1*x3 + 84.5504129871224*x0 * x0*x1 * x1 * x1*x4 + 83.3855227407059*x0 * x0*x1 * x1 * x1 + 97.0194873623986*x0 * x0*x1 * x1*x2 * x2 + 138.199894954105*x0 * x0*x1 * x1*x2*x3 + 135.47206545559*x0 * x0*x1 * x1*x2*x4 + 131.392383482122*x0 * x0*x1 * x1*x2 + 105.352775164406*x0 * x0*x1 * x1*x3 * x3 + 141.468096026768*x0 * x0*x1 * x1*x3*x4 + 137.592581513752*x0 * x0*x1 * x1*x3 + 92.0915058048126*x0 * x0*x1 * x1*x4 * x4 + 127.044042565033*x0 * x0*x1 * x1*x4 + 104.4069303554*x0 * x0*x1 * x1 + 85.2801770136966*x0 * x0*x1*x2 * x2 * x2 + 136.251401142378*x0 * x0*x1*x2 * x2*x3 + 141.77979091017*x0 * x0*x1*x2 * x2*x4 + 136.301580894777*x0 * x0*x1*x2 * x2 + 143.950314874523*x0 * x0*x1*x2*x3 * x3 + 188.536685130931*x0 * x0*x1*x2*x3*x4 + 190.621600211181*x0 * x0*x1*x2*x3 + 127.490510105494*x0 * x0*x1*x2*x4 * x4 + 183.283902641655*x0 * x0*x1*x2*x4 + 133.506087691987*x0 * x0*x1*x2 + 87.440937310616*x0 * x0*x1*x3 * x3 * x3 + 138.533883744246*x0 * x0*x1*x3 * x3*x4 + 136.020762055152*x0 * x0*x1*x3 * x3 + 138.836391947788*x0 * x0*x1*x3*x4 * x4 + 191.47879256754*x0 * x0*x1*x3*x4 + 141.956072762531*x0 * x0*x1*x3 + 74.9618451068098*x0 * x0*x1*x4 * x4 * x4 + 125.677081827132*x0 * x0*x1*x4 * x4 + 133.996814798703*x0 * x0*x1*x4 + 79.9451251860429*x0 * x0*x1 + 47.5179920163795*x0 * x0*x2 * x2 * x2 * x2 + 86.5085957031606*x0 * x0*x2 * x2 * x2*x3 + 82.1580470258204*x0 * x0*x2 * x2 * x2*x4 + 78.4705689693499*x0 * x0*x2 * x2 * x2 + 106.94616621358*x0 * x0*x2 * x2*x3 * x3 + 133.538447309025*x0 * x0*x2 * x2*x3*x4 + 129.473479851614*x0 * x0*x2 * x2*x3 + 101.369781064629*x0 * x0*x2 * x2*x4 * x4 + 132.552135612854*x0 * x0*x2 * x2*x4 + 93.1454029717561*x0 * x0*x2 * x2 + 86.0660371541875*x0 * x0*x2*x3 * x3 * x3 + 127.430048580869*x0 * x0*x2*x3 * x3*x4 + 128.195885960968*x0 * x0*x2*x3 * x3 + 127.268366610734*x0 * x0*x2*x3*x4 * x4 + 182.334235369378*x0 * x0*x2*x3*x4 + 131.305391783337*x0 * x0*x2*x3 + 74.5072946220148*x0 * x0*x2*x4 * x4 * x4 + 122.664790351498*x0 * x0*x2*x4 * x4 + 126.083940433923*x0 * x0*x2*x4 + 76.0087588254326*x0 * x0*x2 + 45.8949973835204*x0 * x0*x3 * x3 * x3 * x3 + 74.8487962679455*x0 * x0*x3 * x3 * x3*x4 + 74.8233308213307*x0 * x0*x3 * x3 * x3 + 96.0366950568113*x0 * x0*x3 * x3*x4 * x4 + 122.217459977495*x0 * x0*x3 * x3*x4 + 97.0194834259669*x0 * x0*x3 * x3 + 80.8862047598389*x0 * x0*x3*x4 * x4 * x4 + 122.819322139687*x0 * x0*x3*x4 * x4 + 126.199487131643*x0 * x0*x3*x4 + 78.4834700664378*x0 * x0*x3 + 43.2944947782968*x0 * x0*x4 * x4 * x4 * x4 + 72.0117861175278*x0 * x0*x4 * x4 * x4 + 93.2098996402325*x0 * x0*x4 * x4 + 78.6966791122026*x0 * x0*x4 + 43.2742535748791*x0 * x0 + 30.2285279430974*x0*x1 * x1 * x1 * x1 * x1 + 57.1500621370424*x0*x1 * x1 * x1 * x1*x2 + 63.1965852507891*x0*x1 * x1 * x1 * x1*x3 + 57.3693674020614*x0*x1 * x1 * x1 * x1*x4 + 56.4933966671803*x0*x1 * x1 * x1 * x1 + 91.4110547042097*x0*x1 * x1 * x1*x2 * x2 + 116.852939030184*x0*x1 * x1 * x1*x2*x3 + 106.828105219246*x0*x1 * x1 * x1*x2*x4 + 105.188781032013*x0*x1 * x1 * x1*x2 + 89.2223451062589*x0*x1 * x1 * x1*x3 * x3 + 119.008585223615*x0*x1 * x1 * x1*x3*x4 + 115.661834742634*x0*x1 * x1 * x1*x3 + 80.2767209875915*x0*x1 * x1 * x1*x4 * x4 + 106.245485558269*x0*x1 * x1 * x1*x4 + 91.8429273487847*x0*x1 * x1 * x1 + 82.4484346964293*x0*x1 * x1*x2 * x2 * x2 + 143.377625341738*x0*x1 * x1*x2 * x2*x3 + 136.45342008802*x0*x1 * x1*x2 * x2*x4 + 134.36587748226*x0*x1 * x1*x2 * x2 + 142.072182193797*x0*x1 * x1*x2*x3 * x3 + 186.574948699713*x0*x1 * x1*x2*x3*x4 + 186.742683050578*x0*x1 * x1*x2*x3 + 122.347094746916*x0*x1 * x1*x2*x4 * x4 + 188.606059209815*x0*x1 * x1*x2*x4 + 134.182525546461*x0*x1 * x1*x2 + 86.025306254075*x0*x1 * x1*x3 * x3 * x3 + 137.578178286992*x0*x1 * x1*x3 * x3*x4 + 137.208118832132*x0*x1 * x1*x3 * x3 + 136.394442284198*x0*x1 * x1*x3*x4 * x4 + 193.127225424425*x0*x1 * x1*x3*x4 + 145.194788335287*x0*x1 * x1*x3 + 77.8618377655025*x0*x1 * x1*x4 * x4 * x4 + 121.811757563376*x0*x1 * x1*x4 * x4 + 140.723066697271*x0*x1 * x1*x4 + 89.7129217124531*x0*x1 * x1 + 55.818948942906*x0*x1*x2 * x2 * x2 * x2 + 117.266679255275*x0*x1*x2 * x2 * x2*x3 + 112.170342610208*x0*x1*x2 * x2 * x2*x4 + 106.924538946203*x0*x1*x2 * x2 * x2 + 145.560680248418*x0*x1*x2 * x2*x3 * x3 + 195.828829702242*x0*x1*x2 * x2*x3*x4 + 192.163820458417*x0*x1*x2 * x2*x3 + 129.9876041554*x0*x1*x2 * x2*x4 * x4 + 187.513419029236*x0*x1*x2 * x2*x4 + 134.021910255193*x0*x1*x2 * x2 + 113.660108684179*x0*x1*x2*x3 * x3 * x3 + 196.746638519709*x0*x1*x2*x3 * x3*x4 + 190.314152125296*x0*x1*x2*x3 * x3 + 187.793950088353*x0*x1*x2*x3*x4 * x4 + 278.027680891607*x0*x1*x2*x3*x4 + 183.221712093946*x0*x1*x2*x3 + 104.03532004166*x0*x1*x2*x4 * x4 * x4 + 176.902069885091*x0*x1*x2*x4 * x4 + 186.948322271752*x0*x1*x2*x4 + 108.909474628982*x0*x1*x2 + 58.748461605305*x0*x1*x3 * x3 * x3 * x3 + 114.680418923468*x0*x1*x3 * x3 * x3*x4 + 110.842472212967*x0*x1*x3 * x3 * x3 + 136.440594864862*x0*x1*x3 * x3*x4 * x4 + 186.918686712759*x0*x1*x3 * x3*x4 + 146.021963161777*x0*x1*x3 * x3 + 112.96079162699*x0*x1*x3*x4 * x4 * x4 + 182.055749261869*x0*x1*x3*x4 * x4 + 197.524991689367*x0*x1*x3*x4 + 115.386912634937*x0*x1*x3 + 50.9798814218259*x0*x1*x4 * x4 * x4 * x4 + 101.933304026276*x0*x1*x4 * x4 * x4 + 130.170813277793*x0*x1*x4 * x4 + 109.36325764448*x0*x1*x4 + 58.7011982741964*x0*x1 + 31.9343350141583*x0*x2 * x2 * x2 * x2 * x2 + 60.1344604759182*x0*x2 * x2 * x2 * x2*x3 + 56.126721811829*x0*x2 * x2 * x2 * x2*x4 + 55.0013658420324*x0*x2 * x2 * x2 * x2 + 92.6630830748024*x0*x2 * x2 * x2*x3 * x3 + 111.470457776082*x0*x2 * x2 * x2*x3*x4 + 107.744843896108*x0*x2 * x2 * x2*x3 + 78.5729933804804*x0*x2 * x2 * x2*x4 * x4 + 109.754498740039*x0*x2 * x2 * x2*x4 + 78.7622284691879*x0*x2 * x2 * x2 + 92.1916499249827*x0*x2 * x2*x3 * x3 * x3 + 137.648045173381*x0*x2 * x2*x3 * x3*x4 + 136.908075325241*x0*x2 * x2*x3 * x3 + 131.39918747257*x0*x2 * x2*x3*x4 * x4 + 185.608163348351*x0*x2 * x2*x3*x4 + 139.154172439687*x0*x2 * x2*x3 + 80.8451800812413*x0*x2 * x2*x4 * x4 * x4 + 126.287828321381*x0*x2 * x2*x4 * x4 + 134.27012227126*x0*x2 * x2*x4 + 80.4518610784754*x0*x2 * x2 + 59.6939120105245*x0*x2*x3 * x3 * x3 * x3 + 99.7956128364811*x0*x2*x3 * x3 * x3*x4 + 106.547412830376*x0*x2*x3 * x3 * x3 + 132.004641275427*x0*x2*x3 * x3*x4 * x4 + 179.245923090983*x0*x2*x3 * x3*x4 + 137.601254056961*x0*x2*x3 * x3 + 102.543389690246*x0*x2*x3*x4 * x4 * x4 + 171.794846324236*x0*x2*x3*x4 * x4 + 178.305800396286*x0*x2*x3*x4 + 105.571974415601*x0*x2*x3 + 47.3963567396214*x0*x2*x4 * x4 * x4 * x4 + 104.142694065865*x0*x2*x4 * x4 * x4 + 120.849433662045*x0*x2*x4 * x4 + 109.247440345884*x0*x2*x4 + 50.4948299220086*x0*x2 + 27.557629677745*x0*x3 * x3 * x3 * x3 * x3 + 47.4216630443409*x0*x3 * x3 * x3 * x3*x4 + 52.8154006404801*x0*x3 * x3 * x3 * x3 + 78.8936767528236*x0*x3 * x3 * x3*x4 * x4 + 102.603259691665*x0*x3 * x3 * x3*x4 + 80.671241485203*x0*x3 * x3 * x3 + 78.7689234376988*x0*x3 * x3*x4 * x4 * x4 + 121.603601389306*x0*x3 * x3*x4 * x4 + 130.493176472218*x0*x3 * x3*x4 + 81.8737476679143*x0*x3 * x3 + 53.6836575214609*x0*x3*x4 * x4 * x4 * x4 + 97.9141123815829*x0*x3*x4 * x4 * x4 + 130.364849809832*x0*x3*x4 * x4 + 106.44953471735*x0*x3*x4 + 56.6259998955395*x0*x3 + 26.5045738490901*x0*x4 * x4 * x4 * x4 * x4 + 50.7449860583468*x0*x4 * x4 * x4 * x4 + 79.8427746109956*x0*x4 * x4 * x4 + 74.8652602830288*x0*x4 * x4 + 56.2129575682292*x0*x4 + 28.7399031773645*x0 + 21.0154738965798*x1 * x1 * x1 * x1 * x1 * x1 + 28.328758736811*x1 * x1 * x1 * x1 * x1*x2 + 30.485063566434*x1 * x1 * x1 * x1 * x1*x3 + 29.3348261806558*x1 * x1 * x1 * x1 * x1*x4 + 29.4571396317545*x1 * x1 * x1 * x1 * x1 + 41.7965812758698*x1 * x1 * x1 * x1*x2 * x2 + 54.9085044306115*x1 * x1 * x1 * x1*x2*x3 + 56.5491425385834*x1 * x1 * x1 * x1*x2*x4 + 52.2774883782841*x1 * x1 * x1 * x1*x2 + 49.1929282148169*x1 * x1 * x1 * x1*x3 * x3 + 64.1918281508371*x1 * x1 * x1 * x1*x3*x4 + 56.6396770593081*x1 * x1 * x1 * x1*x3 + 45.3897002176486*x1 * x1 * x1 * x1*x4 * x4 + 54.8160044130701*x1 * x1 * x1 * x1*x4 + 51.0734627954933*x1 * x1 * x1 * x1 + 54.778307116136*x1 * x1 * x1*x2 * x2 * x2 + 77.798230755513*x1 * x1 * x1*x2 * x2*x3 + 80.2170574232394*x1 * x1 * x1*x2 * x2*x4 + 71.644555829067*x1 * x1 * x1*x2 * x2 + 81.8316397585749*x1 * x1 * x1*x2*x3 * x3 + 109.692416978286*x1 * x1 * x1*x2*x3*x4 + 104.445540531938*x1 * x1 * x1*x2*x3 + 75.0050030692394*x1 * x1 * x1*x2*x4 * x4 + 109.469731529038*x1 * x1 * x1*x2*x4 + 77.7075551540971*x1 * x1 * x1*x2 + 57.1373367749578*x1 * x1 * x1*x3 * x3 * x3 + 86.9531412598973*x1 * x1 * x1*x3 * x3*x4 + 85.4260394809162*x1 * x1 * x1*x3 * x3 + 91.3561100478657*x1 * x1 * x1*x3*x4 * x4 + 117.728426932151*x1 * x1 * x1*x3*x4 + 88.4550384014501*x1 * x1 * x1*x3 + 58.4517381754843*x1 * x1 * x1*x4 * x4 * x4 + 76.5344232295705*x1 * x1 * x1*x4 * x4 + 82.3219386205679*x1 * x1 * x1*x4 + 59.9445840639505*x1 * x1 * x1 + 40.1764476132377*x1 * x1*x2 * x2 * x2 * x2 + 71.3931949495251*x1 * x1*x2 * x2 * x2*x3 + 76.8809204745158*x1 * x1*x2 * x2 * x2*x4 + 74.7484090236938*x1 * x1*x2 * x2 * x2 + 95.2784294208322*x1 * x1*x2 * x2*x3 * x3 + 135.294793809249*x1 * x1*x2 * x2*x3*x4 + 123.282094600859*x1 * x1*x2 * x2*x3 + 88.8199916040603*x1 * x1*x2 * x2*x4 * x4 + 125.957849489192*x1 * x1*x2 * x2*x4 + 86.3372353187417*x1 * x1*x2 * x2 + 81.101780938203*x1 * x1*x2*x3 * x3 * x3 + 140.540340067152*x1 * x1*x2*x3 * x3*x4 + 132.646234469514*x1 * x1*x2*x3 * x3 + 136.885365185056*x1 * x1*x2*x3*x4 * x4 + 192.608263295409*x1 * x1*x2*x3*x4 + 128.964259706551*x1 * x1*x2*x3 + 78.0956207639684*x1 * x1*x2*x4 * x4 * x4 + 121.850457581537*x1 * x1*x2*x4 * x4 + 130.012363731881*x1 * x1*x2*x4 + 74.1800050532978*x1 * x1*x2 + 48.9583683383021*x1 * x1*x3 * x3 * x3 * x3 + 85.0051208926257*x1 * x1*x3 * x3 * x3*x4 + 80.4522983979787*x1 * x1*x3 * x3 * x3 + 103.759714707954*x1 * x1*x3 * x3*x4 * x4 + 140.804743776749*x1 * x1*x3 * x3*x4 + 104.950984265266*x1 * x1*x3 * x3 + 90.3095702475097*x1 * x1*x3*x4 * x4 * x4 + 134.499977016009*x1 * x1*x3*x4 * x4 + 148.822195470287*x1 * x1*x3*x4 + 85.8160825850584*x1 * x1*x3 + 43.8961053932367*x1 * x1*x4 * x4 * x4 * x4 + 72.2595906961074*x1 * x1*x4 * x4 * x4 + 95.3212831552811*x1 * x1*x4 * x4 + 86.383272815794*x1 * x1*x4 + 49.132620680261*x1 * x1 + 25.3222450607533*x1*x2 * x2 * x2 * x2 * x2 + 49.8812940878273*x1*x2 * x2 * x2 * x2*x3 + 51.3907149592736*x1*x2 * x2 * x2 * x2*x4 + 48.6942764974246*x1*x2 * x2 * x2 * x2 + 78.4275382884967*x1*x2 * x2 * x2*x3 * x3 + 111.023639626207*x1*x2 * x2 * x2*x3*x4 + 103.228111258797*x1*x2 * x2 * x2*x3 + 74.6173092697853*x1*x2 * x2 * x2*x4 * x4 + 106.372140464899*x1*x2 * x2 * x2*x4 + 74.805391334478*x1*x2 * x2 * x2 + 79.8421028405298*x1*x2 * x2*x3 * x3 * x3 + 141.998639107384*x1*x2 * x2*x3 * x3*x4 + 124.774358537544*x1*x2 * x2*x3 * x3 + 136.003480060188*x1*x2 * x2*x3*x4 * x4 + 185.461006911516*x1*x2 * x2*x3*x4 + 128.676929615521*x1*x2 * x2*x3 + 75.7237305311776*x1*x2 * x2*x4 * x4 * x4 + 118.729336798492*x1*x2 * x2*x4 * x4 + 134.998101444327*x1*x2 * x2*x4 + 72.2276188202502*x1*x2 * x2 + 55.2573698621736*x1*x2*x3 * x3 * x3 * x3 + 115.067409261414*x1*x2*x3 * x3 * x3*x4 + 108.243683954675*x1*x2*x3 * x3 * x3 + 141.218872122607*x1*x2*x3 * x3*x4 * x4 + 199.600347992451*x1*x2*x3 * x3*x4 + 131.592214709913*x1*x2*x3 * x3 + 113.040082608177*x1*x2*x3*x4 * x4 * x4 + 188.081885768665*x1*x2*x3*x4 * x4 + 197.420429620096*x1*x2*x3*x4 + 106.937115387237*x1*x2*x3 + 53.0086528419049*x1*x2*x4 * x4 * x4 * x4 + 99.9046839449502*x1*x2*x4 * x4 * x4 + 132.626184160239*x1*x2*x4 * x4 + 108.598718499497*x1*x2*x4 + 51.2821644071659*x1*x2 + 27.6031695125164*x1*x3 * x3 * x3 * x3 * x3 + 58.0953039404097*x1*x3 * x3 * x3 * x3*x4 + 54.9576357783791*x1*x3 * x3 * x3 * x3 + 85.6787614415615*x1*x3 * x3 * x3*x4 * x4 + 108.375807663757*x1*x3 * x3 * x3*x4 + 87.5659116047517*x1*x3 * x3 * x3 + 91.7676810134892*x1*x3 * x3*x4 * x4 * x4 + 135.386919968517*x1*x3 * x3*x4 * x4 + 149.888564454562*x1*x3 * x3*x4 + 85.9383699235828*x1*x3 * x3 + 60.902828039467*x1*x3*x4 * x4 * x4 * x4 + 109.74574094079*x1*x3*x4 * x4 * x4 + 149.534900000388*x1*x3*x4 * x4 + 123.560751315083*x1*x3*x4 + 65.1296240731069*x1*x3 + 26.3557784479446*x1*x4 * x4 * x4 * x4 * x4 + 51.2386417219957*x1*x4 * x4 * x4 * x4 + 80.9723161476778*x1*x4 * x4 * x4 + 80.8990847042815*x1*x4 * x4 + 59.5319423636729*x1*x4 + 31.3841621764057*x1 + 16.8128202249121*x2 * x2 * x2 * x2 * x2 * x2 + 27.3313372775822*x2 * x2 * x2 * x2 * x2*x3 + 27.8947898096518*x2 * x2 * x2 * x2 * x2*x4 + 25.7766813909768*x2 * x2 * x2 * x2 * x2 + 47.7765857289616*x2 * x2 * x2 * x2*x3 * x3 + 57.1259317795841*x2 * x2 * x2 * x2*x3*x4 + 49.3557085866595*x2 * x2 * x2 * x2*x3 + 40.8306321739047*x2 * x2 * x2 * x2*x4 * x4 + 52.7048033939946*x2 * x2 * x2 * x2*x4 + 41.1333938241743*x2 * x2 * x2 * x2 + 52.9592173369549*x2 * x2 * x2*x3 * x3 * x3 + 81.6350828393623*x2 * x2 * x2*x3 * x3*x4 + 76.626467672947*x2 * x2 * x2*x3 * x3 + 81.4381976353856*x2 * x2 * x2*x3*x4 * x4 + 113.171195320613*x2 * x2 * x2*x3*x4 + 76.3374415997723*x2 * x2 * x2*x3 + 51.2644671426003*x2 * x2 * x2*x4 * x4 * x4 + 72.7593102117923*x2 * x2 * x2*x4 * x4 + 79.2029829777565*x2 * x2 * x2*x4 + 52.095224814081*x2 * x2 * x2 + 42.9485634097084*x2 * x2*x3 * x3 * x3 * x3 + 80.1623471952726*x2 * x2*x3 * x3 * x3*x4 + 77.2512136376324*x2 * x2*x3 * x3 * x3 + 99.4984339351319*x2 * x2*x3 * x3*x4 * x4 + 135.499907701254*x2 * x2*x3 * x3*x4 + 98.0443021926758*x2 * x2*x3 * x3 + 85.9328882381566*x2 * x2*x3*x4 * x4 * x4 + 133.02825400838*x2 * x2*x3*x4 * x4 + 127.943979738331*x2 * x2*x3*x4 + 79.9441355131653*x2 * x2*x3 + 43.3002081742995*x2 * x2*x4 * x4 * x4 * x4 + 69.9987181973863*x2 * x2*x4 * x4 * x4 + 85.1975919009853*x2 * x2*x4 * x4 + 80.3142279996164*x2 * x2*x4 + 36.4191973877932*x2 * x2 + 28.7599889552712*x2*x3 * x3 * x3 * x3 * x3 + 53.5241292200144*x2*x3 * x3 * x3 * x3*x4 + 54.3333134074433*x2*x3 * x3 * x3 * x3 + 77.8918379198469*x2*x3 * x3 * x3*x4 * x4 + 105.985962085192*x2*x3 * x3 * x3*x4 + 77.9149615997253*x2*x3 * x3 * x3 + 80.7742875554148*x2*x3 * x3*x4 * x4 * x4 + 128.299891398657*x2*x3 * x3*x4 * x4 + 135.649552913*x2*x3 * x3*x4 + 80.1935297526055*x2*x3 * x3 + 55.5233383928525*x2*x3*x4 * x4 * x4 * x4 + 105.497615946118*x2*x3*x4 * x4 * x4 + 129.229188459953*x2*x3*x4 * x4 + 112.936005212922*x2*x3*x4 + 48.9111579700852*x2*x3 + 25.4033828320723*x2*x4 * x4 * x4 * x4 * x4 + 48.6397125650612*x2*x4 * x4 * x4 * x4 + 69.5384116864561*x2*x4 * x4 * x4 + 70.0859291794861*x2*x4 * x4 + 55.6418352666168*x2*x4 + 22.2963339791325*x2 + 16.4425652019369*x3 * x3 * x3 * x3 * x3 * x3 + 23.6392173798374*x3 * x3 * x3 * x3 * x3*x4 + 26.7717907465259*x3 * x3 * x3 * x3 * x3 + 42.3935679578474*x3 * x3 * x3 * x3*x4 * x4 + 50.8158750657496*x3 * x3 * x3 * x3*x4 + 46.7582197305211*x3 * x3 * x3 * x3 + 54.4073522013381*x3 * x3 * x3*x4 * x4 * x4 + 77.7592864796241*x3 * x3 * x3*x4 * x4 + 83.8010697666859*x3 * x3 * x3*x4 + 53.304863832088*x3 * x3 * x3 + 44.6378047623401*x3 * x3*x4 * x4 * x4 * x4 + 81.8488081526951*x3 * x3*x4 * x4 * x4 + 98.8885847898823*x3 * x3*x4 * x4 + 82.132593563991*x3 * x3*x4 + 46.5299853744964*x3 * x3 + 32.9595061097587*x3*x4 * x4 * x4 * x4 * x4 + 55.6090774937464*x3*x4 * x4 * x4 * x4 + 86.047847307426*x3*x4 * x4 * x4 + 84.8348100569186*x3*x4 * x4 + 59.6301743281461*x3*x4 + 29.9125016545002*x3 + 19.5074196903042*x4 * x4 * x4 * x4 * x4 * x4 + 27.0455497615273*x4 * x4 * x4 * x4 * x4 + 42.8567953508487*x4 * x4 * x4 * x4 + 53.4722227182582*x4 * x4 * x4 + 44.024525396468*x4 * x4 + 27.2097850612794*x4 + 18.8850330223704 >= 0. diff --git a/examples/valid/poly_v6_d1_s49_2.ae b/examples/valid/poly_v6_d1_s49_2.ae new file mode 100644 index 000000000..4a4cd9127 --- /dev/null +++ b/examples/valid/poly_v6_d1_s49_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5:real. + 2.7576025723271*x0 * x0 + 2.9992905375284*x0*x1 + 2.4368630473721*x0*x2 + 2.82160493870816*x0*x3 + 2.47133991299705*x0*x4 + 2.28976960816567*x0*x5 + 4.50111971898702*x0 + 0.882111213518793*x1 * x1 + 1.50830276143555*x1*x2 + 1.33261168739557*x1*x3 + 1.75407379666994*x1*x4 + 1.18151766847123*x1*x5 + 2.67890679924787*x1 + 0.972048481013296*x2 * x2 + 1.67776953248508*x2*x3 + 1.8496306369131*x2*x4 + 1.35172201148188*x2*x5 + 3.00727193989135*x2 + 1.38773739207487*x3 * x3 + 0.937265024810617*x3*x4 + 1.89416058785373*x3*x5 + 2.75079841307178*x3 + 1.2337133950781*x4 * x4 + 1.06600500600226*x4*x5 + 3.01237237359476*x4 + 0.819040971006404*x5 * x5 + 2.56256993258945*x5 + 2.62607499413263 >= 0. diff --git a/examples/valid/poly_v6_d2_s784.ae b/examples/valid/poly_v6_d2_s784.ae new file mode 100644 index 000000000..b6bb8a641 --- /dev/null +++ b/examples/valid/poly_v6_d2_s784.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5:real. + 5.86031816868799*x0 * x0 * x0 * x0 + 10.0445042202375*x0 * x0 * x0*x1 + 10.9234279333175*x0 * x0 * x0*x2 + 9.21818689166382*x0 * x0 * x0*x3 + 10.3974727214757*x0 * x0 * x0*x4 + 11.9067080471222*x0 * x0 * x0*x5 + 12.0488230950089*x0 * x0 * x0 + 16.3261693437773*x0 * x0*x1 * x1 + 23.8176001495912*x0 * x0*x1*x2 + 19.1146525108634*x0 * x0*x1*x3 + 21.2853757312381*x0 * x0*x1*x4 + 26.1258119852457*x0 * x0*x1*x5 + 20.3394830672579*x0 * x0*x1 + 19.5936948144521*x0 * x0*x2 * x2 + 20.9642952525019*x0 * x0*x2*x3 + 23.443090575155*x0 * x0*x2*x4 + 26.4925058873135*x0 * x0*x2*x5 + 25.574949470593*x0 * x0*x2 + 16.6289825437929*x0 * x0*x3 * x3 + 19.036770889186*x0 * x0*x3*x4 + 21.5319257236697*x0 * x0*x3*x5 + 21.7442645605602*x0 * x0*x3 + 20.5859293294837*x0 * x0*x4 * x4 + 24.1770205149374*x0 * x0*x4*x5 + 19.5215263879677*x0 * x0*x4 + 20.5316786049473*x0 * x0*x5 * x5 + 27.304066745822*x0 * x0*x5 + 21.1337460766281*x0 * x0 + 10.0573569745534*x0*x1 * x1 * x1 + 24.0355020183266*x0*x1 * x1*x2 + 18.4778099983884*x0*x1 * x1*x3 + 21.568364926508*x0*x1 * x1*x4 + 26.7333252054069*x0*x1 * x1*x5 + 19.5037323214134*x0*x1 * x1 + 27.148280026146*x0*x1*x2 * x2 + 34.7113816310777*x0*x1*x2*x3 + 37.5317847680633*x0*x1*x2*x4 + 36.5930057664016*x0*x1*x2*x5 + 39.3549002515214*x0*x1*x2 + 21.0962392040275*x0*x1*x3 * x3 + 30.6337534585872*x0*x1*x3*x4 + 32.6457316124035*x0*x1*x3*x5 + 30.4519861756274*x0*x1*x3 + 28.4632082973427*x0*x1*x4 * x4 + 41.8897615365281*x0*x1*x4*x5 + 31.7240642197027*x0*x1*x4 + 27.8923632033226*x0*x1*x5 * x5 + 34.5063796113249*x0*x1*x5 + 24.6925893411748*x0*x1 + 12.7621070175688*x0*x2 * x2 * x2 + 23.0579990070403*x0*x2 * x2*x3 + 24.1550970654283*x0*x2 * x2*x4 + 26.4079879079085*x0*x2 * x2*x5 + 28.4611501884562*x0*x2 * x2 + 25.5144681059778*x0*x2*x3 * x3 + 36.3230029725205*x0*x2*x3*x4 + 36.7838937179485*x0*x2*x3*x5 + 39.0054886148979*x0*x2*x3 + 30.2895691019549*x0*x2*x4 * x4 + 42.1228782908846*x0*x2*x4*x5 + 39.3103281847522*x0*x2*x4 + 25.82854612651*x0*x2*x5 * x5 + 41.4037013298012*x0*x2*x5 + 28.705471305905*x0*x2 + 10.1826279322267*x0*x3 * x3 * x3 + 19.5127718883533*x0*x3 * x3*x4 + 24.4420218545229*x0*x3 * x3*x5 + 23.7788090647545*x0*x3 * x3 + 25.8218340726445*x0*x3*x4 * x4 + 32.8168461666336*x0*x3*x4*x5 + 34.1258585724089*x0*x3*x4 + 27.4700280705904*x0*x3*x5 * x5 + 38.1222779755206*x0*x3*x5 + 24.9292225210153*x0*x3 + 14.2445079073731*x0*x4 * x4 * x4 + 30.9705879886709*x0*x4 * x4*x5 + 25.6880353262116*x0*x4 * x4 + 27.61138343335*x0*x4*x5 * x5 + 34.6398837828367*x0*x4*x5 + 25.1736713309665*x0*x4 + 17.8088622253807*x0*x5 * x5 * x5 + 27.5362499655476*x0*x5 * x5 + 29.6849171165959*x0*x5 + 14.3822493382879*x0 + 7.87461656362921*x1 * x1 * x1 * x1 + 13.8873407080484*x1 * x1 * x1*x2 + 11.2486922180822*x1 * x1 * x1*x3 + 13.0754209531948*x1 * x1 * x1*x4 + 11.2295083240694*x1 * x1 * x1*x5 + 9.20020694819347*x1 * x1 * x1 + 18.870065099525*x1 * x1*x2 * x2 + 24.344897558003*x1 * x1*x2*x3 + 27.6609672086599*x1 * x1*x2*x4 + 22.004604499264*x1 * x1*x2*x5 + 26.7030789079984*x1 * x1*x2 + 18.7487618074356*x1 * x1*x3 * x3 + 24.3538322493351*x1 * x1*x3*x4 + 20.0922306601437*x1 * x1*x3*x5 + 20.0302734508443*x1 * x1*x3 + 23.0355161051012*x1 * x1*x4 * x4 + 25.9201178858606*x1 * x1*x4*x5 + 20.4916927186938*x1 * x1*x4 + 21.4724970781406*x1 * x1*x5 * x5 + 22.3142459631264*x1 * x1*x5 + 20.2268364656528*x1 * x1 + 12.078329023628*x1*x2 * x2 * x2 + 25.2947015706429*x1*x2 * x2*x3 + 26.6241240944005*x1*x2 * x2*x4 + 24.110600279613*x1*x2 * x2*x5 + 25.4700180740351*x1*x2 * x2 + 26.4576752597774*x1*x2*x3 * x3 + 40.9840995236279*x1*x2*x3*x4 + 34.3980144114114*x1*x2*x3*x5 + 35.7812429787751*x1*x2*x3 + 33.2606059651224*x1*x2*x4 * x4 + 39.5762430749528*x1*x2*x4*x5 + 39.2426322444753*x1*x2*x4 + 27.6203373890286*x1*x2*x5 * x5 + 35.4596855963695*x1*x2*x5 + 26.5952447387279*x1*x2 + 10.5154431284816*x1*x3 * x3 * x3 + 22.0545713742444*x1*x3 * x3*x4 + 21.3062176704264*x1*x3 * x3*x5 + 21.13581950129*x1*x3 * x3 + 24.6608279941017*x1*x3*x4 * x4 + 32.2768762163131*x1*x3*x4*x5 + 31.0187909293194*x1*x3*x4 + 22.4516029280961*x1*x3*x5 * x5 + 33.7072173211508*x1*x3*x5 + 21.8269089707572*x1*x3 + 16.536675879778*x1*x4 * x4 * x4 + 30.6437844688019*x1*x4 * x4*x5 + 23.0770755944284*x1*x4 * x4 + 30.5133498462169*x1*x4*x5 * x5 + 30.0577387533757*x1*x4*x5 + 23.1413615107425*x1*x4 + 13.5638853598687*x1*x5 * x5 * x5 + 22.6095081983323*x1*x5 * x5 + 22.7919755320749*x1*x5 + 11.4237786582135*x1 + 7.46935514129713*x2 * x2 * x2 * x2 + 12.767775988592*x2 * x2 * x2*x3 + 13.3687112935645*x2 * x2 * x2*x4 + 9.69135094269477*x2 * x2 * x2*x5 + 14.1478989000479*x2 * x2 * x2 + 20.6555001183122*x2 * x2*x3 * x3 + 26.8368815271906*x2 * x2*x3*x4 + 23.2871670005538*x2 * x2*x3*x5 + 27.4963358059005*x2 * x2*x3 + 25.2007666765977*x2 * x2*x4 * x4 + 24.4119087689619*x2 * x2*x4*x5 + 26.9619484498422*x2 * x2*x4 + 20.0805730394685*x2 * x2*x5 * x5 + 22.3167038020759*x2 * x2*x5 + 22.9964784746292*x2 * x2 + 13.6876173058198*x2*x3 * x3 * x3 + 25.7474672809473*x2*x3 * x3*x4 + 23.8839018268153*x2*x3 * x3*x5 + 27.4391226142451*x2*x3 * x3 + 29.2799475500154*x2*x3*x4 * x4 + 37.7361063103901*x2*x3*x4*x5 + 39.1631077502095*x2*x3*x4 + 25.8137744208931*x2*x3*x5 * x5 + 36.8819901850691*x2*x3*x5 + 29.28661066195*x2*x3 + 18.718224766906*x2*x4 * x4 * x4 + 27.5796255489115*x2*x4 * x4*x5 + 29.1837301591139*x2*x4 * x4 + 26.1925788348237*x2*x4*x5 * x5 + 38.0702928435482*x2*x4*x5 + 30.1949364025301*x2*x4 + 11.4615979242468*x2*x5 * x5 * x5 + 28.2592956933597*x2*x5 * x5 + 26.0483561869818*x2*x5 + 15.2486075987619*x2 + 7.63188873684916*x3 * x3 * x3 * x3 + 9.65262386938229*x3 * x3 * x3*x4 + 11.5640218748619*x3 * x3 * x3*x5 + 11.5021019165197*x3 * x3 * x3 + 22.7289758199085*x3 * x3*x4 * x4 + 20.7423461029347*x3 * x3*x4*x5 + 20.5693091976449*x3 * x3*x4 + 19.1881881069334*x3 * x3*x5 * x5 + 24.0237242540777*x3 * x3*x5 + 21.2727106910112*x3 * x3 + 12.1837556083709*x3*x4 * x4 * x4 + 25.0904244826005*x3*x4 * x4*x5 + 24.3671799743538*x3*x4 * x4 + 22.839723987841*x3*x4*x5 * x5 + 30.8640410379482*x3*x4*x5 + 24.1131857178561*x3*x4 + 12.488935981651*x3*x5 * x5 * x5 + 23.1660355061079*x3*x5 * x5 + 22.8957534931376*x3*x5 + 13.6879917807971*x3 + 11.1329589416259*x4 * x4 * x4 * x4 + 16.1450139890101*x4 * x4 * x4*x5 + 13.7983997160686*x4 * x4 * x4 + 25.6458107844663*x4 * x4*x5 * x5 + 25.2086489789986*x4 * x4*x5 + 23.7622428423042*x4 * x4 + 15.3439046818726*x4*x5 * x5 * x5 + 24.7472712836825*x4*x5 * x5 + 23.0248478871392*x4*x5 + 11.1132629079304*x4 + 10.3092024648666*x5 * x5 * x5 * x5 + 11.4655528134262*x5 * x5 * x5 + 22.6744776454817*x5 * x5 + 13.2415159481367*x5 + 9.4981906837531 >= 0. diff --git a/examples/valid/poly_v6_d2_s784_2.ae b/examples/valid/poly_v6_d2_s784_2.ae new file mode 100644 index 000000000..8c69f154d --- /dev/null +++ b/examples/valid/poly_v6_d2_s784_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5:real. + 6.50099875863575*x0 * x0 * x0 * x0 + 9.91782209776492*x0 * x0 * x0*x1 + 9.63917129683571*x0 * x0 * x0*x2 + 13.1793527745008*x0 * x0 * x0*x3 + 12.3549841514973*x0 * x0 * x0*x4 + 11.2804627579735*x0 * x0 * x0*x5 + 11.4809782733136*x0 * x0 * x0 + 17.8766909317415*x0 * x0*x1 * x1 + 20.4907492069843*x0 * x0*x1*x2 + 24.7429472740863*x0 * x0*x1*x3 + 24.7247660135498*x0 * x0*x1*x4 + 22.7278507301373*x0 * x0*x1*x5 + 26.9769093441552*x0 * x0*x1 + 16.4358921310715*x0 * x0*x2 * x2 + 22.5280164859649*x0 * x0*x2*x3 + 24.1129731390285*x0 * x0*x2*x4 + 21.1266532992176*x0 * x0*x2*x5 + 24.9591179508602*x0 * x0*x2 + 20.9834829115975*x0 * x0*x3 * x3 + 25.4218713159594*x0 * x0*x3*x4 + 26.9670122620368*x0 * x0*x3*x5 + 27.3396246458677*x0 * x0*x3 + 22.8213397038805*x0 * x0*x4 * x4 + 27.0568906006893*x0 * x0*x4*x5 + 28.2691928989823*x0 * x0*x4 + 20.5659132766161*x0 * x0*x5 * x5 + 22.808973139529*x0 * x0*x5 + 20.8929163704691*x0 * x0 + 11.299772620032*x0*x1 * x1 * x1 + 21.7889981579145*x0*x1 * x1*x2 + 24.0738591830938*x0*x1 * x1*x3 + 22.5715986010861*x0*x1 * x1*x4 + 24.2418970202368*x0*x1 * x1*x5 + 26.7794382177355*x0*x1 * x1 + 23.1336276312708*x0*x1*x2 * x2 + 38.4982082859602*x0*x1*x2*x3 + 36.4550132347675*x0*x1*x2*x4 + 36.9892034967186*x0*x1*x2*x5 + 36.2835932126866*x0*x1*x2 + 28.2507238834444*x0*x1*x3 * x3 + 36.6574712478324*x0*x1*x3*x4 + 42.9853188272698*x0*x1*x3*x5 + 42.3323788250311*x0*x1*x3 + 27.8780204479561*x0*x1*x4 * x4 + 40.6760361439996*x0*x1*x4*x5 + 42.2637478985166*x0*x1*x4 + 25.2903804589564*x0*x1*x5 * x5 + 38.1555839516748*x0*x1*x5 + 28.1068614267724*x0*x1 + 12.8666013510115*x0*x2 * x2 * x2 + 26.5894784984544*x0*x2 * x2*x3 + 24.9070992095514*x0*x2 * x2*x4 + 23.8435922764031*x0*x2 * x2*x5 + 25.3243923777719*x0*x2 * x2 + 26.0935887846711*x0*x2*x3 * x3 + 42.4197181029645*x0*x2*x3*x4 + 41.1505793893774*x0*x2*x3*x5 + 42.2777617094522*x0*x2*x3 + 29.1649982515448*x0*x2*x4 * x4 + 38.0607943831583*x0*x2*x4*x5 + 41.3628611595755*x0*x2*x4 + 25.6161426810017*x0*x2*x5 * x5 + 36.9473241505284*x0*x2*x5 + 25.2218025337764*x0*x2 + 15.4841119605924*x0*x3 * x3 * x3 + 27.9194377894922*x0*x3 * x3*x4 + 29.8975623910893*x0*x3 * x3*x5 + 33.0673505705229*x0*x3 * x3 + 30.512570219495*x0*x3*x4 * x4 + 46.2461596965115*x0*x3*x4*x5 + 40.7309409563031*x0*x3*x4 + 32.4732833454328*x0*x3*x5 * x5 + 39.7584390398201*x0*x3*x5 + 31.7632467709279*x0*x3 + 15.9873350487337*x0*x4 * x4 * x4 + 30.2927175674004*x0*x4 * x4*x5 + 30.3450029777146*x0*x4 * x4 + 29.971699422504*x0*x4*x5 * x5 + 41.2610627235262*x0*x4*x5 + 27.8558377251552*x0*x4 + 13.6176920167796*x0*x5 * x5 * x5 + 27.6560431986813*x0*x5 * x5 + 22.9815611221487*x0*x5 + 13.853917780624*x0 + 6.50608635400641*x1 * x1 * x1 * x1 + 9.39236330448955*x1 * x1 * x1*x2 + 11.7523515391858*x1 * x1 * x1*x3 + 7.80030268841632*x1 * x1 * x1*x4 + 10.6396383562796*x1 * x1 * x1*x5 + 11.3432890096147*x1 * x1 * x1 + 19.9264212226187*x1 * x1*x2 * x2 + 22.0900085056101*x1 * x1*x2*x3 + 21.1830790455642*x1 * x1*x2*x4 + 21.0912738591037*x1 * x1*x2*x5 + 19.6917881750975*x1 * x1*x2 + 20.5005652935491*x1 * x1*x3 * x3 + 20.0927948356251*x1 * x1*x3*x4 + 24.104304510359*x1 * x1*x3*x5 + 23.8674843275058*x1 * x1*x3 + 17.8690736268804*x1 * x1*x4 * x4 + 19.8354547727839*x1 * x1*x4*x5 + 22.4725534794926*x1 * x1*x4 + 21.6129365168504*x1 * x1*x5 * x5 + 22.1860015147946*x1 * x1*x5 + 21.0564369389882*x1 * x1 + 13.0694878184053*x1*x2 * x2 * x2 + 27.4552303765882*x1*x2 * x2*x3 + 22.6587022305811*x1*x2 * x2*x4 + 25.9639969339213*x1*x2 * x2*x5 + 25.2982282473798*x1*x2 * x2 + 25.9123948400208*x1*x2*x3 * x3 + 32.763197081384*x1*x2*x3*x4 + 38.5770552066777*x1*x2*x3*x5 + 39.5050556044433*x1*x2*x3 + 22.1378100154462*x1*x2*x4 * x4 + 36.1751844575058*x1*x2*x4*x5 + 34.9708761606086*x1*x2*x4 + 25.0313022261757*x1*x2*x5 * x5 + 33.343962893086*x1*x2*x5 + 24.5063529250616*x1*x2 + 13.1857889589089*x1*x3 * x3 * x3 + 23.4089569933814*x1*x3 * x3*x4 + 27.8387900476191*x1*x3 * x3*x5 + 27.7744319598228*x1*x3 * x3 + 22.3334405235583*x1*x3*x4 * x4 + 37.3734928731386*x1*x3*x4*x5 + 36.3916968513863*x1*x3*x4 + 29.926751124255*x1*x3*x5 * x5 + 40.9691577618978*x1*x3*x5 + 27.7385395924782*x1*x3 + 12.1521737998297*x1*x4 * x4 * x4 + 26.9966158436378*x1*x4 * x4*x5 + 23.7053047135149*x1*x4 * x4 + 24.4878929822282*x1*x4*x5 * x5 + 38.2447140460662*x1*x4*x5 + 21.8511361089387*x1*x4 + 14.4061193227186*x1*x5 * x5 * x5 + 25.6485468885709*x1*x5 * x5 + 25.9254112252049*x1*x5 + 10.1927675522987*x1 + 8.61722816261216*x2 * x2 * x2 * x2 + 14.6346316830382*x2 * x2 * x2*x3 + 13.3205275423288*x2 * x2 * x2*x4 + 13.0853864652442*x2 * x2 * x2*x5 + 10.7384111370068*x2 * x2 * x2 + 24.9608535920043*x2 * x2*x3 * x3 + 25.6375696797236*x2 * x2*x3*x4 + 27.5054650034332*x2 * x2*x3*x5 + 27.3915606453324*x2 * x2*x3 + 21.9338881138695*x2 * x2*x4 * x4 + 26.0330494064675*x2 * x2*x4*x5 + 26.1223120266196*x2 * x2*x4 + 22.4172153763303*x2 * x2*x5 * x5 + 22.6003575263721*x2 * x2*x5 + 20.4114075699498*x2 * x2 + 14.8013764910742*x2*x3 * x3 * x3 + 25.8807099424308*x2*x3 * x3*x4 + 29.4696374494705*x2*x3 * x3*x5 + 26.376714130632*x2*x3 * x3 + 26.8527302313017*x2*x3*x4 * x4 + 41.5227375231144*x2*x3*x4*x5 + 39.2164031737693*x2*x3*x4 + 28.573049570787*x2*x3*x5 * x5 + 39.6393610617028*x2*x3*x5 + 24.8538236475837*x2*x3 + 13.7083407776949*x2*x4 * x4 * x4 + 29.1617852716314*x2*x4 * x4*x5 + 25.6447341157423*x2*x4 * x4 + 28.0437954357005*x2*x4*x5 * x5 + 37.1671373043055*x2*x4*x5 + 25.0863651874213*x2*x4 + 12.4768460042306*x2*x5 * x5 * x5 + 24.4881819659349*x2*x5 * x5 + 23.8074418897524*x2*x5 + 11.0824244586027*x2 + 9.13234027581691*x3 * x3 * x3 * x3 + 11.9732373572691*x3 * x3 * x3*x4 + 14.8204264884176*x3 * x3 * x3*x5 + 15.0022218300482*x3 * x3 * x3 + 23.4250246207152*x3 * x3*x4 * x4 + 29.6195131748629*x3 * x3*x4*x5 + 25.9192304840333*x3 * x3*x4 + 26.2054816956153*x3 * x3*x5 * x5 + 27.1223518743292*x3 * x3*x5 + 22.3245502528355*x3 * x3 + 12.5251386745426*x3*x4 * x4 * x4 + 28.830164122604*x3*x4 * x4*x5 + 25.4474171189741*x3*x4 * x4 + 28.8885848191409*x3*x4*x5 * x5 + 40.4177473159554*x3*x4*x5 + 23.7427042189429*x3*x4 + 16.8057343297206*x3*x5 * x5 * x5 + 28.2086063003701*x3*x5 * x5 + 25.6085130609482*x3*x5 + 14.3597095837771*x3 + 9.3842920369431*x4 * x4 * x4 * x4 + 15.004604585755*x4 * x4 * x4*x5 + 14.3620328646414*x4 * x4 * x4 + 27.2124369038621*x4 * x4*x5 * x5 + 24.9092532550773*x4 * x4*x5 + 21.5582200696833*x4 * x4 + 15.242054072145*x4*x5 * x5 * x5 + 28.1962672136475*x4*x5 * x5 + 21.8650041622284*x4*x5 + 11.8294123131149*x4 + 10.0899048252255*x5 * x5 * x5 * x5 + 12.0005792667924*x5 * x5 * x5 + 23.4994189570249*x5 * x5 + 9.60368626799791*x5 + 8.33079840328179 >= 0. diff --git a/examples/valid/poly_v7_d1_s64_2.ae b/examples/valid/poly_v7_d1_s64_2.ae new file mode 100644 index 000000000..99a6cb9a8 --- /dev/null +++ b/examples/valid/poly_v7_d1_s64_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6:real. + 2.26965365683284*x0 * x0 + 4.02927891040779*x0*x1 + 3.36990947814395*x0*x2 + 3.65621556039592*x0*x3 + 2.47297369936795*x0*x4 + 3.80935539860089*x0*x5 + 1.69124864998271*x0*x6 + 3.44665161228291*x0 + 2.15127623545589*x1 * x1 + 2.79746636896338*x1*x2 + 3.27597979628104*x1*x3 + 2.37835840503655*x1*x4 + 3.2505961774169*x1*x5 + 1.39875677747597*x1*x6 + 2.49178171599167*x1 + 1.41655603249265*x2 * x2 + 2.84082561615297*x2*x3 + 1.54733431231775*x2*x4 + 2.96052847973494*x2*x5 + 1.59872248696211*x2*x6 + 2.70124496899911*x2 + 2.95517555072481*x3 * x3 + 2.86909046898774*x3*x4 + 4.4507281210797*x3*x5 + 2.62455197396361*x3*x6 + 3.34058197654168*x3 + 1.23794715278951*x4 * x4 + 1.7814572996305*x4*x5 + 1.04674920636096*x4*x6 + 2.36284527219561*x4 + 2.85557777620775*x5 * x5 + 2.18667278806105*x5*x6 + 2.73234224212527*x5 + 0.730330348615625*x6 * x6 + 1.60840699631654*x6 + 1.75410132721908 >= 0. diff --git a/examples/valid/poly_v7_d2_s1296.ae b/examples/valid/poly_v7_d2_s1296.ae new file mode 100644 index 000000000..b9a31da03 --- /dev/null +++ b/examples/valid/poly_v7_d2_s1296.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6:real. + 9.02324629320744*x0 * x0 * x0 * x0 + 15.6724013583614*x0 * x0 * x0*x1 + 17.3623510741489*x0 * x0 * x0*x2 + 14.7375778533741*x0 * x0 * x0*x3 + 14.4459341842488*x0 * x0 * x0*x4 + 15.081592762649*x0 * x0 * x0*x5 + 13.7659787998162*x0 * x0 * x0*x6 + 15.235677503202*x0 * x0 * x0 + 27.1971389530965*x0 * x0*x1 * x1 + 28.7592700905916*x0 * x0*x1*x2 + 35.2696061517513*x0 * x0*x1*x3 + 31.9400482376889*x0 * x0*x1*x4 + 30.28345998691*x0 * x0*x1*x5 + 29.3404223158689*x0 * x0*x1*x6 + 32.5143705831973*x0 * x0*x1 + 27.1787619295934*x0 * x0*x2 * x2 + 34.9330110655848*x0 * x0*x2*x3 + 31.2376159028875*x0 * x0*x2*x4 + 33.4168420001069*x0 * x0*x2*x5 + 32.2952387717374*x0 * x0*x2*x6 + 28.535457523853*x0 * x0*x2 + 28.0752393419508*x0 * x0*x3 * x3 + 32.5087155832106*x0 * x0*x3*x4 + 30.296834315066*x0 * x0*x3*x5 + 31.95268720956*x0 * x0*x3*x6 + 32.2391555472191*x0 * x0*x3 + 28.2849558787819*x0 * x0*x4 * x4 + 29.3469175711155*x0 * x0*x4*x5 + 31.1336160721613*x0 * x0*x4*x6 + 35.7104103091622*x0 * x0*x4 + 22.3627585397533*x0 * x0*x5 * x5 + 28.9747845461343*x0 * x0*x5*x6 + 34.0051859204141*x0 * x0*x5 + 26.4521837787359*x0 * x0*x6 * x6 + 35.8044483132824*x0 * x0*x6 + 27.1998254799167*x0 * x0 + 18.034997253042*x0*x1 * x1 * x1 + 35.2574100828739*x0*x1 * x1*x2 + 38.6777775485095*x0*x1 * x1*x3 + 32.6178587986651*x0*x1 * x1*x4 + 31.6689609614306*x0*x1 * x1*x5 + 32.5787441083612*x0*x1 * x1*x6 + 34.3610678579459*x0*x1 * x1 + 31.6328544986048*x0*x1*x2 * x2 + 53.6065503564773*x0*x1*x2*x3 + 49.4760739292114*x0*x1*x2*x4 + 48.651074477835*x0*x1*x2*x5 + 51.1968812831159*x0*x1*x2*x6 + 40.8747662585209*x0*x1*x2 + 39.5758832645903*x0*x1*x3 * x3 + 51.0730525452105*x0*x1*x3*x4 + 51.6161030364763*x0*x1*x3*x5 + 51.9161776553809*x0*x1*x3*x6 + 49.7084394078669*x0*x1*x3 + 35.6837258280008*x0*x1*x4 * x4 + 48.216325856445*x0*x1*x4*x5 + 48.421575752184*x0*x1*x4*x6 + 53.9342005924709*x0*x1*x4 + 28.0902165083552*x0*x1*x5 * x5 + 39.4694682594735*x0*x1*x5*x6 + 45.8097972583535*x0*x1*x5 + 36.1200484825451*x0*x1*x6 * x6 + 49.6288559456077*x0*x1*x6 + 31.0794841720382*x0*x1 + 17.5263575535524*x0*x2 * x2 * x2 + 37.9154800501755*x0*x2 * x2*x3 + 36.2643060710392*x0*x2 * x2*x4 + 38.8357876867875*x0*x2 * x2*x5 + 38.0975048178364*x0*x2 * x2*x6 + 34.6790486912217*x0*x2 * x2 + 40.3946237311493*x0*x2*x3 * x3 + 51.9111976502809*x0*x2*x3*x4 + 54.907700968971*x0*x2*x3*x5 + 52.6755888465951*x0*x2*x3*x6 + 48.9493286932475*x0*x2*x3 + 39.4568271495551*x0*x2*x4 * x4 + 50.2554175179993*x0*x2*x4*x5 + 53.2443063939746*x0*x2*x4*x6 + 49.8494344248595*x0*x2*x4 + 36.1168294160544*x0*x2*x5 * x5 + 48.5227160163337*x0*x2*x5*x6 + 50.3600413783094*x0*x2*x5 + 36.4505751321427*x0*x2*x6 * x6 + 54.2140866231407*x0*x2*x6 + 33.4194249135472*x0*x2 + 19.3292275747738*x0*x3 * x3 * x3 + 36.4377876239133*x0*x3 * x3*x4 + 36.5810637968754*x0*x3 * x3*x5 + 36.042448445421*x0*x3 * x3*x6 + 35.244749994183*x0*x3 * x3 + 35.8422169928153*x0*x3*x4 * x4 + 50.421096812569*x0*x3*x4*x5 + 49.0858071964338*x0*x3*x4*x6 + 50.4727931072963*x0*x3*x4 + 31.5455164338291*x0*x3*x5 * x5 + 45.9671978155966*x0*x3*x5*x6 + 49.3235721592461*x0*x3*x5 + 35.2191348683774*x0*x3*x6 * x6 + 53.5387678543101*x0*x3*x6 + 33.4666129106668*x0*x3 + 20.4439483781687*x0*x4 * x4 * x4 + 34.0711616841762*x0*x4 * x4*x5 + 34.745367415065*x0*x4 * x4*x6 + 38.9395704784948*x0*x4 * x4 + 26.3845010630255*x0*x4*x5 * x5 + 43.481537786363*x0*x4*x5*x6 + 56.138568669073*x0*x4*x5 + 34.9771360129813*x0*x4*x6 * x6 + 53.0608576015195*x0*x4*x6 + 37.6950646999161*x0*x4 + 15.523061874888*x0*x5 * x5 * x5 + 27.2846305753132*x0*x5 * x5*x6 + 31.8474242550771*x0*x5 * x5 + 31.936302030414*x0*x5*x6 * x6 + 49.4172379421777*x0*x5*x6 + 34.411542895844*x0*x5 + 17.1014989706798*x0*x6 * x6 * x6 + 39.049805823334*x0*x6 * x6 + 38.1424760624243*x0*x6 + 16.0883205823149*x0 + 11.6107884383935*x1 * x1 * x1 * x1 + 14.7050080764802*x1 * x1 * x1*x2 + 20.4633228496234*x1 * x1 * x1*x3 + 17.2309390196295*x1 * x1 * x1*x4 + 13.8434666607978*x1 * x1 * x1*x5 + 15.4957619253422*x1 * x1 * x1*x6 + 15.6970848850551*x1 * x1 * x1 + 28.0776138928272*x1 * x1*x2 * x2 + 34.821446745821*x1 * x1*x2*x3 + 29.9346235462119*x1 * x1*x2*x4 + 29.9374210806234*x1 * x1*x2*x5 + 34.3320462517908*x1 * x1*x2*x6 + 27.3509280357664*x1 * x1*x2 + 31.5355149107673*x1 * x1*x3 * x3 + 33.793478390569*x1 * x1*x3*x4 + 32.094626248329*x1 * x1*x3*x5 + 35.3391126842697*x1 * x1*x3*x6 + 33.1032922125748*x1 * x1*x3 + 32.6377073329479*x1 * x1*x4 * x4 + 30.9611690513788*x1 * x1*x4*x5 + 31.9918170917482*x1 * x1*x4*x6 + 31.8584150015601*x1 * x1*x4 + 22.268759932052*x1 * x1*x5 * x5 + 25.1582093130558*x1 * x1*x5*x6 + 29.5980679258671*x1 * x1*x5 + 30.9945913104124*x1 * x1*x6 * x6 + 33.3339461540035*x1 * x1*x6 + 25.4797028284751*x1 * x1 + 15.5500595961754*x1*x2 * x2 * x2 + 34.1081426237308*x1*x2 * x2*x3 + 30.5542719453466*x1*x2 * x2*x4 + 31.62510626666*x1*x2 * x2*x5 + 30.1164180011519*x1*x2 * x2*x6 + 27.2696483525621*x1*x2 * x2 + 33.8062170522257*x1*x2*x3 * x3 + 45.5569649172144*x1*x2*x3*x4 + 49.622534190275*x1*x2*x3*x5 + 52.0693443632238*x1*x2*x3*x6 + 42.2255234207613*x1*x2*x3 + 36.4741750744004*x1*x2*x4 * x4 + 46.8477546283526*x1*x2*x4*x5 + 49.2607024028971*x1*x2*x4*x6 + 44.0101725722565*x1*x2*x4 + 25.9124647604968*x1*x2*x5 * x5 + 41.5089897315502*x1*x2*x5*x6 + 40.0311405523877*x1*x2*x5 + 36.4926274637547*x1*x2*x6 * x6 + 48.0649867401282*x1*x2*x6 + 23.1987188785017*x1*x2 + 21.372473045574*x1*x3 * x3 * x3 + 35.4109890128939*x1*x3 * x3*x4 + 34.8195115741785*x1*x3 * x3*x5 + 36.6662789778994*x1*x3 * x3*x6 + 32.8259038953499*x1*x3 * x3 + 37.9700112772525*x1*x3*x4 * x4 + 46.4356810177676*x1*x3*x4*x5 + 54.0507460316654*x1*x3*x4*x6 + 50.6584283151201*x1*x3*x4 + 26.7913876010066*x1*x3*x5 * x5 + 48.2248998640244*x1*x3*x5*x6 + 44.9773031733779*x1*x3*x5 + 35.35909596101*x1*x3*x6 * x6 + 51.0113681135033*x1*x3*x6 + 31.6195768805057*x1*x3 + 19.2779678021486*x1*x4 * x4 * x4 + 31.5308419722893*x1*x4 * x4*x5 + 36.4199965660078*x1*x4 * x4*x6 + 36.7878237549811*x1*x4 * x4 + 27.6469627976313*x1*x4*x5 * x5 + 42.9011529584624*x1*x4*x5*x6 + 47.4862617151555*x1*x4*x5 + 35.3062501993564*x1*x4*x6 * x6 + 54.6281361467854*x1*x4*x6 + 33.2669670396163*x1*x4 + 11.6025998453892*x1*x5 * x5 * x5 + 22.8916852923533*x1*x5 * x5*x6 + 24.0580026105924*x1*x5 * x5 + 29.7680744831551*x1*x5*x6 * x6 + 46.4143851143602*x1*x5*x6 + 30.5913342793985*x1*x5 + 16.7101078347226*x1*x6 * x6 * x6 + 38.757994714654*x1*x6 * x6 + 31.1992277170795*x1*x6 + 14.9519761524432*x1 + 11.3661179041216*x2 * x2 * x2 * x2 + 16.3973284513072*x2 * x2 * x2*x3 + 16.7763188841844*x2 * x2 * x2*x4 + 19.7971787457259*x2 * x2 * x2*x5 + 20.1259664618227*x2 * x2 * x2*x6 + 13.7055667808073*x2 * x2 * x2 + 30.0210232943446*x2 * x2*x3 * x3 + 33.2545500175351*x2 * x2*x3*x4 + 36.6468177611069*x2 * x2*x3*x5 + 38.2604080143244*x2 * x2*x3*x6 + 29.4040750623215*x2 * x2*x3 + 31.4191164150384*x2 * x2*x4 * x4 + 31.5685090041683*x2 * x2*x4*x5 + 37.9345925427214*x2 * x2*x4*x6 + 34.9619628033495*x2 * x2*x4 + 26.9484821195932*x2 * x2*x5 * x5 + 33.2856733120954*x2 * x2*x5*x6 + 32.7649788838911*x2 * x2*x5 + 34.8898923463529*x2 * x2*x6 * x6 + 35.892233235795*x2 * x2*x6 + 26.2567935745805*x2 * x2 + 19.0581496125786*x2*x3 * x3 * x3 + 34.7704961553119*x2*x3 * x3*x4 + 38.8771447783158*x2*x3 * x3*x5 + 39.5328499651414*x2*x3 * x3*x6 + 32.0815731950353*x2*x3 * x3 + 38.0343951580123*x2*x3*x4 * x4 + 51.2170336518527*x2*x3*x4*x5 + 53.6614073502989*x2*x3*x4*x6 + 50.7899849442797*x2*x3*x4 + 34.1463467712996*x2*x3*x5 * x5 + 51.3487350404155*x2*x3*x5*x6 + 45.6657649650025*x2*x3*x5 + 37.409202753656*x2*x3*x6 * x6 + 53.8407447984707*x2*x3*x6 + 30.650461755211*x2*x3 + 18.4449778969561*x2*x4 * x4 * x4 + 37.019102268912*x2*x4 * x4*x5 + 40.513219797828*x2*x4 * x4*x6 + 35.0578088587*x2*x4 * x4 + 27.5854608896072*x2*x4*x5 * x5 + 48.7481378480741*x2*x4*x5*x6 + 53.7403821900254*x2*x4*x5 + 36.8580266583686*x2*x4*x6 * x6 + 56.4615222476697*x2*x4*x6 + 32.2638810276731*x2*x4 + 15.5849910297235*x2*x5 * x5 * x5 + 28.2921602507484*x2*x5 * x5*x6 + 30.328277156349*x2*x5 * x5 + 39.3452267872895*x2*x5*x6 * x6 + 51.9741445766076*x2*x5*x6 + 33.3260346546835*x2*x5 + 21.1107465787375*x2*x6 * x6 * x6 + 37.4502449068804*x2*x6 * x6 + 36.4978806444643*x2*x6 + 14.2364764314793*x2 + 12.9270641609696*x3 * x3 * x3 * x3 + 17.4303239547093*x3 * x3 * x3*x4 + 19.6237754049224*x3 * x3 * x3*x5 + 18.6129623544369*x3 * x3 * x3*x6 + 18.0889677656538*x3 * x3 * x3 + 32.7036577207528*x3 * x3*x4 * x4 + 32.6281375753792*x3 * x3*x4*x5 + 34.9050685169484*x3 * x3*x4*x6 + 38.7713198328248*x3 * x3*x4 + 26.5546876035902*x3 * x3*x5 * x5 + 33.2609639835563*x3 * x3*x5*x6 + 35.6677466297856*x3 * x3*x5 + 31.689213151748*x3 * x3*x6 * x6 + 36.6504371582055*x3 * x3*x6 + 29.2978914894166*x3 * x3 + 18.0112988281017*x3*x4 * x4 * x4 + 35.6170131762899*x3*x4 * x4*x5 + 36.6105484407607*x3*x4 * x4*x6 + 39.2526968779793*x3*x4 * x4 + 27.4675184619039*x3*x4*x5 * x5 + 45.5977254648218*x3*x4*x5*x6 + 52.5069981925809*x3*x4*x5 + 35.724913584158*x3*x4*x6 * x6 + 55.495076466363*x3*x4*x6 + 35.426905333094*x3*x4 + 12.3602555038692*x3*x5 * x5 * x5 + 26.0417880627823*x3*x5 * x5*x6 + 30.5548613509332*x3*x5 * x5 + 32.1492081289417*x3*x5*x6 * x6 + 49.4265237927059*x3*x5*x6 + 33.0678291640507*x3*x5 + 20.3712034452156*x3*x6 * x6 * x6 + 38.1730479250056*x3*x6 * x6 + 38.6699715330037*x3*x6 + 16.9594898880286*x3 + 14.1748140283186*x4 * x4 * x4 * x4 + 18.066774063514*x4 * x4 * x4*x5 + 20.4113349988401*x4 * x4 * x4*x6 + 24.2583356825187*x4 * x4 * x4 + 24.58126273177*x4 * x4*x5 * x5 + 29.1028563363461*x4 * x4*x5*x6 + 37.0121047627878*x4 * x4*x5 + 35.7396485876186*x4 * x4*x6 * x6 + 46.778218005733*x4 * x4*x6 + 32.9817280253022*x4 * x4 + 10.0832284408508*x4*x5 * x5 * x5 + 20.8839929634115*x4*x5 * x5*x6 + 30.3433982845052*x4*x5 * x5 + 30.0824741358681*x4*x5*x6 * x6 + 53.7304024637167*x4*x5*x6 + 32.0279384357737*x4*x5 + 18.7163562423921*x4*x6 * x6 * x6 + 40.7942075768463*x4*x6 * x6 + 41.5501251994756*x4*x6 + 19.3235866132559*x4 + 8.62873836308954*x5 * x5 * x5 * x5 + 12.2910524419208*x5 * x5 * x5*x6 + 13.2414740790063*x5 * x5 * x5 + 22.3059063991486*x5 * x5*x6 * x6 + 30.2811820666291*x5 * x5*x6 + 26.9066360013851*x5 * x5 + 13.6880419435282*x5*x6 * x6 * x6 + 35.4246274538307*x5*x6 * x6 + 38.1937596746162*x5*x6 + 17.7933402191763*x5 + 13.5292176528268*x6 * x6 * x6 * x6 + 23.9360600868445*x6 * x6 * x6 + 35.9621538902767*x6 * x6 + 21.9259968241392*x6 + 11.7582316734863 >= 0. diff --git a/examples/valid/poly_v7_d2_s1296_2.ae b/examples/valid/poly_v7_d2_s1296_2.ae new file mode 100644 index 000000000..2a1660c6f --- /dev/null +++ b/examples/valid/poly_v7_d2_s1296_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6:real. + 12.0894219645411*x0 * x0 * x0 * x0 + 17.6414842734713*x0 * x0 * x0*x1 + 20.0093943397741*x0 * x0 * x0*x2 + 12.7631446176469*x0 * x0 * x0*x3 + 17.7100573072576*x0 * x0 * x0*x4 + 18.8930066520158*x0 * x0 * x0*x5 + 20.3101035707417*x0 * x0 * x0*x6 + 19.4872469938923*x0 * x0 * x0 + 28.1430841228549*x0 * x0*x1 * x1 + 34.5569623076979*x0 * x0*x1*x2 + 30.8015766956309*x0 * x0*x1*x3 + 35.5396569821484*x0 * x0*x1*x4 + 36.6198695189315*x0 * x0*x1*x5 + 33.1282958013947*x0 * x0*x1*x6 + 35.280500830243*x0 * x0*x1 + 30.8579921362852*x0 * x0*x2 * x2 + 34.2940149362281*x0 * x0*x2*x3 + 37.6598715624949*x0 * x0*x2*x4 + 39.9878147978678*x0 * x0*x2*x5 + 34.151230264322*x0 * x0*x2*x6 + 39.6967077781043*x0 * x0*x2 + 21.3295384653341*x0 * x0*x3 * x3 + 29.2194899966454*x0 * x0*x3*x4 + 31.2476340712396*x0 * x0*x3*x5 + 35.1934471757045*x0 * x0*x3*x6 + 32.0478845688321*x0 * x0*x3 + 29.1043489744358*x0 * x0*x4 * x4 + 36.0914307639597*x0 * x0*x4*x5 + 35.9882961879045*x0 * x0*x4*x6 + 37.7802023728051*x0 * x0*x4 + 31.8529123076187*x0 * x0*x5 * x5 + 36.2684579253318*x0 * x0*x5*x6 + 38.3544701087639*x0 * x0*x5 + 28.2461237153131*x0 * x0*x6 * x6 + 36.74508043435*x0 * x0*x6 + 31.2108015402291*x0 * x0 + 15.3424003750429*x0*x1 * x1 * x1 + 34.3561697011186*x0*x1 * x1*x2 + 29.6925630133375*x0*x1 * x1*x3 + 31.0273124532895*x0*x1 * x1*x4 + 40.1047332122711*x0*x1 * x1*x5 + 33.2995518568286*x0*x1 * x1*x6 + 36.0222175738109*x0*x1 * x1 + 31.592589701721*x0*x1*x2 * x2 + 48.8698194103582*x0*x1*x2*x3 + 56.0869599575716*x0*x1*x2*x4 + 51.5811393373473*x0*x1*x2*x5 + 48.9960227205131*x0*x1*x2*x6 + 56.0394184186961*x0*x1*x2 + 25.2978230647285*x0*x1*x3 * x3 + 43.178090356678*x0*x1*x3*x4 + 47.4876957318846*x0*x1*x3*x5 + 48.7454825168707*x0*x1*x3*x6 + 47.6187078625105*x0*x1*x3 + 32.5360388346731*x0*x1*x4 * x4 + 53.3481041885462*x0*x1*x4*x5 + 50.9846125275946*x0*x1*x4*x6 + 54.6489265755487*x0*x1*x4 + 35.9511361148196*x0*x1*x5 * x5 + 50.4560854049629*x0*x1*x5*x6 + 56.7568777569188*x0*x1*x5 + 31.3262785843558*x0*x1*x6 * x6 + 52.6120883861142*x0*x1*x6 + 36.6239547842576*x0*x1 + 18.2051730284009*x0*x2 * x2 * x2 + 29.2825942412097*x0*x2 * x2*x3 + 39.2112342626644*x0*x2 * x2*x4 + 39.6047519326395*x0*x2 * x2*x5 + 32.0131760937228*x0*x2 * x2*x6 + 38.974794331138*x0*x2 * x2 + 27.5646100407019*x0*x2*x3 * x3 + 50.4197369854427*x0*x2*x3*x4 + 51.0141861840537*x0*x2*x3*x5 + 51.1383520836306*x0*x2*x3*x6 + 53.2872474869199*x0*x2*x3 + 37.7927525085654*x0*x2*x4 * x4 + 58.1716934522616*x0*x2*x4*x5 + 54.0741567871161*x0*x2*x4*x6 + 61.0738691277108*x0*x2*x4 + 34.7942310011893*x0*x2*x5 * x5 + 52.7476238587791*x0*x2*x5*x6 + 59.8295727432039*x0*x2*x5 + 34.0123814144734*x0*x2*x6 * x6 + 53.5413750916125*x0*x2*x6 + 39.2920225787894*x0*x2 + 9.59401294576986*x0*x3 * x3 * x3 + 25.2395446429895*x0*x3 * x3*x4 + 25.5128814545614*x0*x3 * x3*x5 + 29.8688650691661*x0*x3 * x3*x6 + 27.0995533520049*x0*x3 * x3 + 26.8022076796673*x0*x3*x4 * x4 + 43.8327712583249*x0*x3*x4*x5 + 49.4739386820285*x0*x3*x4*x6 + 44.817518754366*x0*x3*x4 + 31.1353589916671*x0*x3*x5 * x5 + 45.9859536488718*x0*x3*x5*x6 + 48.0037921191094*x0*x3*x5 + 34.4018777638855*x0*x3*x6 * x6 + 51.1984387425631*x0*x3*x6 + 31.5533997075859*x0*x3 + 16.3136304305411*x0*x4 * x4 * x4 + 34.5044477584476*x0*x4 * x4*x5 + 38.548348190234*x0*x4 * x4*x6 + 36.5678620020005*x0*x4 * x4 + 37.269807971998*x0*x4*x5 * x5 + 50.2893600668798*x0*x4*x5*x6 + 55.8518859650531*x0*x4*x5 + 33.8379342282177*x0*x4*x6 * x6 + 56.2216656803625*x0*x4*x6 + 35.1257484032329*x0*x4 + 18.2685149904802*x0*x5 * x5 * x5 + 33.2042919302195*x0*x5 * x5*x6 + 39.3203361846576*x0*x5 * x5 + 34.8878126871577*x0*x5*x6 * x6 + 53.1877075714835*x0*x5*x6 + 38.5185293181534*x0*x5 + 18.5287653164055*x0*x6 * x6 * x6 + 35.5455389038007*x0*x6 * x6 + 34.8871463676961*x0*x6 + 17.2810055435157*x0 + 12.339962051692*x1 * x1 * x1 * x1 + 15.8039951625353*x1 * x1 * x1*x2 + 16.6735306460479*x1 * x1 * x1*x3 + 19.8751519014118*x1 * x1 * x1*x4 + 18.04555019089*x1 * x1 * x1*x5 + 14.5076748558912*x1 * x1 * x1*x6 + 17.0569324298698*x1 * x1 * x1 + 29.9030810964675*x1 * x1*x2 * x2 + 33.3679735598935*x1 * x1*x2*x3 + 32.1694082206249*x1 * x1*x2*x4 + 34.4058168498845*x1 * x1*x2*x5 + 27.2511709782104*x1 * x1*x2*x6 + 37.6384766215205*x1 * x1*x2 + 22.2611028348267*x1 * x1*x3 * x3 + 34.0825135472318*x1 * x1*x3*x4 + 31.9074536052748*x1 * x1*x3*x5 + 33.5138893421714*x1 * x1*x3*x6 + 34.5594958739871*x1 * x1*x3 + 27.8661076230036*x1 * x1*x4 * x4 + 36.3929667572464*x1 * x1*x4*x5 + 36.2458865734338*x1 * x1*x4*x6 + 36.5905091879292*x1 * x1*x4 + 29.5413852840217*x1 * x1*x5 * x5 + 32.3997557427483*x1 * x1*x5*x6 + 37.3771483399524*x1 * x1*x5 + 25.4842144545259*x1 * x1*x6 * x6 + 29.9903166791798*x1 * x1*x6 + 29.5340891028988*x1 * x1 + 16.1490835760505*x1*x2 * x2 * x2 + 32.06405384668*x1*x2 * x2*x3 + 37.3201573690695*x1*x2 * x2*x4 + 32.9432470191305*x1*x2 * x2*x5 + 27.3654286581945*x1*x2 * x2*x6 + 38.0114212058896*x1*x2 * x2 + 31.3992588595526*x1*x2*x3 * x3 + 54.4828499708531*x1*x2*x3*x4 + 49.5502736775668*x1*x2*x3*x5 + 47.815422080428*x1*x2*x3*x6 + 51.279048746686*x1*x2*x3 + 37.1010948712085*x1*x2*x4 * x4 + 54.1627049388387*x1*x2*x4*x5 + 47.902473450119*x1*x2*x4*x6 + 58.4265782359379*x1*x2*x4 + 34.5652339622481*x1*x2*x5 * x5 + 46.488119170105*x1*x2*x5*x6 + 54.72938867084*x1*x2*x5 + 28.3844836540358*x1*x2*x6 * x6 + 47.2974124345467*x1*x2*x6 + 36.3177764584115*x1*x2 + 12.897086414641*x1*x3 * x3 * x3 + 28.9171447650396*x1*x3 * x3*x4 + 28.9247818826061*x1*x3 * x3*x5 + 27.9648948023422*x1*x3 * x3*x6 + 29.6570652768766*x1*x3 * x3 + 30.9520028850948*x1*x3*x4 * x4 + 49.0299809284054*x1*x3*x4*x5 + 49.8323182316109*x1*x3*x4*x6 + 49.8105872997778*x1*x3*x4 + 29.9570252163046*x1*x3*x5 * x5 + 47.4559425835914*x1*x3*x5*x6 + 49.4696472237447*x1*x3*x5 + 33.0253284934379*x1*x3*x6 * x6 + 47.7867617107033*x1*x3*x6 + 32.6183948395863*x1*x3 + 17.4317849426501*x1*x4 * x4 * x4 + 36.5973002933406*x1*x4 * x4*x5 + 33.5237306912187*x1*x4 * x4*x6 + 34.9017415328637*x1*x4 * x4 + 33.4049892775846*x1*x4*x5 * x5 + 50.9844685959298*x1*x4*x5*x6 + 56.9979751459206*x1*x4*x5 + 30.8143606449677*x1*x4*x6 * x6 + 49.1901459917788*x1*x4*x6 + 37.2744915923344*x1*x4 + 16.2977331426097*x1*x5 * x5 * x5 + 28.7082638449887*x1*x5 * x5*x6 + 34.1745878224546*x1*x5 * x5 + 32.4468321176658*x1*x5*x6 * x6 + 49.9369391145505*x1*x5*x6 + 34.9031961115146*x1*x5 + 13.9578741062492*x1*x6 * x6 * x6 + 32.1085789467745*x1*x6 * x6 + 33.288053870518*x1*x6 + 16.1356551899648*x1 + 11.0384805088415*x2 * x2 * x2 * x2 + 18.8558105814099*x2 * x2 * x2*x3 + 20.6476990561486*x2 * x2 * x2*x4 + 16.4750695667082*x2 * x2 * x2*x5 + 13.8521845665422*x2 * x2 * x2*x6 + 18.2164574657539*x2 * x2 * x2 + 24.3876863831565*x2 * x2*x3 * x3 + 33.7967806823104*x2 * x2*x3*x4 + 31.9052118275211*x2 * x2*x3*x5 + 34.0075774779697*x2 * x2*x3*x6 + 37.5606900047227*x2 * x2*x3 + 29.3617286549939*x2 * x2*x4 * x4 + 36.3054670236247*x2 * x2*x4*x5 + 32.6766713398366*x2 * x2*x4*x6 + 37.8628189492816*x2 * x2*x4 + 28.3446947379067*x2 * x2*x5 * x5 + 30.1978638547729*x2 * x2*x5*x6 + 36.3690618456772*x2 * x2*x5 + 24.3757680807868*x2 * x2*x6 * x6 + 31.2961553162356*x2 * x2*x6 + 29.1392816865975*x2 * x2 + 13.4300370717305*x2*x3 * x3 * x3 + 30.0870449643433*x2*x3 * x3*x4 + 27.264116548079*x2*x3 * x3*x5 + 31.3181697618413*x2*x3 * x3*x6 + 31.7181063353518*x2*x3 * x3 + 32.5979835761399*x2*x3*x4 * x4 + 49.9340497084251*x2*x3*x4*x5 + 52.6621984035966*x2*x3*x4*x6 + 56.053784868249*x2*x3*x4 + 30.394868323688*x2*x3*x5 * x5 + 44.5945292682968*x2*x3*x5*x6 + 50.2544570504062*x2*x3*x5 + 32.4005671117917*x2*x3*x6 * x6 + 52.3406044554051*x2*x3*x6 + 35.3514342324534*x2*x3 + 20.5477433864799*x2*x4 * x4 * x4 + 37.4838302583028*x2*x4 * x4*x5 + 33.9447212750459*x2*x4 * x4*x6 + 38.9331183721753*x2*x4 * x4 + 34.8860674572334*x2*x4*x5 * x5 + 51.1765777027698*x2*x4*x5*x6 + 55.689911604777*x2*x4*x5 + 33.5876597181237*x2*x4*x6 * x6 + 51.5411817785365*x2*x4*x6 + 37.3564399186582*x2*x4 + 14.3606257269436*x2*x5 * x5 * x5 + 27.1556989977557*x2*x5 * x5*x6 + 35.852366457191*x2*x5 * x5 + 28.3558353158827*x2*x5*x6 * x6 + 46.3982592064644*x2*x5*x6 + 34.3876748369843*x2*x5 + 13.8669452197149*x2*x6 * x6 * x6 + 34.5366138016264*x2*x6 * x6 + 34.3159767955439*x2*x6 + 20.314071858356*x2 + 7.45077930493202*x3 * x3 * x3 * x3 + 11.5621650341441*x3 * x3 * x3*x4 + 11.3660765633857*x3 * x3 * x3*x5 + 12.864182999958*x3 * x3 * x3*x6 + 11.9721974909818*x3 * x3 * x3 + 20.7937329928104*x3 * x3*x4 * x4 + 24.3249763823533*x3 * x3*x4*x5 + 27.5952634571431*x3 * x3*x4*x6 + 27.038651788497*x3 * x3*x4 + 21.6094786886727*x3 * x3*x5 * x5 + 25.4327751439938*x3 * x3*x5*x6 + 25.9059262231618*x3 * x3*x5 + 26.7186281120161*x3 * x3*x6 * x6 + 29.790382094226*x3 * x3*x6 + 21.6252922503195*x3 * x3 + 14.3727838588412*x3*x4 * x4 * x4 + 26.7465022529*x3*x4 * x4*x5 + 34.551857191881*x3*x4 * x4*x6 + 31.0118645955878*x3*x4 * x4 + 27.6599607153009*x3*x4*x5 * x5 + 47.3376122074966*x3*x4*x5*x6 + 44.7557220521196*x3*x4*x5 + 35.1727761334409*x3*x4*x6 * x6 + 53.9969513655356*x3*x4*x6 + 31.378355424267*x3*x4 + 14.4207822762613*x3*x5 * x5 * x5 + 35.0242987171147*x3*x5 * x5*x6 + 30.4513652612993*x3*x5 * x5 + 30.2345495505893*x3*x5*x6 * x6 + 44.1282792228975*x3*x5*x6 + 28.6706360285564*x3*x5 + 18.4597486204525*x3*x6 * x6 * x6 + 33.8092135135986*x3*x6 * x6 + 31.9746410711354*x3*x6 + 16.4967794715055*x3 + 11.2066885442974*x4 * x4 * x4 * x4 + 15.6668472690139*x4 * x4 * x4*x5 + 15.5577216997456*x4 * x4 * x4*x6 + 17.4807251742511*x4 * x4 * x4 + 25.5786742690502*x4 * x4*x5 * x5 + 33.2470941187432*x4 * x4*x5*x6 + 31.9096627302589*x4 * x4*x5 + 28.0016571829066*x4 * x4*x6 * x6 + 34.3169412001832*x4 * x4*x6 + 26.6867322709376*x4 * x4 + 16.6738579698371*x4*x5 * x5 * x5 + 34.4371539425401*x4*x5 * x5*x6 + 34.1098955413376*x4*x5 * x5 + 31.1131846235525*x4*x5*x6 * x6 + 49.9858802770718*x4*x5*x6 + 34.8017877896455*x4*x5 + 17.2719075151114*x4*x6 * x6 * x6 + 35.0370420242095*x4*x6 * x6 + 34.2443042825936*x4*x6 + 16.5071601971384*x4 + 10.7445898626995*x5 * x5 * x5 * x5 + 13.2718665765916*x5 * x5 * x5*x6 + 17.5533890784527*x5 * x5 * x5 + 24.3463370318946*x5 * x5*x6 * x6 + 29.5852762106949*x5 * x5*x6 + 26.8063429517824*x5 * x5 + 14.5554575399461*x5*x6 * x6 * x6 + 31.1157928177368*x5*x6 * x6 + 31.4665541798723*x5*x6 + 15.1371843273367*x5 + 10.4370710139403*x6 * x6 * x6 * x6 + 15.1252318285525*x6 * x6 * x6 + 25.9851176855074*x6 * x6 + 15.5751103653783*x6 + 10.5848745747877 >= 0. diff --git a/examples/valid/poly_v8_d1_s81_2.ae b/examples/valid/poly_v8_d1_s81_2.ae new file mode 100644 index 000000000..2e6072075 --- /dev/null +++ b/examples/valid/poly_v8_d1_s81_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7:real. + 2.65211202872704*x0 * x0 + 3.23762068475354*x0*x1 + 3.10282870550338*x0*x2 + 3.77255906586072*x0*x3 + 3.30599579688492*x0*x4 + 3.34473319470537*x0*x5 + 4.05883993126982*x0*x6 + 4.26660635094854*x0*x7 + 5.48915787046103*x0 + 2.01340309517638*x1 * x1 + 2.60518186299964*x1*x2 + 2.83394909644925*x1*x3 + 4.15219078193188*x1*x4 + 3.96127997495986*x1*x5 + 2.96930406754633*x1*x6 + 3.46442685330419*x1*x7 + 4.14706634394283*x1 + 2.359626059174*x2 * x2 + 3.21133058973581*x2*x3 + 3.19665858195124*x2*x4 + 2.6145434910113*x2*x5 + 4.00215552839312*x2*x6 + 2.86344766913889*x2*x7 + 3.87997696677084*x2 + 1.6886112585261*x3 * x3 + 2.76792470528658*x3*x4 + 3.01877862430287*x3*x5 + 2.9962831575438*x3*x6 + 3.44382250944373*x3*x7 + 3.67138726663143*x3 + 2.51671184499154*x4 * x4 + 4.04934692100658*x4*x5 + 3.89534138173745*x4*x6 + 3.68724482734575*x4*x7 + 4.92432946510608*x4 + 2.06269325540631*x5 * x5 + 2.92776865589061*x5*x6 + 3.71515055458453*x5*x7 + 3.66650877052291*x5 + 2.49979605628016*x6 * x6 + 3.37495653124711*x6*x7 + 5.27915814615293*x6 + 2.06599449187096*x7 * x7 + 4.35432157462201*x7 + 3.90727752437367 >= 0. diff --git a/examples/valid/poly_v8_d2_s2025.ae b/examples/valid/poly_v8_d2_s2025.ae new file mode 100644 index 000000000..6bef155ee --- /dev/null +++ b/examples/valid/poly_v8_d2_s2025.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7:real. + 17.3189455385758*x0 * x0 * x0 * x0 + 21.6746177187621*x0 * x0 * x0*x1 + 20.1497694735455*x0 * x0 * x0*x2 + 22.2384737727973*x0 * x0 * x0*x3 + 27.1129803383833*x0 * x0 * x0*x4 + 26.9268338529021*x0 * x0 * x0*x5 + 23.4906898490941*x0 * x0 * x0*x6 + 22.4451176506923*x0 * x0 * x0*x7 + 23.8700843552803*x0 * x0 * x0 + 35.8378950677177*x0 * x0*x1 * x1 + 45.8506113914569*x0 * x0*x1*x2 + 42.3460959790829*x0 * x0*x1*x3 + 41.7992976897174*x0 * x0*x1*x4 + 42.9763171771896*x0 * x0*x1*x5 + 47.5305281464434*x0 * x0*x1*x6 + 43.7178857075756*x0 * x0*x1*x7 + 40.9657674640228*x0 * x0*x1 + 34.5246784772601*x0 * x0*x2 * x2 + 40.3808561459768*x0 * x0*x2*x3 + 46.1493644046828*x0 * x0*x2*x4 + 44.0377810750822*x0 * x0*x2*x5 + 43.7961547924507*x0 * x0*x2*x6 + 46.3843485247362*x0 * x0*x2*x7 + 48.7739031151412*x0 * x0*x2 + 37.3692012037825*x0 * x0*x3 * x3 + 47.9953432610381*x0 * x0*x3*x4 + 42.1149623884702*x0 * x0*x3*x5 + 42.5779854490899*x0 * x0*x3*x6 + 40.3470698021116*x0 * x0*x3*x7 + 46.1968942794858*x0 * x0*x3 + 40.6116081543211*x0 * x0*x4 * x4 + 47.7697046637044*x0 * x0*x4*x5 + 51.0125197466427*x0 * x0*x4*x6 + 49.9595261025416*x0 * x0*x4*x7 + 50.0994984836944*x0 * x0*x4 + 41.4627746321812*x0 * x0*x5 * x5 + 43.3628119292756*x0 * x0*x5*x6 + 45.3997123229542*x0 * x0*x5*x7 + 42.6566385340789*x0 * x0*x5 + 38.370061109458*x0 * x0*x6 * x6 + 47.4392166147488*x0 * x0*x6*x7 + 45.881052730764*x0 * x0*x6 + 34.4964316901504*x0 * x0*x7 * x7 + 44.1148029689467*x0 * x0*x7 + 38.7379007528416*x0 * x0 + 19.0756547486897*x0*x1 * x1 * x1 + 40.4241362774611*x0*x1 * x1*x2 + 37.4914859218946*x0*x1 * x1*x3 + 42.4941201364551*x0*x1 * x1*x4 + 40.5269610768312*x0*x1 * x1*x5 + 43.6423043261134*x0*x1 * x1*x6 + 41.0068064285539*x0*x1 * x1*x7 + 42.1164417731751*x0*x1 * x1 + 36.8186520125*x0*x1*x2 * x2 + 57.7440077375722*x0*x1*x2*x3 + 62.3841558876541*x0*x1*x2*x4 + 64.6987913065426*x0*x1*x2*x5 + 57.5600629707543*x0*x1*x2*x6 + 63.1962311149234*x0*x1*x2*x7 + 64.0958659806851*x0*x1*x2 + 42.5648610506654*x0*x1*x3 * x3 + 63.5986591290671*x0*x1*x3*x4 + 60.2477807843105*x0*x1*x3*x5 + 57.0516876598796*x0*x1*x3*x6 + 60.0564315439175*x0*x1*x3*x7 + 64.4689229641087*x0*x1*x3 + 42.872998675975*x0*x1*x4 * x4 + 65.1288927937432*x0*x1*x4*x5 + 66.5364602119652*x0*x1*x4*x6 + 66.6990351073158*x0*x1*x4*x7 + 65.7476842193192*x0*x1*x4 + 45.1151491955272*x0*x1*x5 * x5 + 62.8958066317972*x0*x1*x5*x6 + 63.2563593873753*x0*x1*x5*x7 + 61.8530730360748*x0*x1*x5 + 37.0740276470693*x0*x1*x6 * x6 + 61.964203315809*x0*x1*x6*x7 + 63.1412283878463*x0*x1*x6 + 38.5234465907478*x0*x1*x7 * x7 + 62.0487650534617*x0*x1*x7 + 43.2602201803019*x0*x1 + 20.2546823878812*x0*x2 * x2 * x2 + 37.623871283919*x0*x2 * x2*x3 + 37.4539647577444*x0*x2 * x2*x4 + 45.3395960797665*x0*x2 * x2*x5 + 40.1321866377768*x0*x2 * x2*x6 + 42.978434939976*x0*x2 * x2*x7 + 42.9965203427791*x0*x2 * x2 + 40.9052827280126*x0*x2*x3 * x3 + 59.10039817072*x0*x2*x3*x4 + 61.8460463596903*x0*x2*x3*x5 + 54.3548667210322*x0*x2*x3*x6 + 62.3506889284092*x0*x2*x3*x7 + 63.1495474178597*x0*x2*x3 + 40.8621346056685*x0*x2*x4 * x4 + 60.8649145078586*x0*x2*x4*x5 + 62.3483700770851*x0*x2*x4*x6 + 66.2941863060459*x0*x2*x4*x7 + 68.5363140704705*x0*x2*x4 + 45.5324176873078*x0*x2*x5 * x5 + 60.5219173624818*x0*x2*x5*x6 + 61.5673208292388*x0*x2*x5*x7 + 70.7101037133775*x0*x2*x5 + 38.1479853261487*x0*x2*x6 * x6 + 61.3480771327557*x0*x2*x6*x7 + 62.7697388843207*x0*x2*x6 + 39.4473153423572*x0*x2*x7 * x7 + 66.9578418487923*x0*x2*x7 + 44.3846875923524*x0*x2 + 20.3899995843893*x0*x3 * x3 * x3 + 45.1957070907988*x0*x3 * x3*x4 + 38.1889044532035*x0*x3 * x3*x5 + 37.6720172123158*x0*x3 * x3*x6 + 43.5520054563626*x0*x3 * x3*x7 + 36.7020692505979*x0*x3 * x3 + 48.6357676584872*x0*x3*x4 * x4 + 64.2757540113413*x0*x3*x4*x5 + 63.3422302421296*x0*x3*x4*x6 + 70.4418368951364*x0*x3*x4*x7 + 66.518373614599*x0*x3*x4 + 40.5023477150988*x0*x3*x5 * x5 + 58.1833898772839*x0*x3*x5*x6 + 57.350517899424*x0*x3*x5*x7 + 64.4470877587767*x0*x3*x5 + 41.5558765553281*x0*x3*x6 * x6 + 60.0990521642339*x0*x3*x6*x7 + 61.2885023183473*x0*x3*x6 + 40.0723931749743*x0*x3*x7 * x7 + 70.9501685493127*x0*x3*x7 + 44.9631912972118*x0*x3 + 24.0192192532874*x0*x4 * x4 * x4 + 47.3216700450771*x0*x4 * x4*x5 + 50.014264902629*x0*x4 * x4*x6 + 47.4058567529805*x0*x4 * x4*x7 + 45.6493214743134*x0*x4 * x4 + 48.8626930964179*x0*x4*x5 * x5 + 69.793124053646*x0*x4*x5*x6 + 66.1312002220442*x0*x4*x5*x7 + 71.5206895958583*x0*x4*x5 + 48.9884437829701*x0*x4*x6 * x6 + 73.406329191391*x0*x4*x6*x7 + 71.2095287179163*x0*x4*x6 + 45.4745832474018*x0*x4*x7 * x7 + 65.0858683814869*x0*x4*x7 + 45.7284390598684*x0*x4 + 26.1002910357292*x0*x5 * x5 * x5 + 39.9222266416402*x0*x5 * x5*x6 + 43.8660732274092*x0*x5 * x5*x7 + 38.936670678584*x0*x5 * x5 + 41.7480132883047*x0*x5*x6 * x6 + 59.2388407212774*x0*x5*x6*x7 + 65.4054798579457*x0*x5*x6 + 41.198369658126*x0*x5*x7 * x7 + 60.3440545479393*x0*x5*x7 + 43.3581835387712*x0*x5 + 25.041992604952*x0*x6 * x6 * x6 + 46.6941093403497*x0*x6 * x6*x7 + 45.4191804980431*x0*x6 * x6 + 41.0863159402584*x0*x6*x7 * x7 + 63.0500902565633*x0*x6*x7 + 47.4030803861001*x0*x6 + 18.2996743581235*x0*x7 * x7 * x7 + 38.3590513392195*x0*x7 * x7 + 40.9956263308801*x0*x7 + 21.3563982031148*x0 + 13.1513380308516*x1 * x1 * x1 * x1 + 20.1754156555578*x1 * x1 * x1*x2 + 19.0451222928711*x1 * x1 * x1*x3 + 20.2690840894063*x1 * x1 * x1*x4 + 20.5249495755674*x1 * x1 * x1*x5 + 20.1761695883747*x1 * x1 * x1*x6 + 21.3350983134033*x1 * x1 * x1*x7 + 20.8955150669166*x1 * x1 * x1 + 34.1717812597837*x1 * x1*x2 * x2 + 36.9345858596991*x1 * x1*x2*x3 + 37.3602571436308*x1 * x1*x2*x4 + 43.3710715957325*x1 * x1*x2*x5 + 37.5589813772628*x1 * x1*x2*x6 + 42.6005793981405*x1 * x1*x2*x7 + 43.0839321783818*x1 * x1*x2 + 33.4252616898076*x1 * x1*x3 * x3 + 38.5827799424625*x1 * x1*x3*x4 + 41.2470427506538*x1 * x1*x3*x5 + 35.5077100069201*x1 * x1*x3*x6 + 42.8524897005174*x1 * x1*x3*x7 + 43.1739101630037*x1 * x1*x3 + 34.3430668862253*x1 * x1*x4 * x4 + 39.7142487594849*x1 * x1*x4*x5 + 42.4993991152477*x1 * x1*x4*x6 + 41.9976967065332*x1 * x1*x4*x7 + 43.7627123511079*x1 * x1*x4 + 34.8928522741103*x1 * x1*x5 * x5 + 36.3535407115776*x1 * x1*x5*x6 + 38.1010521806064*x1 * x1*x5*x7 + 44.7609132016902*x1 * x1*x5 + 34.4987691620607*x1 * x1*x6 * x6 + 38.9037806314853*x1 * x1*x6*x7 + 42.1468977028473*x1 * x1*x6 + 31.2917905649938*x1 * x1*x7 * x7 + 43.1844856083315*x1 * x1*x7 + 37.3172618902663*x1 * x1 + 18.7889820005797*x1*x2 * x2 * x2 + 33.7621641798065*x1*x2 * x2*x3 + 36.7009187106511*x1*x2 * x2*x4 + 44.3241334776602*x1*x2 * x2*x5 + 36.1584145183912*x1*x2 * x2*x6 + 40.9397214488469*x1*x2 * x2*x7 + 42.8033570638938*x1*x2 * x2 + 41.5107597822094*x1*x2*x3 * x3 + 55.2638542325282*x1*x2*x3*x4 + 59.0073566543566*x1*x2*x3*x5 + 50.4253385142668*x1*x2*x3*x6 + 62.7793957366172*x1*x2*x3*x7 + 60.6151830092885*x1*x2*x3 + 35.918738565577*x1*x2*x4 * x4 + 63.2914149561372*x1*x2*x4*x5 + 55.5513740537082*x1*x2*x4*x6 + 57.7837798074274*x1*x2*x4*x7 + 61.6968755906698*x1*x2*x4 + 45.0157381747646*x1*x2*x5 * x5 + 57.8297546175522*x1*x2*x5*x6 + 67.9417585613708*x1*x2*x5*x7 + 66.3406426829048*x1*x2*x5 + 38.8271294500371*x1*x2*x6 * x6 + 58.0450753249965*x1*x2*x6*x7 + 59.390013756737*x1*x2*x6 + 40.4779077396832*x1*x2*x7 * x7 + 68.3207596383625*x1*x2*x7 + 46.2137551160791*x1*x2 + 16.2088664939571*x1*x3 * x3 * x3 + 38.5846156122027*x1*x3 * x3*x4 + 35.6805422893224*x1*x3 * x3*x5 + 35.0220163212969*x1*x3 * x3*x6 + 40.7069273374336*x1*x3 * x3*x7 + 41.2303414721648*x1*x3 * x3 + 40.8114098593416*x1*x3*x4 * x4 + 58.9948930973702*x1*x3*x4*x5 + 54.4466650052315*x1*x3*x4*x6 + 60.6529365378552*x1*x3*x4*x7 + 64.383794122594*x1*x3*x4 + 38.0640355890954*x1*x3*x5 * x5 + 53.9679004127224*x1*x3*x5*x6 + 58.5269741622512*x1*x3*x5*x7 + 57.0178325847407*x1*x3*x5 + 35.6620696710052*x1*x3*x6 * x6 + 51.6626314286636*x1*x3*x6*x7 + 63.2435893727419*x1*x3*x6 + 41.4669420805141*x1*x3*x7 * x7 + 63.4568312203601*x1*x3*x7 + 40.685659294389*x1*x3 + 18.5970111855015*x1*x4 * x4 * x4 + 41.1935057510499*x1*x4 * x4*x5 + 41.2688042099056*x1*x4 * x4*x6 + 42.2667086598272*x1*x4 * x4*x7 + 42.626637098601*x1*x4 * x4 + 44.9369382689144*x1*x4*x5 * x5 + 57.3849895042731*x1*x4*x5*x6 + 60.8675576975859*x1*x4*x5*x7 + 65.5288241093321*x1*x4*x5 + 42.7472375859348*x1*x4*x6 * x6 + 66.007870460834*x1*x4*x6*x7 + 64.8021754264867*x1*x4*x6 + 40.0435094883886*x1*x4*x7 * x7 + 67.3999049414492*x1*x4*x7 + 44.8175660764249*x1*x4 + 23.6361059797942*x1*x5 * x5 * x5 + 40.5536351139341*x1*x5 * x5*x6 + 43.1967086917455*x1*x5 * x5*x7 + 42.2535854357365*x1*x5 * x5 + 39.5682923993788*x1*x5*x6 * x6 + 59.3435164829664*x1*x5*x6*x7 + 59.2730017182138*x1*x5*x6 + 39.4247733942602*x1*x5*x7 * x7 + 59.8867503429742*x1*x5*x7 + 43.2419336244913*x1*x5 + 17.5809856483112*x1*x6 * x6 * x6 + 41.0044546687388*x1*x6 * x6*x7 + 42.6875319101365*x1*x6 * x6 + 37.6199659976557*x1*x6*x7 * x7 + 66.6644705102376*x1*x6*x7 + 40.8512036723084*x1*x6 + 20.5092216334106*x1*x7 * x7 * x7 + 39.3645357379862*x1*x7 * x7 + 43.7915193080706*x1*x7 + 21.7215927339793*x1 + 13.1598383763576*x2 * x2 * x2 * x2 + 16.8257761462382*x2 * x2 * x2*x3 + 13.7080457138107*x2 * x2 * x2*x4 + 21.9884561079213*x2 * x2 * x2*x5 + 16.754164101271*x2 * x2 * x2*x6 + 19.4364998787857*x2 * x2 * x2*x7 + 19.8538565411844*x2 * x2 * x2 + 29.892989543298*x2 * x2*x3 * x3 + 34.7693391818101*x2 * x2*x3*x4 + 34.7014032401357*x2 * x2*x3*x5 + 31.6828606941671*x2 * x2*x3*x6 + 38.4708238403597*x2 * x2*x3*x7 + 39.1913450610564*x2 * x2*x3 + 28.8395589181957*x2 * x2*x4 * x4 + 36.8732911378391*x2 * x2*x4*x5 + 38.9146296419477*x2 * x2*x4*x6 + 41.0737033664152*x2 * x2*x4*x7 + 40.6667589502493*x2 * x2*x4 + 36.6616866726875*x2 * x2*x5 * x5 + 35.748370768495*x2 * x2*x5*x6 + 41.8844439901305*x2 * x2*x5*x7 + 43.0660220542907*x2 * x2*x5 + 30.4612748301839*x2 * x2*x6 * x6 + 35.9398836845268*x2 * x2*x6*x7 + 38.3919175660809*x2 * x2*x6 + 32.6318455538628*x2 * x2*x7 * x7 + 42.3885364624302*x2 * x2*x7 + 37.0769561503553*x2 * x2 + 17.1016881072603*x2*x3 * x3 * x3 + 31.8592552827595*x2*x3 * x3*x4 + 37.236331454661*x2*x3 * x3*x5 + 29.6361761427321*x2*x3 * x3*x6 + 41.0892607979684*x2*x3 * x3*x7 + 42.1633416101973*x2*x3 * x3 + 35.8486667081106*x2*x3*x4 * x4 + 53.4310719791072*x2*x3*x4*x5 + 50.4736429164811*x2*x3*x4*x6 + 57.7422627355538*x2*x3*x4*x7 + 63.0209931046185*x2*x3*x4 + 39.0406959302963*x2*x3*x5 * x5 + 49.2966189576513*x2*x3*x5*x6 + 56.0566916497548*x2*x3*x5*x7 + 62.7428189703949*x2*x3*x5 + 32.6976800164252*x2*x3*x6 * x6 + 55.5935808284724*x2*x3*x6*x7 + 60.0067252921476*x2*x3*x6 + 39.9784375216735*x2*x3*x7 * x7 + 64.8296940583234*x2*x3*x7 + 45.2179775107778*x2*x3 + 15.4812747309206*x2*x4 * x4 * x4 + 37.3751819669301*x2*x4 * x4*x5 + 36.4929324206392*x2*x4 * x4*x6 + 38.2458485976672*x2*x4 * x4*x7 + 43.0045507592408*x2*x4 * x4 + 41.2281689593591*x2*x4*x5 * x5 + 57.41169144218*x2*x4*x5*x6 + 59.7880328277324*x2*x4*x5*x7 + 63.6296196266861*x2*x4*x5 + 37.4207846108028*x2*x4*x6 * x6 + 57.0917936786202*x2*x4*x6*x7 + 59.9087839755221*x2*x4*x6 + 38.547414774417*x2*x4*x7 * x7 + 64.4079539075147*x2*x4*x7 + 41.4628550815031*x2*x4 + 24.0010410277142*x2*x5 * x5 * x5 + 38.1192016737435*x2*x5 * x5*x6 + 44.1558153999912*x2*x5 * x5*x7 + 47.5818591095351*x2*x5 * x5 + 36.3569553021883*x2*x5*x6 * x6 + 56.0275470607651*x2*x5*x6*x7 + 60.3356608126091*x2*x5*x6 + 41.4577181993723*x2*x5*x7 * x7 + 66.4588002418057*x2*x5*x7 + 45.869565771333*x2*x5 + 17.7764931422367*x2*x6 * x6 * x6 + 38.3957646498611*x2*x6 * x6*x7 + 42.1547302718261*x2*x6 * x6 + 35.1301638424519*x2*x6*x7 * x7 + 60.884021599689*x2*x6*x7 + 41.2787819843563*x2*x6 + 19.813297776171*x2*x7 * x7 * x7 + 41.287519759571*x2*x7 * x7 + 44.214294090299*x2*x7 + 24.4443154376562*x2 + 13.2007090665418*x3 * x3 * x3 * x3 + 21.471403339523*x3 * x3 * x3*x4 + 17.0770743248591*x3 * x3 * x3*x5 + 16.5355303798312*x3 * x3 * x3*x6 + 19.8598473385372*x3 * x3 * x3*x7 + 18.7012574943545*x3 * x3 * x3 + 34.5268017063839*x3 * x3*x4 * x4 + 37.3490062430219*x3 * x3*x4*x5 + 39.402891830098*x3 * x3*x4*x6 + 40.9828325024014*x3 * x3*x4*x7 + 40.9079134203445*x3 * x3*x4 + 34.4397492170705*x3 * x3*x5 * x5 + 31.0212437206072*x3 * x3*x5*x6 + 38.2874284009733*x3 * x3*x5*x7 + 40.2416727055825*x3 * x3*x5 + 31.5520188480391*x3 * x3*x6 * x6 + 36.612639422155*x3 * x3*x6*x7 + 38.6446272671865*x3 * x3*x6 + 34.7388204506502*x3 * x3*x7 * x7 + 40.8487844456219*x3 * x3*x7 + 37.2958529386836*x3 * x3 + 20.834983195011*x3*x4 * x4 * x4 + 38.040923222127*x3*x4 * x4*x5 + 42.9623381122634*x3*x4 * x4*x6 + 41.2326840471322*x3*x4 * x4*x7 + 42.7449683689222*x3*x4 * x4 + 42.0161440430886*x3*x4*x5 * x5 + 60.4451675047457*x3*x4*x5*x6 + 58.8883953321073*x3*x4*x5*x7 + 61.129446885322*x3*x4*x5 + 42.7063478780637*x3*x4*x6 * x6 + 66.8978285245792*x3*x4*x6*x7 + 62.6124120729355*x3*x4*x6 + 38.9267862580604*x3*x4*x7 * x7 + 63.9255085908692*x3*x4*x7 + 45.5001028197998*x3*x4 + 19.3558253377892*x3*x5 * x5 * x5 + 33.1014015872338*x3*x5 * x5*x6 + 38.957001153536*x3*x5 * x5*x7 + 41.2850709982317*x3*x5 * x5 + 34.874206790737*x3*x5*x6 * x6 + 52.2357231963385*x3*x5*x6*x7 + 49.1263811903963*x3*x5*x6 + 34.538909388652*x3*x5*x7 * x7 + 60.9706985703051*x3*x5*x7 + 40.0842373521872*x3*x5 + 18.9363648052925*x3*x6 * x6 * x6 + 37.1060495892409*x3*x6 * x6*x7 + 37.6456753887161*x3*x6 * x6 + 37.3233950094977*x3*x6*x7 * x7 + 57.2420935556093*x3*x6*x7 + 37.8254696065094*x3*x6 + 18.5736149869117*x3*x7 * x7 * x7 + 38.2600170954144*x3*x7 * x7 + 40.9887156766337*x3*x7 + 22.2759303252393*x3 + 12.387399857829*x4 * x4 * x4 * x4 + 21.2790645470031*x4 * x4 * x4*x5 + 23.4792779530211*x4 * x4 * x4*x6 + 20.3206415635091*x4 * x4 * x4*x7 + 21.4888262756165*x4 * x4 * x4 + 36.1984537647977*x4 * x4*x5 * x5 + 44.9102067589917*x4 * x4*x5*x6 + 41.2189177707925*x4 * x4*x5*x7 + 41.4791343797354*x4 * x4*x5 + 39.5561568038279*x4 * x4*x6 * x6 + 40.568992134313*x4 * x4*x6*x7 + 46.0138682196029*x4 * x4*x6 + 32.4402857469041*x4 * x4*x7 * x7 + 40.3147826559284*x4 * x4*x7 + 35.38561038398*x4 * x4 + 23.3449154766413*x4*x5 * x5 * x5 + 46.0597608235538*x4*x5 * x5*x6 + 41.7497851998301*x4*x5 * x5*x7 + 46.0458101524972*x4*x5 * x5 + 42.2031164492152*x4*x5*x6 * x6 + 57.9334801654524*x4*x5*x6*x7 + 61.8833731245322*x4*x5*x6 + 41.0573412580036*x4*x5*x7 * x7 + 63.7533561654898*x4*x5*x7 + 44.9284578023539*x4*x5 + 25.3384869268766*x4*x6 * x6 * x6 + 45.0782056124715*x4*x6 * x6*x7 + 46.33021997966*x4*x6 * x6 + 41.6597748440501*x4*x6*x7 * x7 + 61.3791183893857*x4*x6*x7 + 44.5719267441026*x4*x6 + 19.793467882085*x4*x7 * x7 * x7 + 42.6891418071926*x4*x7 * x7 + 44.2846044818431*x4*x7 + 23.9656836718654*x4 + 15.2901456341567*x5 * x5 * x5 * x5 + 20.0523574758804*x5 * x5 * x5*x6 + 20.6674488897391*x5 * x5 * x5*x7 + 18.7787590906504*x5 * x5 * x5 + 32.6970634639074*x5 * x5*x6 * x6 + 38.0087645818103*x5 * x5*x6*x7 + 37.7624453257185*x5 * x5*x6 + 33.3543212981777*x5 * x5*x7 * x7 + 39.7490472743566*x5 * x5*x7 + 35.9147216616689*x5 * x5 + 17.9407513058396*x5*x6 * x6 * x6 + 36.1596233497809*x5*x6 * x6*x7 + 39.0836387828822*x5*x6 * x6 + 33.328395142213*x5*x6*x7 * x7 + 56.1974451870408*x5*x6*x7 + 35.2059187678114*x5*x6 + 18.6998944460365*x5*x7 * x7 * x7 + 36.136169080596*x5*x7 * x7 + 41.6473269410839*x5*x7 + 23.8246054684048*x5 + 14.3967409552558*x6 * x6 * x6 * x6 + 20.9460109577897*x6 * x6 * x6*x7 + 22.2647343312423*x6 * x6 * x6 + 35.1864595927894*x6 * x6*x7 * x7 + 40.7255075606395*x6 * x6*x7 + 36.5458249678314*x6 * x6 + 18.5116567838728*x6*x7 * x7 * x7 + 41.072742017363*x6*x7 * x7 + 42.3224035499134*x6*x7 + 22.2769718516433*x6 + 11.3628771240578*x7 * x7 * x7 * x7 + 18.188588049851*x7 * x7 * x7 + 35.1540938744921*x7 * x7 + 22.2677621108927*x7 + 14.6797226375162 >= 0. diff --git a/examples/valid/poly_v8_d2_s2025_2.ae b/examples/valid/poly_v8_d2_s2025_2.ae new file mode 100644 index 000000000..fa70fe262 --- /dev/null +++ b/examples/valid/poly_v8_d2_s2025_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7:real. + 12.7093885715401*x0 * x0 * x0 * x0 + 17.8525451500929*x0 * x0 * x0*x1 + 20.6493304685397*x0 * x0 * x0*x2 + 20.8904896196246*x0 * x0 * x0*x3 + 22.5053818369894*x0 * x0 * x0*x4 + 22.66618348579*x0 * x0 * x0*x5 + 20.0282134125569*x0 * x0 * x0*x6 + 17.328276648606*x0 * x0 * x0*x7 + 21.3642177441769*x0 * x0 * x0 + 32.2058677063983*x0 * x0*x1 * x1 + 38.898967810713*x0 * x0*x1*x2 + 36.5472710063161*x0 * x0*x1*x3 + 43.2756787579267*x0 * x0*x1*x4 + 40.9245611917826*x0 * x0*x1*x5 + 38.4096225553854*x0 * x0*x1*x6 + 40.4865194933825*x0 * x0*x1*x7 + 43.8869019154944*x0 * x0*x1 + 37.1827378354696*x0 * x0*x2 * x2 + 40.3786673550938*x0 * x0*x2*x3 + 39.5052022788389*x0 * x0*x2*x4 + 44.4842879276498*x0 * x0*x2*x5 + 39.0143022200089*x0 * x0*x2*x6 + 39.0114360259772*x0 * x0*x2*x7 + 47.6937840348623*x0 * x0*x2 + 37.4493639157503*x0 * x0*x3 * x3 + 43.3951946001721*x0 * x0*x3*x4 + 46.429253420349*x0 * x0*x3*x5 + 41.6840038330458*x0 * x0*x3*x6 + 37.7493251619031*x0 * x0*x3*x7 + 43.526113169283*x0 * x0*x3 + 35.3923853328773*x0 * x0*x4 * x4 + 46.4829366769677*x0 * x0*x4*x5 + 40.1047783665878*x0 * x0*x4*x6 + 37.0274321335592*x0 * x0*x4*x7 + 46.6604363079477*x0 * x0*x4 + 36.0649191473518*x0 * x0*x5 * x5 + 41.6311280947831*x0 * x0*x5*x6 + 45.0660551471838*x0 * x0*x5*x7 + 40.585818401613*x0 * x0*x5 + 33.3265661285246*x0 * x0*x6 * x6 + 36.9002324997076*x0 * x0*x6*x7 + 43.5384946869402*x0 * x0*x6 + 33.3820731096925*x0 * x0*x7 * x7 + 40.2258931144382*x0 * x0*x7 + 32.7405055356828*x0 * x0 + 19.9790179891301*x0*x1 * x1 * x1 + 40.8779304631581*x0*x1 * x1*x2 + 37.7480098394689*x0*x1 * x1*x3 + 42.018536706362*x0*x1 * x1*x4 + 42.9532517763399*x0*x1 * x1*x5 + 40.933779066992*x0*x1 * x1*x6 + 39.7993626613081*x0*x1 * x1*x7 + 45.0737764936308*x0*x1 * x1 + 41.0509828264678*x0*x1*x2 * x2 + 59.1427623181469*x0*x1*x2*x3 + 62.7460794929818*x0*x1*x2*x4 + 62.7537059877548*x0*x1*x2*x5 + 57.3055820216228*x0*x1*x2*x6 + 61.6822641330404*x0*x1*x2*x7 + 70.1683413465498*x0*x1*x2 + 40.3201364988483*x0*x1*x3 * x3 + 63.0792326333349*x0*x1*x3*x4 + 65.2468610232675*x0*x1*x3*x5 + 58.6013659308016*x0*x1*x3*x6 + 57.8602403020396*x0*x1*x3*x7 + 62.1580401282571*x0*x1*x3 + 46.4778928985734*x0*x1*x4 * x4 + 70.2856310355016*x0*x1*x4*x5 + 60.4960395808208*x0*x1*x4*x6 + 63.0434370592897*x0*x1*x4*x7 + 73.1482083402788*x0*x1*x4 + 40.5605881134703*x0*x1*x5 * x5 + 65.2165113131656*x0*x1*x5*x6 + 63.9241175164552*x0*x1*x5*x7 + 67.3723005798383*x0*x1*x5 + 39.3580298095354*x0*x1*x6 * x6 + 60.6599218676651*x0*x1*x6*x7 + 63.9187871369876*x0*x1*x6 + 40.0454201162029*x0*x1*x7 * x7 + 62.0194710185988*x0*x1*x7 + 44.2134746537439*x0*x1 + 21.0232984292368*x0*x2 * x2 * x2 + 43.2455866407538*x0*x2 * x2*x3 + 41.6589059278613*x0*x2 * x2*x4 + 45.6944939869131*x0*x2 * x2*x5 + 44.3550742492453*x0*x2 * x2*x6 + 40.9763660850945*x0*x2 * x2*x7 + 46.7229922156591*x0*x2 * x2 + 44.3015901245372*x0*x2*x3 * x3 + 61.5363200116798*x0*x2*x3*x4 + 68.5516629862135*x0*x2*x3*x5 + 62.6019972426326*x0*x2*x3*x6 + 65.0921674796209*x0*x2*x3*x7 + 69.2055995959838*x0*x2*x3 + 42.6285840348534*x0*x2*x4 * x4 + 64.329170609341*x0*x2*x4*x5 + 55.8669939691219*x0*x2*x4*x6 + 55.9042131050734*x0*x2*x4*x7 + 67.6520296957247*x0*x2*x4 + 40.669663714896*x0*x2*x5 * x5 + 68.2141316440054*x0*x2*x5*x6 + 67.8803934008158*x0*x2*x5*x7 + 69.8044792762588*x0*x2*x5 + 40.1108262615523*x0*x2*x6 * x6 + 63.0139967918122*x0*x2*x6*x7 + 65.4651960792896*x0*x2*x6 + 41.1636963725627*x0*x2*x7 * x7 + 64.3209800034759*x0*x2*x7 + 46.421629000875*x0*x2 + 23.9751731379924*x0*x3 * x3 * x3 + 44.0607681597353*x0*x3 * x3*x4 + 51.7087334494898*x0*x3 * x3*x5 + 46.5722793278159*x0*x3 * x3*x6 + 40.3506712434834*x0*x3 * x3*x7 + 48.8448475992491*x0*x3 * x3 + 45.4277969881165*x0*x3*x4 * x4 + 69.3322246665471*x0*x3*x4*x5 + 62.9000701174282*x0*x3*x4*x6 + 58.3681817097635*x0*x3*x4*x7 + 67.9881524061242*x0*x3*x4 + 45.7393213968963*x0*x3*x5 * x5 + 71.135439807173*x0*x3*x5*x6 + 69.3961985200119*x0*x3*x5*x7 + 67.3776037274973*x0*x3*x5 + 40.4635172953463*x0*x3*x6 * x6 + 58.4777705354799*x0*x3*x6*x7 + 62.9017521581035*x0*x3*x6 + 38.9803596365163*x0*x3*x7 * x7 + 61.2421456663014*x0*x3*x7 + 43.2905803773773*x0*x3 + 23.3375398554814*x0*x4 * x4 * x4 + 48.8067436380106*x0*x4 * x4*x5 + 42.2680990744927*x0*x4 * x4*x6 + 39.8824986197156*x0*x4 * x4*x7 + 51.4276837536274*x0*x4 * x4 + 43.3927756872934*x0*x4*x5 * x5 + 64.8299196669078*x0*x4*x5*x6 + 69.6535649975159*x0*x4*x5*x7 + 69.0996467761852*x0*x4*x5 + 43.4518739909623*x0*x4*x6 * x6 + 56.5307701252908*x0*x4*x6*x7 + 64.3174675113295*x0*x4*x6 + 40.7597582294724*x0*x4*x7 * x7 + 60.6944144913119*x0*x4*x7 + 47.38373583227*x0*x4 + 21.9735085907959*x0*x5 * x5 * x5 + 43.5674028088875*x0*x5 * x5*x6 + 43.4707687390702*x0*x5 * x5*x7 + 41.4847880647531*x0*x5 * x5 + 46.7641539580606*x0*x5*x6 * x6 + 69.676910145153*x0*x5*x6*x7 + 63.9328344165063*x0*x5*x6 + 48.8358881141461*x0*x5*x7 * x7 + 64.7734884617699*x0*x5*x7 + 41.4695540713666*x0*x5 + 20.6288826968791*x0*x6 * x6 * x6 + 40.5236165385438*x0*x6 * x6*x7 + 41.4189993661986*x0*x6 * x6 + 40.5250503276437*x0*x6*x7 * x7 + 65.0547086098033*x0*x6*x7 + 38.2192392445726*x0*x6 + 20.0929406946662*x0*x7 * x7 * x7 + 42.8175770754475*x0*x7 * x7 + 42.0365258491769*x0*x7 + 19.8580681064223*x0 + 13.7783731223859*x1 * x1 * x1 * x1 + 21.0361575909525*x1 * x1 * x1*x2 + 19.3162244723382*x1 * x1 * x1*x3 + 22.9865187185791*x1 * x1 * x1*x4 + 20.1489899169729*x1 * x1 * x1*x5 + 20.8553421925999*x1 * x1 * x1*x6 + 23.3593358156324*x1 * x1 * x1*x7 + 24.4785336468185*x1 * x1 * x1 + 31.7004940159159*x1 * x1*x2 * x2 + 40.4556930165101*x1 * x1*x2*x3 + 42.5679248752281*x1 * x1*x2*x4 + 40.2586430575407*x1 * x1*x2*x5 + 37.5266053622113*x1 * x1*x2*x6 + 44.8293286618272*x1 * x1*x2*x7 + 47.3287454502574*x1 * x1*x2 + 35.6499511263022*x1 * x1*x3 * x3 + 45.5731143543341*x1 * x1*x3*x4 + 44.7400554950071*x1 * x1*x3*x5 + 37.7797873212652*x1 * x1*x3*x6 + 44.5241288430372*x1 * x1*x3*x7 + 44.7609578276011*x1 * x1*x3 + 40.1454694499348*x1 * x1*x4 * x4 + 48.3393688844804*x1 * x1*x4*x5 + 41.4933403745865*x1 * x1*x4*x6 + 45.1228449514286*x1 * x1*x4*x7 + 50.7417749628018*x1 * x1*x4 + 34.6467480429008*x1 * x1*x5 * x5 + 42.9541743767019*x1 * x1*x5*x6 + 50.2729760697726*x1 * x1*x5*x7 + 43.6451698482379*x1 * x1*x5 + 35.3429171695227*x1 * x1*x6 * x6 + 42.8676490763042*x1 * x1*x6*x7 + 44.0058820107577*x1 * x1*x6 + 38.7249339629569*x1 * x1*x7 * x7 + 49.0158404202028*x1 * x1*x7 + 37.0063607418879*x1 * x1 + 20.9185058154101*x1*x2 * x2 * x2 + 41.9519503882431*x1*x2 * x2*x3 + 42.5117426181299*x1*x2 * x2*x4 + 44.0324465602058*x1*x2 * x2*x5 + 40.4138659006312*x1*x2 * x2*x6 + 48.1116678072443*x1*x2 * x2*x7 + 46.7196953874484*x1*x2 * x2 + 41.7677712427382*x1*x2*x3 * x3 + 64.0775005232389*x1*x2*x3*x4 + 63.6697419528519*x1*x2*x3*x5 + 58.6923865873454*x1*x2*x3*x6 + 67.1208354490734*x1*x2*x3*x7 + 68.2320521212881*x1*x2*x3 + 41.0911062219046*x1*x2*x4 * x4 + 62.8372364494018*x1*x2*x4*x5 + 58.2523994864885*x1*x2*x4*x6 + 61.7133941747426*x1*x2*x4*x7 + 70.1774455720362*x1*x2*x4 + 38.0920980033797*x1*x2*x5 * x5 + 60.7514265452277*x1*x2*x5*x6 + 68.048648568891*x1*x2*x5*x7 + 64.7070428563906*x1*x2*x5 + 39.6242531677254*x1*x2*x6 * x6 + 66.5338197185034*x1*x2*x6*x7 + 64.61953106143*x1*x2*x6 + 47.7570689081521*x1*x2*x7 * x7 + 70.1670943556184*x1*x2*x7 + 47.3334219274954*x1*x2 + 21.3012932418082*x1*x3 * x3 * x3 + 47.7716531167959*x1*x3 * x3*x4 + 47.1771914926441*x1*x3 * x3*x5 + 44.211466630452*x1*x3 * x3*x6 + 45.0321470977081*x1*x3 * x3*x7 + 47.9993440872047*x1*x3 * x3 + 46.866316288855*x1*x3*x4 * x4 + 69.0601291906853*x1*x3*x4*x5 + 63.8336680795346*x1*x3*x4*x6 + 66.6851827183202*x1*x3*x4*x7 + 72.3919139510261*x1*x3*x4 + 42.7890058755087*x1*x3*x5 * x5 + 65.3781414783129*x1*x3*x5*x6 + 71.8191135980378*x1*x3*x5*x7 + 69.8764402532213*x1*x3*x5 + 37.4890619075741*x1*x3*x6 * x6 + 64.0887622607858*x1*x3*x6*x7 + 64.0593860073009*x1*x3*x6 + 43.0954560420433*x1*x3*x7 * x7 + 67.1053336695731*x1*x3*x7 + 43.5469323873171*x1*x3 + 27.4804492267975*x1*x4 * x4 * x4 + 47.6889786044328*x1*x4 * x4*x5 + 44.8118420049493*x1*x4 * x4*x6 + 44.6620531105842*x1*x4 * x4*x7 + 52.9059296629841*x1*x4 * x4 + 46.9051096759059*x1*x4*x5 * x5 + 68.5259876395829*x1*x4*x5*x6 + 71.4684921033405*x1*x4*x5*x7 + 70.9794801011974*x1*x4*x5 + 41.719139909944*x1*x4*x6 * x6 + 69.925176252954*x1*x4*x6*x7 + 67.4188654807669*x1*x4*x6 + 47.8328379285968*x1*x4*x7 * x7 + 71.0159015643034*x1*x4*x7 + 49.6052175339699*x1*x4 + 20.1234464842392*x1*x5 * x5 * x5 + 40.7562776846947*x1*x5 * x5*x6 + 43.498479028933*x1*x5 * x5*x7 + 39.0756365238384*x1*x5 * x5 + 41.403652429119*x1*x5*x6 * x6 + 71.7216154568897*x1*x5*x6*x7 + 62.0164350753064*x1*x5*x6 + 50.7815288505535*x1*x5*x7 * x7 + 67.9224202655812*x1*x5*x7 + 40.6788499370688*x1*x5 + 21.3370810509474*x1*x6 * x6 * x6 + 41.7775604352992*x1*x6 * x6*x7 + 42.9588553987975*x1*x6 * x6 + 45.0616328925171*x1*x6*x7 * x7 + 67.9166790181601*x1*x6*x7 + 42.9038060112052*x1*x6 + 25.8355944964093*x1*x7 * x7 * x7 + 50.3462665745091*x1*x7 * x7 + 45.6853748682161*x1*x7 + 23.5006990426535*x1 + 14.8331759308908*x2 * x2 * x2 * x2 + 21.5148348744494*x2 * x2 * x2*x3 + 19.1147072790856*x2 * x2 * x2*x4 + 19.6296706846134*x2 * x2 * x2*x5 + 20.6276652058181*x2 * x2 * x2*x6 + 22.9992773231359*x2 * x2 * x2*x7 + 24.6415053902762*x2 * x2 * x2 + 39.8708170914256*x2 * x2*x3 * x3 + 41.5610993578406*x2 * x2*x3*x4 + 45.1202074135972*x2 * x2*x3*x5 + 43.9654508141281*x2 * x2*x3*x6 + 44.1742801404277*x2 * x2*x3*x7 + 45.4844262257578*x2 * x2*x3 + 35.5540490287094*x2 * x2*x4 * x4 + 40.87504158079*x2 * x2*x4*x5 + 39.1552652780246*x2 * x2*x4*x6 + 39.0358037398084*x2 * x2*x4*x7 + 43.4795640412145*x2 * x2*x4 + 32.601259743749*x2 * x2*x5 * x5 + 39.3491766527103*x2 * x2*x5*x6 + 45.3519838327289*x2 * x2*x5*x7 + 40.5479183460056*x2 * x2*x5 + 32.9976565215901*x2 * x2*x6 * x6 + 44.8205745816576*x2 * x2*x6*x7 + 43.2302782736433*x2 * x2*x6 + 38.9885808314535*x2 * x2*x7 * x7 + 45.7307436832418*x2 * x2*x7 + 36.5919177157127*x2 * x2 + 24.3883742990618*x2*x3 * x3 * x3 + 45.2602874027127*x2*x3 * x3*x4 + 49.8237939566766*x2*x3 * x3*x5 + 42.9657440500762*x2*x3 * x3*x6 + 49.4324741367353*x2*x3 * x3*x7 + 48.7734490754681*x2*x3 * x3 + 41.2092647106237*x2*x3*x4 * x4 + 63.5818459686328*x2*x3*x4*x5 + 62.053354298966*x2*x3*x4*x6 + 63.3476176460193*x2*x3*x4*x7 + 67.7595580709017*x2*x3*x4 + 41.1569580275451*x2*x3*x5 * x5 + 65.7728480301216*x2*x3*x5*x6 + 69.042627687545*x2*x3*x5*x7 + 68.0748016003507*x2*x3*x5 + 44.0692800589681*x2*x3*x6 * x6 + 66.6993991716883*x2*x3*x6*x7 + 63.4460890748371*x2*x3*x6 + 46.5915723015495*x2*x3*x7 * x7 + 70.3454326610845*x2*x3*x7 + 45.7239389456987*x2*x3 + 19.3268391213008*x2*x4 * x4 * x4 + 40.601943635773*x2*x4 * x4*x5 + 39.2266995307027*x2*x4 * x4*x6 + 36.582756393318*x2*x4 * x4*x7 + 46.1231975102896*x2*x4 * x4 + 39.0703905484134*x2*x4*x5 * x5 + 56.0550243763286*x2*x4*x5*x6 + 58.6663242547005*x2*x4*x5*x7 + 59.7683166652614*x2*x4*x5 + 36.8138349266182*x2*x4*x6 * x6 + 58.0091893958763*x2*x4*x6*x7 + 61.690020820722*x2*x4*x6 + 41.1927381781584*x2*x4*x7 * x7 + 62.0826665479883*x2*x4*x7 + 46.0297676146535*x2*x4 + 19.8081738867298*x2*x5 * x5 * x5 + 39.5055811284777*x2*x5 * x5*x6 + 43.0891016437202*x2*x5 * x5*x7 + 36.7714866402055*x2*x5 * x5 + 45.3785290455446*x2*x5*x6 * x6 + 68.0214529498132*x2*x5*x6*x7 + 60.3372776971705*x2*x5*x6 + 47.1592478955796*x2*x5*x7 * x7 + 65.5230239066935*x2*x5*x7 + 40.6704794880603*x2*x5 + 20.371902740949*x2*x6 * x6 * x6 + 44.2091503760332*x2*x6 * x6*x7 + 43.4698553720276*x2*x6 * x6 + 47.5700967496307*x2*x6*x7 * x7 + 65.6095552634832*x2*x6*x7 + 44.0791608679452*x2*x6 + 23.6069859928864*x2*x7 * x7 * x7 + 45.6922914148145*x2*x7 * x7 + 45.3717560654488*x2*x7 + 23.066141773437*x2 + 17.9683727598807*x3 * x3 * x3 * x3 + 25.1013629747608*x3 * x3 * x3*x4 + 29.711480810759*x3 * x3 * x3*x5 + 24.5859649025286*x3 * x3 * x3*x6 + 23.4065318515085*x3 * x3 * x3*x7 + 22.4443027585033*x3 * x3 * x3 + 41.1213029603513*x3 * x3*x4 * x4 + 52.2570696488751*x3 * x3*x4*x5 + 44.4072740967235*x3 * x3*x4*x6 + 42.1233538673114*x3 * x3*x4*x7 + 46.6852227941084*x3 * x3*x4 + 41.2023870934849*x3 * x3*x5 * x5 + 50.1370546720967*x3 * x3*x5*x6 + 50.129200068711*x3 * x3*x5*x7 + 42.8085772062005*x3 * x3*x5 + 41.0733541732509*x3 * x3*x6 * x6 + 49.077986517926*x3 * x3*x6*x7 + 48.0950528782248*x3 * x3*x6 + 40.0976955395265*x3 * x3*x7 * x7 + 45.0067659598982*x3 * x3*x7 + 35.9874953714063*x3 * x3 + 23.4433692621596*x3*x4 * x4 * x4 + 49.2622096398571*x3*x4 * x4*x5 + 47.2496130471523*x3*x4 * x4*x6 + 43.3581949547898*x3*x4 * x4*x7 + 48.4204832267933*x3*x4 * x4 + 47.3848263850228*x3*x4*x5 * x5 + 66.1930244121034*x3*x4*x5*x6 + 66.4577534728525*x3*x4*x5*x7 + 64.2223054268579*x3*x4*x5 + 42.7294174686185*x3*x4*x6 * x6 + 62.1115366513496*x3*x4*x6*x7 + 65.0546983064292*x3*x4*x6 + 45.9511736351399*x3*x4*x7 * x7 + 65.6584149239528*x3*x4*x7 + 48.609491806799*x3*x4 + 21.4150648921196*x3*x5 * x5 * x5 + 46.1985386207665*x3*x5 * x5*x6 + 46.2007107289113*x3*x5 * x5*x7 + 39.7708300915503*x3*x5 * x5 + 48.7708057017595*x3*x5*x6 * x6 + 77.4520956044498*x3*x5*x6*x7 + 62.3003048485809*x3*x5*x6 + 50.6417859023206*x3*x5*x7 * x7 + 66.8157645087383*x3*x5*x7 + 43.9390502300738*x3*x5 + 21.8155731501673*x3*x6 * x6 * x6 + 43.1412668708935*x3*x6 * x6*x7 + 42.8092914838352*x3*x6 * x6 + 48.3092121720939*x3*x6*x7 * x7 + 60.5132779369677*x3*x6*x7 + 40.4062845786247*x3*x6 + 24.2688138428858*x3*x7 * x7 * x7 + 46.9490547192935*x3*x7 * x7 + 38.658429560825*x3*x7 + 20.0964615541284*x3 + 16.2052439114076*x4 * x4 * x4 * x4 + 24.3980401505085*x4 * x4 * x4*x5 + 19.0077979186164*x4 * x4 * x4*x6 + 22.5130912717621*x4 * x4 * x4*x7 + 25.6207246588187*x4 * x4 * x4 + 38.3671592443559*x4 * x4*x5 * x5 + 42.692385735267*x4 * x4*x5*x6 + 46.1755990380253*x4 * x4*x5*x7 + 43.6004580981874*x4 * x4*x5 + 37.1542730668761*x4 * x4*x6 * x6 + 42.7057849934468*x4 * x4*x6*x7 + 45.5076982983003*x4 * x4*x6 + 36.4059942991553*x4 * x4*x7 * x7 + 42.1721856200994*x4 * x4*x7 + 39.9936891464092*x4 * x4 + 21.0077516692973*x4*x5 * x5 * x5 + 40.315868610104*x4*x5 * x5*x6 + 41.9046518819655*x4*x5 * x5*x7 + 36.8853469261006*x4*x5 * x5 + 45.3040455686708*x4*x5*x6 * x6 + 66.0643188022416*x4*x5*x6*x7 + 60.634755355364*x4*x5*x6 + 43.9967874153444*x4*x5*x7 * x7 + 64.2392359447928*x4*x5*x7 + 40.961675258121*x4*x5 + 19.0183461812643*x4*x6 * x6 * x6 + 42.5034649696291*x4*x6 * x6*x7 + 42.0194162698394*x4*x6 * x6 + 42.4942332948167*x4*x6*x7 * x7 + 60.8739222898894*x4*x6*x7 + 39.0011925702994*x4*x6 + 20.345984480452*x4*x7 * x7 * x7 + 46.3571765392281*x4*x7 * x7 + 40.2824140613562*x4*x7 + 21.1611225328562*x4 + 11.635799599464*x5 * x5 * x5 * x5 + 18.4647851194715*x5 * x5 * x5*x6 + 22.1615787175278*x5 * x5 * x5*x7 + 14.9566788016335*x5 * x5 * x5 + 35.1175219921858*x5 * x5*x6 * x6 + 45.6526613223219*x5 * x5*x6*x7 + 37.6782758012017*x5 * x5*x6 + 37.2085318817818*x5 * x5*x7 * x7 + 37.4267120342215*x5 * x5*x7 + 27.5472939842846*x5 * x5 + 24.18428740421*x5*x6 * x6 * x6 + 49.8697972769458*x5*x6 * x6*x7 + 42.6660989320149*x5*x6 * x6 + 48.4900615490771*x5*x6*x7 * x7 + 63.134758994333*x5*x6*x7 + 37.8052808618772*x5*x6 + 26.6137458296808*x5*x7 * x7 * x7 + 43.4986675918949*x5*x7 * x7 + 40.5144582778593*x5*x7 + 16.8202229922137*x5 + 15.0201782896371*x6 * x6 * x6 * x6 + 22.160746496335*x6 * x6 * x6*x7 + 21.1243105157294*x6 * x6 * x6 + 38.3940163838817*x6 * x6*x7 * x7 + 41.9045176216483*x6 * x6*x7 + 35.2792880988469*x6 * x6 + 24.0800942231578*x6*x7 * x7 * x7 + 45.2366192372163*x6*x7 * x7 + 42.0080597576954*x6*x7 + 18.2217192240655*x6 + 16.5840417024627*x7 * x7 * x7 * x7 + 21.5797416165192*x7 * x7 * x7 + 33.264072361928*x7 * x7 + 19.9686069264966*x7 + 13.2275260088971 >= 0. diff --git a/examples/valid/poly_v9_d1_s100_2.ae b/examples/valid/poly_v9_d1_s100_2.ae new file mode 100644 index 000000000..85ba182b1 --- /dev/null +++ b/examples/valid/poly_v9_d1_s100_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8:real. + 2.44221152021518*x0 * x0 + 3.01440049534776*x0*x1 + 4.65599058610618*x0*x2 + 4.82684170908192*x0*x3 + 3.87207507895321*x0*x4 + 3.85193293012351*x0*x5 + 2.85804660254284*x0*x6 + 4.4024448422481*x0*x7 + 5.34741086179982*x0*x8 + 3.4693273535213*x0 + 1.19212717160333*x1 * x1 + 3.22428528691208*x1*x2 + 3.17509108127193*x1*x3 + 2.54525725238304*x1*x4 + 2.47998820087726*x1*x5 + 1.84541249550456*x1*x6 + 2.37873774319891*x1*x7 + 3.81739696972158*x1*x8 + 2.65430169630517*x1 + 3.13840712849285*x2 * x2 + 4.79660101497836*x2*x3 + 4.60436667963206*x2*x4 + 3.11946975451057*x2*x5 + 2.8615119574968*x2*x6 + 4.35529256269109*x2*x7 + 5.54024517815261*x2*x8 + 3.88914602115556*x2 + 3.59031990457484*x3 * x3 + 5.94490049319708*x3*x4 + 4.76279892284231*x3*x5 + 2.42088278568078*x3*x6 + 4.13712706229614*x3*x7 + 5.99425213364638*x3*x8 + 4.84396130369691*x3 + 2.75714360478631*x4 * x4 + 3.66590892705248*x4*x5 + 2.23685885748438*x4*x6 + 3.72212473524859*x4*x7 + 5.26418329722295*x4*x8 + 4.54295911370401*x4 + 2.00278553991776*x5 * x5 + 2.22419797251102*x5*x6 + 3.25368592628282*x5*x7 + 4.63066897700334*x5*x8 + 3.67440800693649*x5 + 1.2260503043038*x6 * x6 + 2.96765851691225*x6*x7 + 3.70100605806965*x6*x8 + 2.7591043238262*x6 + 2.51106533949882*x7 * x7 + 5.35129375971122*x7*x8 + 3.00719563795293*x7 + 3.79228151814486*x8 * x8 + 5.13939368417023*x8 + 2.61030228938088 >= 0. diff --git a/examples/valid/poly_v9_d2_s3025.ae b/examples/valid/poly_v9_d2_s3025.ae new file mode 100644 index 000000000..f6e0198b0 --- /dev/null +++ b/examples/valid/poly_v9_d2_s3025.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8:real. + 19.5132976971069*x0 * x0 * x0 * x0 + 24.1845063713755*x0 * x0 * x0*x1 + 28.8309776097722*x0 * x0 * x0*x2 + 28.6047802269069*x0 * x0 * x0*x3 + 29.3119259344991*x0 * x0 * x0*x4 + 27.8017537961797*x0 * x0 * x0*x5 + 29.1874058807769*x0 * x0 * x0*x6 + 29.4996468529117*x0 * x0 * x0*x7 + 32.188285486255*x0 * x0 * x0*x8 + 30.4241658757644*x0 * x0 * x0 + 46.3328365376668*x0 * x0*x1 * x1 + 49.4715088733007*x0 * x0*x1*x2 + 48.8480886197041*x0 * x0*x1*x3 + 49.1069783450919*x0 * x0*x1*x4 + 53.3958566030622*x0 * x0*x1*x5 + 54.8567955251039*x0 * x0*x1*x6 + 55.3384663737398*x0 * x0*x1*x7 + 51.3337999535953*x0 * x0*x1*x8 + 59.8344763053649*x0 * x0*x1 + 43.5540566680297*x0 * x0*x2 * x2 + 53.3353715722828*x0 * x0*x2*x3 + 54.6111372964823*x0 * x0*x2*x4 + 56.6309086514704*x0 * x0*x2*x5 + 56.3976561421806*x0 * x0*x2*x6 + 56.7354015733104*x0 * x0*x2*x7 + 61.1549094583666*x0 * x0*x2*x8 + 58.5860282924846*x0 * x0*x2 + 47.3929442275924*x0 * x0*x3 * x3 + 55.8373295907591*x0 * x0*x3*x4 + 54.0350792113771*x0 * x0*x3*x5 + 56.9006220472782*x0 * x0*x3*x6 + 61.0744371639273*x0 * x0*x3*x7 + 55.9077294368918*x0 * x0*x3*x8 + 52.9514744540785*x0 * x0*x3 + 44.0125915961061*x0 * x0*x4 * x4 + 55.2176310367265*x0 * x0*x4*x5 + 52.654915228977*x0 * x0*x4*x6 + 57.661789966817*x0 * x0*x4*x7 + 54.1826047299145*x0 * x0*x4*x8 + 57.0602112672752*x0 * x0*x4 + 45.3556554247414*x0 * x0*x5 * x5 + 54.3456167766536*x0 * x0*x5*x6 + 58.6541804384947*x0 * x0*x5*x7 + 56.0513813720081*x0 * x0*x5*x8 + 58.1503357891463*x0 * x0*x5 + 39.9156273000046*x0 * x0*x6 * x6 + 56.3885581163*x0 * x0*x6*x7 + 54.7471013800753*x0 * x0*x6*x8 + 54.1707769377746*x0 * x0*x6 + 43.9974246554963*x0 * x0*x7 * x7 + 60.3573759290081*x0 * x0*x7*x8 + 59.0085664092683*x0 * x0*x7 + 48.8820984777257*x0 * x0*x8 * x8 + 58.3632114505*x0 * x0*x8 + 50.1687323441147*x0 * x0 + 24.1189598173062*x0*x1 * x1 * x1 + 49.6571478723679*x0*x1 * x1*x2 + 49.7741649951287*x0*x1 * x1*x3 + 47.5948776916671*x0*x1 * x1*x4 + 51.8834394003779*x0*x1 * x1*x5 + 54.7252447237506*x0*x1 * x1*x6 + 54.5521188455321*x0*x1 * x1*x7 + 50.9258156069037*x0*x1 * x1*x8 + 57.2323147089827*x0*x1 * x1 + 49.6318513968947*x0*x1*x2 * x2 + 66.2717654578152*x0*x1*x2*x3 + 74.1531775018346*x0*x1*x2*x4 + 80.3327907986267*x0*x1*x2*x5 + 80.866116760879*x0*x1*x2*x6 + 76.3828559673389*x0*x1*x2*x7 + 71.7559623965536*x0*x1*x2*x8 + 80.1130716468346*x0*x1*x2 + 45.2741973377035*x0*x1*x3 * x3 + 69.7887693636695*x0*x1*x3*x4 + 70.5560633280889*x0*x1*x3*x5 + 76.512660217659*x0*x1*x3*x6 + 79.9110961511906*x0*x1*x3*x7 + 66.3746667620617*x0*x1*x3*x8 + 78.9491879544921*x0*x1*x3 + 49.7042291940172*x0*x1*x4 * x4 + 77.7366718839714*x0*x1*x4*x5 + 78.3530655885176*x0*x1*x4*x6 + 78.3257954962233*x0*x1*x4*x7 + 69.6449125853571*x0*x1*x4*x8 + 78.5346216095088*x0*x1*x4 + 46.9866845072587*x0*x1*x5 * x5 + 78.5516341136139*x0*x1*x5*x6 + 85.4859865411922*x0*x1*x5*x7 + 73.8904033035732*x0*x1*x5*x8 + 79.6150727642835*x0*x1*x5 + 52.3626777809401*x0*x1*x6 * x6 + 79.227794993985*x0*x1*x6*x7 + 76.2141825099175*x0*x1*x6*x8 + 88.955463816758*x0*x1*x6 + 51.1750710847592*x0*x1*x7 * x7 + 77.9148263259166*x0*x1*x7*x8 + 84.5833134096222*x0*x1*x7 + 48.9940615613412*x0*x1*x8 * x8 + 80.6387781056218*x0*x1*x8 + 55.5394118044122*x0*x1 + 24.6541978138679*x0*x2 * x2 * x2 + 48.6099707315871*x0*x2 * x2*x3 + 46.300811900263*x0*x2 * x2*x4 + 56.1644347109624*x0*x2 * x2*x5 + 53.7915802305993*x0*x2 * x2*x6 + 56.4475705724349*x0*x2 * x2*x7 + 55.7276366590973*x0*x2 * x2*x8 + 55.038366837608*x0*x2 * x2 + 53.0894494698099*x0*x2*x3 * x3 + 77.8937624432684*x0*x2*x3*x4 + 73.786623833101*x0*x2*x3*x5 + 81.4574582910154*x0*x2*x3*x6 + 83.2866132479397*x0*x2*x3*x7 + 81.4681827610627*x0*x2*x3*x8 + 78.36776141747*x0*x2*x3 + 52.2689323707376*x0*x2*x4 * x4 + 81.7726305453033*x0*x2*x4*x5 + 85.1467156640859*x0*x2*x4*x6 + 85.3739632586884*x0*x2*x4*x7 + 77.8927551435632*x0*x2*x4*x8 + 84.2088670558185*x0*x2*x4 + 51.3124816250865*x0*x2*x5 * x5 + 82.8401103568965*x0*x2*x5*x6 + 86.0617586476942*x0*x2*x5*x7 + 79.8038087798488*x0*x2*x5*x8 + 83.4362925080325*x0*x2*x5 + 50.0414820975885*x0*x2*x6 * x6 + 84.9507771564705*x0*x2*x6*x7 + 84.9531334345674*x0*x2*x6*x8 + 83.7562674897762*x0*x2*x6 + 53.4134154754974*x0*x2*x7 * x7 + 87.6095076349435*x0*x2*x7*x8 + 84.9951717626406*x0*x2*x7 + 56.2972287815637*x0*x2*x8 * x8 + 85.1921390638365*x0*x2*x8 + 58.6884605443558*x0*x2 + 27.2645384778976*x0*x3 * x3 * x3 + 50.3990097464744*x0*x3 * x3*x4 + 49.9387906739602*x0*x3 * x3*x5 + 56.2661113832897*x0*x3 * x3*x6 + 54.9652555289662*x0*x3 * x3*x7 + 55.3508294352776*x0*x3 * x3*x8 + 54.4553086006471*x0*x3 * x3 + 55.0036337725927*x0*x3*x4 * x4 + 80.3884828847939*x0*x3*x4*x5 + 82.9336060910597*x0*x3*x4*x6 + 81.0844934710919*x0*x3*x4*x7 + 73.9900745798067*x0*x3*x4*x8 + 77.6722284932712*x0*x3*x4 + 53.67671393107*x0*x3*x5 * x5 + 80.8558426792829*x0*x3*x5*x6 + 84.1701507212854*x0*x3*x5*x7 + 76.8945269624355*x0*x3*x5*x8 + 77.2012544059288*x0*x3*x5 + 49.4713038038089*x0*x3*x6 * x6 + 85.0654036825881*x0*x3*x6*x7 + 82.9518910355173*x0*x3*x6*x8 + 81.1919907966832*x0*x3*x6 + 57.1470578983018*x0*x3*x7 * x7 + 88.0218837651974*x0*x3*x7*x8 + 86.8809642228379*x0*x3*x7 + 53.5924987277191*x0*x3*x8 * x8 + 78.5596696702655*x0*x3*x8 + 51.4658642487106*x0*x3 + 27.0804521392755*x0*x4 * x4 * x4 + 53.6463340491103*x0*x4 * x4*x5 + 52.4262279978622*x0*x4 * x4*x6 + 54.3797816778319*x0*x4 * x4*x7 + 53.3843595735486*x0*x4 * x4*x8 + 56.0378415422202*x0*x4 * x4 + 50.358073949644*x0*x4*x5 * x5 + 80.4285718656676*x0*x4*x5*x6 + 81.2021800820638*x0*x4*x5*x7 + 77.9918153401782*x0*x4*x5*x8 + 80.5839117987555*x0*x4*x5 + 50.3206060343882*x0*x4*x6 * x6 + 85.1351612616189*x0*x4*x6*x7 + 80.6009177071596*x0*x4*x6*x8 + 84.4208068668898*x0*x4*x6 + 53.0740610498296*x0*x4*x7 * x7 + 84.3171017236276*x0*x4*x7*x8 + 85.7984621000769*x0*x4*x7 + 50.4830431576896*x0*x4*x8 * x8 + 78.4242196190722*x0*x4*x8 + 52.2925901205908*x0*x4 + 23.5992748353362*x0*x5 * x5 * x5 + 51.9600784186882*x0*x5 * x5*x6 + 52.1688055026826*x0*x5 * x5*x7 + 50.0367520877475*x0*x5 * x5*x8 + 55.6929122242029*x0*x5 * x5 + 49.7334301695226*x0*x5*x6 * x6 + 87.5845806209273*x0*x5*x6*x7 + 82.5395455567289*x0*x5*x6*x8 + 84.7987004143151*x0*x5*x6 + 56.2567728623999*x0*x5*x7 * x7 + 83.3410898969578*x0*x5*x7*x8 + 85.1170826833711*x0*x5*x7 + 55.018329947166*x0*x5*x8 * x8 + 77.1030252814649*x0*x5*x8 + 55.612530044012*x0*x5 + 21.400400915316*x0*x6 * x6 * x6 + 49.7014791249671*x0*x6 * x6*x7 + 48.0636457394035*x0*x6 * x6*x8 + 52.3949946220819*x0*x6 * x6 + 50.8609357115245*x0*x6*x7 * x7 + 83.4230550515462*x0*x6*x7*x8 + 82.7152196497819*x0*x6*x7 + 53.8075491175515*x0*x6*x8 * x8 + 79.3065533721457*x0*x6*x8 + 55.8979538309406*x0*x6 + 27.4861483465968*x0*x7 * x7 * x7 + 58.2293239617546*x0*x7 * x7*x8 + 54.8918609207409*x0*x7 * x7 + 60.7176418554109*x0*x7*x8 * x8 + 79.2932956578965*x0*x7*x8 + 58.2676848399709*x0*x7 + 27.8291143702603*x0*x8 * x8 * x8 + 54.4372374326215*x0*x8 * x8 + 54.5844782165238*x0*x8 + 27.9273154127153*x0 + 18.9172552639582*x1 * x1 * x1 * x1 + 28.1266196077656*x1 * x1 * x1*x2 + 25.3925367108702*x1 * x1 * x1*x3 + 28.0117166531643*x1 * x1 * x1*x4 + 29.1221144386095*x1 * x1 * x1*x5 + 32.862879620778*x1 * x1 * x1*x6 + 30.4655390339995*x1 * x1 * x1*x7 + 22.8557425436075*x1 * x1 * x1*x8 + 35.2516443263665*x1 * x1 * x1 + 41.5258932954847*x1 * x1*x2 * x2 + 46.1319297295282*x1 * x1*x2*x3 + 53.1449731393294*x1 * x1*x2*x4 + 53.602980509126*x1 * x1*x2*x5 + 56.7602310006092*x1 * x1*x2*x6 + 55.5742411374556*x1 * x1*x2*x7 + 48.7481390857552*x1 * x1*x2*x8 + 61.1405235362493*x1 * x1*x2 + 40.6174065172638*x1 * x1*x3 * x3 + 52.9160970840252*x1 * x1*x3*x4 + 47.5865361721433*x1 * x1*x3*x5 + 58.8422213084408*x1 * x1*x3*x6 + 56.1278791417603*x1 * x1*x3*x7 + 45.9799917120963*x1 * x1*x3*x8 + 55.7148549653804*x1 * x1*x3 + 46.3638662763513*x1 * x1*x4 * x4 + 54.6392514592478*x1 * x1*x4*x5 + 58.9923718022303*x1 * x1*x4*x6 + 63.2887780305956*x1 * x1*x4*x7 + 49.0298693113576*x1 * x1*x4*x8 + 58.2478234261129*x1 * x1*x4 + 44.7227910252*x1 * x1*x5 * x5 + 57.9874796729785*x1 * x1*x5*x6 + 55.3612037414973*x1 * x1*x5*x7 + 46.6693740248243*x1 * x1*x5*x8 + 56.3185544995478*x1 * x1*x5 + 49.5373172983266*x1 * x1*x6 * x6 + 63.0010796649458*x1 * x1*x6*x7 + 53.4905903109694*x1 * x1*x6*x8 + 66.0142681370293*x1 * x1*x6 + 46.2884457404702*x1 * x1*x7 * x7 + 53.4867799887827*x1 * x1*x7*x8 + 62.0715675150859*x1 * x1*x7 + 40.9773222995862*x1 * x1*x8 * x8 + 54.0145970003962*x1 * x1*x8 + 51.5594459582276*x1 * x1 + 22.1053785712849*x1*x2 * x2 * x2 + 43.2574778508342*x1*x2 * x2*x3 + 49.2892678495253*x1*x2 * x2*x4 + 47.5789339882762*x1*x2 * x2*x5 + 54.0103399957309*x1*x2 * x2*x6 + 53.3005871552626*x1*x2 * x2*x7 + 46.5857056491332*x1*x2 * x2*x8 + 53.7564363755621*x1*x2 * x2 + 43.9909593809633*x1*x2*x3 * x3 + 69.3938949983796*x1*x2*x3*x4 + 71.4326002733943*x1*x2*x3*x5 + 74.0999665618703*x1*x2*x3*x6 + 72.0509603514903*x1*x2*x3*x7 + 62.8799473203208*x1*x2*x3*x8 + 74.4529189216999*x1*x2*x3 + 51.9797821490973*x1*x2*x4 * x4 + 79.4288176800009*x1*x2*x4*x5 + 84.6551730155769*x1*x2*x4*x6 + 82.3339925127282*x1*x2*x4*x7 + 71.0462166561175*x1*x2*x4*x8 + 82.8729184077316*x1*x2*x4 + 47.6806312400437*x1*x2*x5 * x5 + 86.0581482473727*x1*x2*x5*x6 + 82.5123867436007*x1*x2*x5*x7 + 72.778385332871*x1*x2*x5*x8 + 83.2910591248648*x1*x2*x5 + 55.9300566648006*x1*x2*x6 * x6 + 89.926257628221*x1*x2*x6*x7 + 76.977484217624*x1*x2*x6*x8 + 92.0548195166588*x1*x2*x6 + 48.5068123783794*x1*x2*x7 * x7 + 75.9494778362022*x1*x2*x7*x8 + 90.1794774871404*x1*x2*x7 + 47.3819167788178*x1*x2*x8 * x8 + 80.3470806643424*x1*x2*x8 + 57.9000488020535*x1*x2 + 20.7961696105248*x1*x3 * x3 * x3 + 49.2539669132373*x1*x3 * x3*x4 + 45.4920716994398*x1*x3 * x3*x5 + 51.770673701259*x1*x3 * x3*x6 + 50.6330024093991*x1*x3 * x3*x7 + 44.9540850207429*x1*x3 * x3*x8 + 53.3783026288131*x1*x3 * x3 + 47.5001150607022*x1*x3*x4 * x4 + 72.0311778892782*x1*x3*x4*x5 + 83.3667520533049*x1*x3*x4*x6 + 86.7273642719494*x1*x3*x4*x7 + 68.2647739080707*x1*x3*x4*x8 + 78.3814087919267*x1*x3*x4 + 43.1677006498723*x1*x3*x5 * x5 + 82.6958971724317*x1*x3*x5*x6 + 81.4334179255969*x1*x3*x5*x7 + 63.5736665609663*x1*x3*x5*x8 + 78.6193861549881*x1*x3*x5 + 54.062724840108*x1*x3*x6 * x6 + 91.893308562031*x1*x3*x6*x7 + 74.0618158871221*x1*x3*x6*x8 + 86.8869767585169*x1*x3*x6 + 53.9456388690458*x1*x3*x7 * x7 + 74.3883154392399*x1*x3*x7*x8 + 84.5824619955471*x1*x3*x7 + 41.6517939215515*x1*x3*x8 * x8 + 70.9941852023913*x1*x3*x8 + 53.0638135000297*x1*x3 + 26.9191363634118*x1*x4 * x4 * x4 + 54.3062017683359*x1*x4 * x4*x5 + 61.0229882464611*x1*x4 * x4*x6 + 57.5144564662858*x1*x4 * x4*x7 + 47.6969472502854*x1*x4 * x4*x8 + 60.6833031007653*x1*x4 * x4 + 49.5306274930899*x1*x4*x5 * x5 + 88.9693330501284*x1*x4*x5*x6 + 88.7474437152348*x1*x4*x5*x7 + 69.4701951237431*x1*x4*x5*x8 + 82.8021858766861*x1*x4*x5 + 55.8233737383836*x1*x4*x6 * x6 + 90.43786950438*x1*x4*x6*x7 + 73.9485439200314*x1*x4*x6*x8 + 90.0682650787483*x1*x4*x6 + 55.2172281025881*x1*x4*x7 * x7 + 72.7999028511672*x1*x4*x7*x8 + 89.9520207457515*x1*x4*x7 + 42.5900702042159*x1*x4*x8 * x8 + 73.998811025526*x1*x4*x8 + 55.7237361719405*x1*x4 + 23.1035963348302*x1*x5 * x5 * x5 + 54.0850376081717*x1*x5 * x5*x6 + 54.0411057145407*x1*x5 * x5*x7 + 40.5618707436646*x1*x5 * x5*x8 + 55.2610380950892*x1*x5 * x5 + 53.1129296244209*x1*x5*x6 * x6 + 90.5063876650953*x1*x5*x6*x7 + 77.3280582851123*x1*x5*x6*x8 + 89.2201550984327*x1*x5*x6 + 55.9873260334549*x1*x5*x7 * x7 + 76.9790626043926*x1*x5*x7*x8 + 88.4384399898841*x1*x5*x7 + 46.3403897357636*x1*x5*x8 * x8 + 77.5881652836875*x1*x5*x8 + 56.1535383541361*x1*x5 + 27.7187723320537*x1*x6 * x6 * x6 + 58.1386756799238*x1*x6 * x6*x7 + 45.9247560054405*x1*x6 * x6*x8 + 59.4792954458086*x1*x6 * x6 + 58.6989795292099*x1*x6*x7 * x7 + 82.1643418448375*x1*x6*x7*x8 + 95.0792653934305*x1*x6*x7 + 49.6883266889726*x1*x6*x8 * x8 + 86.5042765102185*x1*x6*x8 + 59.6290179580152*x1*x6 + 27.3586603653463*x1*x7 * x7 * x7 + 46.487428180115*x1*x7 * x7*x8 + 57.2802162081618*x1*x7 * x7 + 47.8088365640894*x1*x7*x8 * x8 + 78.8801412628553*x1*x7*x8 + 60.2338747363907*x1*x7 + 21.8366229192089*x1*x8 * x8 * x8 + 47.8832273358946*x1*x8 * x8 + 52.3208600300434*x1*x8 + 32.6471512891023*x1 + 15.5739233609176*x2 * x2 * x2 * x2 + 19.5106119931812*x2 * x2 * x2*x3 + 24.7131425908524*x2 * x2 * x2*x4 + 24.773334152494*x2 * x2 * x2*x5 + 26.1071075469863*x2 * x2 * x2*x6 + 25.8078596678946*x2 * x2 * x2*x7 + 27.274347415035*x2 * x2 * x2*x8 + 24.1964158890225*x2 * x2 * x2 + 37.9204439200255*x2 * x2*x3 * x3 + 46.4894942405251*x2 * x2*x3*x4 + 46.789808452283*x2 * x2*x3*x5 + 53.5185419409387*x2 * x2*x3*x6 + 49.9968782767872*x2 * x2*x3*x7 + 50.5467466391791*x2 * x2*x3*x8 + 50.5966162010496*x2 * x2*x3 + 39.6322512041515*x2 * x2*x4 * x4 + 53.6942478795959*x2 * x2*x4*x5 + 53.9910331501481*x2 * x2*x4*x6 + 53.6329120360803*x2 * x2*x4*x7 + 51.6116456167967*x2 * x2*x4*x8 + 52.2241019203706*x2 * x2*x4 + 40.4633430217326*x2 * x2*x5 * x5 + 54.0124529336488*x2 * x2*x5*x6 + 55.1930188817093*x2 * x2*x5*x7 + 47.6014968736162*x2 * x2*x5*x8 + 54.7149243468131*x2 * x2*x5 + 40.1612386486033*x2 * x2*x6 * x6 + 59.9720939377442*x2 * x2*x6*x7 + 56.9129610421863*x2 * x2*x6*x8 + 55.6075459325055*x2 * x2*x6 + 41.6583111739107*x2 * x2*x7 * x7 + 54.5750484901982*x2 * x2*x7*x8 + 53.1402779646206*x2 * x2*x7 + 42.5979993828722*x2 * x2*x8 * x8 + 53.2759427541038*x2 * x2*x8 + 44.9708901982142*x2 * x2 + 24.1650438738962*x2*x3 * x3 * x3 + 48.8899287912483*x2*x3 * x3*x4 + 49.7893951425582*x2*x3 * x3*x5 + 54.3816929692274*x2*x3 * x3*x6 + 53.0279872740707*x2*x3 * x3*x7 + 47.2766581135284*x2*x3 * x3*x8 + 51.007478852087*x2*x3 * x3 + 51.4537180856628*x2*x3*x4 * x4 + 79.3152223371621*x2*x3*x4*x5 + 85.1069210440167*x2*x3*x4*x6 + 82.6431241301313*x2*x3*x4*x7 + 74.0308435432733*x2*x3*x4*x8 + 78.6379552143061*x2*x3*x4 + 48.9869183795954*x2*x3*x5 * x5 + 84.0609872981732*x2*x3*x5*x6 + 82.6323794065289*x2*x3*x5*x7 + 72.0962278381063*x2*x3*x5*x8 + 73.1632478138129*x2*x3*x5 + 51.4783700816885*x2*x3*x6 * x6 + 87.3358433961614*x2*x3*x6*x7 + 79.5392499997671*x2*x3*x6*x8 + 82.4496560891387*x2*x3*x6 + 55.294521950595*x2*x3*x7 * x7 + 79.3440101648022*x2*x3*x7*x8 + 83.0040830774322*x2*x3*x7 + 46.8726837222959*x2*x3*x8 * x8 + 75.2115423686859*x2*x3*x8 + 50.5444811644154*x2*x3 + 26.9630229959442*x2*x4 * x4 * x4 + 54.4331587480436*x2*x4 * x4*x5 + 60.3786483376158*x2*x4 * x4*x6 + 58.4428923685545*x2*x4 * x4*x7 + 55.1605492684229*x2*x4 * x4*x8 + 56.6672406748788*x2*x4 * x4 + 53.6748896444339*x2*x4*x5 * x5 + 85.6719002267756*x2*x4*x5*x6 + 84.7061678240943*x2*x4*x5*x7 + 77.6951384231181*x2*x4*x5*x8 + 81.03894545692*x2*x4*x5 + 55.0923525813703*x2*x4*x6 * x6 + 87.4318557559897*x2*x4*x6*x7 + 85.2301524840396*x2*x4*x6*x8 + 86.1565242025607*x2*x4*x6 + 56.188710969124*x2*x4*x7 * x7 + 78.3393385868443*x2*x4*x7*x8 + 82.9749374422682*x2*x4*x7 + 50.8082063383955*x2*x4*x8 * x8 + 74.4535780491057*x2*x4*x8 + 49.9835570441737*x2*x4 + 24.7282325098768*x2*x5 * x5 * x5 + 55.608924585559*x2*x5 * x5*x6 + 54.2330835963175*x2*x5 * x5*x7 + 51.2138964746673*x2*x5 * x5*x8 + 52.7950252935547*x2*x5 * x5 + 53.4847846069706*x2*x5*x6 * x6 + 83.2673044089137*x2*x5*x6*x7 + 77.5907643370209*x2*x5*x6*x8 + 82.2269846823609*x2*x5*x6 + 60.4643285743861*x2*x5*x7 * x7 + 88.4671318987392*x2*x5*x7*x8 + 85.3217004730063*x2*x5*x7 + 52.4013278838434*x2*x5*x8 * x8 + 78.2883049165602*x2*x5*x8 + 52.4258166545843*x2*x5 + 24.4975399843819*x2*x6 * x6 * x6 + 52.851506295501*x2*x6 * x6*x7 + 50.8527440568728*x2*x6 * x6*x8 + 53.240289668864*x2*x6 * x6 + 58.7882980101114*x2*x6*x7 * x7 + 82.4341324991486*x2*x6*x7*x8 + 84.8345830151911*x2*x6*x7 + 55.2051935929091*x2*x6*x8 * x8 + 79.286483252556*x2*x6*x8 + 56.1709941067167*x2*x6 + 26.2060364666303*x2*x7 * x7 * x7 + 55.3065402932295*x2*x7 * x7*x8 + 58.0528315019563*x2*x7 * x7 + 54.4477751285772*x2*x7*x8 * x8 + 79.796824365628*x2*x7*x8 + 58.0600705968245*x2*x7 + 24.7227031432304*x2*x8 * x8 * x8 + 51.3820111394469*x2*x8 * x8 + 53.5408702149202*x2*x8 + 28.3577793279462*x2 + 16.863582267204*x3 * x3 * x3 * x3 + 25.2081531096901*x3 * x3 * x3*x4 + 23.3861358465613*x3 * x3 * x3*x5 + 27.6797629284706*x3 * x3 * x3*x6 + 29.4001318661845*x3 * x3 * x3*x7 + 24.3548021641629*x3 * x3 * x3*x8 + 23.9471285640751*x3 * x3 * x3 + 43.8212900104423*x3 * x3*x4 * x4 + 52.6144411606499*x3 * x3*x4*x5 + 54.667658631044*x3 * x3*x4*x6 + 56.645110171868*x3 * x3*x4*x7 + 47.2169116830418*x3 * x3*x4*x8 + 50.1937975346934*x3 * x3*x4 + 41.2466915098824*x3 * x3*x5 * x5 + 52.2476483921745*x3 * x3*x5*x6 + 57.5117616241551*x3 * x3*x5*x7 + 47.9231091437964*x3 * x3*x5*x8 + 46.9416522508616*x3 * x3*x5 + 43.3323347427773*x3 * x3*x6 * x6 + 57.8812170599355*x3 * x3*x6*x7 + 50.4708531070929*x3 * x3*x6*x8 + 55.2224109270282*x3 * x3*x6 + 43.6968799082681*x3 * x3*x7 * x7 + 51.7254388001624*x3 * x3*x7*x8 + 57.299626320319*x3 * x3*x7 + 42.9713911570745*x3 * x3*x8 * x8 + 42.7077233514544*x3 * x3*x8 + 44.2575524117722*x3 * x3 + 26.5024756991268*x3*x4 * x4 * x4 + 54.248568606324*x3*x4 * x4*x5 + 56.2581878456388*x3*x4 * x4*x6 + 59.5470773663756*x3*x4 * x4*x7 + 49.4383961182946*x3*x4 * x4*x8 + 50.5530165007849*x3*x4 * x4 + 51.0129920678303*x3*x4*x5 * x5 + 85.0210378142659*x3*x4*x5*x6 + 79.8682247857792*x3*x4*x5*x7 + 72.1996926476524*x3*x4*x5*x8 + 73.765399808817*x3*x4*x5 + 54.6602764873042*x3*x4*x6 * x6 + 88.36813359292*x3*x4*x6*x7 + 76.8913636377527*x3*x4*x6*x8 + 81.5359703679854*x3*x4*x6 + 57.1056432541653*x3*x4*x7 * x7 + 81.9408784913925*x3*x4*x7*x8 + 82.7293416264426*x3*x4*x7 + 46.4654203290682*x3*x4*x8 * x8 + 71.7617492092908*x3*x4*x8 + 50.3425572746226*x3*x4 + 23.9391363900627*x3*x5 * x5 * x5 + 50.4173319122426*x3*x5 * x5*x6 + 54.4848263172891*x3*x5 * x5*x7 + 46.7055451535012*x3*x5 * x5*x8 + 46.5660449753976*x3*x5 * x5 + 49.9852163302065*x3*x5*x6 * x6 + 86.5833588956371*x3*x5*x6*x7 + 72.301168129808*x3*x5*x6*x8 + 77.8606074682423*x3*x5*x6 + 55.4311703577919*x3*x5*x7 * x7 + 78.3346229222346*x3*x5*x7*x8 + 77.3012164135387*x3*x5*x7 + 48.9566451404602*x3*x5*x8 * x8 + 67.2041828408599*x3*x5*x8 + 47.7240945750525*x3*x5 + 25.9191786317737*x3*x6 * x6 * x6 + 54.9012427002986*x3*x6 * x6*x7 + 51.0027637752736*x3*x6 * x6*x8 + 53.3104781066497*x3*x6 * x6 + 57.5489381114097*x3*x6*x7 * x7 + 85.2597886371838*x3*x6*x7*x8 + 84.6399949359061*x3*x6*x7 + 52.3238634440273*x3*x6*x8 * x8 + 77.190821832236*x3*x6*x8 + 50.822721491971*x3*x6 + 27.6608537706459*x3*x7 * x7 * x7 + 54.4874113051803*x3*x7 * x7*x8 + 52.742348688024*x3*x7 * x7 + 52.816960604315*x3*x7*x8 * x8 + 77.9870102621174*x3*x7*x8 + 54.1476241328958*x3*x7 + 25.2061470360289*x3*x8 * x8 * x8 + 45.4839670446736*x3*x8 * x8 + 48.3183882892491*x3*x8 + 25.7677860381822*x3 + 17.4111514569412*x4 * x4 * x4 * x4 + 28.1763266451297*x4 * x4 * x4*x5 + 30.1435296927625*x4 * x4 * x4*x6 + 29.7119623409818*x4 * x4 * x4*x7 + 24.1598953707902*x4 * x4 * x4*x8 + 25.7871257483055*x4 * x4 * x4 + 42.387842621538*x4 * x4*x5 * x5 + 55.97872773374*x4 * x4*x5*x6 + 58.4124445028357*x4 * x4*x5*x7 + 50.584293210942*x4 * x4*x5*x8 + 53.0332498768871*x4 * x4*x5 + 44.3440579305055*x4 * x4*x6 * x6 + 59.8035562562963*x4 * x4*x6*x7 + 50.2612150047429*x4 * x4*x6*x8 + 57.0181572992347*x4 * x4*x6 + 48.247968513937*x4 * x4*x7 * x7 + 54.3262750131082*x4 * x4*x7*x8 + 57.1754962260732*x4 * x4*x7 + 40.5915964733947*x4 * x4*x8 * x8 + 49.5725449210476*x4 * x4*x8 + 42.8514216644829*x4 * x4 + 22.9490205946624*x4*x5 * x5 * x5 + 50.0575205504352*x4*x5 * x5*x6 + 55.6081059193533*x4*x5 * x5*x7 + 48.075421502502*x4*x5 * x5*x8 + 50.3310807883793*x4*x5 * x5 + 54.0188962215363*x4*x5*x6 * x6 + 90.0429412604455*x4*x5*x6*x7 + 74.3320151942717*x4*x5*x6*x8 + 83.0065451887798*x4*x5*x6 + 56.4448180492136*x4*x5*x7 * x7 + 78.3668279725275*x4*x5*x7*x8 + 82.4426318863516*x4*x5*x7 + 46.1387794554681*x4*x5*x8 * x8 + 69.0296066262379*x4*x5*x8 + 50.4748159960001*x4*x5 + 24.4352224486761*x4*x6 * x6 * x6 + 52.0407489448651*x4*x6 * x6*x7 + 49.0906024209031*x4*x6 * x6*x8 + 49.8114750515729*x4*x6 * x6 + 61.4451480337524*x4*x6*x7 * x7 + 83.8705780191394*x4*x6*x7*x8 + 86.2952596623381*x4*x6*x7 + 51.4812962024861*x4*x6*x8 * x8 + 76.7956435229168*x4*x6*x8 + 55.7496062371788*x4*x6 + 27.9936542481445*x4*x7 * x7 * x7 + 53.4579244747304*x4*x7 * x7*x8 + 53.3394576004073*x4*x7 * x7 + 53.3160719073978*x4*x7*x8 * x8 + 78.3336684699786*x4*x7*x8 + 54.4269135632139*x4*x7 + 24.9603631003*x4*x8 * x8 * x8 + 44.7914849346304*x4*x8 * x8 + 49.6766896597498*x4*x8 + 25.2375099737687*x4 + 15.3105829991542*x5 * x5 * x5 * x5 + 25.6956977656747*x5 * x5 * x5*x6 + 24.8764231569699*x5 * x5 * x5*x7 + 22.7574745682807*x5 * x5 * x5*x8 + 23.3913342150054*x5 * x5 * x5 + 41.3015311740969*x5 * x5*x6 * x6 + 54.8414695914073*x5 * x5*x6*x7 + 49.149065660437*x5 * x5*x6*x8 + 52.5416257506224*x5 * x5*x6 + 42.5194173791389*x5 * x5*x7 * x7 + 48.7891361902315*x5 * x5*x7*x8 + 55.1446148569925*x5 * x5*x7 + 40.9052747352392*x5 * x5*x8 * x8 + 41.7671879169544*x5 * x5*x8 + 41.5057015429123*x5 * x5 + 23.663059642618*x5*x6 * x6 * x6 + 51.4996978089715*x5*x6 * x6*x7 + 52.3105577367026*x5*x6 * x6*x8 + 51.5390185823505*x5*x6 * x6 + 59.8098281332804*x5*x6*x7 * x7 + 80.3736746594224*x5*x6*x7*x8 + 83.0175205413919*x5*x6*x7 + 47.4303340024419*x5*x6*x8 * x8 + 74.3630811805703*x5*x6*x8 + 54.5918664601737*x5*x6 + 29.1530837005213*x5*x7 * x7 * x7 + 52.8881227393888*x5*x7 * x7*x8 + 52.9546259856052*x5*x7 * x7 + 48.2533186833178*x5*x7*x8 * x8 + 79.9569565821057*x5*x7*x8 + 53.7514849690787*x5*x7 + 23.3904867564109*x5*x8 * x8 * x8 + 45.2269890381578*x5*x8 * x8 + 47.957717989259*x5*x8 + 25.1870535578472*x5 + 13.511021101715*x6 * x6 * x6 * x6 + 24.2459513018955*x6 * x6 * x6*x7 + 20.7039695765116*x6 * x6 * x6*x8 + 23.7920591855697*x6 * x6 * x6 + 41.3292603805794*x6 * x6*x7 * x7 + 50.4966526009883*x6 * x6*x7*x8 + 54.2491850935481*x6 * x6*x7 + 39.6540031888619*x6 * x6*x8 * x8 + 47.7692186118299*x6 * x6*x8 + 40.4952707320823*x6 * x6 + 23.3351610250383*x6*x7 * x7 * x7 + 51.7294140588631*x6*x7 * x7*x8 + 52.7008463265784*x6*x7 * x7 + 55.3790152591552*x6*x7*x8 * x8 + 73.0978329889733*x6*x7*x8 + 55.8476324191101*x6*x7 + 26.2161441909453*x6*x8 * x8 * x8 + 46.1593063703729*x6*x8 * x8 + 49.7900576061856*x6*x8 + 27.8346096849102*x6 + 16.4911206038404*x7 * x7 * x7 * x7 + 27.3646368719212*x7 * x7 * x7*x8 + 26.9146745320303*x7 * x7 * x7 + 40.6577385990834*x7 * x7*x8 * x8 + 50.2115853448817*x7 * x7*x8 + 41.656485177305*x7 * x7 + 24.2898589951804*x7*x8 * x8 * x8 + 47.3415961061578*x7*x8 * x8 + 49.6387035140276*x7*x8 + 26.1374198521076*x7 + 16.7543663822666*x8 * x8 * x8 * x8 + 20.187084240414*x8 * x8 * x8 + 42.5425878658356*x8 * x8 + 21.3330492027254*x8 + 17.0649300541264 >= 0. diff --git a/examples/valid/poly_v9_d2_s3025_2.ae b/examples/valid/poly_v9_d2_s3025_2.ae new file mode 100644 index 000000000..e95826c9a --- /dev/null +++ b/examples/valid/poly_v9_d2_s3025_2.ae @@ -0,0 +1,3 @@ +goal g: + forall x0, x1, x2, x3, x4, x5, x6, x7, x8:real. + 19.9587090055335*x0 * x0 * x0 * x0 + 23.1678560665364*x0 * x0 * x0*x1 + 26.1221725537693*x0 * x0 * x0*x2 + 28.1599940782537*x0 * x0 * x0*x3 + 26.6732682459606*x0 * x0 * x0*x4 + 27.37188875705*x0 * x0 * x0*x5 + 27.0055395466122*x0 * x0 * x0*x6 + 26.4670915891582*x0 * x0 * x0*x7 + 22.9977308173636*x0 * x0 * x0*x8 + 27.0901951927189*x0 * x0 * x0 + 42.208797613858*x0 * x0*x1 * x1 + 54.4502860907386*x0 * x0*x1*x2 + 51.2163326092374*x0 * x0*x1*x3 + 55.6273730903777*x0 * x0*x1*x4 + 50.9917104751352*x0 * x0*x1*x5 + 43.3128924505635*x0 * x0*x1*x6 + 50.3934870025672*x0 * x0*x1*x7 + 45.6558991492854*x0 * x0*x1*x8 + 47.8554152518295*x0 * x0*x1 + 45.7300447266064*x0 * x0*x2 * x2 + 51.870263652597*x0 * x0*x2*x3 + 53.3536969994658*x0 * x0*x2*x4 + 51.9558259580236*x0 * x0*x2*x5 + 49.9224957465792*x0 * x0*x2*x6 + 59.9276279432136*x0 * x0*x2*x7 + 50.8221539464584*x0 * x0*x2*x8 + 53.9638702300097*x0 * x0*x2 + 42.6017301864186*x0 * x0*x3 * x3 + 52.9160850257817*x0 * x0*x3*x4 + 52.0793857884556*x0 * x0*x3*x5 + 52.758300857236*x0 * x0*x3*x6 + 48.7173249442348*x0 * x0*x3*x7 + 51.3294942179265*x0 * x0*x3*x8 + 53.5353420913362*x0 * x0*x3 + 42.8760363834485*x0 * x0*x4 * x4 + 52.7262850853761*x0 * x0*x4*x5 + 57.2874580126169*x0 * x0*x4*x6 + 53.0490049877635*x0 * x0*x4*x7 + 45.2317629577501*x0 * x0*x4*x8 + 53.4887903187461*x0 * x0*x4 + 44.6592425149366*x0 * x0*x5 * x5 + 58.1850180712258*x0 * x0*x5*x6 + 55.6595385831601*x0 * x0*x5*x7 + 48.3556248589385*x0 * x0*x5*x8 + 59.8531505866921*x0 * x0*x5 + 43.2113157517397*x0 * x0*x6 * x6 + 52.4879912142679*x0 * x0*x6*x7 + 47.2626584068469*x0 * x0*x6*x8 + 54.178483787973*x0 * x0*x6 + 41.0699267753806*x0 * x0*x7 * x7 + 50.6331236942828*x0 * x0*x7*x8 + 54.2681476517418*x0 * x0*x7 + 41.4591030044796*x0 * x0*x8 * x8 + 54.7101508012353*x0 * x0*x8 + 41.5562144596527*x0 * x0 + 23.0582126750741*x0*x1 * x1 * x1 + 49.2454669623847*x0*x1 * x1*x2 + 49.1602890231779*x0*x1 * x1*x3 + 48.2857399674025*x0*x1 * x1*x4 + 52.4190966555262*x0*x1 * x1*x5 + 43.3673801535287*x0*x1 * x1*x6 + 50.1786454135267*x0*x1 * x1*x7 + 45.7775581178446*x0*x1 * x1*x8 + 50.7547310641655*x0*x1 * x1 + 48.0314711690044*x0*x1*x2 * x2 + 73.6593426222563*x0*x1*x2*x3 + 72.0815227491789*x0*x1*x2*x4 + 74.2535086952857*x0*x1*x2*x5 + 67.4837649502616*x0*x1*x2*x6 + 86.2726607792857*x0*x1*x2*x7 + 73.3888700282209*x0*x1*x2*x8 + 78.0291817411745*x0*x1*x2 + 53.1216522379456*x0*x1*x3 * x3 + 77.2159569905879*x0*x1*x3*x4 + 80.0935336753732*x0*x1*x3*x5 + 74.1892451301498*x0*x1*x3*x6 + 74.7922700460072*x0*x1*x3*x7 + 70.9452916293657*x0*x1*x3*x8 + 76.6787780266231*x0*x1*x3 + 46.500505509568*x0*x1*x4 * x4 + 79.0430619346873*x0*x1*x4*x5 + 74.2437288802889*x0*x1*x4*x6 + 78.2344706608339*x0*x1*x4*x7 + 68.416389002194*x0*x1*x4*x8 + 76.6321245366236*x0*x1*x4 + 53.0201868852658*x0*x1*x5 * x5 + 78.2400939256436*x0*x1*x5*x6 + 82.1152541045721*x0*x1*x5*x7 + 75.7688130633475*x0*x1*x5*x8 + 79.5667875394778*x0*x1*x5 + 46.0669865530213*x0*x1*x6 * x6 + 70.838197610839*x0*x1*x6*x7 + 66.3423640916415*x0*x1*x6*x8 + 72.0889515776645*x0*x1*x6 + 44.7038218713496*x0*x1*x7 * x7 + 70.7133978636968*x0*x1*x7*x8 + 76.2560405297395*x0*x1*x7 + 44.7270083474249*x0*x1*x8 * x8 + 73.622033868442*x0*x1*x8 + 49.191066733647*x0*x1 + 27.7945738998486*x0*x2 * x2 * x2 + 52.4044967097303*x0*x2 * x2*x3 + 48.8099499619827*x0*x2 * x2*x4 + 51.2415022077738*x0*x2 * x2*x5 + 51.1238576873508*x0*x2 * x2*x6 + 60.8377718958828*x0*x2 * x2*x7 + 51.4659491380996*x0*x2 * x2*x8 + 57.900532377106*x0*x2 * x2 + 52.7754936239642*x0*x2*x3 * x3 + 77.6581338393087*x0*x2*x3*x4 + 72.1467684723732*x0*x2*x3*x5 + 74.8582482889424*x0*x2*x3*x6 + 86.109195128231*x0*x2*x3*x7 + 75.7995441498445*x0*x2*x3*x8 + 82.4811385870132*x0*x2*x3 + 47.2243483768996*x0*x2*x4 * x4 + 77.3552328329583*x0*x2*x4*x5 + 77.3420726456919*x0*x2*x4*x6 + 89.3941399105079*x0*x2*x4*x7 + 71.6573531564762*x0*x2*x4*x8 + 75.9311606137776*x0*x2*x4 + 53.2350180377011*x0*x2*x5 * x5 + 79.5376181231096*x0*x2*x5*x6 + 86.6605202900472*x0*x2*x5*x7 + 77.2276076232069*x0*x2*x5*x8 + 83.7905755282334*x0*x2*x5 + 48.9487249781642*x0*x2*x6 * x6 + 80.3208887428266*x0*x2*x6*x7 + 72.3690557184163*x0*x2*x6*x8 + 79.6319075397057*x0*x2*x6 + 53.9075794763829*x0*x2*x7 * x7 + 83.387901486347*x0*x2*x7*x8 + 92.0344505477562*x0*x2*x7 + 50.5587879244112*x0*x2*x8 * x8 + 79.0067309892877*x0*x2*x8 + 51.9565540501961*x0*x2 + 24.7299523961212*x0*x3 * x3 * x3 + 49.2786002865288*x0*x3 * x3*x4 + 51.3907868078584*x0*x3 * x3*x5 + 50.8749608033293*x0*x3 * x3*x6 + 48.4150924510671*x0*x3 * x3*x7 + 49.5053243950026*x0*x3 * x3*x8 + 52.892724087419*x0*x3 * x3 + 51.9149728407925*x0*x3*x4 * x4 + 82.3280601188172*x0*x3*x4*x5 + 80.8113465881497*x0*x3*x4*x6 + 76.6221902329795*x0*x3*x4*x7 + 72.7775485048883*x0*x3*x4*x8 + 75.1033531948614*x0*x3*x4 + 51.88632766132*x0*x3*x5 * x5 + 83.3336892953518*x0*x3*x5*x6 + 81.292303158922*x0*x3*x5*x7 + 75.6674376155001*x0*x3*x5*x8 + 83.0703413198411*x0*x3*x5 + 53.4609258483185*x0*x3*x6 * x6 + 72.6749426579384*x0*x3*x6*x7 + 73.2591648177884*x0*x3*x6*x8 + 82.8523537966858*x0*x3*x6 + 51.0855516736148*x0*x3*x7 * x7 + 74.1892428261649*x0*x3*x7*x8 + 75.9881756677781*x0*x3*x7 + 49.7105209753215*x0*x3*x8 * x8 + 81.4263103909254*x0*x3*x8 + 52.3517162162885*x0*x3 + 22.6980260360405*x0*x4 * x4 * x4 + 51.2689879652904*x0*x4 * x4*x5 + 52.9921412076462*x0*x4 * x4*x6 + 50.7636571696148*x0*x4 * x4*x7 + 45.0294749799923*x0*x4 * x4*x8 + 49.6345413365317*x0*x4 * x4 + 52.3692307982459*x0*x4*x5 * x5 + 87.1802956017806*x0*x4*x5*x6 + 85.7338614298284*x0*x4*x5*x7 + 75.1129370995156*x0*x4*x5*x8 + 81.3455087840415*x0*x4*x5 + 52.6411785718534*x0*x4*x6 * x6 + 82.1030223173803*x0*x4*x6*x7 + 69.8272038899338*x0*x4*x6*x8 + 81.3821463409179*x0*x4*x6 + 48.0019791990983*x0*x4*x7 * x7 + 71.9535664880852*x0*x4*x7*x8 + 79.9556760371151*x0*x4*x7 + 44.4842557164613*x0*x4*x8 * x8 + 70.5093830997957*x0*x4*x8 + 51.7510802127644*x0*x4 + 28.9696861713647*x0*x5 * x5 * x5 + 53.8835436588735*x0*x5 * x5*x6 + 55.8130382830084*x0*x5 * x5*x7 + 53.6846744023663*x0*x5 * x5*x8 + 56.0881998727758*x0*x5 * x5 + 53.9252454464891*x0*x5*x6 * x6 + 79.7883372830974*x0*x5*x6*x7 + 73.6925071056251*x0*x5*x6*x8 + 87.7135082701086*x0*x5*x6 + 52.4561002340099*x0*x5*x7 * x7 + 78.8501694924807*x0*x5*x7*x8 + 87.5249231248126*x0*x5*x7 + 50.4187930604938*x0*x5*x8 * x8 + 83.7936147062735*x0*x5*x8 + 54.1476949947817*x0*x5 + 23.6671332070235*x0*x6 * x6 * x6 + 48.7165897389156*x0*x6 * x6*x7 + 42.4253446893346*x0*x6 * x6*x8 + 50.1463991398748*x0*x6 * x6 + 47.8531292738119*x0*x6*x7 * x7 + 67.6942431878947*x0*x6*x7*x8 + 79.5236673975212*x0*x6*x7 + 45.5443737026365*x0*x6*x8 * x8 + 73.3602561714469*x0*x6*x8 + 50.5104998621882*x0*x6 + 22.9513649710587*x0*x7 * x7 * x7 + 46.9156678648138*x0*x7 * x7*x8 + 49.554610126389*x0*x7 * x7 + 47.9639799116495*x0*x7*x8 * x8 + 74.2115658716643*x0*x7*x8 + 49.5846350146468*x0*x7 + 24.6873097605321*x0*x8 * x8 * x8 + 51.3447509934042*x0*x8 * x8 + 48.6380385713876*x0*x8 + 24.1833957737668*x0 + 17.6652285663241*x1 * x1 * x1 * x1 + 22.643058242669*x1 * x1 * x1*x2 + 27.1782509997104*x1 * x1 * x1*x3 + 26.408715431331*x1 * x1 * x1*x4 + 28.4955056079435*x1 * x1 * x1*x5 + 22.2864718425689*x1 * x1 * x1*x6 + 27.3383902497891*x1 * x1 * x1*x7 + 26.7581396652096*x1 * x1 * x1*x8 + 22.996767723124*x1 * x1 * x1 + 41.969401513943*x1 * x1*x2 * x2 + 45.603645367348*x1 * x1*x2*x3 + 46.5479160573613*x1 * x1*x2*x4 + 50.3202931274593*x1 * x1*x2*x5 + 42.4912187719589*x1 * x1*x2*x6 + 57.4495813206016*x1 * x1*x2*x7 + 50.6396903802556*x1 * x1*x2*x8 + 48.9167888863606*x1 * x1*x2 + 44.4155024963099*x1 * x1*x3 * x3 + 53.0731309761735*x1 * x1*x3*x4 + 51.3215850070826*x1 * x1*x3*x5 + 51.6267936139875*x1 * x1*x3*x6 + 56.1402702048762*x1 * x1*x3*x7 + 58.0053491772686*x1 * x1*x3*x8 + 50.2688016405907*x1 * x1*x3 + 42.4754908598047*x1 * x1*x4 * x4 + 56.5892228574532*x1 * x1*x4*x5 + 52.308072988279*x1 * x1*x4*x6 + 56.2423180270828*x1 * x1*x4*x7 + 48.905913713177*x1 * x1*x4*x8 + 48.5343600390938*x1 * x1*x4 + 45.5994286363638*x1 * x1*x5 * x5 + 59.3393872328572*x1 * x1*x5*x6 + 55.6177293613812*x1 * x1*x5*x7 + 54.7103584350152*x1 * x1*x5*x8 + 57.1119239372755*x1 * x1*x5 + 39.5885921349707*x1 * x1*x6 * x6 + 46.0757100887557*x1 * x1*x6*x7 + 47.1547186550523*x1 * x1*x6*x8 + 52.4752063094671*x1 * x1*x6 + 41.7277121361293*x1 * x1*x7 * x7 + 48.7584269398591*x1 * x1*x7*x8 + 51.0497609501421*x1 * x1*x7 + 45.6796645544162*x1 * x1*x8 * x8 + 53.19711771971*x1 * x1*x8 + 40.749946874094*x1 * x1 + 26.0747132721399*x1*x2 * x2 * x2 + 46.1799269942422*x1*x2 * x2*x3 + 45.570238346461*x1*x2 * x2*x4 + 51.9413126049542*x1*x2 * x2*x5 + 44.1253368317763*x1*x2 * x2*x6 + 55.7141906093604*x1*x2 * x2*x7 + 50.26800977071*x1*x2 * x2*x8 + 51.6163789415392*x1*x2 * x2 + 46.4639507819812*x1*x2*x3 * x3 + 68.3292259537281*x1*x2*x3*x4 + 70.8593567826781*x1*x2*x3*x5 + 65.7684317962831*x1*x2*x3*x6 + 79.5774785779078*x1*x2*x3*x7 + 73.0376739124524*x1*x2*x3*x8 + 78.6178167446618*x1*x2*x3 + 45.25900572162*x1*x2*x4 * x4 + 76.9631481632651*x1*x2*x4*x5 + 72.1753817095052*x1*x2*x4*x6 + 82.3734161917193*x1*x2*x4*x7 + 68.9324136354663*x1*x2*x4*x8 + 65.833008469851*x1*x2*x4 + 53.7622475277753*x1*x2*x5 * x5 + 70.8312062630864*x1*x2*x5*x6 + 84.1989582327093*x1*x2*x5*x7 + 75.6280402385986*x1*x2*x5*x8 + 79.5725740231904*x1*x2*x5 + 45.0469432351015*x1*x2*x6 * x6 + 81.4721360982734*x1*x2*x6*x7 + 73.4322555855425*x1*x2*x6*x8 + 74.3160545658661*x1*x2*x6 + 54.3370924796545*x1*x2*x7 * x7 + 83.9499716390938*x1*x2*x7*x8 + 81.1563802027183*x1*x2*x7 + 50.5883856885184*x1*x2*x8 * x8 + 79.7969094673651*x1*x2*x8 + 47.2319713343974*x1*x2 + 25.9782973394385*x1*x3 * x3 * x3 + 49.4380372781436*x1*x3 * x3*x4 + 52.1300154244283*x1*x3 * x3*x5 + 51.4834257176351*x1*x3 * x3*x6 + 50.5801048885377*x1*x3 * x3*x7 + 49.4446581383106*x1*x3 * x3*x8 + 51.7826113753372*x1*x3 * x3 + 45.8146376243699*x1*x3*x4 * x4 + 81.6605741693577*x1*x3*x4*x5 + 77.1639787277535*x1*x3*x4*x6 + 80.5840825833858*x1*x3*x4*x7 + 73.7753961705488*x1*x3*x4*x8 + 76.0474936532635*x1*x3*x4 + 54.1859343784214*x1*x3*x5 * x5 + 85.3892073639628*x1*x3*x5*x6 + 83.4492888671996*x1*x3*x5*x7 + 79.8174565308037*x1*x3*x5*x8 + 85.2767785530571*x1*x3*x5 + 50.2756789371578*x1*x3*x6 * x6 + 78.6144734916247*x1*x3*x6*x7 + 76.6634614352827*x1*x3*x6*x8 + 81.6559235859293*x1*x3*x6 + 49.6063314269276*x1*x3*x7 * x7 + 76.746786642423*x1*x3*x7*x8 + 78.7518574228011*x1*x3*x7 + 53.4221635149487*x1*x3*x8 * x8 + 82.7133668087523*x1*x3*x8 + 50.6706656862771*x1*x3 + 22.9272148608791*x1*x4 * x4 * x4 + 55.0621498477511*x1*x4 * x4*x5 + 51.6850361039917*x1*x4 * x4*x6 + 48.3812086182358*x1*x4 * x4*x7 + 47.0530665697933*x1*x4 * x4*x8 + 48.0334660926923*x1*x4 * x4 + 59.9401780312778*x1*x4*x5 * x5 + 90.3297101028059*x1*x4*x5*x6 + 87.7560087070385*x1*x4*x5*x7 + 78.8850828172486*x1*x4*x5*x8 + 85.2656943772779*x1*x4*x5 + 48.6211571536884*x1*x4*x6 * x6 + 78.9471068362852*x1*x4*x6*x7 + 69.0990546772282*x1*x4*x6*x8 + 77.2038934178728*x1*x4*x6 + 55.6901922997729*x1*x4*x7 * x7 + 74.2974123192464*x1*x4*x7*x8 + 75.9479611658078*x1*x4*x7 + 49.519660046973*x1*x4*x8 * x8 + 70.4585247040249*x1*x4*x8 + 46.0222282797507*x1*x4 + 29.1679384052571*x1*x5 * x5 * x5 + 53.5754135546579*x1*x5 * x5*x6 + 61.3348626103421*x1*x5 * x5*x7 + 53.3232950870374*x1*x5 * x5*x8 + 59.1093232869054*x1*x5 * x5 + 51.0474451569307*x1*x5*x6 * x6 + 85.5788321617867*x1*x5*x6*x7 + 77.3247818925692*x1*x5*x6*x8 + 86.289394202655*x1*x5*x6 + 53.8494399808593*x1*x5*x7 * x7 + 82.2339468886069*x1*x5*x7*x8 + 89.3877631612158*x1*x5*x7 + 56.6725042545364*x1*x5*x8 * x8 + 86.0372874912556*x1*x5*x8 + 51.6427738716037*x1*x5 + 22.0113593072379*x1*x6 * x6 * x6 + 46.4546564611736*x1*x6 * x6*x7 + 45.4043861335922*x1*x6 * x6*x8 + 48.6210810658505*x1*x6 * x6 + 46.0680233647203*x1*x6*x7 * x7 + 74.2809080032099*x1*x6*x7*x8 + 74.6631182395977*x1*x6*x7 + 48.0828068445229*x1*x6*x8 * x8 + 75.9049547269031*x1*x6*x8 + 44.9440508946188*x1*x6 + 21.5737167256632*x1*x7 * x7 * x7 + 47.2972118022478*x1*x7 * x7*x8 + 48.304333783618*x1*x7 * x7 + 50.6855233751802*x1*x7*x8 * x8 + 79.4390326180872*x1*x7*x8 + 48.5246256294349*x1*x7 + 26.8320734443473*x1*x8 * x8 * x8 + 53.2151569931686*x1*x8 * x8 + 50.6791386000668*x1*x8 + 23.6992932578189*x1 + 19.3137113613092*x2 * x2 * x2 * x2 + 22.6534706019143*x2 * x2 * x2*x3 + 24.8713871130097*x2 * x2 * x2*x4 + 24.3452838425854*x2 * x2 * x2*x5 + 25.6570267652213*x2 * x2 * x2*x6 + 32.4086801747836*x2 * x2 * x2*x7 + 26.55701679715*x2 * x2 * x2*x8 + 30.2700996598637*x2 * x2 * x2 + 38.5234216421225*x2 * x2*x3 * x3 + 43.3349805227367*x2 * x2*x3*x4 + 46.7213560571356*x2 * x2*x3*x5 + 51.4399046353019*x2 * x2*x3*x6 + 55.5533145620354*x2 * x2*x3*x7 + 53.8442821692548*x2 * x2*x3*x8 + 52.7946981977093*x2 * x2*x3 + 39.7717822502061*x2 * x2*x4 * x4 + 50.7783258436741*x2 * x2*x4*x5 + 47.8085204074215*x2 * x2*x4*x6 + 57.4687703974495*x2 * x2*x4*x7 + 46.7057134913689*x2 * x2*x4*x8 + 48.2963522464875*x2 * x2*x4 + 43.6018483252793*x2 * x2*x5 * x5 + 51.1687931785313*x2 * x2*x5*x6 + 58.443928299317*x2 * x2*x5*x7 + 49.4168966434808*x2 * x2*x5*x8 + 55.2753448775019*x2 * x2*x5 + 40.0279532402543*x2 * x2*x6 * x6 + 53.3111699632087*x2 * x2*x6*x7 + 50.8825267113327*x2 * x2*x6*x8 + 54.0279168294915*x2 * x2*x6 + 48.5043990346393*x2 * x2*x7 * x7 + 58.1671093860844*x2 * x2*x7*x8 + 57.5389371547227*x2 * x2*x7 + 46.6244075778291*x2 * x2*x8 * x8 + 57.139164241161*x2 * x2*x8 + 43.290229127921*x2 * x2 + 20.6090171334433*x2*x3 * x3 * x3 + 41.8433637351295*x2*x3 * x3*x4 + 43.8798180760915*x2*x3 * x3*x5 + 44.6802149146328*x2*x3 * x3*x6 + 51.7505520598446*x2*x3 * x3*x7 + 50.6937631084443*x2*x3 * x3*x8 + 47.8507997896642*x2*x3 * x3 + 42.2975855803787*x2*x3*x4 * x4 + 68.7756443656851*x2*x3*x4*x5 + 72.1053003751596*x2*x3*x4*x6 + 76.7624405144251*x2*x3*x4*x7 + 65.5487057939579*x2*x3*x4*x8 + 74.470833445612*x2*x3*x4 + 45.0380237132333*x2*x3*x5 * x5 + 72.7623044674067*x2*x3*x5*x6 + 81.3244365009264*x2*x3*x5*x7 + 74.3943937462784*x2*x3*x5*x8 + 78.6584568185803*x2*x3*x5 + 49.6840381245701*x2*x3*x6 * x6 + 77.0999944023006*x2*x3*x6*x7 + 75.19621938154*x2*x3*x6*x8 + 78.745667528904*x2*x3*x6 + 49.3762363590819*x2*x3*x7 * x7 + 81.0343785719933*x2*x3*x7*x8 + 81.0224915662045*x2*x3*x7 + 51.5104260789741*x2*x3*x8 * x8 + 79.8812920513042*x2*x3*x8 + 51.1642014719079*x2*x3 + 22.8981842248532*x2*x4 * x4 * x4 + 46.5258902456657*x2*x4 * x4*x5 + 50.7506613267302*x2*x4 * x4*x6 + 51.6357368235144*x2*x4 * x4*x7 + 43.8140228992028*x2*x4 * x4*x8 + 48.8188195945653*x2*x4 * x4 + 49.5317113501973*x2*x4*x5 * x5 + 74.7364219308678*x2*x4*x5*x6 + 88.2698144963266*x2*x4*x5*x7 + 70.8293466096996*x2*x4*x5*x8 + 78.4030737932493*x2*x4*x5 + 45.9540365145868*x2*x4*x6 * x6 + 82.5881701472963*x2*x4*x6*x7 + 69.2748954552474*x2*x4*x6*x8 + 81.744270708795*x2*x4*x6 + 57.5612612864303*x2*x4*x7 * x7 + 79.6496164442444*x2*x4*x7*x8 + 81.7131085365129*x2*x4*x7 + 46.2775480838498*x2*x4*x8 * x8 + 70.8955147975799*x2*x4*x8 + 45.5845945046818*x2*x4 + 25.9661857515214*x2*x5 * x5 * x5 + 49.1894094386965*x2*x5 * x5*x6 + 57.2969605853059*x2*x5 * x5*x7 + 51.2126668502062*x2*x5 * x5*x8 + 58.2557280061326*x2*x5 * x5 + 47.9109969564551*x2*x5*x6 * x6 + 83.7641935497986*x2*x5*x6*x7 + 75.0345702910767*x2*x5*x6*x8 + 82.5673964864209*x2*x5*x6 + 56.4470734185605*x2*x5*x7 * x7 + 86.0558483118581*x2*x5*x7*x8 + 91.9662627574362*x2*x5*x7 + 51.1022576245342*x2*x5*x8 * x8 + 82.700897264504*x2*x5*x8 + 51.5851629324286*x2*x5 + 21.2494087233743*x2*x6 * x6 * x6 + 54.3458002473764*x2*x6 * x6*x7 + 48.6358501387658*x2*x6 * x6*x8 + 50.2370106758855*x2*x6 * x6 + 50.7733655651551*x2*x6*x7 * x7 + 79.1174753873191*x2*x6*x7*x8 + 84.1638116283359*x2*x6*x7 + 50.7491656389432*x2*x6*x8 * x8 + 77.4785940375875*x2*x6*x8 + 50.3878875475785*x2*x6 + 29.5594342812854*x2*x7 * x7 * x7 + 55.3586728655568*x2*x7 * x7*x8 + 54.8391571944917*x2*x7 * x7 + 62.9116320001668*x2*x7*x8 * x8 + 85.7533895994102*x2*x7*x8 + 57.5383542598219*x2*x7 + 27.7361781185403*x2*x8 * x8 * x8 + 57.1236593110537*x2*x8 * x8 + 52.0281579782984*x2*x8 + 26.1941575027209*x2 + 15.754299508177*x3 * x3 * x3 * x3 + 21.3305285775903*x3 * x3 * x3*x4 + 24.5675329374786*x3 * x3 * x3*x5 + 26.0596495168909*x3 * x3 * x3*x6 + 25.4744382843511*x3 * x3 * x3*x7 + 25.1499918195525*x3 * x3 * x3*x8 + 27.383192854996*x3 * x3 * x3 + 36.8985665308896*x3 * x3*x4 * x4 + 49.0815960200591*x3 * x3*x4*x5 + 57.1478538774415*x3 * x3*x4*x6 + 48.3314641890178*x3 * x3*x4*x7 + 44.2318181663292*x3 * x3*x4*x8 + 47.4399141578762*x3 * x3*x4 + 44.155862209297*x3 * x3*x5 * x5 + 56.0807333184024*x3 * x3*x5*x6 + 53.5164364011903*x3 * x3*x5*x7 + 47.615565120631*x3 * x3*x5*x8 + 55.5424542158176*x3 * x3*x5 + 44.2416634790204*x3 * x3*x6 * x6 + 49.8787478009256*x3 * x3*x6*x7 + 51.5433625547457*x3 * x3*x6*x8 + 59.7216584229176*x3 * x3*x6 + 37.818862908691*x3 * x3*x7 * x7 + 49.9832269993843*x3 * x3*x7*x8 + 52.2495050005199*x3 * x3*x7 + 43.2800304633056*x3 * x3*x8 * x8 + 54.3438407591568*x3 * x3*x8 + 42.8019772626464*x3 * x3 + 24.0614193943965*x3*x4 * x4 * x4 + 51.9153947669049*x3*x4 * x4*x5 + 53.2850842869975*x3*x4 * x4*x6 + 47.933210157484*x3*x4 * x4*x7 + 43.9114133035981*x3*x4 * x4*x8 + 46.0300664469894*x3*x4 * x4 + 54.5128933842469*x3*x4*x5 * x5 + 85.2459944999884*x3*x4*x5*x6 + 82.0036928382258*x3*x4*x5*x7 + 74.3018606396393*x3*x4*x5*x8 + 83.8687260937446*x3*x4*x5 + 54.3848616027988*x3*x4*x6 * x6 + 80.6662065208772*x3*x4*x6*x7 + 72.6954144255936*x3*x4*x6*x8 + 82.8669045982619*x3*x4*x6 + 48.2250810584308*x3*x4*x7 * x7 + 71.7386250548029*x3*x4*x7*x8 + 72.6904972258259*x3*x4*x7 + 47.8177484219207*x3*x4*x8 * x8 + 76.122278809498*x3*x4*x8 + 47.6887837190155*x3*x4 + 27.2548353590017*x3*x5 * x5 * x5 + 56.9935178944785*x3*x5 * x5*x6 + 55.7153707315444*x3*x5 * x5*x7 + 54.9935166135714*x3*x5 * x5*x8 + 60.7100878459304*x3*x5 * x5 + 54.6429288442773*x3*x5*x6 * x6 + 83.5690494586769*x3*x5*x6*x7 + 82.5313608542126*x3*x5*x6*x8 + 93.9604911881121*x3*x5*x6 + 47.6139351827461*x3*x5*x7 * x7 + 80.8668163087227*x3*x5*x7*x8 + 83.1191409573207*x3*x5*x7 + 53.4035258797919*x3*x5*x8 * x8 + 86.2164633692994*x3*x5*x8 + 56.3799650019968*x3*x5 + 25.5113474573508*x3*x6 * x6 * x6 + 49.8617539184337*x3*x6 * x6*x7 + 51.5446586923012*x3*x6 * x6*x8 + 57.4937125538948*x3*x6 * x6 + 43.0702328096747*x3*x6*x7 * x7 + 77.815022229613*x3*x6*x7*x8 + 81.0694969271277*x3*x6*x7 + 57.3498173405535*x3*x6*x8 * x8 + 85.1558246109811*x3*x6*x8 + 57.4599348234516*x3*x6 + 20.9457896160897*x3*x7 * x7 * x7 + 48.2274017217054*x3*x7 * x7*x8 + 48.6200607166437*x3*x7 * x7 + 48.7798142653182*x3*x7*x8 * x8 + 78.5855882345223*x3*x7*x8 + 51.228173035095*x3*x7 + 27.3297686596392*x3*x8 * x8 * x8 + 59.0537665263481*x3*x8 * x8 + 50.3986596169105*x3*x8 + 24.5208360190762*x3 + 16.5335970858566*x4 * x4 * x4 * x4 + 23.9856691841107*x4 * x4 * x4*x5 + 25.0412096327532*x4 * x4 * x4*x6 + 22.6212913497868*x4 * x4 * x4*x7 + 18.5981004101098*x4 * x4 * x4*x8 + 22.6890086015004*x4 * x4 * x4 + 43.4498069520993*x4 * x4*x5 * x5 + 58.7016684942608*x4 * x4*x5*x6 + 57.5056620773858*x4 * x4*x5*x7 + 47.7174957088612*x4 * x4*x5*x8 + 53.425248491777*x4 * x4*x5 + 44.4895734447984*x4 * x4*x6 * x6 + 53.3251414972261*x4 * x4*x6*x7 + 45.5006096745248*x4 * x4*x6*x8 + 53.7169143681718*x4 * x4*x6 + 41.0194202366105*x4 * x4*x7 * x7 + 46.3838230336983*x4 * x4*x7*x8 + 46.3093495217052*x4 * x4*x7 + 37.9730690282289*x4 * x4*x8 * x8 + 47.5968892719792*x4 * x4*x8 + 37.8398759063444*x4 * x4 + 28.9933224362688*x4*x5 * x5 * x5 + 62.8897483025589*x4*x5 * x5*x6 + 60.3496175386373*x4*x5 * x5*x7 + 49.7211851523244*x4*x5 * x5*x8 + 57.9000979242562*x4*x5 * x5 + 59.4755686567661*x4*x5*x6 * x6 + 92.9805881919193*x4*x5*x6*x7 + 76.7163678974878*x4*x5*x6*x8 + 93.7230486445034*x4*x5*x6 + 55.6035755124313*x4*x5*x7 * x7 + 79.2668521204595*x4*x5*x7*x8 + 89.2802664538798*x4*x5*x7 + 51.2505802911125*x4*x5*x8 * x8 + 80.1441355404755*x4*x5*x8 + 53.2716015785083*x4*x5 + 27.7257440467888*x4*x6 * x6 * x6 + 52.8727035988068*x4*x6 * x6*x7 + 44.070192222999*x4*x6 * x6*x8 + 53.0231498710834*x4*x6 * x6 + 51.5870208847223*x4*x6*x7 * x7 + 71.6593455768238*x4*x6*x7*x8 + 82.9586406477636*x4*x6*x7 + 48.6658635228806*x4*x6*x8 * x8 + 76.530152120439*x4*x6*x8 + 53.56823155745*x4*x6 + 24.0922353248684*x4*x7 * x7 * x7 + 42.9725474181733*x4*x7 * x7*x8 + 52.1102258798691*x4*x7 * x7 + 49.5246298471749*x4*x7*x8 * x8 + 74.2839145713363*x4*x7*x8 + 50.7736097033236*x4*x7 + 25.1855072585253*x4*x8 * x8 * x8 + 48.6126554336491*x4*x8 * x8 + 45.3572331148832*x4*x8 + 21.6973877354396*x4 + 18.7545449197177*x5 * x5 * x5 * x5 + 31.4536016230272*x5 * x5 * x5*x6 + 30.7369707301188*x5 * x5 * x5*x7 + 26.3441995227977*x5 * x5 * x5*x8 + 30.670807755164*x5 * x5 * x5 + 45.6368738733122*x5 * x5*x6 * x6 + 56.8274369690726*x5 * x5*x6*x7 + 55.8845436655172*x5 * x5*x6*x8 + 64.180005478913*x5 * x5*x6 + 44.8198527916952*x5 * x5*x7 * x7 + 54.4503312427899*x5 * x5*x7*x8 + 59.6933857178145*x5 * x5*x7 + 44.4770225717904*x5 * x5*x8 * x8 + 61.5520011313469*x5 * x5*x8 + 45.018780862478*x5 * x5 + 26.3654829433651*x5*x6 * x6 * x6 + 55.7293079223783*x5*x6 * x6*x7 + 51.8928076903556*x5*x6 * x6*x8 + 60.4506051976011*x5*x6 * x6 + 54.6402115217533*x5*x6*x7 * x7 + 77.3020122802523*x5*x6*x7*x8 + 92.9819590544625*x5*x6*x7 + 55.2344397265156*x5*x6*x8 * x8 + 83.8673672551631*x5*x6*x8 + 60.7098456561481*x5*x6 + 25.1822846666957*x5*x7 * x7 * x7 + 53.0124641581141*x5*x7 * x7*x8 + 55.7490275497018*x5*x7 * x7 + 54.8487660519498*x5*x7*x8 * x8 + 85.7228440486947*x5*x7*x8 + 55.2528294114881*x5*x7 + 29.1798465132044*x5*x8 * x8 * x8 + 60.0360106697068*x5*x8 * x8 + 55.8273472841951*x5*x8 + 28.1864509348631*x5 + 15.7767696673828*x6 * x6 * x6 * x6 + 23.2333022404643*x6 * x6 * x6*x7 + 21.9891319726893*x6 * x6 * x6*x8 + 25.2353794693454*x6 * x6 * x6 + 38.9812068018468*x6 * x6*x7 * x7 + 46.8915242163485*x6 * x6*x7*x8 + 54.6541984239965*x6 * x6*x7 + 39.2754437976041*x6 * x6*x8 * x8 + 53.9257926587961*x6 * x6*x8 + 42.7639943646884*x6 * x6 + 21.5185862705854*x6*x7 * x7 * x7 + 46.0812668537739*x6*x7 * x7*x8 + 50.3995361187462*x6*x7 * x7 + 47.6642716487454*x6*x7*x8 * x8 + 79.4507217638054*x6*x7*x8 + 50.3132071851803*x6*x7 + 24.5718297096111*x6*x8 * x8 * x8 + 53.9661992330402*x6*x8 * x8 + 47.9352579992379*x6*x8 + 24.9188431926363*x6 + 14.2055715684097*x7 * x7 * x7 * x7 + 19.9762492945785*x7 * x7 * x7*x8 + 22.5139902252753*x7 * x7 * x7 + 41.0722772396194*x7 * x7*x8 * x8 + 49.2217817834904*x7 * x7*x8 + 35.3361644854723*x7 * x7 + 24.2046028763806*x7*x8 * x8 * x8 + 54.1567681804482*x7*x8 * x8 + 51.1523897907794*x7*x8 + 24.0423632118561*x7 + 18.2520509564329*x8 * x8 * x8 * x8 + 28.9573074376213*x8 * x8 * x8 + 44.3274805573193*x8 * x8 + 25.6700157184301*x8 + 14.6964707089099 >= 0. diff --git a/non-regression/run_valid.sh b/non-regression/run_valid.sh index bea3092f9..588601b0f 100755 --- a/non-regression/run_valid.sh +++ b/non-regression/run_valid.sh @@ -13,7 +13,8 @@ do for f in $files do cpt=`expr $cpt + 1` - res=`$alt_ergo_bin -o native --timelimit $timelimit $options --sat-solver CDCL-Tableaux $f` + opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` + res=`$alt_ergo_bin -o native --timelimit $timelimit $options $opt --sat-solver CDCL-Tableaux $f` if [ "`echo $res | grep -c "Valid"`" -eq "0" ] then echo "[run_valid > default cdcl solver with tableaux] issue with file $f" @@ -29,7 +30,8 @@ cpt=0 for f in $files do cpt=`expr $cpt + 1` - res=`$alt_ergo_bin -o native --timelimit $timelimit --sat-solver Tableaux $f` + opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` + res=`$alt_ergo_bin -o native --timelimit $timelimit $opt --sat-solver Tableaux $f` if [ "`echo $res | grep -c "Valid"`" -eq "0" ] then echo "[run_valid > tableaux solver] issue with file $f" @@ -44,7 +46,8 @@ cpt=0 for f in $files do cpt=`expr $cpt + 1` - res=`$alt_ergo_bin -o native --timelimit $timelimit --sat-solver Tableaux-CDCL $f` + opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` + res=`$alt_ergo_bin -o native --timelimit $timelimit $opt --sat-solver Tableaux-CDCL $f` if [ "`echo $res | grep -c "Valid"`" -eq "0" ] then echo "[run_valid > tableaux solver with cdcl] issue with file $f" @@ -61,7 +64,8 @@ do for f in $files do cpt=`expr $cpt + 1` - res=`$alt_ergo_bin -o native --timelimit $timelimit $options --sat-solver CDCL $f` + opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` + res=`$alt_ergo_bin -o native --timelimit $timelimit $options $opt --sat-solver CDCL $f` if [ "`echo $res | grep -c "Valid"`" -eq "0" ] then echo "[run_valid > cdcl solver] issue with file $f" @@ -77,7 +81,8 @@ done # for f in $files # do # cpt=`expr $cpt + 1` -# res=`$alt_ergo_bin -o native -timelimit $timelimit -inequalities-plugin fm-simplex-plugin.cmxs $f` +# opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` +# res=`$alt_ergo_bin -o native -timelimit $timelimit $opt -inequalities-plugin fm-simplex-plugin.cmxs $f` # if [ "`echo $res | grep -c ":Valid"`" -eq "0" ] # then # echo "[run_valid > fm-simplex-plugin test] issue with file $f" @@ -93,7 +98,8 @@ done # for f in $files # do # cpt=`expr $cpt + 1` -# res=`$alt_ergo_bin -o native -timelimit $timelimit -sat-plugin satML-plugin.cmxs -inequalities-plugin fm-simplex-plugin.cmxs $f` +# opt=`(echo $f | grep -q 'valid/osdp/') && echo "--polynomial-plugin=osdp-plugin.cmxs"` +# res=`$alt_ergo_bin -o native -timelimit $timelimit $opt -sat-plugin satML-plugin.cmxs -inequalities-plugin fm-simplex-plugin.cmxs $f` # if [ "`echo $res | grep -c ":Valid"`" -eq "0" ] # then # echo "[run_valid > satML-plugin+fm-simplex-plugin test] issue with file $f" diff --git a/non-regression/valid/osdp/3_variable_reaction_diffusion_lb.ae b/non-regression/valid/osdp/3_variable_reaction_diffusion_lb.ae new file mode 100644 index 000000000..cfcbceaa1 --- /dev/null +++ b/non-regression/valid/osdp/3_variable_reaction_diffusion_lb.ae @@ -0,0 +1,12 @@ +logic x1 : real +logic x2 : real +logic x3 : real +axiom ax0: (- (5.0)) <= x1 +axiom ax1: x1 <= 5.0 +axiom ax2: (- (5.0)) <= x2 +axiom ax3: x2 <= 5.0 +axiom ax4: (- (5.0)) <= x3 +axiom ax5: x3 <= 5.0 +goal g: + (- (36.7127)) + < (- (x1)) + 2.0 * x2 + (- (x3)) + (- (0.835634534 * x2 * (1.0 + x2))) diff --git a/non-regression/valid/osdp/3_variable_reaction_diffusion_ub.ae b/non-regression/valid/osdp/3_variable_reaction_diffusion_ub.ae new file mode 100644 index 000000000..f32192e81 --- /dev/null +++ b/non-regression/valid/osdp/3_variable_reaction_diffusion_ub.ae @@ -0,0 +1,12 @@ +logic x1 : real +logic x2 : real +logic x3 : real +axiom ax0: (- (5.0)) <= x1 +axiom ax1: x1 <= 5.0 +axiom ax2: (- (5.0)) <= x2 +axiom ax3: x2 <= 5.0 +axiom ax4: (- (5.0)) <= x3 +axiom ax5: x3 <= 5.0 +goal g: + (- (x1)) + 2.0 * x2 + (- (x3)) + (- (0.835634534 * x2 * (1.0 + x2))) + < 10.4388 diff --git a/non-regression/valid/osdp/7_variable_magnetism_lb.ae b/non-regression/valid/osdp/7_variable_magnetism_lb.ae new file mode 100644 index 000000000..b89d8b123 --- /dev/null +++ b/non-regression/valid/osdp/7_variable_magnetism_lb.ae @@ -0,0 +1,25 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +logic x7 : real +axiom ax0: (- (1.0)) <= x1 +axiom ax1: x1 <= 1.0 +axiom ax2: (- (1.0)) <= x2 +axiom ax3: x2 <= 1.0 +axiom ax4: (- (1.0)) <= x3 +axiom ax5: x3 <= 1.0 +axiom ax6: (- (1.0)) <= x4 +axiom ax7: x4 <= 1.0 +axiom ax8: (- (1.0)) <= x5 +axiom ax9: x5 <= 1.0 +axiom ax10: (- (1.0)) <= x6 +axiom ax11: x6 <= 1.0 +axiom ax12: (- (1.0)) <= x7 +axiom ax13: x7 <= 1.0 +goal g: + (- (0.2501)) + < x1 * x1 + 2.0 * x2 * x2 + 2.0 * x3 * x3 + 2.0 * x4 * x4 + 2.0 * x5 * x5 + + 2.0 * x6 * x6 + 2.0 * x7 * x7 + (- (x1)) diff --git a/non-regression/valid/osdp/7_variable_magnetism_ub.ae b/non-regression/valid/osdp/7_variable_magnetism_ub.ae new file mode 100644 index 000000000..7f1134bb6 --- /dev/null +++ b/non-regression/valid/osdp/7_variable_magnetism_ub.ae @@ -0,0 +1,24 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +logic x7 : real +axiom ax0: (- (1.0)) <= x1 +axiom ax1: x1 <= 1.0 +axiom ax2: (- (1.0)) <= x2 +axiom ax3: x2 <= 1.0 +axiom ax4: (- (1.0)) <= x3 +axiom ax5: x3 <= 1.0 +axiom ax6: (- (1.0)) <= x4 +axiom ax7: x4 <= 1.0 +axiom ax8: (- (1.0)) <= x5 +axiom ax9: x5 <= 1.0 +axiom ax10: (- (1.0)) <= x6 +axiom ax11: x6 <= 1.0 +axiom ax12: (- (1.0)) <= x7 +axiom ax13: x7 <= 1.0 +goal g: + x1 * x1 + 2.0 * x2 * x2 + 2.0 * x3 * x3 + 2.0 * x4 * x4 + 2.0 * x5 * x5 + + 2.0 * x6 * x6 + 2.0 * x7 * x7 + (- (x1)) < 14.0001 diff --git a/non-regression/valid/osdp/adaptative_lotka_voltera_system_lb.ae b/non-regression/valid/osdp/adaptative_lotka_voltera_system_lb.ae new file mode 100644 index 000000000..b7c7f01ca --- /dev/null +++ b/non-regression/valid/osdp/adaptative_lotka_voltera_system_lb.ae @@ -0,0 +1,15 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +axiom ax0: (- (2.0)) <= x1 +axiom ax1: x1 <= 2.0 +axiom ax2: (- (2.0)) <= x2 +axiom ax3: x2 <= 2.0 +axiom ax4: (- (2.0)) <= x3 +axiom ax5: x3 <= 2.0 +axiom ax6: (- (2.0)) <= x4 +axiom ax7: x4 <= 2.0 +goal g: + (- (20.8001)) + < x1 * x2 * x2 + x1 * x3 * x3 + x1 * x4 * x4 + (- (1.1 * x1)) + 1.0 diff --git a/non-regression/valid/osdp/adaptative_lotka_voltera_system_ub.ae b/non-regression/valid/osdp/adaptative_lotka_voltera_system_ub.ae new file mode 100644 index 000000000..4225fa6fc --- /dev/null +++ b/non-regression/valid/osdp/adaptative_lotka_voltera_system_ub.ae @@ -0,0 +1,14 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +axiom ax0: (- (2.0)) <= x1 +axiom ax1: x1 <= 2.0 +axiom ax2: (- (2.0)) <= x2 +axiom ax3: x2 <= 2.0 +axiom ax4: (- (2.0)) <= x3 +axiom ax5: x3 <= 2.0 +axiom ax6: (- (2.0)) <= x4 +axiom ax7: x4 <= 2.0 +goal g: + x1 * x2 * x2 + x1 * x3 * x3 + x1 * x4 * x4 + (- (1.1 * x1)) + 1.0 < 22.8001 diff --git a/non-regression/valid/osdp/butcher_lb.ae b/non-regression/valid/osdp/butcher_lb.ae new file mode 100644 index 000000000..b935a3718 --- /dev/null +++ b/non-regression/valid/osdp/butcher_lb.ae @@ -0,0 +1,22 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +axiom ax0: (- (1.0)) <= x1 +axiom ax1: x1 <= 0.0 +axiom ax2: (- (0.1)) <= x2 +axiom ax3: x2 <= 0.9 +axiom ax4: (- (0.1)) <= x3 +axiom ax5: x3 <= 0.5 +axiom ax6: (- (1.0)) <= x4 +axiom ax7: x4 <= (- (0.1)) +axiom ax8: (- (0.1)) <= x5 +axiom ax9: x5 <= (- (0.05)) +axiom ax10: (- (0.1)) <= x6 +axiom ax11: x6 <= (- (0.03)) +goal g: + (- (1.4394)) + < x6 * x2 * x2 + x5 * x3 * x3 + (- (x1 * x4 * x4)) + x4 * x4 * x4 + + x4 * x4 + (- (1.0 / 3.0 * x1)) + 4.0 / 3.0 * x4 diff --git a/non-regression/valid/osdp/butcher_ub.ae b/non-regression/valid/osdp/butcher_ub.ae new file mode 100644 index 000000000..4a8f64cb9 --- /dev/null +++ b/non-regression/valid/osdp/butcher_ub.ae @@ -0,0 +1,21 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +axiom ax0: (- (1.0)) <= x1 +axiom ax1: x1 <= 0.0 +axiom ax2: (- (0.1)) <= x2 +axiom ax3: x2 <= 0.9 +axiom ax4: (- (0.1)) <= x3 +axiom ax5: x3 <= 0.5 +axiom ax6: (- (1.0)) <= x4 +axiom ax7: x4 <= (- (0.1)) +axiom ax8: (- (0.1)) <= x5 +axiom ax9: x5 <= (- (0.05)) +axiom ax10: (- (0.1)) <= x6 +axiom ax11: x6 <= (- (0.03)) +goal g: + x6 * x2 * x2 + x5 * x3 * x3 + (- (x1 * x4 * x4)) + x4 * x4 * x4 + x4 * x4 + + (- (1.0 / 3.0 * x1)) + 4.0 / 3.0 * x4 < 0.2191 diff --git a/non-regression/valid/osdp/caprasses_system_lb.ae b/non-regression/valid/osdp/caprasses_system_lb.ae new file mode 100644 index 000000000..49cdb7a29 --- /dev/null +++ b/non-regression/valid/osdp/caprasses_system_lb.ae @@ -0,0 +1,17 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +axiom ax0: (- (0.5)) <= x1 +axiom ax1: x1 <= 0.5 +axiom ax2: (- (0.5)) <= x2 +axiom ax3: x2 <= 0.5 +axiom ax4: (- (0.5)) <= x3 +axiom ax5: x3 <= 0.5 +axiom ax6: (- (0.5)) <= x4 +axiom ax7: x4 <= 0.5 +goal g: + (- (3.1801)) + < (- (x1 * x3 * x3 * x3)) + 4.0 * x2 * x3 * x3 * x4 + + 4.0 * x1 * x3 * x4 * x4 + 2.0 * x2 * x4 * x4 * x4 + 4.0 * x1 * x3 + + 4.0 * x3 * x3 + (- (10.0 * x2 * x4)) + (- (10.0 * x4 * x4)) + 2.0 diff --git a/non-regression/valid/osdp/caprasses_system_ub.ae b/non-regression/valid/osdp/caprasses_system_ub.ae new file mode 100644 index 000000000..a395255b1 --- /dev/null +++ b/non-regression/valid/osdp/caprasses_system_ub.ae @@ -0,0 +1,16 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +axiom ax0: (- (0.5)) <= x1 +axiom ax1: x1 <= 0.5 +axiom ax2: (- (0.5)) <= x2 +axiom ax3: x2 <= 0.5 +axiom ax4: (- (0.5)) <= x3 +axiom ax5: x3 <= 0.5 +axiom ax6: (- (0.5)) <= x4 +axiom ax7: x4 <= 0.5 +goal g: + (- (x1 * x3 * x3 * x3)) + 4.0 * x2 * x3 * x3 * x4 + 4.0 * x1 * x3 * x4 * x4 + + 2.0 * x2 * x4 * x4 * x4 + 4.0 * x1 * x3 + 4.0 * x3 * x3 + + (- (10.0 * x2 * x4)) + (- (10.0 * x4 * x4)) + 2.0 < 4.4853 diff --git a/non-regression/valid/osdp/ex01_0.ae b/non-regression/valid/osdp/ex01_0.ae new file mode 100644 index 000000000..08ee89fda --- /dev/null +++ b/non-regression/valid/osdp/ex01_0.ae @@ -0,0 +1,9 @@ +goal g : + forall x0, x1, x2 : real. + (x1 * x1 <= 2244380813988371./8796093022208. + and 5434649265398495./288230376151711744. * x1 * x1 + -2235225908102023./72057594037927936. * x1 * x2 + 2309742551941169./144115188075855872. * x2 * x2 <= 1126256253765299./1125899906842624. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 1086929853079699./22517998136852480. * x0 * x0 + 7363044163787393./180143985094819840. * + x0 * x1 + 13744362009667255./1152921504606846976. * x1 * x1 + -7608508971557893./180143985094819840. * + x0 * x2 + -51541309146511751./2882303761517117440. * x1 * x2 + 53259562800905251./5764607523034234880. * + x2 * x2 <= 1126256253765299./1125899906842624. diff --git a/non-regression/valid/osdp/ex01_1.ae b/non-regression/valid/osdp/ex01_1.ae new file mode 100644 index 000000000..54a61fa52 --- /dev/null +++ b/non-regression/valid/osdp/ex01_1.ae @@ -0,0 +1,6 @@ +goal g : + forall x0, x1, x2 : real. + (x1 * x1 <= 2244380813988371./8796093022208. + and 5434649265398495./288230376151711744. * x1 * x1 + -2235225908102023./72057594037927936. * x1 * x2 + 2309742551941169./144115188075855872. * x2 * x2 <= 1126256253765299./1125899906842624. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 64./25. * x0 * x0 + 24./5. * x0 * x1 + 9./4. * x1 * x1 + -56./25. * x0 * x2 + -21./10. * x1 * x2 + 49./100. * x2 * x2 <= 2244380813988371./8796093022208. diff --git a/non-regression/valid/osdp/ex01_s.ae b/non-regression/valid/osdp/ex01_s.ae new file mode 100644 index 000000000..c717d6187 --- /dev/null +++ b/non-regression/valid/osdp/ex01_s.ae @@ -0,0 +1,8 @@ +goal g : + forall x0, x1, x2 : real. + (5434649265398495./288230376151711744. * x1 * x1 + -2235225908102023./72057594037927936. * x1 * x2 + 2309742551941169./144115188075855872. * x2 * x2 <= 4505025181421617./4503599627370496. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 1086929853079699./22517998136852480. * x0 * x0 + 7363044163787393./180143985094819840. * + x0 * x1 + 13744362009667255./1152921504606846976. * x1 * x1 + -7608508971557893./180143985094819840. * + x0 * x2 + -51541309146511751./2882303761517117440. * x1 * x2 + 53259562800905251./5764607523034234880. * + x2 * x2 <= 4505025181421617./4503599627370496. diff --git a/non-regression/valid/osdp/ex02_0.ae b/non-regression/valid/osdp/ex02_0.ae new file mode 100644 index 000000000..4b1ae480f --- /dev/null +++ b/non-regression/valid/osdp/ex02_0.ae @@ -0,0 +1,18 @@ +goal g : + forall x0, x1, x2, x3, x4 : real. + (x1 * x1 <= 6104882730649731./2251799813685248. + and 7337111046759473./2251799813685248. * x1 * x1 + -2907612138424301./562949953421312. * + x1 * x2 + 1409542041811277./562949953421312. * x2 * x2 + -3668555522676813./1125899906842624. * + x1 * x3 + 726903034475363./281474976710656. * x2 * x3 + 4681875744883939./4503599627370496. * + x3 * x3 + 5081513174290049./2251799813685248. * x1 * x4 + -5056645740656145./2251799813685248. * + x2 * x4 + -5081513173034077./4503599627370496. * x3 * x4 + 6119136129884633./9007199254740992. * + x4 * x4 <= 1126156385803479./1125899906842624. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 2026640445820099./9007199254740992. * x0 * x0 + 2126145./4503599627370496. * + x0 * x1 + 18803980767632465./9007199254740992. * x1 * x1 + -9840929./22517998136852480. * + x0 * x2 + -14533238421213701./4503599627370496. * x1 * x2 + 359518441291214177./225179981368524800. * + x2 * x2 + -3561069./22517998136852480. * x0 * x3 + -2350497594913961./1125899906842624. * + x1 * x3 + 90832740095531231./56294995342131200. * x2 * x3 + 39197730584506643./56294995342131200. * + x3 * x3 + 1405847./5629499534213120. * x0 * x4 + 2076176917316243./1125899906842624. * + x1 * x4 + -51359777327316311./28147497671065600. * x2 * x4 + -12976105727933033./14073748835532800. * + x3 * x4 + 7337111046759473./14073748835532800. * x4 * x4 <= 1126156385803479./1125899906842624. diff --git a/non-regression/valid/osdp/ex02_1.ae b/non-regression/valid/osdp/ex02_1.ae new file mode 100644 index 000000000..d51204ffb --- /dev/null +++ b/non-regression/valid/osdp/ex02_1.ae @@ -0,0 +1,14 @@ +goal g : + forall x0, x1, x2, x3, x4 : real. + (x1 * x1 <= 6104882730649731./2251799813685248. + and 7337111046759473./2251799813685248. * x1 * x1 + -2907612138424301./562949953421312. * + x1 * x2 + 1409542041811277./562949953421312. * x2 * x2 + -3668555522676813./1125899906842624. * + x1 * x3 + 726903034475363./281474976710656. * x2 * x3 + 4681875744883939./4503599627370496. * + x3 * x3 + 5081513174290049./2251799813685248. * x1 * x4 + -5056645740656145./2251799813685248. * + x2 * x4 + -5081513173034077./4503599627370496. * x3 * x4 + 6119136129884633./9007199254740992. * + x4 * x4 <= 1126156385803479./1125899906842624. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 1./4. * x0 * x0 + 3./2. * x0 * x1 + 9./4. * x1 * x1 + -7./10. * x0 * x2 + -21./10. * + x1 * x2 + 49./100. * x2 * x2 + -7./10. * x0 * x3 + -21./10. * x1 * x3 + 49./50. * + x2 * x3 + 49./100. * x3 * x3 + 2./5. * x0 * x4 + 6./5. * x1 * x4 + -14./25. * + x2 * x4 + -14./25. * x3 * x4 + 4./25. * x4 * x4 <= 6104882730649731./2251799813685248. diff --git a/non-regression/valid/osdp/ex02_s.ae b/non-regression/valid/osdp/ex02_s.ae new file mode 100644 index 000000000..a9c45d3b1 --- /dev/null +++ b/non-regression/valid/osdp/ex02_s.ae @@ -0,0 +1,17 @@ +goal g : + forall x0, x1, x2, x3, x4 : real. + (7337111046759473./2251799813685248. * x1 * x1 + -2907612138424301./562949953421312. * + x1 * x2 + 1409542041811277./562949953421312. * x2 * x2 + -3668555522676813./1125899906842624. * + x1 * x3 + 726903034475363./281474976710656. * x2 * x3 + 4681875744883939./4503599627370496. * + x3 * x3 + 5081513174290049./2251799813685248. * x1 * x4 + -5056645740656145./2251799813685248. * + x2 * x4 + -5081513173034077./4503599627370496. * x3 * x4 + 6119136129884633./9007199254740992. * + x4 * x4 <= 4504625494384113./4503599627370496. and x0 <= 1. and 0. <= 1. and + -x0 <= 1.) + -> 2026640445820099./9007199254740992. * x0 * x0 + 2126145./4503599627370496. * + x0 * x1 + 18803980767632465./9007199254740992. * x1 * x1 + -9840929./22517998136852480. * + x0 * x2 + -14533238421213701./4503599627370496. * x1 * x2 + 359518441291214177./225179981368524800. * + x2 * x2 + -3561069./22517998136852480. * x0 * x3 + -2350497594913961./1125899906842624. * + x1 * x3 + 90832740095531231./56294995342131200. * x2 * x3 + 39197730584506643./56294995342131200. * + x3 * x3 + 1405847./5629499534213120. * x0 * x4 + 2076176917316243./1125899906842624. * + x1 * x4 + -51359777327316311./28147497671065600. * x2 * x4 + -12976105727933033./14073748835532800. * + x3 * x4 + 7337111046759473./14073748835532800. * x4 * x4 <= 4504625494384113./4503599627370496. diff --git a/non-regression/valid/osdp/ex03_0.ae b/non-regression/valid/osdp/ex03_0.ae new file mode 100644 index 000000000..cffbf9368 --- /dev/null +++ b/non-regression/valid/osdp/ex03_0.ae @@ -0,0 +1,9 @@ +goal g : + forall x0, x1, x2 : real. + (x1 * x1 <= 4569511492918935./281474976710656. and x2 * x2 <= 3663966569933171./8796093022208. + and 5758877526517161./4611686018427387904. * x1 * x1 + 8189182971628365./36893488147419103232. * x1 * x2 + 1609055879090527./1152921504606846976. * x2 * x2 <= 5234633192578273./9007199254740992. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 5758877526517161./4611686018427387904. * x0 * x0 + 23030385000714648537./18446744073709551616000. * + x0 * x1 + 5758871552841956038519./18446744073709551616000000. * + x1 * x1 + 17910404752073181./184467440737095516160. * x0 * x2 + 28131595653890265613./368934881474191032320000. * + x1 * x2 + 5119550653284578897./3689348814741910323200. * x2 * x2 <= 5234633192578273./9007199254740992. diff --git a/non-regression/valid/osdp/ex03_1.ae b/non-regression/valid/osdp/ex03_1.ae new file mode 100644 index 000000000..83a982bbd --- /dev/null +++ b/non-regression/valid/osdp/ex03_1.ae @@ -0,0 +1,6 @@ +goal g : + forall x0, x1, x2 : real. + (x1 * x1 <= 4569511492918935./281474976710656. and x2 * x2 <= 3663966569933171./8796093022208. + and 5758877526517161./4611686018427387904. * x1 * x1 + 8189182971628365./36893488147419103232. * x1 * x2 + 1609055879090527./1152921504606846976. * x2 * x2 <= 5234633192578273./9007199254740992. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 1./10000. * x1 * x1 + 1./50. * x1 * x2 + x2 * x2 <= 3663966569933171./8796093022208. diff --git a/non-regression/valid/osdp/ex03_2.ae b/non-regression/valid/osdp/ex03_2.ae new file mode 100644 index 000000000..ea7fcf7ed --- /dev/null +++ b/non-regression/valid/osdp/ex03_2.ae @@ -0,0 +1,6 @@ +goal g : + forall x0, x1, x2 : real. + (x1 * x1 <= 4569511492918935./281474976710656. and x2 * x2 <= 3663966569933171./8796093022208. + and 5758877526517161./4611686018427387904. * x1 * x1 + 8189182971628365./36893488147419103232. * x1 * x2 + 1609055879090527./1152921504606846976. * x2 * x2 <= 5234633192578273./9007199254740992. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> x0 * x0 + 499./500. * x0 * x1 + 249001./1000000. * x1 * x1 + -1./10. * x0 * x2 + -499./10000. * x1 * x2 + 1./400. * x2 * x2 <= 4569511492918935./281474976710656. diff --git a/non-regression/valid/osdp/ex03_s.ae b/non-regression/valid/osdp/ex03_s.ae new file mode 100644 index 000000000..c2d8d8c66 --- /dev/null +++ b/non-regression/valid/osdp/ex03_s.ae @@ -0,0 +1,8 @@ +goal g : + forall x0, x1, x2 : real. + (5758877526517161./4611686018427387904. * x1 * x1 + 8189182971628365./36893488147419103232. * x1 * x2 + 1609055879090527./1152921504606846976. * x2 * x2 <= 4614627937518555./4503599627370496. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 5758877526517161./4611686018427387904. * x0 * x0 + 23030385000714648537./18446744073709551616000. * + x0 * x1 + 5758871552841956038519./18446744073709551616000000. * + x1 * x1 + 17910404752073181./184467440737095516160. * x0 * x2 + 28131595653890265613./368934881474191032320000. * + x1 * x2 + 5119550653284578897./3689348814741910323200. * x2 * x2 <= 4614627937518555./4503599627370496. diff --git a/non-regression/valid/osdp/ex04_0.ae b/non-regression/valid/osdp/ex04_0.ae new file mode 100644 index 000000000..e78aa3bc1 --- /dev/null +++ b/non-regression/valid/osdp/ex04_0.ae @@ -0,0 +1,16 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x1 * x1 <= 3274194383407177./18014398509481984. and x2 * x2 <= 135178465384213./1125899906842624. and + x3 * x3 <= 5112721872896629./18014398509481984. + and 6817749436535833./1125899906842624. * x1 * x1 + -340386441120163./35184372088832. * + x1 * x2 + 3206662369866531./281474976710656. * x2 * x2 + -5111281551393261./2251799813685248. * + x1 * x3 + 6026032143345849./2251799813685248. * x2 * x3 + 8490184403565231./2251799813685248. * + x3 * x3 <= 4515845426644273./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 575585452776291293943./225179981368524800000000. * x0 * x0 + 26780017714302389555509./225179981368524800000000. * + x0 * x1 + 63960275145766115096477./11258999068426240000000. * x1 * x1 + 24220211131510442004141./225179981368524800000000. * + x0 * x2 + -2261248852554613536711467./225179981368524800000000. * + x1 * x2 + 618638328530365029600987./56294995342131200000000. * x2 * x2 + 1542703754993845806231./45035996273704960000000. * + x0 * x3 + -540234512363770994168503./225179981368524800000000. * + x1 * x3 + 56027948263409623855467./22517998136852480000000. * x2 * x3 + 41548215543908281381821./11258999068426240000000. * + x3 * x3 <= 4515845426644273./4503599627370496. diff --git a/non-regression/valid/osdp/ex04_1.ae b/non-regression/valid/osdp/ex04_1.ae new file mode 100644 index 000000000..2b95a243f --- /dev/null +++ b/non-regression/valid/osdp/ex04_1.ae @@ -0,0 +1,13 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x1 * x1 <= 3274194383407177./18014398509481984. and x2 * x2 <= 135178465384213./1125899906842624. and + x3 * x3 <= 5112721872896629./18014398509481984. + and 6817749436535833./1125899906842624. * x1 * x1 + -340386441120163./35184372088832. * + x1 * x2 + 3206662369866531./281474976710656. * x2 * x2 + -5111281551393261./2251799813685248. * + x1 * x3 + 6026032143345849./2251799813685248. * x2 * x3 + 8490184403565231./2251799813685248. * + x3 * x3 <= 4515845426644273./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 5929./100000000. * x0 * x0 + 5467./25000000. * x0 * x1 + 5041./25000000. * + x1 * x1 + -15169./50000000. * x0 * x2 + -13987./25000000. * x1 * x2 + 38809./100000000. * + x2 * x2 + 756371./50000000. * x0 * x3 + 697433./25000000. * x1 * x3 + -1935131./50000000. * + x2 * x3 + 96491329./100000000. * x3 * x3 <= 5112721872896629./18014398509481984. diff --git a/non-regression/valid/osdp/ex04_2.ae b/non-regression/valid/osdp/ex04_2.ae new file mode 100644 index 000000000..2a1448272 --- /dev/null +++ b/non-regression/valid/osdp/ex04_2.ae @@ -0,0 +1,13 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x1 * x1 <= 3274194383407177./18014398509481984. and x2 * x2 <= 135178465384213./1125899906842624. and + x3 * x3 <= 5112721872896629./18014398509481984. + and 6817749436535833./1125899906842624. * x1 * x1 + -340386441120163./35184372088832. * + x1 * x2 + 3206662369866531./281474976710656. * x2 * x2 + -5111281551393261./2251799813685248. * + x1 * x3 + 6026032143345849./2251799813685248. * x2 * x3 + 8490184403565231./2251799813685248. * + x3 * x3 <= 4515845426644273./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 20449./100000000. * x0 * x0 + -14443./12500000. * x0 * x1 + 10201./6250000. * + x1 * x1 + 17303./625000. * x0 * x2 + -12221./156250. * x1 * x2 + 14641./15625. * + x2 * x2 + -25597./50000000. * x0 * x3 + 18079./12500000. * x1 * x3 + -21659./625000. * + x2 * x3 + 32041./100000000. * x3 * x3 <= 135178465384213./1125899906842624. diff --git a/non-regression/valid/osdp/ex04_3.ae b/non-regression/valid/osdp/ex04_3.ae new file mode 100644 index 000000000..c9e31cd0c --- /dev/null +++ b/non-regression/valid/osdp/ex04_3.ae @@ -0,0 +1,13 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x1 * x1 <= 3274194383407177./18014398509481984. and x2 * x2 <= 135178465384213./1125899906842624. and + x3 * x3 <= 5112721872896629./18014398509481984. + and 6817749436535833./1125899906842624. * x1 * x1 + -340386441120163./35184372088832. * + x1 * x2 + 3206662369866531./281474976710656. * x2 * x2 + -5111281551393261./2251799813685248. * + x1 * x3 + 6026032143345849./2251799813685248. * x2 * x3 + 8490184403565231./2251799813685248. * + x3 * x3 <= 4515845426644273./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 56169./100000000. * x0 * x0 + 2222823./50000000. * x0 * x1 + 87965641./100000000. * + x1 * x1 + -90297./50000000. * x0 * x2 + -3573399./50000000. * x1 * x2 + 145161./100000000. * + x2 * x2 + -49059./25000000. * x0 * x3 + -1941453./25000000. * x1 * x3 + 78867./25000000. * + x2 * x3 + 42849./25000000. * x3 * x3 <= 3274194383407177./18014398509481984. diff --git a/non-regression/valid/osdp/ex04_s.ae b/non-regression/valid/osdp/ex04_s.ae new file mode 100644 index 000000000..624460b86 --- /dev/null +++ b/non-regression/valid/osdp/ex04_s.ae @@ -0,0 +1,14 @@ +goal g : + forall x0, x1, x2, x3 : real. + (6817749436535833./1125899906842624. * x1 * x1 + -340386441120163./35184372088832. * + x1 * x2 + 3206662369866531./281474976710656. * x2 * x2 + -5111281551393261./2251799813685248. * + x1 * x3 + 6026032143345849./2251799813685248. * x2 * x3 + 8490184403565231./2251799813685248. * + x3 * x3 <= 4515845390427407./4503599627370496. and x0 <= 1. and 0. <= 1. and + -x0 <= 1.) + -> 575585452776291293943./225179981368524800000000. * x0 * x0 + 26780017714302389555509./225179981368524800000000. * + x0 * x1 + 63960275145766115096477./11258999068426240000000. * x1 * x1 + 24220211131510442004141./225179981368524800000000. * + x0 * x2 + -2261248852554613536711467./225179981368524800000000. * + x1 * x2 + 618638328530365029600987./56294995342131200000000. * x2 * x2 + 1542703754993845806231./45035996273704960000000. * + x0 * x3 + -540234512363770994168503./225179981368524800000000. * + x1 * x3 + 56027948263409623855467./22517998136852480000000. * x2 * x3 + 41548215543908281381821./11258999068426240000000. * + x3 * x3 <= 4515845390427407./4503599627370496. diff --git a/non-regression/valid/osdp/ex05_0.ae b/non-regression/valid/osdp/ex05_0.ae new file mode 100644 index 000000000..dd99895a9 --- /dev/null +++ b/non-regression/valid/osdp/ex05_0.ae @@ -0,0 +1,27 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x2 * x2 <= 5950128879700737./281474976710656. and x3 * x3 <= 6298206705176285./281474976710656. and + x4 * x4 <= 5284679266626119./281474976710656. and x5 * x5 <= 5390405967564809./281474976710656. + and 27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 2252280396724491./2251799813685248. + and x0 <= 1. and x1 <= 1. and 0. <= 1. and -x1 <= 1. and -x0 <= 1.) + -> 24505149164094224356349./3602879701896396800000000. * x0 * x0 + 108267998773414305994971./3602879701896396800000000. * + x0 * x1 + 1406404305268810356879841./7205759403792793600000000. * + x1 * x1 + 302674552848711153547951./14411518807585587200000000. * x0 * x2 + -28338457835111726878869./2882303761517117440000000. * + x1 * x2 + 230084228949559047442717./7205759403792793600000000. * + x2 * x2 + -38651824297967989301409./14411518807585587200000000. * x0 * x3 + 50826138748259251530613./14411518807585587200000000. * + x1 * x3 + -349901708032940826783461./14411518807585587200000000. * + x2 * x3 + 546557208615903883959481./14411518807585587200000000. * + x3 * x3 + 107435967943533732818617./7205759403792793600000000. * x0 * x4 + -22200774812208158758419./1801439850948198400000000. * + x1 * x4 + -8992310397791956104577./2882303761517117440000000. * + x2 * x4 + -334137196886968686595107./14411518807585587200000000. * + x3 * x4 + 413446509158371253776317./7205759403792793600000000. * + x4 * x4 + -15204603642621098347249./3602879701896396800000000. * x0 * x5 + 79768606834729280615327./7205759403792793600000000. * + x1 * x5 + 14031038854023707419103./7205759403792793600000000. * + x2 * x5 + 10000563663098348107819./3602879701896396800000000. * + x3 * x5 + -257053522999841443905867./7205759403792793600000000. * + x4 * x5 + 4145309482207355815261./720575940379279360000000. * x5 * x5 <= 2252280396724491./2251799813685248. diff --git a/non-regression/valid/osdp/ex05_1.ae b/non-regression/valid/osdp/ex05_1.ae new file mode 100644 index 000000000..7d28e8ef1 --- /dev/null +++ b/non-regression/valid/osdp/ex05_1.ae @@ -0,0 +1,19 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x2 * x2 <= 5950128879700737./281474976710656. and x3 * x3 <= 6298206705176285./281474976710656. and + x4 * x4 <= 5284679266626119./281474976710656. and x5 * x5 <= 5390405967564809./281474976710656. + and 27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 2252280396724491./2251799813685248. + and x0 <= 1. and x1 <= 1. and 0. <= 1. and -x1 <= 1. and -x0 <= 1.) + -> 281961./100000000. * x0 * x0 + -532593./12500000. * x0 * x1 + 1006009./6250000. * + x1 * x1 + -1403433./50000000. * x0 * x2 + 2650929./12500000. * x1 * x2 + 6985449./100000000. * + x2 * x2 + 344619./25000000. * x0 * x3 + -650947./6250000. * x1 * x3 + -1715307./25000000. * + x2 * x3 + 421201./25000000. * x3 * x3 + 5258493./50000000. * x0 * x4 + -9932709./12500000. * + x1 * x4 + -26173629./50000000. * x2 * x4 + 6427047./25000000. * x3 * x4 + 98069409./100000000. * + x4 * x4 + -1768761./50000000. * x0 * x5 + 3340993./12500000. * x1 * x5 + 8803833./50000000. * + x2 * x5 + -2161819./25000000. * x3 * x5 + -32986893./50000000. * x4 * x5 + 11095561./100000000. * + x5 * x5 <= 5390405967564809./281474976710656. diff --git a/non-regression/valid/osdp/ex05_2.ae b/non-regression/valid/osdp/ex05_2.ae new file mode 100644 index 000000000..f041f2b87 --- /dev/null +++ b/non-regression/valid/osdp/ex05_2.ae @@ -0,0 +1,19 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x2 * x2 <= 5950128879700737./281474976710656. and x3 * x3 <= 6298206705176285./281474976710656. and + x4 * x4 <= 5284679266626119./281474976710656. and x5 * x5 <= 5390405967564809./281474976710656. + and 27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 2252280396724491./2251799813685248. + and x0 <= 1. and x1 <= 1. and 0. <= 1. and -x1 <= 1. and -x0 <= 1.) + -> 61009./25000000. * x0 * x0 + 1993043./12500000. * x0 * x1 + 65108761./25000000. * + x1 * x1 + 113373./12500000. * x0 * x2 + 3703671./12500000. * x1 * x2 + 210681./25000000. * + x2 * x2 + -13091./5000000. * x0 * x3 + -427657./5000000. * x1 * x3 + -24327./5000000. * + x2 * x3 + 2809./4000000. * x3 * x3 + -1807793./25000000. * x0 * x4 + -59057011./25000000. * + x1 * x4 + -3359421./25000000. * x2 * x4 + 387907./10000000. * x3 * x4 + 53567761./100000000. * + x4 * x4 + 659243./25000000. * x0 * x5 + 21536161./25000000. * x1 * x5 + 1225071./25000000. * + x2 * x5 + -141457./10000000. * x3 * x5 + -19534411./50000000. * x4 * x5 + 7123561./100000000. * + x5 * x5 <= 5284679266626119./281474976710656. diff --git a/non-regression/valid/osdp/ex05_3.ae b/non-regression/valid/osdp/ex05_3.ae new file mode 100644 index 000000000..d8cb3f0a7 --- /dev/null +++ b/non-regression/valid/osdp/ex05_3.ae @@ -0,0 +1,19 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x2 * x2 <= 5950128879700737./281474976710656. and x3 * x3 <= 6298206705176285./281474976710656. and + x4 * x4 <= 5284679266626119./281474976710656. and x5 * x5 <= 5390405967564809./281474976710656. + and 27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 2252280396724491./2251799813685248. + and x0 <= 1. and x1 <= 1. and 0. <= 1. and -x1 <= 1. and -x0 <= 1.) + -> 729./25000000. * x0 * x0 + -181737./25000000. * x0 * x1 + 45306361./100000000. * + x1 * x1 + 91989./25000000. * x0 * x2 + -22932517./50000000. * x1 * x2 + 11607649./100000000. * + x2 * x2 + -245781./25000000. * x0 * x3 + 61272293./50000000. * x1 * x3 + -31013921./50000000. * + x2 * x3 + 82864609./100000000. * x3 * x3 + 22869./6250000. * x0 * x4 + -5701157./12500000. * + x1 * x4 + 2885729./12500000. * x2 * x4 + -7710241./12500000. * x3 * x4 + 717409./6250000. * + x4 * x4 + -17523./25000000. * x0 * x5 + 4368419./50000000. * x1 * x5 + -2211143./50000000. * + x2 * x5 + 5907847./50000000. * x3 * x5 + -549703./12500000. * x4 * x5 + 421201./100000000. * + x5 * x5 <= 6298206705176285./281474976710656. diff --git a/non-regression/valid/osdp/ex05_4.ae b/non-regression/valid/osdp/ex05_4.ae new file mode 100644 index 000000000..c155a21c8 --- /dev/null +++ b/non-regression/valid/osdp/ex05_4.ae @@ -0,0 +1,19 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x2 * x2 <= 5950128879700737./281474976710656. and x3 * x3 <= 6298206705176285./281474976710656. and + x4 * x4 <= 5284679266626119./281474976710656. and x5 * x5 <= 5390405967564809./281474976710656. + and 27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 2252280396724491./2251799813685248. + and x0 <= 1. and x1 <= 1. and 0. <= 1. and -x1 <= 1. and -x0 <= 1.) + -> 146689./1562500. * x0 * x0 + 349679./3125000. * x0 * x1 + 833569./25000000. * + x1 * x1 + 2384941./6250000. * x0 * x2 + 5685251./25000000. * x1 * x2 + 38775529./100000000. * + x2 * x2 + 1482593./6250000. * x0 * x3 + 3534223./25000000. * x1 * x3 + 24104717./50000000. * + x2 * x3 + 14984641./100000000. * x3 * x3 + -43279./625000. * x0 * x4 + -103169./2500000. * + x1 * x4 + -703651./5000000. * x2 * x4 + -437423./5000000. * x3 * x4 + 12769./1000000. * + x4 * x4 + 19533./3125000. * x0 * x5 + 46563./12500000. * x1 * x5 + 317577./25000000. * + x2 * x5 + 197421./25000000. * x3 * x5 + -5763./2500000. * x4 * x5 + 2601./25000000. * + x5 * x5 <= 5950128879700737./281474976710656. diff --git a/non-regression/valid/osdp/ex05_s.ae b/non-regression/valid/osdp/ex05_s.ae new file mode 100644 index 000000000..e297c4a20 --- /dev/null +++ b/non-regression/valid/osdp/ex05_s.ae @@ -0,0 +1,25 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (27180306845597./562949953421312. * x2 * x2 + -5986153717451699./144115188075855872. * + x2 * x3 + 532212529298335./9007199254740992. * x3 * x3 + 824319268593747./36028797018963968. * + x2 * x4 + -5497683804820433./72057594037927936. * x3 * x4 + 4869096980245239./36028797018963968. * + x4 * x4 + -4509909157245739./144115188075855872. * x2 * x5 + 5174687511630395./72057594037927936. * + x3 * x5 + -3988912070097959./18014398509481984. * x4 * x5 + 2500039364618747./18014398509481984. * + x5 * x5 <= 4504560764861451./4503599627370496. and x0 <= 1. and x1 <= 1. and 0. <= 1. and + -x1 <= 1. and -x0 <= 1.) + -> 24505149164094224356349./3602879701896396800000000. * x0 * x0 + 108267998773414305994971./3602879701896396800000000. * + x0 * x1 + 1406404305268810356879841./7205759403792793600000000. * + x1 * x1 + 302674552848711153547951./14411518807585587200000000. * x0 * x2 + -28338457835111726878869./2882303761517117440000000. * + x1 * x2 + 230084228949559047442717./7205759403792793600000000. * + x2 * x2 + -38651824297967989301409./14411518807585587200000000. * x0 * x3 + 50826138748259251530613./14411518807585587200000000. * + x1 * x3 + -349901708032940826783461./14411518807585587200000000. * + x2 * x3 + 546557208615903883959481./14411518807585587200000000. * + x3 * x3 + 107435967943533732818617./7205759403792793600000000. * x0 * x4 + -22200774812208158758419./1801439850948198400000000. * + x1 * x4 + -8992310397791956104577./2882303761517117440000000. * + x2 * x4 + -334137196886968686595107./14411518807585587200000000. * + x3 * x4 + 413446509158371253776317./7205759403792793600000000. * + x4 * x4 + -15204603642621098347249./3602879701896396800000000. * x0 * x5 + 79768606834729280615327./7205759403792793600000000. * + x1 * x5 + 14031038854023707419103./7205759403792793600000000. * + x2 * x5 + 10000563663098348107819./3602879701896396800000000. * + x3 * x5 + -257053522999841443905867./7205759403792793600000000. * + x4 * x5 + 4145309482207355815261./720575940379279360000000. * x5 * x5 <= 4504560764861451./4503599627370496. diff --git a/non-regression/valid/osdp/ex06_0.ae b/non-regression/valid/osdp/ex06_0.ae new file mode 100644 index 000000000..c2ccfe983 --- /dev/null +++ b/non-regression/valid/osdp/ex06_0.ae @@ -0,0 +1,29 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 313308564765231240087149./1801439850948198400000000. * x0 * x0 + 108752196495533697871331./1801439850948198400000000. * + x0 * x1 + 25782994883448121495511./180143985094819840000000. * x1 * x1 + -17725805834372403297243./112589990684262400000000. * + x0 * x2 + 34252186651090033291743./225179981368524800000000. * x1 * x2 + 44368519651187535328913./225179981368524800000000. * + x2 * x2 + -4666410414726618152591./1801439850948198400000000. * x0 * x3 + -7464625756698924001633./18014398509481984000000. * + x1 * x3 + 153340779595770874619493./900719925474099200000000. * + x2 * x3 + 731152792278407554413299./900719925474099200000000. * + x3 * x3 + 3026670492964594600349./4503599627370496000000000. * x0 * x4 + 441083851562379251138749./4503599627370496000000000. * + x1 * x4 + -193122637063757056512151./1125899906842624000000000. * + x2 * x4 + -4576772703590762207521163./9007199254740992000000000. * + x3 * x4 + 6894642986857218004221549./22517998136852480000000000. * + x4 * x4 + -17564260006674495312417./450359962737049600000000. * x0 * x5 + 186220594382961979475787./900719925474099200000000. * + x1 * x5 + -8660909114994574667573./450359962737049600000000. * x2 * x5 + -667716871453093602353833./900719925474099200000000. * + x3 * x5 + 1206058827015133058496191./4503599627370496000000000. * + x4 * x5 + 126940043907508133612317./450359962737049600000000. * + x5 * x5 <= 4504844438231555./4503599627370496. diff --git a/non-regression/valid/osdp/ex06_1.ae b/non-regression/valid/osdp/ex06_1.ae new file mode 100644 index 000000000..ada5ac82e --- /dev/null +++ b/non-regression/valid/osdp/ex06_1.ae @@ -0,0 +1,22 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 441./6250000. * x0 * x0 + 3087./12500000. * x0 * x1 + 21609./100000000. * + x1 * x1 + 336./390625. * x0 * x2 + 588./390625. * x1 * x2 + 1024./390625. * + x2 * x2 + 44079./12500000. * x0 * x3 + 308553./50000000. * x1 * x3 + 8396./390625. * + x2 * x3 + 4405801./100000000. * x3 * x3 + 74949./7812500. * x0 * x4 + 524643./31250000. * + x1 * x4 + 114208./1953125. * x2 * x4 + 7491331./31250000. * x3 * x4 + 12737761./39062500. * + x4 * x4 + 80787./6250000. * x0 * x5 + 565509./25000000. * x1 * x5 + 30776./390625. * + x2 * x5 + 8074853./25000000. * x3 * x5 + 13729943./15625000. * x4 * x5 + 14799409./25000000. * + x5 * x5 <= 7429348177657209./1125899906842624. diff --git a/non-regression/valid/osdp/ex06_2.ae b/non-regression/valid/osdp/ex06_2.ae new file mode 100644 index 000000000..bcdf0bfa8 --- /dev/null +++ b/non-regression/valid/osdp/ex06_2.ae @@ -0,0 +1,21 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 169./390625. * x0 * x0 + 949./625000. * x0 * x1 + 5329./4000000. * x1 * x1 + 1651./312500. * + x0 * x2 + 9271./1000000. * x1 * x2 + 16129./1000000. * x2 * x2 + 33813./1562500. * + x0 * x3 + 189873./5000000. * x1 * x3 + 330327./2500000. * x2 * x3 + 6765201./25000000. * + x3 * x3 + 54119./3125000. * x0 * x4 + 303899./10000000. * x1 * x4 + 528701./5000000. * + x2 * x4 + 10827963./25000000. * x3 * x4 + 17330569./100000000. * x4 * x4 + -37141./1562500. * + x0 * x5 + -208561./5000000. * x1 * x5 + -362839./2500000. * x2 * x5 + -7431057./12500000. * + x3 * x5 + -11893691./25000000. * x4 * x5 + 8162449./25000000. * x5 * x5 <= 923919387164091./281474976710656. diff --git a/non-regression/valid/osdp/ex06_3.ae b/non-regression/valid/osdp/ex06_3.ae new file mode 100644 index 000000000..c3aa12019 --- /dev/null +++ b/non-regression/valid/osdp/ex06_3.ae @@ -0,0 +1,18 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 531441./100000000. * x0 * x0 + 465831./25000000. * x0 * x1 + 408321./25000000. * + x1 * x1 + 809919./12500000. * x0 * x2 + 709929./6250000. * x1 * x2 + 1234321./6250000. * + x2 * x2 + 5982903./50000000. * x0 * x3 + 5244273./25000000. * x1 * x3 + 9117977./12500000. * + x2 * x3 + 67354849./100000000. * x3 * x3 <= 6855134882294663./2251799813685248. diff --git a/non-regression/valid/osdp/ex06_4.ae b/non-regression/valid/osdp/ex06_4.ae new file mode 100644 index 000000000..96d265eb7 --- /dev/null +++ b/non-regression/valid/osdp/ex06_4.ae @@ -0,0 +1,18 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 3265249./100000000. * x0 * x0 + 5722769./50000000. * x0 * x1 + 10029889./100000000. * + x1 * x1 + 229489./6250000. * x0 * x2 + 402209./6250000. * x1 * x2 + 16129./1562500. * + x2 * x2 + -2007577./12500000. * x0 * x3 + -3518537./12500000. * x1 * x3 + -141097./1562500. * + x2 * x3 + 1234321./6250000. * x3 * x3 <= 5375227081138087./4503599627370496. diff --git a/non-regression/valid/osdp/ex06_5.ae b/non-regression/valid/osdp/ex06_5.ae new file mode 100644 index 000000000..2a43d1d1f --- /dev/null +++ b/non-regression/valid/osdp/ex06_5.ae @@ -0,0 +1,15 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (x1 * x1 <= 4503331667989043./2251799813685248. and x2 * x2 <= 5375227081138087./4503599627370496. and + x3 * x3 <= 6855134882294663./2251799813685248. and x4 * x4 <= 923919387164091./281474976710656. and + x5 * x5 <= 7429348177657209./1125899906842624. + and 5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844438231555./4503599627370496. + and x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 66113161./100000000. * x0 * x0 + 138227./200000. * x0 * x1 + 289./1600. * x1 * x1 <= 4503331667989043./2251799813685248. diff --git a/non-regression/valid/osdp/ex06_s.ae b/non-regression/valid/osdp/ex06_s.ae new file mode 100644 index 000000000..bff792911 --- /dev/null +++ b/non-regression/valid/osdp/ex06_s.ae @@ -0,0 +1,26 @@ +goal g : + forall x0, x1, x2, x3, x4, x5 : real. + (5147400367186255./9007199254740992. * x1 * x1 + -4254126739340967./2251799813685248. * + x1 * x2 + 6628567950971979./2251799813685248. * x2 * x2 + -2420341292172817./4503599627370496. * + x1 * x3 + 5327784061815561./18014398509481984. * x2 * x3 + 4443706026026371./4503599627370496. * + x3 * x3 + 2302465132922563./18014398509481984. * x1 * x4 + -4168962910928607./18014398509481984. * + x2 * x4 + -5562518630698783./9007199254740992. * x3 * x4 + 3350223260940793./9007199254740992. * + x4 * x4 + -1182869180738173./4503599627370496. * x1 * x5 + 2964502271155579./2251799813685248. * + x2 * x5 + -988973791663121./1125899906842624. * x3 * x5 + 5756670247855195./18014398509481984. * + x4 * x5 + 572315324519457./1125899906842624. * x5 * x5 <= 4504844152671641./4503599627370496. and + x0 <= 1. and 0. <= 1. and -x0 <= 1.) + -> 313308564765231240087149./1801439850948198400000000. * x0 * x0 + 108752196495533697871331./1801439850948198400000000. * + x0 * x1 + 25782994883448121495511./180143985094819840000000. * x1 * x1 + -17725805834372403297243./112589990684262400000000. * + x0 * x2 + 34252186651090033291743./225179981368524800000000. * x1 * x2 + 44368519651187535328913./225179981368524800000000. * + x2 * x2 + -4666410414726618152591./1801439850948198400000000. * x0 * x3 + -7464625756698924001633./18014398509481984000000. * + x1 * x3 + 153340779595770874619493./900719925474099200000000. * + x2 * x3 + 731152792278407554413299./900719925474099200000000. * + x3 * x3 + 3026670492964594600349./4503599627370496000000000. * x0 * x4 + 441083851562379251138749./4503599627370496000000000. * + x1 * x4 + -193122637063757056512151./1125899906842624000000000. * + x2 * x4 + -4576772703590762207521163./9007199254740992000000000. * + x3 * x4 + 6894642986857218004221549./22517998136852480000000000. * + x4 * x4 + -17564260006674495312417./450359962737049600000000. * x0 * x5 + 186220594382961979475787./900719925474099200000000. * + x1 * x5 + -8660909114994574667573./450359962737049600000000. * x2 * x5 + -667716871453093602353833./900719925474099200000000. * + x3 * x5 + 1206058827015133058496191./4503599627370496000000000. * + x4 * x5 + 126940043907508133612317./450359962737049600000000. * + x5 * x5 <= 4504844152671641./4503599627370496. diff --git a/non-regression/valid/osdp/ex07_0.ae b/non-regression/valid/osdp/ex07_0.ae new file mode 100644 index 000000000..b734a83cc --- /dev/null +++ b/non-regression/valid/osdp/ex07_0.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> 2479317499096333./70368744177664. * x0 * x0 + 2480403318071207./70368744177664. * x0 * x1 + 4958798669319453./140737488355328. * x1 * x1 <= 7439492792239917./70368744177664. diff --git a/non-regression/valid/osdp/ex07_1.ae b/non-regression/valid/osdp/ex07_1.ae new file mode 100644 index 000000000..116d9861f --- /dev/null +++ b/non-regression/valid/osdp/ex07_1.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 6770316976073905./2251799813685248. and x3 * x3 <= 3386525838209699./1125899906842624. + and 2479317499096333./70368744177664. * x2 * x2 + 2480403318071207./70368744177664. * x2 * x3 + 4958798669319453./140737488355328. * x3 * x3 <= 7439492792239917./70368744177664. and 0. <= 1.) + -> 49095228116981738053./1407374883553280000. * x2 * x2 + 12279227438571759423./351843720888320000. * x2 * x3 + 9819452849995250101./281474976710656000. * x3 * x3 <= 7439492792239917./70368744177664. diff --git a/non-regression/valid/osdp/ex07_2.ae b/non-regression/valid/osdp/ex07_2.ae new file mode 100644 index 000000000..a46e1feb4 --- /dev/null +++ b/non-regression/valid/osdp/ex07_2.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> x1 * x1 <= 3386525838209699./1125899906842624. diff --git a/non-regression/valid/osdp/ex07_3.ae b/non-regression/valid/osdp/ex07_3.ae new file mode 100644 index 000000000..c28bf22d0 --- /dev/null +++ b/non-regression/valid/osdp/ex07_3.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 6770316976073905./2251799813685248. and x3 * x3 <= 3386525838209699./1125899906842624. + and 2479317499096333./70368744177664. * x2 * x2 + 2480403318071207./70368744177664. * x2 * x3 + 4958798669319453./140737488355328. * x3 * x3 <= 7439492792239917./70368744177664. and 0. <= 1.) + -> 1./10000. * x2 * x2 + -99./5000. * x2 * x3 + 9801./10000. * x3 * x3 <= 3386525838209699./1125899906842624. diff --git a/non-regression/valid/osdp/ex07_4.ae b/non-regression/valid/osdp/ex07_4.ae new file mode 100644 index 000000000..a480d0250 --- /dev/null +++ b/non-regression/valid/osdp/ex07_4.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> x0 * x0 <= 6770316976073905./2251799813685248. diff --git a/non-regression/valid/osdp/ex07_5.ae b/non-regression/valid/osdp/ex07_5.ae new file mode 100644 index 000000000..5953dff2f --- /dev/null +++ b/non-regression/valid/osdp/ex07_5.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 6770316976073905./2251799813685248. and x3 * x3 <= 3386525838209699./1125899906842624. + and 2479317499096333./70368744177664. * x2 * x2 + 2480403318071207./70368744177664. * x2 * x3 + 4958798669319453./140737488355328. * x3 * x3 <= 7439492792239917./70368744177664. and 0. <= 1.) + -> x2 * x2 + 1./50. * x2 * x3 + 1./10000. * x3 * x3 <= 6770316976073905./2251799813685248. diff --git a/non-regression/valid/osdp/ex07_s.ae b/non-regression/valid/osdp/ex07_s.ae new file mode 100644 index 000000000..0ba017560 --- /dev/null +++ b/non-regression/valid/osdp/ex07_s.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1, x2, x3 : real. + (2479317499096333./70368744177664. * x2 * x2 + 2480403318071207./70368744177664. * x2 * x3 + 4958798669319453./140737488355328. * x3 * x3 <= 7439492792239917./70368744177664. and 0. <= 1.) + -> 49095228116981738053./1407374883553280000. * x2 * x2 + 12279227438571759423./351843720888320000. * x2 * x3 + 9819452849995250101./281474976710656000. * x3 * x3 <= 7439492792239917./70368744177664. diff --git a/non-regression/valid/osdp/ex08_0.ae b/non-regression/valid/osdp/ex08_0.ae new file mode 100644 index 000000000..1d8863aac --- /dev/null +++ b/non-regression/valid/osdp/ex08_0.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> 7440731643785445./562949953421312. * x0 * x0 + -6529038369184675./590295810358705651712. * x0 * x1 + 7422132495699757./562949953421312. * x1 * x1 <= 3715900600086145./140737488355328. diff --git a/non-regression/valid/osdp/ex08_1.ae b/non-regression/valid/osdp/ex08_1.ae new file mode 100644 index 000000000..4a608d6c8 --- /dev/null +++ b/non-regression/valid/osdp/ex08_1.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 7194660233181041./4503599627370496. and x3 * x3 <= 901585695227799./562949953421312. + and 7440731643785445./562949953421312. * x2 * x2 + -6529038369184675./590295810358705651712. * x2 * x3 + 7422132495699757./562949953421312. * x3 * x3 <= 3715900600086145./140737488355328. and 0. <= 1.) + -> 1423857622711921754426649./118059162071741130342400. * x2 * x2 + -50891750687188128691./4722366482869645213696000. * x2 * x3 + 2840596465990813297641369133./236118324143482260684800000. * x3 * x3 <= 3715900600086145./140737488355328. diff --git a/non-regression/valid/osdp/ex08_2.ae b/non-regression/valid/osdp/ex08_2.ae new file mode 100644 index 000000000..6367afaef --- /dev/null +++ b/non-regression/valid/osdp/ex08_2.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> x1 * x1 <= 901585695227799./562949953421312. diff --git a/non-regression/valid/osdp/ex08_3.ae b/non-regression/valid/osdp/ex08_3.ae new file mode 100644 index 000000000..28db959bd --- /dev/null +++ b/non-regression/valid/osdp/ex08_3.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 7194660233181041./4503599627370496. and x3 * x3 <= 901585695227799./562949953421312. + and 7440731643785445./562949953421312. * x2 * x2 + -6529038369184675./590295810358705651712. * x2 * x3 + 7422132495699757./562949953421312. * x3 * x3 <= 3715900600086145./140737488355328. and 0. <= 1.) + -> 1./100. * x2 * x2 + -19./100. * x2 * x3 + 361./400. * x3 * x3 <= 901585695227799./562949953421312. diff --git a/non-regression/valid/osdp/ex08_4.ae b/non-regression/valid/osdp/ex08_4.ae new file mode 100644 index 000000000..8b959d565 --- /dev/null +++ b/non-regression/valid/osdp/ex08_4.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1 : real. + (x0 <= 1. and x1 <= 1. and -x1 <= 0. and -x0 <= 0.) + -> x0 * x0 <= 7194660233181041./4503599627370496. diff --git a/non-regression/valid/osdp/ex08_5.ae b/non-regression/valid/osdp/ex08_5.ae new file mode 100644 index 000000000..714aa990a --- /dev/null +++ b/non-regression/valid/osdp/ex08_5.ae @@ -0,0 +1,5 @@ +goal g : + forall x0, x1, x2, x3 : real. + (x2 * x2 <= 7194660233181041./4503599627370496. and x3 * x3 <= 901585695227799./562949953421312. + and 7440731643785445./562949953421312. * x2 * x2 + -6529038369184675./590295810358705651712. * x2 * x3 + 7422132495699757./562949953421312. * x3 * x3 <= 3715900600086145./140737488355328. and 0. <= 1.) + -> 361./400. * x2 * x2 + 7581./40000. * x2 * x3 + 159201./16000000. * x3 * x3 <= 7194660233181041./4503599627370496. diff --git a/non-regression/valid/osdp/ex08_s.ae b/non-regression/valid/osdp/ex08_s.ae new file mode 100644 index 000000000..dcb2c3e29 --- /dev/null +++ b/non-regression/valid/osdp/ex08_s.ae @@ -0,0 +1,4 @@ +goal g : + forall x0, x1, x2, x3 : real. + (7440731643785445./562949953421312. * x2 * x2 + -6529038369184675./590295810358705651712. * x2 * x3 + 7422132495699757./562949953421312. * x3 * x3 <= 3715900600086145./140737488355328. and 0. <= 1.) + -> 1423857622711921754426649./118059162071741130342400. * x2 * x2 + -50891750687188128691./4722366482869645213696000. * x2 * x3 + 2840596465990813297641369133./236118324143482260684800000. * x3 * x3 <= 3715900600086145./140737488355328. diff --git a/non-regression/valid/osdp/heart_dipole_lb.ae b/non-regression/valid/osdp/heart_dipole_lb.ae new file mode 100644 index 000000000..dc01a1e4e --- /dev/null +++ b/non-regression/valid/osdp/heart_dipole_lb.ae @@ -0,0 +1,30 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +logic x7 : real +logic x8 : real +axiom ax0: (- (0.1)) <= x1 +axiom ax1: x1 <= 0.4 +axiom ax2: 0.4 <= x2 +axiom ax3: x2 <= 1.0 +axiom ax4: (- (0.7)) <= x3 +axiom ax5: x3 <= (- (0.4)) +axiom ax6: (- (0.7)) <= x4 +axiom ax7: x4 <= 0.4 +axiom ax8: 0.1 <= x5 +axiom ax9: x5 <= 0.2 +axiom ax10: (- (0.1)) <= x6 +axiom ax11: x6 <= 0.2 +axiom ax12: (- (0.3)) <= x7 +axiom ax13: x7 <= 1.1 +axiom ax14: (- (1.1)) <= x8 +axiom ax15: x8 <= (- (0.3)) +goal g: + (- (1.7435)) + < (- (x1 * x6 * x6 * x6)) + 3.0 * x1 * x6 * x7 * x7 + + (- (x3 * x7 * x7 * x7)) + 3.0 * x3 * x7 * x6 * x6 + + (- (x2 * x5 * x5 * x5)) + 3.0 * x2 * x5 * x8 * x8 + + (- (x4 * x8 * x8 * x8)) + 3.0 * x4 * x8 * x5 * x5 + (- (0.9563453)) diff --git a/non-regression/valid/osdp/heart_dipole_ub.ae b/non-regression/valid/osdp/heart_dipole_ub.ae new file mode 100644 index 000000000..aeae25d7e --- /dev/null +++ b/non-regression/valid/osdp/heart_dipole_ub.ae @@ -0,0 +1,29 @@ +logic x1 : real +logic x2 : real +logic x3 : real +logic x4 : real +logic x5 : real +logic x6 : real +logic x7 : real +logic x8 : real +axiom ax0: (- (0.1)) <= x1 +axiom ax1: x1 <= 0.4 +axiom ax2: 0.4 <= x2 +axiom ax3: x2 <= 1.0 +axiom ax4: (- (0.7)) <= x3 +axiom ax5: x3 <= (- (0.4)) +axiom ax6: (- (0.7)) <= x4 +axiom ax7: x4 <= 0.4 +axiom ax8: 0.1 <= x5 +axiom ax9: x5 <= 0.2 +axiom ax10: (- (0.1)) <= x6 +axiom ax11: x6 <= 0.2 +axiom ax12: (- (0.3)) <= x7 +axiom ax13: x7 <= 1.1 +axiom ax14: (- (1.1)) <= x8 +axiom ax15: x8 <= (- (0.3)) +goal g: + (- (x1 * x6 * x6 * x6)) + 3.0 * x1 * x6 * x7 * x7 + (- (x3 * x7 * x7 * x7)) + + 3.0 * x3 * x7 * x6 * x6 + (- (x2 * x5 * x5 * x5)) + + 3.0 * x2 * x5 * x8 * x8 + (- (x4 * x8 * x8 * x8)) + + 3.0 * x4 * x8 * x5 * x5 + (- (0.9563453)) < 1.3678 diff --git a/non-regression/valid/osdp/intro.ae b/non-regression/valid/osdp/intro.ae new file mode 100644 index 000000000..b967165b5 --- /dev/null +++ b/non-regression/valid/osdp/intro.ae @@ -0,0 +1,35 @@ +logic v__0 : real +logic v_x0 : real +logic v_x1 : real +logic v_x2 : real +goal g: + 6.04 * v_x0 * v_x0 + (- (9.65)) * v_x0 * v_x1 + (- (2.26)) * v_x0 * v_x2 + + 11.36 * v_x1 * v_x1 + 2.67 * v_x1 * v_x2 + 3.76 * v_x2 * v_x2 <= 1.0 + and v__0 <= 1.0 and (- (1.0)) <= v__0 + -> 6.04 + * (0.9379 * v_x0 + (- (0.0381)) * v_x1 + (- (0.0414)) * v_x2 + + 0.0237 * v__0) + * (0.9379 * v_x0 + (- (0.0381)) * v_x1 + (- (0.0414)) * v_x2 + + 0.0237 * v__0) + + (- (9.65)) + * (0.9379 * v_x0 + (- (0.0381)) * v_x1 + (- (0.0414)) * v_x2 + + 0.0237 * v__0) + * ((- (0.0404)) * v_x0 + 0.968 * v_x1 + (- (0.0179)) * v_x2 + + 0.0143 * v__0) + + (- (2.26)) + * (0.9379 * v_x0 + (- (0.0381)) * v_x1 + (- (0.0414)) * v_x2 + + 0.0237 * v__0) + * (0.0142 * v_x0 + (- (0.0197)) * v_x1 + 0.9823 * v_x2 + 0.0077 * v__0) + + 11.36 + * ((- (0.0404)) * v_x0 + 0.968 * v_x1 + (- (0.0179)) * v_x2 + + 0.0143 * v__0) + * ((- (0.0404)) * v_x0 + 0.968 * v_x1 + (- (0.0179)) * v_x2 + + 0.0143 * v__0) + + 2.67 + * ((- (0.0404)) * v_x0 + 0.968 * v_x1 + (- (0.0179)) * v_x2 + + 0.0143 * v__0) + * (0.0142 * v_x0 + (- (0.0197)) * v_x1 + 0.9823 * v_x2 + 0.0077 * v__0) + + 3.76 + * (0.0142 * v_x0 + (- (0.0197)) * v_x1 + 0.9823 * v_x2 + 0.0077 * v__0) + * (0.0142 * v_x0 + (- (0.0197)) * v_x1 + 0.9823 * v_x2 + 0.0077 * v__0) + <= 1.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_2_0.ae b/non-regression/valid/osdp/lp_iir_9600_2_0.ae new file mode 100644 index 000000000..ee566ec44 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_2_0.ae @@ -0,0 +1,36 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_yn : real +logic v_ynm1 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 2634478354404663.0 / 562949953421312.0 + and 1175499088554409.0 / 2251799813685248.0 * v_xnm1 * v_xnm1 + + 1891868186643051.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + -298577865692127.0 / 281474976710656.0 * v_xnm1 * v_yn + + 2014954938750015.0 / 4503599627370496.0 * v_xnm1 * v_ynm1 + + 715648578410957.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + -4324270217281415.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 6125271819849817.0 / 9007199254740992.0 * v_xnm2 * v_ynm1 + + 5459709692129467.0 / 2251799813685248.0 * v_yn * v_yn + + -1151402869111301.0 / 562949953421312.0 * v_yn * v_ynm1 + + 410008964334523.0 / 562949953421312.0 * v_ynm1 * v_ynm1 + 0.0 + <= 720682144776277.0 / 281474976710656.0 + and 1.0 * v__0 + 0.0 <= 8.0 / 5.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 8.0 / 5.0 + -> 936185306273767115.0 / 2305843009213693952.0 * v__0 * v__0 + + 4917184745.0 / 1152921504606846976.0 * v__0 * v_xnm1 + + 7254198091.0 / 1152921504606846976.0 * v__0 * v_xnm2 + + -2151522713.0 / 288230376151711744.0 * v__0 * v_yn + + -3108942039.0 / 576460752303423488.0 * v__0 * v_ynm1 + + 589442816166451219.0 / 2305843009213693952.0 * v_xnm1 * v_xnm1 + + 12515317648263017.0 / 1152921504606846976.0 * v_xnm1 * v_xnm2 + + -38119390976415171.0 / 288230376151711744.0 * v_xnm1 * v_yn + + -5363707563541293.0 / 576460752303423488.0 * v_xnm1 * v_ynm1 + + 267525774914343883.0 / 2305843009213693952.0 * v_xnm2 * v_xnm2 + + -14303217805746905.0 / 288230376151711744.0 * v_xnm2 * v_yn + + -114653903534718807.0 / 576460752303423488.0 * v_xnm2 * v_ynm1 + + 43565006664118195.0 / 144115188075855872.0 * v_yn * v_yn + + 6129950488177245.0 / 144115188075855872.0 * v_yn * v_ynm1 + + 49137387229165203.0 / 576460752303423488.0 * v_ynm1 * v_ynm1 + 0.0 + <= 720682144776277.0 / 281474976710656.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_2_1.ae b/non-regression/valid/osdp/lp_iir_9600_2_1.ae new file mode 100644 index 000000000..44f25b891 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_2_1.ae @@ -0,0 +1,29 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_yn : real +logic v_ynm1 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 2634478354404663.0 / 562949953421312.0 + and 1175499088554409.0 / 2251799813685248.0 * v_xnm1 * v_xnm1 + + 1891868186643051.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + -298577865692127.0 / 281474976710656.0 * v_xnm1 * v_yn + + 2014954938750015.0 / 4503599627370496.0 * v_xnm1 * v_ynm1 + + 715648578410957.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + -4324270217281415.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 6125271819849817.0 / 9007199254740992.0 * v_xnm2 * v_ynm1 + + 5459709692129467.0 / 2251799813685248.0 * v_yn * v_yn + + -1151402869111301.0 / 562949953421312.0 * v_yn * v_ynm1 + + 410008964334523.0 / 562949953421312.0 * v_ynm1 * v_ynm1 + 0.0 + <= 720682144776277.0 / 281474976710656.0 + and 1.0 * v__0 + 0.0 <= 8.0 / 5.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 8.0 / 5.0 + -> 49.0 / 1024.0 * v__0 * v__0 + 91.0 / 512.0 * v__0 * v_xnm1 + + 49.0 / 512.0 * v__0 * v_xnm2 + 21.0 / 128.0 * v__0 * v_yn + + -21.0 / 256.0 * v__0 * v_ynm1 + 169.0 / 1024.0 * v_xnm1 * v_xnm1 + + 91.0 / 512.0 * v_xnm1 * v_xnm2 + 39.0 / 128.0 * v_xnm1 * v_yn + + -39.0 / 256.0 * v_xnm1 * v_ynm1 + 49.0 / 1024.0 * v_xnm2 * v_xnm2 + + 21.0 / 128.0 * v_xnm2 * v_yn + -21.0 / 256.0 * v_xnm2 * v_ynm1 + + 9.0 / 64.0 * v_yn * v_yn + -9.0 / 64.0 * v_yn * v_ynm1 + + 9.0 / 256.0 * v_ynm1 * v_ynm1 + 0.0 + <= 2634478354404663.0 / 562949953421312.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_2_s.ae b/non-regression/valid/osdp/lp_iir_9600_2_s.ae new file mode 100644 index 000000000..5ae115bc9 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_2_s.ae @@ -0,0 +1,34 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_yn : real +logic v_ynm1 : real +goal g: + 1175499088554409.0 / 2251799813685248.0 * v_xnm1 * v_xnm1 + + 1891868186643051.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + -298577865692127.0 / 281474976710656.0 * v_xnm1 * v_yn + + 2014954938750015.0 / 4503599627370496.0 * v_xnm1 * v_ynm1 + + 715648578410957.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + -4324270217281415.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 6125271819849817.0 / 9007199254740992.0 * v_xnm2 * v_ynm1 + + 5459709692129467.0 / 2251799813685248.0 * v_yn * v_yn + + -1151402869111301.0 / 562949953421312.0 * v_yn * v_ynm1 + + 410008964334523.0 / 562949953421312.0 * v_ynm1 * v_ynm1 + 0.0 + <= 720682144776277.0 / 281474976710656.0 and 1.0 * v__0 + 0.0 <= 8.0 / 5.0 + and 0.0 <= 1.0 / 1.0 and -1.0 * v__0 + 0.0 <= 8.0 / 5.0 + -> 936185306273767115.0 / 2305843009213693952.0 * v__0 * v__0 + + 4917184745.0 / 1152921504606846976.0 * v__0 * v_xnm1 + + 7254198091.0 / 1152921504606846976.0 * v__0 * v_xnm2 + + -2151522713.0 / 288230376151711744.0 * v__0 * v_yn + + -3108942039.0 / 576460752303423488.0 * v__0 * v_ynm1 + + 589442816166451219.0 / 2305843009213693952.0 * v_xnm1 * v_xnm1 + + 12515317648263017.0 / 1152921504606846976.0 * v_xnm1 * v_xnm2 + + -38119390976415171.0 / 288230376151711744.0 * v_xnm1 * v_yn + + -5363707563541293.0 / 576460752303423488.0 * v_xnm1 * v_ynm1 + + 267525774914343883.0 / 2305843009213693952.0 * v_xnm2 * v_xnm2 + + -14303217805746905.0 / 288230376151711744.0 * v_xnm2 * v_yn + + -114653903534718807.0 / 576460752303423488.0 * v_xnm2 * v_ynm1 + + 43565006664118195.0 / 144115188075855872.0 * v_yn * v_yn + + 6129950488177245.0 / 144115188075855872.0 * v_yn * v_ynm1 + + 49137387229165203.0 / 576460752303423488.0 * v_ynm1 * v_ynm1 + 0.0 + <= 720682144776277.0 / 281474976710656.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_0.ae b/non-regression/valid/osdp/lp_iir_9600_4_0.ae new file mode 100644 index 000000000..320e47b92 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_0.ae @@ -0,0 +1,142 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 1687068496486423.0 / 562949953421312.0 + and 8429365094204229.0 / 18014398509481984.0 * v_xnm1 * v_xnm1 + + 8335710244078143.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + 2921933697139917.0 / 1125899906842624.0 * v_xnm1 * v_xnm3 + + 3204084649666051.0 / 2251799813685248.0 * v_xnm1 * v_xnm4 + + -5759503221854049.0 / 562949953421312.0 * v_xnm1 * v_yn + + 2587000452341151.0 / 281474976710656.0 * v_xnm1 * v_ynm1 + + -7925247904856087.0 / 1125899906842624.0 * v_xnm1 * v_ynm2 + + 8154496820818219.0 / 4503599627370496.0 * v_xnm1 * v_ynm3 + + 4250174444698121.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + 2848521983688179.0 / 281474976710656.0 * v_xnm2 * v_xnm3 + + 786209768633867.0 / 140737488355328.0 * v_xnm2 * v_xnm4 + + -349295662517729.0 / 8796093022208.0 * v_xnm2 * v_yn + + 4984298151237427.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -7626923196181733.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 3887397517955663.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + 4103948586952955.0 / 562949953421312.0 * v_xnm3 * v_xnm3 + + 9003639434985889.0 / 1125899906842624.0 * v_xnm3 * v_xnm4 + + -3918045388068513.0 / 70368744177664.0 * v_xnm3 * v_yn + + 6898488260120061.0 / 140737488355328.0 * v_xnm3 * v_ynm1 + + -2636504695811121.0 / 70368744177664.0 * v_xnm3 * v_ynm2 + + 2645330699737803.0 / 281474976710656.0 * v_xnm3 * v_ynm3 + + 2711429010711479.0 / 1125899906842624.0 * v_xnm4 * v_xnm4 + + -8592681152833265.0 / 281474976710656.0 * v_xnm4 * v_yn + + 7338041307389047.0 / 281474976710656.0 * v_xnm4 * v_ynm1 + + -5618974968718891.0 / 281474976710656.0 * v_xnm4 * v_ynm2 + + 680090788777793.0 / 140737488355328.0 * v_xnm4 * v_ynm3 + + 7722995144554817.0 / 70368744177664.0 * v_yn * v_yn + + -6937907821403825.0 / 35184372088832.0 * v_yn * v_ynm1 + + 5313543875150913.0 / 35184372088832.0 * v_yn * v_ynm2 + + -683412738537355.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6426000343461071.0 / 70368744177664.0 * v_ynm1 * v_ynm1 + + -1235482256665259.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 5278035521798891.0 / 140737488355328.0 * v_ynm1 * v_ynm3 + + 956847615440609.0 / 17592186044416.0 * v_ynm2 * v_ynm2 + + -4138139938936509.0 / 140737488355328.0 * v_ynm2 * v_ynm3 + + 4838836644619119.0 / 1125899906842624.0 * v_ynm3 * v_ynm3 + 0.0 + <= 4504598058283507.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 1009315835616330702011620711580897059967675860337.0 + / 4398046511104000000000000000000000000000000000000.0 * v__0 * v__0 + + -2771409917320100282588878787062293383012219.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -31669215763795891393591185064557901505982527.0 + / 219902325555200000000000000000000000000000000000.0 * v__0 * v_xnm2 + + -23003099695219332032424461415812293383012219.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_xnm3 + + -609623492421640812486784340493565032324139663.0 + / 2199023255552000000000000000000000000000000000000.0 * v__0 * v_xnm4 + + 58454126109793780990554155086731308194804917.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_yn + + -3245886742752123297043918957979180840402177.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_ynm1 + + -194756431313743116005455485835148580803701.0 + / 3518437208883200000000000000000000000000000000.0 * v__0 * v_ynm2 + + 307938427643904315354436472574906284247813.0 + / 1717986918400000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 1309560849699685312257557028240187687737165353.0 + / 7036874417766400000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 683973787613719238778248039954564170754665749.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 421543168150018180938580948316437687737165353.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 4874388420383766291920698115009812706616987781.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + -1394204993842937589020912336919307731837576679.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_yn + + 825496625223956294938477161512450737388080299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -16297876339887176016163725567206285763716313.0 + / 140737488355328000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + -2462194329053956223632244406187986050751831.0 + / 68719476736000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 13263235690529515143448951188563324609052640017.0 + / 43980465111040000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 4584826315561310438588322823345814170754665749.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 58093157567667330776621774674294817098494017473.0 + / 219902325555200000000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + -14612574085405263423277917287764183626570571707.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 7797566524884609695822216409129361554721205167.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -149077477801055920535050727701852709056359429.0 + / 351843720888320000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + -29344531207606754709197983768829766791766123.0 + / 171798691840000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 3733058651217001049619604868392687687737165353.0 + / 7036874417766400000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 42501440807676980341420862532381062706616987781.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + -9006841641423715193952327475823057731837576679.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm3 * v_yn + + 3954912852748837570040287742841200737388080299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -71968217672041620785057827543456285763716313.0 + / 140737488355328000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + -21468704893453216564982374089937986050751831.0 + / 68719476736000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 1047415379851030362066530719738115809967675860337.0 + / 4398046511104000000000000000000000000000000000000.0 * v_xnm4 + * v_xnm4 + + -104554216478625660906820444257866393691805195083.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm4 * v_yn + + 7228853466701630316340938378682645819159597823.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 204862538323372308496258004467289851419196299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -529079750322822945416074275730550093715752187.0 + / 1717986918400000000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + 29773838782956291161337447545971085229841106697.0 + / 7036874417766400000000000000000000000000000000.0 * v_yn * v_yn + + -17575368069452438513473487878423897621021172357.0 + / 3518437208883200000000000000000000000000000000.0 * v_yn * v_ynm1 + + 346066998869822198622750681373650832767547959.0 + / 140737488355328000000000000000000000000000000.0 * v_yn * v_ynm2 + + 52813353530838196484193689030902269630574233.0 + / 68719476736000000000000000000000000000000000.0 * v_yn * v_ynm3 + + 17208640863634363018403244132616112619601212817.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -375135117005294678414106447805143817841729979.0 + / 140737488355328000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + -3651502604274089121486583012100772142613973.0 + / 68719476736000000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + 9724034155558132009669371038740662798734473.0 + / 11258999068426240000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -103481983090648565535421879459670544636249.0 + / 2748779069440000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 267253457975262228329373551737149718986537.0 + / 2684354560000000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + 0.0 <= 4504598058283507.0 / 4503599627370496.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_1.ae b/non-regression/valid/osdp/lp_iir_9600_4_1.ae new file mode 100644 index 000000000..c4f9f0fd1 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_1.ae @@ -0,0 +1,141 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 1687068496486423.0 / 562949953421312.0 + and 8429365094204229.0 / 18014398509481984.0 * v_xnm1 * v_xnm1 + + 8335710244078143.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + 2921933697139917.0 / 1125899906842624.0 * v_xnm1 * v_xnm3 + + 3204084649666051.0 / 2251799813685248.0 * v_xnm1 * v_xnm4 + + -5759503221854049.0 / 562949953421312.0 * v_xnm1 * v_yn + + 2587000452341151.0 / 281474976710656.0 * v_xnm1 * v_ynm1 + + -7925247904856087.0 / 1125899906842624.0 * v_xnm1 * v_ynm2 + + 8154496820818219.0 / 4503599627370496.0 * v_xnm1 * v_ynm3 + + 4250174444698121.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + 2848521983688179.0 / 281474976710656.0 * v_xnm2 * v_xnm3 + + 786209768633867.0 / 140737488355328.0 * v_xnm2 * v_xnm4 + + -349295662517729.0 / 8796093022208.0 * v_xnm2 * v_yn + + 4984298151237427.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -7626923196181733.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 3887397517955663.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + 4103948586952955.0 / 562949953421312.0 * v_xnm3 * v_xnm3 + + 9003639434985889.0 / 1125899906842624.0 * v_xnm3 * v_xnm4 + + -3918045388068513.0 / 70368744177664.0 * v_xnm3 * v_yn + + 6898488260120061.0 / 140737488355328.0 * v_xnm3 * v_ynm1 + + -2636504695811121.0 / 70368744177664.0 * v_xnm3 * v_ynm2 + + 2645330699737803.0 / 281474976710656.0 * v_xnm3 * v_ynm3 + + 2711429010711479.0 / 1125899906842624.0 * v_xnm4 * v_xnm4 + + -8592681152833265.0 / 281474976710656.0 * v_xnm4 * v_yn + + 7338041307389047.0 / 281474976710656.0 * v_xnm4 * v_ynm1 + + -5618974968718891.0 / 281474976710656.0 * v_xnm4 * v_ynm2 + + 680090788777793.0 / 140737488355328.0 * v_xnm4 * v_ynm3 + + 7722995144554817.0 / 70368744177664.0 * v_yn * v_yn + + -6937907821403825.0 / 35184372088832.0 * v_yn * v_ynm1 + + 5313543875150913.0 / 35184372088832.0 * v_yn * v_ynm2 + + -683412738537355.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6426000343461071.0 / 70368744177664.0 * v_ynm1 * v_ynm1 + + -1235482256665259.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 5278035521798891.0 / 140737488355328.0 * v_ynm1 * v_ynm3 + + 956847615440609.0 / 17592186044416.0 * v_ynm2 * v_ynm2 + + -4138139938936509.0 / 140737488355328.0 * v_ynm2 * v_ynm3 + + 4838836644619119.0 / 1125899906842624.0 * v_ynm3 * v_ynm3 + 0.0 + <= 4504598058283507.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 135622949418726766991591545024561.0 + / 62500000000000000000000000000000000.0 * v__0 * v__0 + + 21699671906996282252825580839493.0 + / 1250000000000000000000000000000000.0 * v__0 * v_xnm1 + + 81373769651236055536664263370369.0 + / 3125000000000000000000000000000000.0 * v__0 * v_xnm2 + + 21699671906996282252825580839493.0 + / 1250000000000000000000000000000000.0 * v__0 * v_xnm3 + + 135622949418726766991591545024561.0 + / 31250000000000000000000000000000000.0 * v__0 * v_xnm4 + + 91080668975830195034646267165301.0 + / 1250000000000000000000000000000000.0 * v__0 * v_yn + + -79188440585321253452960631686081.0 + / 1250000000000000000000000000000000.0 * v__0 * v_ynm1 + + 850956497317671675624994444747.0 / 50000000000000000000000000000000.0 + * v__0 * v_ynm2 + + -68507067584505276454443127611.0 / 24414062500000000000000000000000.0 + * v__0 * v_ynm3 + + 3471947505119405085919442316009.0 + / 100000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 13019803144197768606368842320597.0 + / 125000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 3471947505119405085919442316009.0 / 50000000000000000000000000000000.0 + * v_xnm1 * v_xnm3 + + 21699671906996282252825580839493.0 + / 1250000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + 14572907036132830892705323537113.0 + / 50000000000000000000000000000000.0 * v_xnm1 * v_yn + + -12670150493651400280482290303253.0 + / 50000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + 136153039570827465177187947111.0 / 2000000000000000000000000000000.0 + * v_xnm1 * v_ynm2 + + -10961130813520843997407189143.0 / 976562500000000000000000000000.0 + * v_xnm1 * v_ynm3 + + 48824261790741630527024159835601.0 + / 625000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 13019803144197768606368842320597.0 + / 125000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 81373769651236055536664263370369.0 + / 3125000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + 54648401385498113892406968205829.0 + / 125000000000000000000000000000000.0 * v_xnm2 * v_yn + + -47513064351192749351862271346449.0 + / 125000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + 510573898390602976146885026363.0 / 5000000000000000000000000000000.0 + * v_xnm2 * v_ynm2 + + -41104240550703163519628763819.0 / 2441406250000000000000000000000.0 + * v_xnm2 * v_ynm3 + + 3471947505119405085919442316009.0 + / 100000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 21699671906996282252825580839493.0 + / 1250000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + 14572907036132830892705323537113.0 + / 50000000000000000000000000000000.0 * v_xnm3 * v_yn + + -12670150493651400280482290303253.0 + / 50000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + 136153039570827465177187947111.0 / 2000000000000000000000000000000.0 + * v_xnm3 * v_ynm2 + + -10961130813520843997407189143.0 / 976562500000000000000000000000.0 + * v_xnm3 * v_ynm3 + + 135622949418726766991591545024561.0 + / 62500000000000000000000000000000000.0 * v_xnm4 * v_xnm4 + + 91080668975830195034646267165301.0 + / 1250000000000000000000000000000000.0 * v_xnm4 * v_yn + + -79188440585321253452960631686081.0 + / 1250000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 850956497317671675624994444747.0 / 50000000000000000000000000000000.0 + * v_xnm4 * v_ynm2 + + -68507067584505276454443127611.0 / 24414062500000000000000000000000.0 + * v_xnm4 * v_ynm3 + + 61167289877116412304335305757641.0 + / 100000000000000000000000000000000.0 * v_yn * v_yn + + -53180794066022117058120011543621.0 + / 50000000000000000000000000000000.0 * v_yn * v_ynm1 + + 571479144032837501418101988727.0 / 2000000000000000000000000000000.0 + * v_yn * v_ynm2 + + -46007475666264937271459805351.0 / 976562500000000000000000000000.0 + * v_yn * v_ynm3 + + 46237079706726118759150030674001.0 + / 100000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -496862207446057099854515617787.0 / 2000000000000000000000000000000.0 + * v_ynm1 * v_ynm2 + + 40000367742637413228612865131.0 / 976562500000000000000000000000.0 + * v_ynm1 * v_ynm3 + + 5339265687929165307098071369.0 / 160000000000000000000000000000.0 + * v_ynm2 * v_ynm2 + + -429842696409948834682307097.0 / 39062500000000000000000000000.0 + * v_ynm2 * v_ynm3 + + 34604897837297260215133161.0 / 38146972656250000000000000000.0 + * v_ynm3 * v_ynm3 + + 0.0 <= 1687068496486423.0 / 562949953421312.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_elliptic_0.ae b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_0.ae new file mode 100644 index 000000000..10bf6c3f1 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_0.ae @@ -0,0 +1,150 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 5184991755232231.0 / 1125899906842624.0 + and 760849746420829.0 / 4503599627370496.0 * v_xnm1 * v_xnm1 + + 5131739170588961.0 / 72057594037927936.0 * v_xnm1 * v_xnm2 + + 8347626266832369.0 / 72057594037927936.0 * v_xnm1 * v_xnm3 + + 1637246092699839.0 / 18014398509481984.0 * v_xnm1 * v_xnm4 + + -5868516893341805.0 / 9007199254740992.0 * v_xnm1 * v_yn + + 7224670213346007.0 / 9007199254740992.0 * v_xnm1 * v_ynm1 + + -6470926675070095.0 / 9007199254740992.0 * v_xnm1 * v_ynm2 + + 4978407941440037.0 / 18014398509481984.0 * v_xnm1 * v_ynm3 + + 1244360816436767.0 / 4503599627370496.0 * v_xnm2 * v_xnm2 + + 8390604970883829.0 / 18014398509481984.0 * v_xnm2 * v_xnm3 + + 6698470349581537.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + -5816442273797547.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 7036427760034623.0 / 2251799813685248.0 * v_xnm2 * v_ynm1 + + -6299234358472663.0 / 2251799813685248.0 * v_xnm2 * v_ynm2 + + 1194927158558267.0 / 1125899906842624.0 * v_xnm2 * v_ynm3 + + 4507911145710889.0 / 9007199254740992.0 * v_xnm3 * v_xnm3 + + 5737049107264367.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + -4730703784026891.0 / 1125899906842624.0 * v_xnm3 * v_yn + + 5558580253948145.0 / 1125899906842624.0 * v_xnm3 * v_ynm1 + + -2492890235455849.0 / 562949953421312.0 * v_xnm3 * v_ynm2 + + 3698004520583343.0 / 2251799813685248.0 * v_xnm3 * v_ynm3 + + 6703774564634153.0 / 18014398509481984.0 * v_xnm4 * v_xnm4 + + -7422778655128351.0 / 2251799813685248.0 * v_xnm4 * v_yn + + 8196904376979003.0 / 2251799813685248.0 * v_xnm4 * v_ynm1 + + -3722897605879165.0 / 1125899906842624.0 * v_xnm4 * v_ynm2 + + 5237753671324099.0 / 4503599627370496.0 * v_xnm4 * v_ynm3 + + 6651524538847629.0 / 562949953421312.0 * v_yn * v_yn + + -4094312508581679.0 / 140737488355328.0 * v_yn * v_ynm1 + + 3667156561539403.0 / 140737488355328.0 * v_yn * v_ynm2 + + -5642657112841473.0 / 562949953421312.0 * v_yn * v_ynm3 + + 665232823713753.0 / 35184372088832.0 * v_ynm1 * v_ynm1 + + -2386819944236401.0 / 70368744177664.0 * v_ynm1 * v_ynm2 + + 955898766718375.0 / 70368744177664.0 * v_ynm1 * v_ynm3 + + 8688562128206057.0 / 562949953421312.0 * v_ynm2 * v_ynm2 + + -7003991000390951.0 / 562949953421312.0 * v_ynm2 * v_ynm3 + + 6064872274125409.0 / 2251799813685248.0 * v_ynm3 * v_ynm3 + 0.0 + <= 17597390303089.0 / 17592186044416.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 90049886514044250630850271170050019004243197950621.0 + / 562949953421312000000000000000000000000000000000000.0 * v__0 * v__0 + + -247361945769476856282222682151645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -15434746579783521564761977814750171435749.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm2 + + 829575061454810838907675167848354160272397.0 + / 28147497671065600000000000000000000000000000000000.0 * v__0 * v_xnm3 + + 5738472989105927654549647362754243197950621.0 + / 281474976710656000000000000000000000000000000000000.0 * v__0 + * v_xnm4 + + 130709324506383155622743848297241761438999.0 + / 2814749767106560000000000000000000000000000000000.0 * v__0 * v_yn + + -45612076601760369903399041481326523316019.0 + / 175921860444160000000000000000000000000000000000.0 * v__0 * v_ynm1 + + 155835865569534224850238826117596248984273.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm2 + + -640976510335978122585969600213992055924651.0 + / 2814749767106560000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 767179351644652475807711002606814343958518485629.0 + / 5629499534213120000000000000000000000000000000000.0 * v_xnm1 + * v_xnm1 + + 10050364597139032938159975468172689507382859307.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 58654251995210791354243240734264343958518485629.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm1 + * v_xnm3 + + -180556441538705502453344179392838401645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v_xnm1 + * v_xnm4 + + -38901947068379983336742249176259657061924924057.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm1 * v_yn + + 3519333567740903897843421888844805468779993917.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -12122604822658002111101742788769471655594365439.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + 20167810850703852329050782163275278211758797893.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 49315779930370024965672244639017526329665436781.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 58040796269242835440883793051522689507382859307.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + -153406141090732756313033596463071564750171435749.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm2 + * v_xnm4 + + -36452414612597255797407079283471135511491586031.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 3132144515822180384636709857855755026834498411.0 + / 4398046511104000000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -10710586940479321550948479949292985563975252537.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + 17135173968252252406354293575866578685608390819.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 907237740095670356900775478861714343958518485629.0 + / 5629499534213120000000000000000000000000000000000.0 * v_xnm3 + * v_xnm3 + + -734166770933883825040648989494988401645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v_xnm3 + * v_xnm4 + + -212736883190624201626458036497109657061924924057.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm3 * v_yn + + 16452962546123121361762614342694805468779993917.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -56024178000648873147337677846719471655594365439.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + 82005030908257825328938320239925278211758797893.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 5056343265505352581005037929244706504243197950621.0 + / 562949953421312000000000000000000000000000000000000.0 * v_xnm4 + * v_xnm4 + + 654877772128714305112841354405879547241761438999.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm4 * v_yn + + -73554978295965499818595141039197731326523316019.0 + / 175921860444160000000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 271868394338906000132882396035544867596248984273.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -564783918568100236703148276956006463992055924651.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm4 + * v_ynm3 + + 141096324646632733177581567435938282510629547781.0 + / 56294995342131200000000000000000000000000000000.0 * v_yn * v_yn + + -12764556366230771152125635846751369199593475161.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm1 + + 43968475253035270355977266786518058225597444787.0 + / 7036874417766400000000000000000000000000000000.0 * v_yn * v_ynm2 + + -73148600659539448566695736068679585161817541569.0 + / 28147497671065600000000000000000000000000000000.0 * v_yn * v_ynm3 + + 1304920022077688883233750062315059841050194941.0 + / 219902325555200000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -4565909595533887596499958843801260291392490047.0 + / 439804651110400000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + 8215951071912639831703599148617939184658877189.0 + / 1759218604441600000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + 16614735726661081678198309825149883769369576149.0 + / 3518437208883200000000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -30367182176307153045739308880979494869597312663.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 63085288700481090826092238838334079733770741581.0 + / 56294995342131200000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + 0.0 <= 17597390303089.0 / 17592186044416.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_elliptic_1.ae b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_1.ae new file mode 100644 index 000000000..2df4da58d --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_1.ae @@ -0,0 +1,141 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 5184991755232231.0 / 1125899906842624.0 + and 760849746420829.0 / 4503599627370496.0 * v_xnm1 * v_xnm1 + + 5131739170588961.0 / 72057594037927936.0 * v_xnm1 * v_xnm2 + + 8347626266832369.0 / 72057594037927936.0 * v_xnm1 * v_xnm3 + + 1637246092699839.0 / 18014398509481984.0 * v_xnm1 * v_xnm4 + + -5868516893341805.0 / 9007199254740992.0 * v_xnm1 * v_yn + + 7224670213346007.0 / 9007199254740992.0 * v_xnm1 * v_ynm1 + + -6470926675070095.0 / 9007199254740992.0 * v_xnm1 * v_ynm2 + + 4978407941440037.0 / 18014398509481984.0 * v_xnm1 * v_ynm3 + + 1244360816436767.0 / 4503599627370496.0 * v_xnm2 * v_xnm2 + + 8390604970883829.0 / 18014398509481984.0 * v_xnm2 * v_xnm3 + + 6698470349581537.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + -5816442273797547.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 7036427760034623.0 / 2251799813685248.0 * v_xnm2 * v_ynm1 + + -6299234358472663.0 / 2251799813685248.0 * v_xnm2 * v_ynm2 + + 1194927158558267.0 / 1125899906842624.0 * v_xnm2 * v_ynm3 + + 4507911145710889.0 / 9007199254740992.0 * v_xnm3 * v_xnm3 + + 5737049107264367.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + -4730703784026891.0 / 1125899906842624.0 * v_xnm3 * v_yn + + 5558580253948145.0 / 1125899906842624.0 * v_xnm3 * v_ynm1 + + -2492890235455849.0 / 562949953421312.0 * v_xnm3 * v_ynm2 + + 3698004520583343.0 / 2251799813685248.0 * v_xnm3 * v_ynm3 + + 6703774564634153.0 / 18014398509481984.0 * v_xnm4 * v_xnm4 + + -7422778655128351.0 / 2251799813685248.0 * v_xnm4 * v_yn + + 8196904376979003.0 / 2251799813685248.0 * v_xnm4 * v_ynm1 + + -3722897605879165.0 / 1125899906842624.0 * v_xnm4 * v_ynm2 + + 5237753671324099.0 / 4503599627370496.0 * v_xnm4 * v_ynm3 + + 6651524538847629.0 / 562949953421312.0 * v_yn * v_yn + + -4094312508581679.0 / 140737488355328.0 * v_yn * v_ynm1 + + 3667156561539403.0 / 140737488355328.0 * v_yn * v_ynm2 + + -5642657112841473.0 / 562949953421312.0 * v_yn * v_ynm3 + + 665232823713753.0 / 35184372088832.0 * v_ynm1 * v_ynm1 + + -2386819944236401.0 / 70368744177664.0 * v_ynm1 * v_ynm2 + + 955898766718375.0 / 70368744177664.0 * v_ynm1 * v_ynm3 + + 8688562128206057.0 / 562949953421312.0 * v_ynm2 * v_ynm2 + + -7003991000390951.0 / 562949953421312.0 * v_ynm2 * v_ynm3 + + 6064872274125409.0 / 2251799813685248.0 * v_ynm3 * v_ynm3 + 0.0 + <= 17597390303089.0 / 17592186044416.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 760178096912104269966616771879249.0 + / 1000000000000000000000000000000000000.0 * v__0 * v__0 + + 274227581779976428144675336920193.0 + / 50000000000000000000000000000000000.0 * v__0 * v_xnm1 + + 99494860038677224367014930811719.0 + / 12500000000000000000000000000000000.0 * v__0 * v_xnm2 + + 274227581779976428144675336920193.0 + / 50000000000000000000000000000000000.0 * v__0 * v_xnm3 + + 760178096912104269966616771879249.0 + / 500000000000000000000000000000000000.0 * v__0 * v_xnm4 + + 437883130640929344064821984212531.0 + / 5000000000000000000000000000000000.0 * v__0 * v_yn + + -30059341291184806661727364094911.0 + / 312500000000000000000000000000000.0 * v__0 * v_ynm1 + + 70109916191606152188781866718037.0 + / 1250000000000000000000000000000000.0 * v__0 * v_ynm2 + + -84910446510349726960298714039319.0 + / 5000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 98925195180398314096267014222001.0 + / 10000000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 35891898199611520541115175160983.0 + / 1250000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 98925195180398314096267014222001.0 + / 5000000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 274227581779976428144675336920193.0 + / 50000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + 157962499190228290649047695971267.0 + / 500000000000000000000000000000000.0 * v_xnm1 * v_yn + + -10843643753568598006343383126927.0 + / 31250000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + 25291537409613089355274566967109.0 + / 125000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + -30630698923022970909035756334183.0 + / 500000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 13022247305371349027761159368289.0 + / 625000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 35891898199611520541115175160983.0 + / 1250000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 99494860038677224367014930811719.0 + / 12500000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + 57311728624370685695862185133461.0 + / 125000000000000000000000000000000.0 * v_xnm2 * v_yn + + -3934275358327075642054405587241.0 / 7812500000000000000000000000000.0 + * v_xnm2 * v_ynm1 + + 9176239524846236812916822474147.0 / 31250000000000000000000000000000.0 + * v_xnm2 * v_ynm2 + + -11113386488884399209835421423889.0 + / 125000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 98925195180398314096267014222001.0 + / 10000000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 274227581779976428144675336920193.0 + / 50000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + 157962499190228290649047695971267.0 + / 500000000000000000000000000000000.0 * v_xnm3 * v_yn + + -10843643753568598006343383126927.0 + / 31250000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + 25291537409613089355274566967109.0 + / 125000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + -30630698923022970909035756334183.0 + / 500000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 760178096912104269966616771879249.0 + / 1000000000000000000000000000000000000.0 * v_xnm4 * v_xnm4 + + 437883130640929344064821984212531.0 + / 5000000000000000000000000000000000.0 * v_xnm4 * v_yn + + -30059341291184806661727364094911.0 + / 312500000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 70109916191606152188781866718037.0 + / 1250000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -84910446510349726960298714039319.0 + / 5000000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + 252232518772599358860992585427289.0 + / 100000000000000000000000000000000.0 * v_yn * v_yn + + -17314993056304899562856791008509.0 + / 3125000000000000000000000000000.0 * v_yn * v_ynm1 + + 40385206724133451943397331191103.0 + / 12500000000000000000000000000000.0 * v_yn * v_ynm2 + + -48910712230597398256939878777861.0 + / 50000000000000000000000000000000.0 * v_yn * v_ynm3 + + 1188621459274171419086163425329.0 / 390625000000000000000000000000.0 + * v_ynm1 * v_ynm1 + + -2772321259005609390256613698043.0 / 781250000000000000000000000000.0 + * v_ynm1 * v_ynm2 + + 3357571207601645216916655543641.0 / 3125000000000000000000000000000.0 + * v_ynm1 * v_ynm3 + + 6466116780213390654516988235881.0 / 6250000000000000000000000000000.0 + * v_ynm2 * v_ynm2 + + -7831144192149488569195961152947.0 + / 12500000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 9484335257584506142588801719489.0 + / 100000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + 0.0 <= 5184991755232231.0 / 1125899906842624.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_elliptic_s.ae b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_s.ae new file mode 100644 index 000000000..48fc907bc --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_elliptic_s.ae @@ -0,0 +1,148 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 760849746420829.0 / 4503599627370496.0 * v_xnm1 * v_xnm1 + + 5131739170588961.0 / 72057594037927936.0 * v_xnm1 * v_xnm2 + + 8347626266832369.0 / 72057594037927936.0 * v_xnm1 * v_xnm3 + + 1637246092699839.0 / 18014398509481984.0 * v_xnm1 * v_xnm4 + + -5868516893341805.0 / 9007199254740992.0 * v_xnm1 * v_yn + + 7224670213346007.0 / 9007199254740992.0 * v_xnm1 * v_ynm1 + + -6470926675070095.0 / 9007199254740992.0 * v_xnm1 * v_ynm2 + + 4978407941440037.0 / 18014398509481984.0 * v_xnm1 * v_ynm3 + + 1244360816436767.0 / 4503599627370496.0 * v_xnm2 * v_xnm2 + + 8390604970883829.0 / 18014398509481984.0 * v_xnm2 * v_xnm3 + + 6698470349581537.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + -5816442273797547.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 7036427760034623.0 / 2251799813685248.0 * v_xnm2 * v_ynm1 + + -6299234358472663.0 / 2251799813685248.0 * v_xnm2 * v_ynm2 + + 1194927158558267.0 / 1125899906842624.0 * v_xnm2 * v_ynm3 + + 4507911145710889.0 / 9007199254740992.0 * v_xnm3 * v_xnm3 + + 5737049107264367.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + -4730703784026891.0 / 1125899906842624.0 * v_xnm3 * v_yn + + 5558580253948145.0 / 1125899906842624.0 * v_xnm3 * v_ynm1 + + -2492890235455849.0 / 562949953421312.0 * v_xnm3 * v_ynm2 + + 3698004520583343.0 / 2251799813685248.0 * v_xnm3 * v_ynm3 + + 6703774564634153.0 / 18014398509481984.0 * v_xnm4 * v_xnm4 + + -7422778655128351.0 / 2251799813685248.0 * v_xnm4 * v_yn + + 8196904376979003.0 / 2251799813685248.0 * v_xnm4 * v_ynm1 + + -3722897605879165.0 / 1125899906842624.0 * v_xnm4 * v_ynm2 + + 5237753671324099.0 / 4503599627370496.0 * v_xnm4 * v_ynm3 + + 6651524538847629.0 / 562949953421312.0 * v_yn * v_yn + + -4094312508581679.0 / 140737488355328.0 * v_yn * v_ynm1 + + 3667156561539403.0 / 140737488355328.0 * v_yn * v_ynm2 + + -5642657112841473.0 / 562949953421312.0 * v_yn * v_ynm3 + + 665232823713753.0 / 35184372088832.0 * v_ynm1 * v_ynm1 + + -2386819944236401.0 / 70368744177664.0 * v_ynm1 * v_ynm2 + + 955898766718375.0 / 70368744177664.0 * v_ynm1 * v_ynm3 + + 8688562128206057.0 / 562949953421312.0 * v_ynm2 * v_ynm2 + + -7003991000390951.0 / 562949953421312.0 * v_ynm2 * v_ynm3 + + 6064872274125409.0 / 2251799813685248.0 * v_ynm3 * v_ynm3 + 0.0 + <= 17597390303089.0 / 17592186044416.0 and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 + and 0.0 <= 1.0 / 1.0 and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 90049886514044250630850271170050019004243197950621.0 + / 562949953421312000000000000000000000000000000000000.0 * v__0 * v__0 + + -247361945769476856282222682151645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -15434746579783521564761977814750171435749.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm2 + + 829575061454810838907675167848354160272397.0 + / 28147497671065600000000000000000000000000000000000.0 * v__0 * v_xnm3 + + 5738472989105927654549647362754243197950621.0 + / 281474976710656000000000000000000000000000000000000.0 * v__0 + * v_xnm4 + + 130709324506383155622743848297241761438999.0 + / 2814749767106560000000000000000000000000000000000.0 * v__0 * v_yn + + -45612076601760369903399041481326523316019.0 + / 175921860444160000000000000000000000000000000000.0 * v__0 * v_ynm1 + + 155835865569534224850238826117596248984273.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm2 + + -640976510335978122585969600213992055924651.0 + / 2814749767106560000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 767179351644652475807711002606814343958518485629.0 + / 5629499534213120000000000000000000000000000000000.0 * v_xnm1 + * v_xnm1 + + 10050364597139032938159975468172689507382859307.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 58654251995210791354243240734264343958518485629.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm1 + * v_xnm3 + + -180556441538705502453344179392838401645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v_xnm1 + * v_xnm4 + + -38901947068379983336742249176259657061924924057.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm1 * v_yn + + 3519333567740903897843421888844805468779993917.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -12122604822658002111101742788769471655594365439.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + 20167810850703852329050782163275278211758797893.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 49315779930370024965672244639017526329665436781.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 58040796269242835440883793051522689507382859307.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + -153406141090732756313033596463071564750171435749.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm2 + * v_xnm4 + + -36452414612597255797407079283471135511491586031.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 3132144515822180384636709857855755026834498411.0 + / 4398046511104000000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -10710586940479321550948479949292985563975252537.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + 17135173968252252406354293575866578685608390819.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 907237740095670356900775478861714343958518485629.0 + / 5629499534213120000000000000000000000000000000000.0 * v_xnm3 + * v_xnm3 + + -734166770933883825040648989494988401645839727603.0 + / 28147497671065600000000000000000000000000000000000.0 * v_xnm3 + * v_xnm4 + + -212736883190624201626458036497109657061924924057.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm3 * v_yn + + 16452962546123121361762614342694805468779993917.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -56024178000648873147337677846719471655594365439.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + 82005030908257825328938320239925278211758797893.0 + / 281474976710656000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 5056343265505352581005037929244706504243197950621.0 + / 562949953421312000000000000000000000000000000000000.0 * v_xnm4 + * v_xnm4 + + 654877772128714305112841354405879547241761438999.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm4 * v_yn + + -73554978295965499818595141039197731326523316019.0 + / 175921860444160000000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 271868394338906000132882396035544867596248984273.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -564783918568100236703148276956006463992055924651.0 + / 2814749767106560000000000000000000000000000000000.0 * v_xnm4 + * v_ynm3 + + 141096324646632733177581567435938282510629547781.0 + / 56294995342131200000000000000000000000000000000.0 * v_yn * v_yn + + -12764556366230771152125635846751369199593475161.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm1 + + 43968475253035270355977266786518058225597444787.0 + / 7036874417766400000000000000000000000000000000.0 * v_yn * v_ynm2 + + -73148600659539448566695736068679585161817541569.0 + / 28147497671065600000000000000000000000000000000.0 * v_yn * v_ynm3 + + 1304920022077688883233750062315059841050194941.0 + / 219902325555200000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -4565909595533887596499958843801260291392490047.0 + / 439804651110400000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + 8215951071912639831703599148617939184658877189.0 + / 1759218604441600000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + 16614735726661081678198309825149883769369576149.0 + / 3518437208883200000000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -30367182176307153045739308880979494869597312663.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 63085288700481090826092238838334079733770741581.0 + / 56294995342131200000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + 0.0 <= 17597390303089.0 / 17592186044416.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_4_s.ae b/non-regression/valid/osdp/lp_iir_9600_4_s.ae new file mode 100644 index 000000000..f53a25fcf --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_4_s.ae @@ -0,0 +1,141 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +goal g: + 8429365094204229.0 / 18014398509481984.0 * v_xnm1 * v_xnm1 + + 8335710244078143.0 / 4503599627370496.0 * v_xnm1 * v_xnm2 + + 2921933697139917.0 / 1125899906842624.0 * v_xnm1 * v_xnm3 + + 3204084649666051.0 / 2251799813685248.0 * v_xnm1 * v_xnm4 + + -5759503221854049.0 / 562949953421312.0 * v_xnm1 * v_yn + + 2587000452341151.0 / 281474976710656.0 * v_xnm1 * v_ynm1 + + -7925247904856087.0 / 1125899906842624.0 * v_xnm1 * v_ynm2 + + 8154496820818219.0 / 4503599627370496.0 * v_xnm1 * v_ynm3 + + 4250174444698121.0 / 1125899906842624.0 * v_xnm2 * v_xnm2 + + 2848521983688179.0 / 281474976710656.0 * v_xnm2 * v_xnm3 + + 786209768633867.0 / 140737488355328.0 * v_xnm2 * v_xnm4 + + -349295662517729.0 / 8796093022208.0 * v_xnm2 * v_yn + + 4984298151237427.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -7626923196181733.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 3887397517955663.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + 4103948586952955.0 / 562949953421312.0 * v_xnm3 * v_xnm3 + + 9003639434985889.0 / 1125899906842624.0 * v_xnm3 * v_xnm4 + + -3918045388068513.0 / 70368744177664.0 * v_xnm3 * v_yn + + 6898488260120061.0 / 140737488355328.0 * v_xnm3 * v_ynm1 + + -2636504695811121.0 / 70368744177664.0 * v_xnm3 * v_ynm2 + + 2645330699737803.0 / 281474976710656.0 * v_xnm3 * v_ynm3 + + 2711429010711479.0 / 1125899906842624.0 * v_xnm4 * v_xnm4 + + -8592681152833265.0 / 281474976710656.0 * v_xnm4 * v_yn + + 7338041307389047.0 / 281474976710656.0 * v_xnm4 * v_ynm1 + + -5618974968718891.0 / 281474976710656.0 * v_xnm4 * v_ynm2 + + 680090788777793.0 / 140737488355328.0 * v_xnm4 * v_ynm3 + + 7722995144554817.0 / 70368744177664.0 * v_yn * v_yn + + -6937907821403825.0 / 35184372088832.0 * v_yn * v_ynm1 + + 5313543875150913.0 / 35184372088832.0 * v_yn * v_ynm2 + + -683412738537355.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6426000343461071.0 / 70368744177664.0 * v_ynm1 * v_ynm1 + + -1235482256665259.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 5278035521798891.0 / 140737488355328.0 * v_ynm1 * v_ynm3 + + 956847615440609.0 / 17592186044416.0 * v_ynm2 * v_ynm2 + + -4138139938936509.0 / 140737488355328.0 * v_ynm2 * v_ynm3 + + 4838836644619119.0 / 1125899906842624.0 * v_ynm3 * v_ynm3 + 0.0 + <= 4504598058283507.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 1009315835616330702011620711580897059967675860337.0 + / 4398046511104000000000000000000000000000000000000.0 * v__0 * v__0 + + -2771409917320100282588878787062293383012219.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -31669215763795891393591185064557901505982527.0 + / 219902325555200000000000000000000000000000000000.0 * v__0 * v_xnm2 + + -23003099695219332032424461415812293383012219.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_xnm3 + + -609623492421640812486784340493565032324139663.0 + / 2199023255552000000000000000000000000000000000000.0 * v__0 * v_xnm4 + + 58454126109793780990554155086731308194804917.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_yn + + -3245886742752123297043918957979180840402177.0 + / 87960930222080000000000000000000000000000000000.0 * v__0 * v_ynm1 + + -194756431313743116005455485835148580803701.0 + / 3518437208883200000000000000000000000000000000.0 * v__0 * v_ynm2 + + 307938427643904315354436472574906284247813.0 + / 1717986918400000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 1309560849699685312257557028240187687737165353.0 + / 7036874417766400000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 683973787613719238778248039954564170754665749.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 421543168150018180938580948316437687737165353.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 4874388420383766291920698115009812706616987781.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + -1394204993842937589020912336919307731837576679.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_yn + + 825496625223956294938477161512450737388080299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -16297876339887176016163725567206285763716313.0 + / 140737488355328000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + -2462194329053956223632244406187986050751831.0 + / 68719476736000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 13263235690529515143448951188563324609052640017.0 + / 43980465111040000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 4584826315561310438588322823345814170754665749.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 58093157567667330776621774674294817098494017473.0 + / 219902325555200000000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + -14612574085405263423277917287764183626570571707.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 7797566524884609695822216409129361554721205167.0 + / 8796093022208000000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -149077477801055920535050727701852709056359429.0 + / 351843720888320000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + -29344531207606754709197983768829766791766123.0 + / 171798691840000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 3733058651217001049619604868392687687737165353.0 + / 7036874417766400000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 42501440807676980341420862532381062706616987781.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + -9006841641423715193952327475823057731837576679.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm3 * v_yn + + 3954912852748837570040287742841200737388080299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -71968217672041620785057827543456285763716313.0 + / 140737488355328000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + -21468704893453216564982374089937986050751831.0 + / 68719476736000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 1047415379851030362066530719738115809967675860337.0 + / 4398046511104000000000000000000000000000000000000.0 * v_xnm4 + * v_xnm4 + + -104554216478625660906820444257866393691805195083.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm4 * v_yn + + 7228853466701630316340938378682645819159597823.0 + / 87960930222080000000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 204862538323372308496258004467289851419196299.0 + / 3518437208883200000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -529079750322822945416074275730550093715752187.0 + / 1717986918400000000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + 29773838782956291161337447545971085229841106697.0 + / 7036874417766400000000000000000000000000000000.0 * v_yn * v_yn + + -17575368069452438513473487878423897621021172357.0 + / 3518437208883200000000000000000000000000000000.0 * v_yn * v_ynm1 + + 346066998869822198622750681373650832767547959.0 + / 140737488355328000000000000000000000000000000.0 * v_yn * v_ynm2 + + 52813353530838196484193689030902269630574233.0 + / 68719476736000000000000000000000000000000000.0 * v_yn * v_ynm3 + + 17208640863634363018403244132616112619601212817.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -375135117005294678414106447805143817841729979.0 + / 140737488355328000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + -3651502604274089121486583012100772142613973.0 + / 68719476736000000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + 9724034155558132009669371038740662798734473.0 + / 11258999068426240000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -103481983090648565535421879459670544636249.0 + / 2748779069440000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 267253457975262228329373551737149718986537.0 + / 2684354560000000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + 0.0 <= 4504598058283507.0 / 4503599627370496.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_6_elliptic_0.ae b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_0.ae new file mode 100644 index 000000000..42a3c6944 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_0.ae @@ -0,0 +1,287 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_xnm5 : real +logic v_xnm6 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +logic v_ynm4 : real +logic v_ynm5 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 2641378977803409.0 / 281474976710656.0 + and 2956506014546051.0 / 36028797018963968.0 * v_xnm1 * v_xnm1 + + 4081255489123465.0 / 144115188075855872.0 * v_xnm1 * v_xnm2 + + 8534861385655097.0 / 144115188075855872.0 * v_xnm1 * v_xnm3 + + 708252683617937.0 / 9007199254740992.0 * v_xnm1 * v_xnm4 + + 4921693559305975.0 / 72057594037927936.0 * v_xnm1 * v_xnm5 + + 4927270869196685.0 / 144115188075855872.0 * v_xnm1 * v_xnm6 + + -4568256982397767.0 / 4503599627370496.0 * v_xnm1 * v_yn + + 5073066875370199.0 / 2251799813685248.0 * v_xnm1 * v_ynm1 + + -6931091478878173.0 / 2251799813685248.0 * v_xnm1 * v_ynm2 + + 5619546210794765.0 / 2251799813685248.0 * v_xnm1 * v_ynm3 + + -2790985131262269.0 / 2251799813685248.0 * v_xnm1 * v_ynm4 + + 321439060022431.0 / 1125899906842624.0 * v_xnm1 * v_ynm5 + + 4630643915655651.0 / 36028797018963968.0 * v_xnm2 * v_xnm2 + + 8575827537857047.0 / 36028797018963968.0 * v_xnm2 * v_xnm3 + + 5779568149943123.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + 5128425532501379.0 / 18014398509481984.0 * v_xnm2 * v_xnm5 + + 2672696054891767.0 / 18014398509481984.0 * v_xnm2 * v_xnm6 + + -8961080037829081.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 1217147670656339.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -3293703522040773.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 5262307905100599.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + -642964736597781.0 / 140737488355328.0 * v_xnm2 * v_ynm4 + + 4601094303442215.0 / 4503599627370496.0 * v_xnm2 * v_ynm5 + + 5792124670579747.0 / 18014398509481984.0 * v_xnm3 * v_xnm3 + + 6281835281391223.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + 2845936262883467.0 / 4503599627370496.0 * v_xnm3 * v_xnm5 + + 6167802166408513.0 / 18014398509481984.0 * v_xnm3 * v_xnm6 + + -4684869255411479.0 / 562949953421312.0 * v_xnm3 * v_yn + + 4978736752693621.0 / 281474976710656.0 * v_xnm3 * v_ynm1 + + -6673830930603725.0 / 281474976710656.0 * v_xnm3 * v_ynm2 + + 328198433316879.0 / 17592186044416.0 * v_xnm3 * v_ynm3 + + -5049947085649699.0 / 562949953421312.0 * v_xnm3 * v_ynm4 + + 2190192443901391.0 / 1125899906842624.0 * v_xnm3 * v_ynm5 + + 2464790955426901.0 / 4503599627370496.0 * v_xnm4 * v_xnm4 + + 4068708668573291.0 / 4503599627370496.0 * v_xnm4 * v_xnm5 + + 4619592775630533.0 / 9007199254740992.0 * v_xnm4 * v_xnm6 + + -6220208894376477.0 / 562949953421312.0 * v_xnm4 * v_yn + + 3210740128317203.0 / 140737488355328.0 * v_xnm4 * v_ynm1 + + -4254458198123335.0 / 140737488355328.0 * v_xnm4 * v_ynm2 + + 6560901852614079.0 / 281474976710656.0 * v_xnm4 * v_ynm3 + + -3087100517873857.0 / 281474976710656.0 * v_xnm4 * v_ynm4 + + 5128951478601907.0 / 2251799813685248.0 * v_xnm4 * v_ynm5 + + 8857610130471751.0 / 18014398509481984.0 * v_xnm5 * v_xnm5 + + 4738621920184727.0 / 9007199254740992.0 * v_xnm5 * v_xnm6 + + -5403067371486265.0 / 562949953421312.0 * v_xnm5 * v_yn + + 333797236654663.0 / 17592186044416.0 * v_xnm5 * v_ynm1 + + -6964464476477701.0 / 281474976710656.0 * v_xnm5 * v_ynm2 + + 5202219249299095.0 / 281474976710656.0 * v_xnm5 * v_ynm3 + + -295835431584705.0 / 35184372088832.0 * v_xnm5 * v_ynm4 + + 3650380693022049.0 / 2251799813685248.0 * v_xnm5 * v_ynm5 + + 8249534048201523.0 / 36028797018963968.0 * v_xnm6 * v_xnm6 + + -5409329597160103.0 / 1125899906842624.0 * v_xnm6 * v_yn + + 2441041491252581.0 / 281474976710656.0 * v_xnm6 * v_ynm1 + + -1544393534959259.0 / 140737488355328.0 * v_xnm6 * v_ynm2 + + 2139992841169989.0 / 281474976710656.0 * v_xnm6 * v_ynm3 + + -3594047986033401.0 / 1125899906842624.0 * v_xnm6 * v_ynm4 + + 4399810726417735.0 / 9007199254740992.0 * v_xnm6 * v_ynm5 + + 5015204570695979.0 / 70368744177664.0 * v_yn * v_yn + + -696197413815583.0 / 2199023255552.0 * v_yn * v_ynm1 + + 951208072146521.0 / 2199023255552.0 * v_yn * v_ynm2 + + -6169960162342337.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6129024145706313.0 / 35184372088832.0 * v_yn * v_ynm4 + + -1411966588509485.0 / 35184372088832.0 * v_yn * v_ynm5 + + 6418415070056789.0 / 17592186044416.0 * v_ynm1 * v_ynm1 + + -8908403592727877.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 3696472192418523.0 / 4398046511104.0 * v_ynm1 * v_ynm3 + + -1880907971203225.0 / 4398046511104.0 * v_ynm1 * v_ynm4 + + 7227845700138641.0 / 70368744177664.0 * v_ynm1 * v_ynm5 + + 779341530429625.0 / 1099511627776.0 * v_ynm2 * v_ynm2 + + -20433508419203.0 / 17179869184.0 * v_ynm2 * v_ynm3 + + 5389454451511649.0 / 8796093022208.0 * v_ynm2 * v_ynm4 + + -2643691677236239.0 / 17592186044416.0 * v_ynm2 * v_ynm5 + + 8910282938251881.0 / 17592186044416.0 * v_ynm3 * v_ynm3 + + -4662670573607997.0 / 8796093022208.0 * v_ynm3 * v_ynm4 + + 146807976665047.0 / 1099511627776.0 * v_ynm3 * v_ynm5 + + 2482869211031277.0 / 17592186044416.0 * v_ynm4 * v_ynm4 + + -1286609449518865.0 / 17592186044416.0 * v_ynm4 * v_ynm5 + + 5617299432800573.0 / 562949953421312.0 * v_ynm5 * v_ynm5 + 0.0 + <= 4606560273173319.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 22081800125343494613024535075152180864740939649331.0 + / 281474976710656000000000000000000000000000000000000.0 * v__0 * v__0 + + -15053829753361432226221639340078070636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -46485488607498219004334094205622660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm2 + + -78612826586689311899609050626214887270763443.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm3 + + -78661630223311507556212408343122660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm4 + + -40338237094837538212551452426015570636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm5 + + 619964668078066053278869942633989740939649331.0 + / 140737488355328000000000000000000000000000000000000.0 * v__0 + * v_xnm6 + + 88976103734422038627523100636182024593088839.0 + / 351843720888320000000000000000000000000000000000.0 * v__0 * v_yn + + -12683673859976838465082210213658082449619613.0 + / 17592186044416000000000000000000000000000000000.0 * v__0 * v_ynm1 + + 38949031922900557920378573785589769583815241.0 + / 35184372088832000000000000000000000000000000000.0 * v__0 * v_ynm2 + + -742168743502502993872462360074299552913197889.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 431710254518103512918680873905114400984760407.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm4 + + -273839878541331552292096519830239580785126113.0 + / 1407374883553280000000000000000000000000000000000.0 * v__0 * v_ynm5 + + 52009324896063886545156662928955151544006206611.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 4226375900680161880720223341328104134728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 8229410634584191132118741793645305971585117213.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 9736200170934041595936526506590604134728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + 6715944074905138051670411056494214044006206611.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm5 + + -25863385027738760024969544909636953070636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm1 + * v_xnm6 + + -8104164493530651210152233023790796582487839049.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm1 * v_yn + + 992800196400376105412325024720765886427969683.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -2768323481513562318120806042702119931935816231.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + 46837034946642862484768889758531892112072327599.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + -23947607285581779876979985554892315383086158137.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm1 * v_ynm4 + + 11423919102712244802274915597226859377861511183.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm1 * v_ynm5 + + 62830911529157727422769078622003728162239115091.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 31549427238283287530556918244403982755144412483.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 38206407169899548817279447957141228162239115091.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + 27552664101473099398479268982539041634728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm5 + + -87486860193638705858614113258408747660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm2 + * v_xnm6 + + -30078792510695089773650179013343214881992068759.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 3601230513505641202100250926694504622171146253.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -9925278400138223535905500037397944795573577721.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + 165560240153271289045813170102721280405182461809.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + -83247215788700619468765868997050998084383539367.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm2 * v_ynm4 + + 38643155655398992469562475943902616229965972753.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_ynm5 + + 106704674778717656249568652825440871693066864179.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 78837524417995211141658411004941482755144412483.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + 59508326299417986320485292531731243471585117213.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm3 * v_xnm5 + + -152746009725737700483153690743079339887270763443.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm3 + * v_xnm6 + + -58467237740306435998907310588264617108360282567.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm3 * v_yn + + 6819767049905997098628014668257043031926364189.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -18559591696539336749121543983676218439534985673.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + 304574341755124914172889566651451927034664257217.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + -150226570494189645780159004449446795464598214871.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm3 * v_ynm4 + + 67468278282113453769529196148486114004800558689.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm3 * v_ynm5 + + 141159627401173792086789817292278728162239115091.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm4 * v_xnm4 + + 81283775683994274035570572147801541634728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm4 * v_xnm5 + + -151411894389788357037790991572546247660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm4 + * v_xnm6 + + -69050608315071258561611911251330714881992068759.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm4 * v_yn + + 7737398108333972040098085714357004622171146253.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + -20665782122073283436256540900410444795573577721.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + 330331777698673142806718119828833780405182461809.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + -157894657879239243976559319409638498084383539367.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm4 * v_ynm4 + + 66878996343371594638650025812815116229965972753.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm4 * v_ynm5 + + 108586349466122170808184159184033276544006206611.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm5 * v_xnm5 + + -67198014165217931443455874722722890570636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm5 + * v_xnm6 + + -47512476894833770926080006728282984082487839049.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm5 * v_yn + + 4894926882422755890832442952259828386427969683.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm5 * v_ynm1 + + -12585162569469057314631470666334932431935816231.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm5 * v_ynm2 + + 189013291405011879346414873355602204612072327599.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm5 * v_ynm3 + + -83599302822061696942045954162509502883086158137.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm5 * v_ynm4 + + 29681523778230594412232923075547171877861511183.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm5 * v_ynm5 + + 1017143042633684956582022664733087114740939649331.0 + / 281474976710656000000000000000000000000000000000000.0 * v_xnm6 + * v_xnm6 + + 186941409653332301106623174813776807024593088839.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm6 * v_yn + + -26078528047248947236381292312510533082449619613.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm6 * v_ynm1 + + 78161354717628667386512520634394964769583815241.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm6 * v_ynm2 + + -1434086111636264769877416962306808674552913197889.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm6 * v_ynm3 + + 805180013381957708032864718058795739400984760407.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm6 * v_ynm4 + + -449274517719605951698714893708064614580785126113.0 + / 1407374883553280000000000000000000000000000000000.0 * v_xnm6 + * v_ynm5 + + 57676198093467515380028555340634242149650794891.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_yn + + -7080869140667297069164962654681390446916308297.0 + / 43980465111040000000000000000000000000000000.0 * v_yn * v_ynm1 + + 19774970143719917246642836048271976283374386629.0 + / 87960930222080000000000000000000000000000000.0 * v_yn * v_ynm2 + + -335282930093191603427055058088393707141340069341.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm3 + + 171876353906406187383805646724758085397950613083.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm4 + + -82572468319061879817713034190589609467843756797.0 + / 3518437208883200000000000000000000000000000000.0 * v_yn * v_ynm5 + + 899421508749545220277882664994304953083006099.0 + / 4398046511104000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -2554058424235867118782545715748596704243285543.0 + / 4398046511104000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + 44164654684679145521251098987231204636900566447.0 + / 87960930222080000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + -23150449025016640504101748180826509559970434361.0 + / 87960930222080000000000000000000000000000000.0 * v_ynm1 * v_ynm4 + + 11518948289640468971457126361057030355177155599.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm1 * v_ynm5 + + 7325915893402449189348720861332166563390326251.0 + / 17592186044416000000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -128051967959965035787997555402622260661059716179.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 67991808592691458422474080484607316076447986677.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm2 * v_ynm4 + + -34524057554528590149459411148115773077888757043.0 + / 351843720888320000000000000000000000000000000.0 * v_ynm2 * v_ynm5 + + 2266067412437478671565300318608270995573285671291.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + -1220003142163201729034017757725090094665412705933.0 + / 3518437208883200000000000000000000000000000000.0 * v_ynm3 * v_ynm4 + + 633439269766313654037169185046506377970992089947.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm3 * v_ynm5 + + 667852215593507510629730104954416390673604353579.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm4 * v_ynm4 + + -355649940103778342276010227496319869142090514861.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm4 * v_ynm5 + + 198445630370278354233958074207386206889896055099.0 + / 28147497671065600000000000000000000000000000000.0 * v_ynm5 * v_ynm5 + + 0.0 <= 4606560273173319.0 / 4503599627370496.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_6_elliptic_1.ae b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_1.ae new file mode 100644 index 000000000..cd8d5e037 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_1.ae @@ -0,0 +1,279 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_xnm5 : real +logic v_xnm6 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +logic v_ynm4 : real +logic v_ynm5 : real +goal g: + 1.0 / 1.0 * v_yn * v_yn + 0.0 <= 2641378977803409.0 / 281474976710656.0 + and 2956506014546051.0 / 36028797018963968.0 * v_xnm1 * v_xnm1 + + 4081255489123465.0 / 144115188075855872.0 * v_xnm1 * v_xnm2 + + 8534861385655097.0 / 144115188075855872.0 * v_xnm1 * v_xnm3 + + 708252683617937.0 / 9007199254740992.0 * v_xnm1 * v_xnm4 + + 4921693559305975.0 / 72057594037927936.0 * v_xnm1 * v_xnm5 + + 4927270869196685.0 / 144115188075855872.0 * v_xnm1 * v_xnm6 + + -4568256982397767.0 / 4503599627370496.0 * v_xnm1 * v_yn + + 5073066875370199.0 / 2251799813685248.0 * v_xnm1 * v_ynm1 + + -6931091478878173.0 / 2251799813685248.0 * v_xnm1 * v_ynm2 + + 5619546210794765.0 / 2251799813685248.0 * v_xnm1 * v_ynm3 + + -2790985131262269.0 / 2251799813685248.0 * v_xnm1 * v_ynm4 + + 321439060022431.0 / 1125899906842624.0 * v_xnm1 * v_ynm5 + + 4630643915655651.0 / 36028797018963968.0 * v_xnm2 * v_xnm2 + + 8575827537857047.0 / 36028797018963968.0 * v_xnm2 * v_xnm3 + + 5779568149943123.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + 5128425532501379.0 / 18014398509481984.0 * v_xnm2 * v_xnm5 + + 2672696054891767.0 / 18014398509481984.0 * v_xnm2 * v_xnm6 + + -8961080037829081.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 1217147670656339.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -3293703522040773.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 5262307905100599.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + -642964736597781.0 / 140737488355328.0 * v_xnm2 * v_ynm4 + + 4601094303442215.0 / 4503599627370496.0 * v_xnm2 * v_ynm5 + + 5792124670579747.0 / 18014398509481984.0 * v_xnm3 * v_xnm3 + + 6281835281391223.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + 2845936262883467.0 / 4503599627370496.0 * v_xnm3 * v_xnm5 + + 6167802166408513.0 / 18014398509481984.0 * v_xnm3 * v_xnm6 + + -4684869255411479.0 / 562949953421312.0 * v_xnm3 * v_yn + + 4978736752693621.0 / 281474976710656.0 * v_xnm3 * v_ynm1 + + -6673830930603725.0 / 281474976710656.0 * v_xnm3 * v_ynm2 + + 328198433316879.0 / 17592186044416.0 * v_xnm3 * v_ynm3 + + -5049947085649699.0 / 562949953421312.0 * v_xnm3 * v_ynm4 + + 2190192443901391.0 / 1125899906842624.0 * v_xnm3 * v_ynm5 + + 2464790955426901.0 / 4503599627370496.0 * v_xnm4 * v_xnm4 + + 4068708668573291.0 / 4503599627370496.0 * v_xnm4 * v_xnm5 + + 4619592775630533.0 / 9007199254740992.0 * v_xnm4 * v_xnm6 + + -6220208894376477.0 / 562949953421312.0 * v_xnm4 * v_yn + + 3210740128317203.0 / 140737488355328.0 * v_xnm4 * v_ynm1 + + -4254458198123335.0 / 140737488355328.0 * v_xnm4 * v_ynm2 + + 6560901852614079.0 / 281474976710656.0 * v_xnm4 * v_ynm3 + + -3087100517873857.0 / 281474976710656.0 * v_xnm4 * v_ynm4 + + 5128951478601907.0 / 2251799813685248.0 * v_xnm4 * v_ynm5 + + 8857610130471751.0 / 18014398509481984.0 * v_xnm5 * v_xnm5 + + 4738621920184727.0 / 9007199254740992.0 * v_xnm5 * v_xnm6 + + -5403067371486265.0 / 562949953421312.0 * v_xnm5 * v_yn + + 333797236654663.0 / 17592186044416.0 * v_xnm5 * v_ynm1 + + -6964464476477701.0 / 281474976710656.0 * v_xnm5 * v_ynm2 + + 5202219249299095.0 / 281474976710656.0 * v_xnm5 * v_ynm3 + + -295835431584705.0 / 35184372088832.0 * v_xnm5 * v_ynm4 + + 3650380693022049.0 / 2251799813685248.0 * v_xnm5 * v_ynm5 + + 8249534048201523.0 / 36028797018963968.0 * v_xnm6 * v_xnm6 + + -5409329597160103.0 / 1125899906842624.0 * v_xnm6 * v_yn + + 2441041491252581.0 / 281474976710656.0 * v_xnm6 * v_ynm1 + + -1544393534959259.0 / 140737488355328.0 * v_xnm6 * v_ynm2 + + 2139992841169989.0 / 281474976710656.0 * v_xnm6 * v_ynm3 + + -3594047986033401.0 / 1125899906842624.0 * v_xnm6 * v_ynm4 + + 4399810726417735.0 / 9007199254740992.0 * v_xnm6 * v_ynm5 + + 5015204570695979.0 / 70368744177664.0 * v_yn * v_yn + + -696197413815583.0 / 2199023255552.0 * v_yn * v_ynm1 + + 951208072146521.0 / 2199023255552.0 * v_yn * v_ynm2 + + -6169960162342337.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6129024145706313.0 / 35184372088832.0 * v_yn * v_ynm4 + + -1411966588509485.0 / 35184372088832.0 * v_yn * v_ynm5 + + 6418415070056789.0 / 17592186044416.0 * v_ynm1 * v_ynm1 + + -8908403592727877.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 3696472192418523.0 / 4398046511104.0 * v_ynm1 * v_ynm3 + + -1880907971203225.0 / 4398046511104.0 * v_ynm1 * v_ynm4 + + 7227845700138641.0 / 70368744177664.0 * v_ynm1 * v_ynm5 + + 779341530429625.0 / 1099511627776.0 * v_ynm2 * v_ynm2 + + -20433508419203.0 / 17179869184.0 * v_ynm2 * v_ynm3 + + 5389454451511649.0 / 8796093022208.0 * v_ynm2 * v_ynm4 + + -2643691677236239.0 / 17592186044416.0 * v_ynm2 * v_ynm5 + + 8910282938251881.0 / 17592186044416.0 * v_ynm3 * v_ynm3 + + -4662670573607997.0 / 8796093022208.0 * v_ynm3 * v_ynm4 + + 146807976665047.0 / 1099511627776.0 * v_ynm3 * v_ynm5 + + 2482869211031277.0 / 17592186044416.0 * v_ynm4 * v_ynm4 + + -1286609449518865.0 / 17592186044416.0 * v_ynm4 * v_ynm5 + + 5617299432800573.0 / 562949953421312.0 * v_ynm5 * v_ynm5 + 0.0 + <= 4606560273173319.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 202811875028366420277778465956889.0 + / 4000000000000000000000000000000000000.0 * v__0 * v__0 + + 34602276610321826368524855903401.0 + / 100000000000000000000000000000000000.0 * v__0 * v_xnm1 + + 65700558319259531202975987259191.0 + / 100000000000000000000000000000000000.0 * v__0 * v_xnm2 + + 79936792405959619406444617415783.0 + / 100000000000000000000000000000000000.0 * v__0 * v_xnm3 + + 65700558319259531202975987259191.0 + / 100000000000000000000000000000000000.0 * v__0 * v_xnm4 + + 34602276610321826368524855903401.0 + / 100000000000000000000000000000000000.0 * v__0 * v_xnm5 + + 202811875028366420277778465956889.0 + / 2000000000000000000000000000000000000.0 * v__0 * v_xnm6 + + 195429022971341536905093345440341.0 + / 5000000000000000000000000000000000.0 * v__0 * v_yn + + -16004116589944049123689079023447.0 + / 250000000000000000000000000000000.0 * v__0 * v_ynm1 + + 33105132638383893647266581465179.0 + / 500000000000000000000000000000000.0 * v__0 * v_ynm2 + + -459987798254714915087048361492291.0 + / 10000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 200642074192179288572464522028933.0 + / 10000000000000000000000000000000000.0 * v__0 * v_ynm4 + + -89582490880777455360709699046947.0 + / 20000000000000000000000000000000000.0 * v__0 * v_ynm5 + + 5903586988926369880826609393209.0 + / 10000000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 11209348032986875565420658449319.0 + / 5000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 13638230018760095611987673637847.0 + / 5000000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 11209348032986875565420658449319.0 + / 5000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + 5903586988926369880826609393209.0 + / 5000000000000000000000000000000000.0 * v_xnm1 * v_xnm5 + + 34602276610321826368524855903401.0 + / 100000000000000000000000000000000000.0 * v_xnm1 * v_xnm6 + + 33342668468468555051722586069669.0 + / 250000000000000000000000000000000.0 * v_xnm1 * v_yn + + -2730505149521593951453482913223.0 + / 12500000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + 5648155250349787212127108832011.0 / 25000000000000000000000000000000.0 + * v_xnm1 * v_ynm2 + + -78479748931645976793632834607219.0 + / 500000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + 34232081084480188120062682346197.0 + / 500000000000000000000000000000000.0 * v_xnm1 * v_ynm4 + + -15283908442070979717592494224723.0 + / 1000000000000000000000000000000000.0 * v_xnm1 * v_ynm5 + + 21283582940390860924343963422329.0 + / 10000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 25895386503318570340413609979977.0 + / 5000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 21283582940390860924343963422329.0 + / 5000000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + 11209348032986875565420658449319.0 + / 5000000000000000000000000000000000.0 * v_xnm2 * v_xnm5 + + 65700558319259531202975987259191.0 + / 100000000000000000000000000000000000.0 * v_xnm2 * v_xnm6 + + 63308896085146338136536065269179.0 + / 250000000000000000000000000000000.0 * v_xnm2 * v_yn + + -5184506061189869173906555746393.0 + / 12500000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + 10724350816591739092748257879701.0 + / 25000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + -149012256610490586828200899421229.0 + / 500000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + 64997655067863862708811924434827.0 + / 500000000000000000000000000000000.0 * v_xnm2 * v_ynm4 + + -29020093945060456407024496642893.0 + / 1000000000000000000000000000000000.0 * v_xnm2 * v_ynm5 + + 31506492306033643623461014315801.0 + / 10000000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 25895386503318570340413609979977.0 + / 5000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + 13638230018760095611987673637847.0 + / 5000000000000000000000000000000000.0 * v_xnm3 * v_xnm5 + + 79936792405959619406444617415783.0 + / 100000000000000000000000000000000000.0 * v_xnm3 * v_xnm6 + + 77026896167567431017438609194027.0 + / 250000000000000000000000000000000.0 * v_xnm3 * v_yn + + -6307903545155820797941885268009.0 + / 12500000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + 13048141855185365714909953925413.0 + / 25000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + -181300770150755358160967170735677.0 + / 500000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + 79081581541308281455756191833851.0 + / 500000000000000000000000000000000.0 * v_xnm3 * v_ynm4 + + -35308272633167603475414009372509.0 + / 1000000000000000000000000000000000.0 * v_xnm3 * v_ynm5 + + 21283582940390860924343963422329.0 + / 10000000000000000000000000000000000.0 * v_xnm4 * v_xnm4 + + 11209348032986875565420658449319.0 + / 5000000000000000000000000000000000.0 * v_xnm4 * v_xnm5 + + 65700558319259531202975987259191.0 + / 100000000000000000000000000000000000.0 * v_xnm4 * v_xnm6 + + 63308896085146338136536065269179.0 + / 250000000000000000000000000000000.0 * v_xnm4 * v_yn + + -5184506061189869173906555746393.0 + / 12500000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + 10724350816591739092748257879701.0 + / 25000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + -149012256610490586828200899421229.0 + / 500000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + 64997655067863862708811924434827.0 + / 500000000000000000000000000000000.0 * v_xnm4 * v_ynm4 + + -29020093945060456407024496642893.0 + / 1000000000000000000000000000000000.0 * v_xnm4 * v_ynm5 + + 5903586988926369880826609393209.0 + / 10000000000000000000000000000000000.0 * v_xnm5 * v_xnm5 + + 34602276610321826368524855903401.0 + / 100000000000000000000000000000000000.0 * v_xnm5 * v_xnm6 + + 33342668468468555051722586069669.0 + / 250000000000000000000000000000000.0 * v_xnm5 * v_yn + + -2730505149521593951453482913223.0 + / 12500000000000000000000000000000.0 * v_xnm5 * v_ynm1 + + 5648155250349787212127108832011.0 / 25000000000000000000000000000000.0 + * v_xnm5 * v_ynm2 + + -78479748931645976793632834607219.0 + / 500000000000000000000000000000000.0 * v_xnm5 * v_ynm3 + + 34232081084480188120062682346197.0 + / 500000000000000000000000000000000.0 * v_xnm5 * v_ynm4 + + -15283908442070979717592494224723.0 + / 1000000000000000000000000000000000.0 * v_xnm5 * v_ynm5 + + 202811875028366420277778465956889.0 + / 4000000000000000000000000000000000000.0 * v_xnm6 * v_xnm6 + + 195429022971341536905093345440341.0 + / 5000000000000000000000000000000000.0 * v_xnm6 * v_yn + + -16004116589944049123689079023447.0 + / 250000000000000000000000000000000.0 * v_xnm6 * v_ynm1 + + 33105132638383893647266581465179.0 + / 500000000000000000000000000000000.0 * v_xnm6 * v_ynm2 + + -459987798254714915087048361492291.0 + / 10000000000000000000000000000000000.0 * v_xnm6 * v_ynm3 + + 200642074192179288572464522028933.0 + / 10000000000000000000000000000000000.0 * v_xnm6 * v_ynm4 + + -89582490880777455360709699046947.0 + / 20000000000000000000000000000000000.0 * v_xnm6 * v_ynm5 + + 188314924923362193704035275018529.0 + / 25000000000000000000000000000000.0 * v_yn * v_yn + + -15421527305808647720283949162843.0 / 625000000000000000000000000000.0 + * v_yn * v_ynm1 + + 31900024226644248115983318662351.0 / 1250000000000000000000000000000.0 + * v_yn * v_ynm2 + + -443243108812461190198041115853079.0 + / 25000000000000000000000000000000.0 * v_yn * v_ynm3 + + 193338208232810363089169042751377.0 + / 25000000000000000000000000000000.0 * v_yn * v_ynm4 + + -86321467447213433868755503284343.0 + / 50000000000000000000000000000000.0 * v_yn * v_ynm5 + + 1262903110523968574331168884281.0 / 62500000000000000000000000000.0 + * v_ynm1 * v_ynm1 + + -2612363809545937446648374864117.0 / 62500000000000000000000000000.0 + * v_ynm1 * v_ynm2 + + 36298162285568684630310431607693.0 / 1250000000000000000000000000000.0 + * v_ynm1 * v_ynm3 + + -15832895128900705361462166620459.0 + / 1250000000000000000000000000000.0 * v_ynm1 * v_ynm4 + + 7069056623400568312001601924781.0 / 2500000000000000000000000000000.0 + * v_ynm1 * v_ynm5 + + 5403775330471673698379782690369.0 / 250000000000000000000000000000.0 + * v_ynm2 * v_ynm2 + + -75084149146250139620876921703801.0 + / 2500000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 32750954440135864480210612660063.0 / 2500000000000000000000000000000.0 + * v_ynm2 * v_ynm4 + + -14622616364402537928701178222617.0 + / 5000000000000000000000000000000.0 * v_ynm2 * v_ynm5 + + 1043276063167535444404426175910129.0 + / 100000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + -455066577990125572562091692575527.0 + / 50000000000000000000000000000000.0 * v_ynm3 * v_ynm4 + + 203177712038106616817428873154193.0 + / 100000000000000000000000000000000.0 * v_ynm3 * v_ynm5 + + 198495487162718512921792115654401.0 + / 100000000000000000000000000000000.0 * v_ynm4 * v_ynm4 + + -88624084655335032576202271949959.0 + / 100000000000000000000000000000000.0 * v_ynm4 * v_ynm5 + + 39568800748388873767894005215281.0 + / 400000000000000000000000000000000.0 * v_ynm5 * v_ynm5 + + 0.0 <= 2741378977803409.0 / 281474976710656.0 diff --git a/non-regression/valid/osdp/lp_iir_9600_6_elliptic_s.ae b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_s.ae new file mode 100644 index 000000000..257aeca36 --- /dev/null +++ b/non-regression/valid/osdp/lp_iir_9600_6_elliptic_s.ae @@ -0,0 +1,286 @@ +logic v__0 : real +logic v_xnm1 : real +logic v_xnm2 : real +logic v_xnm3 : real +logic v_xnm4 : real +logic v_xnm5 : real +logic v_xnm6 : real +logic v_yn : real +logic v_ynm1 : real +logic v_ynm2 : real +logic v_ynm3 : real +logic v_ynm4 : real +logic v_ynm5 : real +goal g: + 2956506014546051.0 / 36028797018963968.0 * v_xnm1 * v_xnm1 + + 4081255489123465.0 / 144115188075855872.0 * v_xnm1 * v_xnm2 + + 8534861385655097.0 / 144115188075855872.0 * v_xnm1 * v_xnm3 + + 708252683617937.0 / 9007199254740992.0 * v_xnm1 * v_xnm4 + + 4921693559305975.0 / 72057594037927936.0 * v_xnm1 * v_xnm5 + + 4927270869196685.0 / 144115188075855872.0 * v_xnm1 * v_xnm6 + + -4568256982397767.0 / 4503599627370496.0 * v_xnm1 * v_yn + + 5073066875370199.0 / 2251799813685248.0 * v_xnm1 * v_ynm1 + + -6931091478878173.0 / 2251799813685248.0 * v_xnm1 * v_ynm2 + + 5619546210794765.0 / 2251799813685248.0 * v_xnm1 * v_ynm3 + + -2790985131262269.0 / 2251799813685248.0 * v_xnm1 * v_ynm4 + + 321439060022431.0 / 1125899906842624.0 * v_xnm1 * v_ynm5 + + 4630643915655651.0 / 36028797018963968.0 * v_xnm2 * v_xnm2 + + 8575827537857047.0 / 36028797018963968.0 * v_xnm2 * v_xnm3 + + 5779568149943123.0 / 18014398509481984.0 * v_xnm2 * v_xnm4 + + 5128425532501379.0 / 18014398509481984.0 * v_xnm2 * v_xnm5 + + 2672696054891767.0 / 18014398509481984.0 * v_xnm2 * v_xnm6 + + -8961080037829081.0 / 2251799813685248.0 * v_xnm2 * v_yn + + 1217147670656339.0 / 140737488355328.0 * v_xnm2 * v_ynm1 + + -3293703522040773.0 / 281474976710656.0 * v_xnm2 * v_ynm2 + + 5262307905100599.0 / 562949953421312.0 * v_xnm2 * v_ynm3 + + -642964736597781.0 / 140737488355328.0 * v_xnm2 * v_ynm4 + + 4601094303442215.0 / 4503599627370496.0 * v_xnm2 * v_ynm5 + + 5792124670579747.0 / 18014398509481984.0 * v_xnm3 * v_xnm3 + + 6281835281391223.0 / 9007199254740992.0 * v_xnm3 * v_xnm4 + + 2845936262883467.0 / 4503599627370496.0 * v_xnm3 * v_xnm5 + + 6167802166408513.0 / 18014398509481984.0 * v_xnm3 * v_xnm6 + + -4684869255411479.0 / 562949953421312.0 * v_xnm3 * v_yn + + 4978736752693621.0 / 281474976710656.0 * v_xnm3 * v_ynm1 + + -6673830930603725.0 / 281474976710656.0 * v_xnm3 * v_ynm2 + + 328198433316879.0 / 17592186044416.0 * v_xnm3 * v_ynm3 + + -5049947085649699.0 / 562949953421312.0 * v_xnm3 * v_ynm4 + + 2190192443901391.0 / 1125899906842624.0 * v_xnm3 * v_ynm5 + + 2464790955426901.0 / 4503599627370496.0 * v_xnm4 * v_xnm4 + + 4068708668573291.0 / 4503599627370496.0 * v_xnm4 * v_xnm5 + + 4619592775630533.0 / 9007199254740992.0 * v_xnm4 * v_xnm6 + + -6220208894376477.0 / 562949953421312.0 * v_xnm4 * v_yn + + 3210740128317203.0 / 140737488355328.0 * v_xnm4 * v_ynm1 + + -4254458198123335.0 / 140737488355328.0 * v_xnm4 * v_ynm2 + + 6560901852614079.0 / 281474976710656.0 * v_xnm4 * v_ynm3 + + -3087100517873857.0 / 281474976710656.0 * v_xnm4 * v_ynm4 + + 5128951478601907.0 / 2251799813685248.0 * v_xnm4 * v_ynm5 + + 8857610130471751.0 / 18014398509481984.0 * v_xnm5 * v_xnm5 + + 4738621920184727.0 / 9007199254740992.0 * v_xnm5 * v_xnm6 + + -5403067371486265.0 / 562949953421312.0 * v_xnm5 * v_yn + + 333797236654663.0 / 17592186044416.0 * v_xnm5 * v_ynm1 + + -6964464476477701.0 / 281474976710656.0 * v_xnm5 * v_ynm2 + + 5202219249299095.0 / 281474976710656.0 * v_xnm5 * v_ynm3 + + -295835431584705.0 / 35184372088832.0 * v_xnm5 * v_ynm4 + + 3650380693022049.0 / 2251799813685248.0 * v_xnm5 * v_ynm5 + + 8249534048201523.0 / 36028797018963968.0 * v_xnm6 * v_xnm6 + + -5409329597160103.0 / 1125899906842624.0 * v_xnm6 * v_yn + + 2441041491252581.0 / 281474976710656.0 * v_xnm6 * v_ynm1 + + -1544393534959259.0 / 140737488355328.0 * v_xnm6 * v_ynm2 + + 2139992841169989.0 / 281474976710656.0 * v_xnm6 * v_ynm3 + + -3594047986033401.0 / 1125899906842624.0 * v_xnm6 * v_ynm4 + + 4399810726417735.0 / 9007199254740992.0 * v_xnm6 * v_ynm5 + + 5015204570695979.0 / 70368744177664.0 * v_yn * v_yn + + -696197413815583.0 / 2199023255552.0 * v_yn * v_ynm1 + + 951208072146521.0 / 2199023255552.0 * v_yn * v_ynm2 + + -6169960162342337.0 / 17592186044416.0 * v_yn * v_ynm3 + + 6129024145706313.0 / 35184372088832.0 * v_yn * v_ynm4 + + -1411966588509485.0 / 35184372088832.0 * v_yn * v_ynm5 + + 6418415070056789.0 / 17592186044416.0 * v_ynm1 * v_ynm1 + + -8908403592727877.0 / 8796093022208.0 * v_ynm1 * v_ynm2 + + 3696472192418523.0 / 4398046511104.0 * v_ynm1 * v_ynm3 + + -1880907971203225.0 / 4398046511104.0 * v_ynm1 * v_ynm4 + + 7227845700138641.0 / 70368744177664.0 * v_ynm1 * v_ynm5 + + 779341530429625.0 / 1099511627776.0 * v_ynm2 * v_ynm2 + + -20433508419203.0 / 17179869184.0 * v_ynm2 * v_ynm3 + + 5389454451511649.0 / 8796093022208.0 * v_ynm2 * v_ynm4 + + -2643691677236239.0 / 17592186044416.0 * v_ynm2 * v_ynm5 + + 8910282938251881.0 / 17592186044416.0 * v_ynm3 * v_ynm3 + + -4662670573607997.0 / 8796093022208.0 * v_ynm3 * v_ynm4 + + 146807976665047.0 / 1099511627776.0 * v_ynm3 * v_ynm5 + + 2482869211031277.0 / 17592186044416.0 * v_ynm4 * v_ynm4 + + -1286609449518865.0 / 17592186044416.0 * v_ynm4 * v_ynm5 + + 5617299432800573.0 / 562949953421312.0 * v_ynm5 * v_ynm5 + 0.0 + <= 4606560273173319.0 / 4503599627370496.0 + and 1.0 * v__0 + 0.0 <= 1.0 / 1.0 and 0.0 <= 1.0 / 1.0 + and -1.0 * v__0 + 0.0 <= 1.0 / 1.0 + -> 22081800125343494613024535075152180864740939649331.0 + / 281474976710656000000000000000000000000000000000000.0 * v__0 * v__0 + + -15053829753361432226221639340078070636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm1 + + -46485488607498219004334094205622660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm2 + + -78612826586689311899609050626214887270763443.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm3 + + -78661630223311507556212408343122660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm4 + + -40338237094837538212551452426015570636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v__0 * v_xnm5 + + 619964668078066053278869942633989740939649331.0 + / 140737488355328000000000000000000000000000000000000.0 * v__0 + * v_xnm6 + + 88976103734422038627523100636182024593088839.0 + / 351843720888320000000000000000000000000000000000.0 * v__0 * v_yn + + -12683673859976838465082210213658082449619613.0 + / 17592186044416000000000000000000000000000000000.0 * v__0 * v_ynm1 + + 38949031922900557920378573785589769583815241.0 + / 35184372088832000000000000000000000000000000000.0 * v__0 * v_ynm2 + + -742168743502502993872462360074299552913197889.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm3 + + 431710254518103512918680873905114400984760407.0 + / 703687441776640000000000000000000000000000000000.0 * v__0 * v_ynm4 + + -273839878541331552292096519830239580785126113.0 + / 1407374883553280000000000000000000000000000000000.0 * v__0 * v_ynm5 + + 52009324896063886545156662928955151544006206611.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm1 * v_xnm1 + + 4226375900680161880720223341328104134728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm2 + + 8229410634584191132118741793645305971585117213.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm3 + + 9736200170934041595936526506590604134728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm4 + + 6715944074905138051670411056494214044006206611.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm1 * v_xnm5 + + -25863385027738760024969544909636953070636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm1 + * v_xnm6 + + -8104164493530651210152233023790796582487839049.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm1 * v_yn + + 992800196400376105412325024720765886427969683.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm1 * v_ynm1 + + -2768323481513562318120806042702119931935816231.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm1 * v_ynm2 + + 46837034946642862484768889758531892112072327599.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm1 * v_ynm3 + + -23947607285581779876979985554892315383086158137.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm1 * v_ynm4 + + 11423919102712244802274915597226859377861511183.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm1 * v_ynm5 + + 62830911529157727422769078622003728162239115091.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm2 * v_xnm2 + + 31549427238283287530556918244403982755144412483.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm3 + + 38206407169899548817279447957141228162239115091.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm4 + + 27552664101473099398479268982539041634728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm2 * v_xnm5 + + -87486860193638705858614113258408747660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm2 + * v_xnm6 + + -30078792510695089773650179013343214881992068759.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm2 * v_yn + + 3601230513505641202100250926694504622171146253.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm2 * v_ynm1 + + -9925278400138223535905500037397944795573577721.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm2 * v_ynm2 + + 165560240153271289045813170102721280405182461809.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm2 * v_ynm3 + + -83247215788700619468765868997050998084383539367.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm2 * v_ynm4 + + 38643155655398992469562475943902616229965972753.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm2 * v_ynm5 + + 106704674778717656249568652825440871693066864179.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm3 * v_xnm3 + + 78837524417995211141658411004941482755144412483.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm3 * v_xnm4 + + 59508326299417986320485292531731243471585117213.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm3 * v_xnm5 + + -152746009725737700483153690743079339887270763443.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm3 + * v_xnm6 + + -58467237740306435998907310588264617108360282567.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm3 * v_yn + + 6819767049905997098628014668257043031926364189.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm3 * v_ynm1 + + -18559591696539336749121543983676218439534985673.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm3 * v_ynm2 + + 304574341755124914172889566651451927034664257217.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm3 * v_ynm3 + + -150226570494189645780159004449446795464598214871.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm3 * v_ynm4 + + 67468278282113453769529196148486114004800558689.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm3 * v_ynm5 + + 141159627401173792086789817292278728162239115091.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm4 * v_xnm4 + + 81283775683994274035570572147801541634728588301.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm4 * v_xnm5 + + -151411894389788357037790991572546247660465507011.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm4 + * v_xnm6 + + -69050608315071258561611911251330714881992068759.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm4 * v_yn + + 7737398108333972040098085714357004622171146253.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm4 * v_ynm1 + + -20665782122073283436256540900410444795573577721.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm4 * v_ynm2 + + 330331777698673142806718119828833780405182461809.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm4 * v_ynm3 + + -157894657879239243976559319409638498084383539367.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm4 * v_ynm4 + + 66878996343371594638650025812815116229965972753.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm4 * v_ynm5 + + 108586349466122170808184159184033276544006206611.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm5 * v_xnm5 + + -67198014165217931443455874722722890570636875421.0 + / 7036874417766400000000000000000000000000000000000.0 * v_xnm5 + * v_xnm6 + + -47512476894833770926080006728282984082487839049.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm5 * v_yn + + 4894926882422755890832442952259828386427969683.0 + / 879609302220800000000000000000000000000000000.0 * v_xnm5 * v_ynm1 + + -12585162569469057314631470666334932431935816231.0 + / 1759218604441600000000000000000000000000000000.0 * v_xnm5 * v_ynm2 + + 189013291405011879346414873355602204612072327599.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm5 * v_ynm3 + + -83599302822061696942045954162509502883086158137.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm5 * v_ynm4 + + 29681523778230594412232923075547171877861511183.0 + / 70368744177664000000000000000000000000000000000.0 * v_xnm5 * v_ynm5 + + 1017143042633684956582022664733087114740939649331.0 + / 281474976710656000000000000000000000000000000000000.0 * v_xnm6 + * v_xnm6 + + 186941409653332301106623174813776807024593088839.0 + / 351843720888320000000000000000000000000000000000.0 * v_xnm6 * v_yn + + -26078528047248947236381292312510533082449619613.0 + / 17592186044416000000000000000000000000000000000.0 * v_xnm6 * v_ynm1 + + 78161354717628667386512520634394964769583815241.0 + / 35184372088832000000000000000000000000000000000.0 * v_xnm6 * v_ynm2 + + -1434086111636264769877416962306808674552913197889.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm6 * v_ynm3 + + 805180013381957708032864718058795739400984760407.0 + / 703687441776640000000000000000000000000000000000.0 * v_xnm6 * v_ynm4 + + -449274517719605951698714893708064614580785126113.0 + / 1407374883553280000000000000000000000000000000000.0 * v_xnm6 + * v_ynm5 + + 57676198093467515380028555340634242149650794891.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_yn + + -7080869140667297069164962654681390446916308297.0 + / 43980465111040000000000000000000000000000000.0 * v_yn * v_ynm1 + + 19774970143719917246642836048271976283374386629.0 + / 87960930222080000000000000000000000000000000.0 * v_yn * v_ynm2 + + -335282930093191603427055058088393707141340069341.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm3 + + 171876353906406187383805646724758085397950613083.0 + / 1759218604441600000000000000000000000000000000.0 * v_yn * v_ynm4 + + -82572468319061879817713034190589609467843756797.0 + / 3518437208883200000000000000000000000000000000.0 * v_yn * v_ynm5 + + 899421508749545220277882664994304953083006099.0 + / 4398046511104000000000000000000000000000000.0 * v_ynm1 * v_ynm1 + + -2554058424235867118782545715748596704243285543.0 + / 4398046511104000000000000000000000000000000.0 * v_ynm1 * v_ynm2 + + 44164654684679145521251098987231204636900566447.0 + / 87960930222080000000000000000000000000000000.0 * v_ynm1 * v_ynm3 + + -23150449025016640504101748180826509559970434361.0 + / 87960930222080000000000000000000000000000000.0 * v_ynm1 * v_ynm4 + + 11518948289640468971457126361057030355177155599.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm1 * v_ynm5 + + 7325915893402449189348720861332166563390326251.0 + / 17592186044416000000000000000000000000000000.0 * v_ynm2 * v_ynm2 + + -128051967959965035787997555402622260661059716179.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm2 * v_ynm3 + + 67991808592691458422474080484607316076447986677.0 + / 175921860444160000000000000000000000000000000.0 * v_ynm2 * v_ynm4 + + -34524057554528590149459411148115773077888757043.0 + / 351843720888320000000000000000000000000000000.0 * v_ynm2 * v_ynm5 + + 2266067412437478671565300318608270995573285671291.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm3 * v_ynm3 + + -1220003142163201729034017757725090094665412705933.0 + / 3518437208883200000000000000000000000000000000.0 * v_ynm3 * v_ynm4 + + 633439269766313654037169185046506377970992089947.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm3 * v_ynm5 + + 667852215593507510629730104954416390673604353579.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm4 * v_ynm4 + + -355649940103778342276010227496319869142090514861.0 + / 7036874417766400000000000000000000000000000000.0 * v_ynm4 * v_ynm5 + + 198445630370278354233958074207386206889896055099.0 + / 28147497671065600000000000000000000000000000000.0 * v_ynm5 * v_ynm5 + + 0.0 <= 4606560273173319.0 / 4503599627370496.0 diff --git a/non-regression/valid/osdp/schwefel_lb.ae b/non-regression/valid/osdp/schwefel_lb.ae new file mode 100644 index 000000000..35ba49207 --- /dev/null +++ b/non-regression/valid/osdp/schwefel_lb.ae @@ -0,0 +1,13 @@ +logic x1 : real +logic x2 : real +logic x3 : real +axiom ax0: (- (10.0)) <= x1 +axiom ax1: x1 <= 10.0 +axiom ax2: (- (10.0)) <= x2 +axiom ax3: x2 <= 10.0 +axiom ax4: (- (10.0)) <= x3 +axiom ax5: x3 <= 10.0 +goal g: + (- (0.0001)) + < (x1 - x2) * (x1 - x2) + (x2 - 1.0) * (x2 - 1.0) + + (x1 - x3 * x3) * (x1 - x3 * x3) + (x3 - 1.0) * (x3 - 1.0) diff --git a/non-regression/valid/osdp/schwefel_ub.ae b/non-regression/valid/osdp/schwefel_ub.ae new file mode 100644 index 000000000..9c9936092 --- /dev/null +++ b/non-regression/valid/osdp/schwefel_ub.ae @@ -0,0 +1,12 @@ +logic x1 : real +logic x2 : real +logic x3 : real +axiom ax0: (- (10.0)) <= x1 +axiom ax1: x1 <= 10.0 +axiom ax2: (- (10.0)) <= x2 +axiom ax3: x2 <= 10.0 +axiom ax4: (- (10.0)) <= x3 +axiom ax5: x3 <= 10.0 +goal g: + (x1 - x2) * (x1 - x2) + (x2 - 1.0) * (x2 - 1.0) + + (x1 - x3 * x3) * (x1 - x3 * x3) + (x3 - 1.0) * (x3 - 1.0) < 12703.0 diff --git a/src/bin/common/parse_command.ml b/src/bin/common/parse_command.ml index fdb9b091e..5abc5674a 100644 --- a/src/bin/common/parse_command.ml +++ b/src/bin/common/parse_command.ml @@ -157,11 +157,12 @@ let mk_dbg_opt_spl1 debug debug_ac debug_adt debug_arith debug_arrays set_debug_constr debug_constr; `Ok() -let mk_dbg_opt_spl2 debug_explanations debug_fm debug_fpa debug_gc +let mk_dbg_opt_spl2 debug_explanations debug_fm debug_sdp debug_fpa debug_gc debug_interpretation debug_ite debug_matching debug_sat = set_debug_explanations debug_explanations; set_debug_fm debug_fm; + set_debug_sdp debug_sdp; set_debug_fpa debug_fpa; set_debug_gc debug_gc; set_debug_interpretation debug_interpretation; @@ -385,16 +386,19 @@ let mk_term_opt disable_ites inline_lets rewriting term_like_pp set_inline_lets inline_lets; `Ok() -let mk_theory_opt disable_adts inequalities_plugin no_ac no_contracongru - no_fm no_nla no_tcp no_theory restricted tighten_vars use_fpa +let mk_theory_opt disable_adts inequalities_plugin polynomial_plugin + no_ac no_contracongru no_fm no_sdp no_nla + no_tcp no_theory restricted tighten_vars use_fpa = set_no_ac no_ac; set_no_fm no_fm; + set_no_sdp no_sdp; set_no_nla no_nla; set_no_tcp no_tcp; set_no_theory no_theory; set_use_fpa use_fpa; set_inequalities_plugin inequalities_plugin; + set_polynomial_plugin polynomial_plugin; set_restricted restricted; set_disable_adts disable_adts; set_tighten_vars tighten_vars; @@ -549,6 +553,10 @@ let parse_dbg_opt_spl2 = let doc = "Set the debugging flag of inequalities." in Arg.(value & flag & info ["dfm"] ~docs ~doc) in + let debug_sdp = + let doc = "Set the debugging flag of polynomial." in + Arg.(value & flag & info ["dsdp"] ~docs ~doc) in + let debug_fpa = let doc = "Set the debugging flag of floating-point." in Arg.(value & opt int (get_debug_fpa ()) & info ["dfpa"] ~docs ~doc) in @@ -580,6 +588,7 @@ let parse_dbg_opt_spl2 = debug_explanations $ debug_fm $ + debug_sdp $ debug_fpa $ debug_gc $ debug_interpretation $ @@ -1170,6 +1179,12 @@ let parse_theory_opt = Arg.(value & opt string (get_inequalities_plugin ()) & info ["inequalities-plugin"] ~docs ~doc) in + let polynomial_plugin = + let doc = + "Use the given module to handle polynomial." in + Arg.(value & opt string (get_polynomial_plugin ()) & + info ["polynomial-plugin"] ~docs ~doc) in + let no_ac = let doc = "Disable the AC theory of Associative and \ Commutative function symbols." in @@ -1183,6 +1198,10 @@ let parse_theory_opt = let doc = "Disable Fourier-Motzkin algorithm." in Arg.(value & flag & info ["no-fm"] ~docs ~doc) in + let no_sdp = + let doc = "Disable Sum of Square algorithm." in + Arg.(value & flag & info ["no-sdp"] ~docs ~doc) in + let no_nla = let doc = "Disable non-linear arithmetic reasoning (i.e. non-linear \ multplication, division and modulo on integers and rationals). \ @@ -1212,8 +1231,9 @@ let parse_theory_opt = Arg.(value & flag & info ["use-fpa"] ~docs ~doc) in Term.(ret (const mk_theory_opt $ - disable_adts $ inequalities_plugin $ no_ac $ no_contracongru $ - no_fm $ no_nla $ no_tcp $ no_theory $ restricted $ + disable_adts $ inequalities_plugin $ polynomial_plugin $ + no_ac $ no_contracongru $ + no_fm $ no_sdp $ no_nla $ no_tcp $ no_theory $ restricted $ tighten_vars $ use_fpa ) ) @@ -1320,10 +1340,9 @@ let main = let parse_cmdline_arguments () = let r = Cmd.eval_value main in match r with - | Ok `Ok true -> () + | Ok `Ok true -> IntervalCalculus.refresh_plugins () | Ok `Ok false -> raise (Exit_parse_command 0) | Ok `Version | Ok `Help -> exit 0 | Error `Parse -> exit Cmd.Exit.cli_error | Error `Term -> exit Cmd.Exit.internal_error | Error `Exn -> exit Cmd.Exit.internal_error - diff --git a/src/lib/dune b/src/lib/dune index 91399d1e2..36ba37c04 100644 --- a/src/lib/dune +++ b/src/lib/dune @@ -32,7 +32,7 @@ Cnf Input Frontend Parsed_interface Typechecker ; reasoners Ac Arith Arrays Arrays_rel Bitv Ccx Shostak Relation Enum Enum_rel - Fun_sat Inequalities Bitv_rel Th_util Adt Adt_rel + Fun_sat Inequalities PolynomialInequalities Bitv_rel Th_util Adt Adt_rel Instances IntervalCalculus Intervals Ite_rel Ite Matching Matching_types Polynome Records Records_rel Satml_frontend_hybrid Satml_frontend Satml Sat_solver Sat_solver_sig Sig Sig_rel Theory Uf Use diff --git a/src/lib/reasoners/ac.ml b/src/lib/reasoners/ac.ml index a064d16fa..578ca1d4d 100644 --- a/src/lib/reasoners/ac.ml +++ b/src/lib/reasoners/ac.ml @@ -67,6 +67,9 @@ module type S = sig (* replaces the first argument by the second one in the given AC value *) val subst : r -> r -> t -> r + (* attempt to retrieve a term *) + val term_extract : t -> Expr.t option + (* add flatten the 2nd arg w.r.t HS.t, add it to the given list and compact the result *) val add : Sy.t -> r * int -> (r * int) list -> (r * int) list @@ -279,6 +282,23 @@ module Make (X : Sig.X) = struct t + let term_extract {h=h;l=l;t=t; distribute=_} = + let expand = + List.fold_left + (fun l (x,n) -> let l= ref l in for _=1 to n do l:=x::!l done; !l) [] in + let l = + List.fold_left + (fun l e -> match l with + | None -> None + | Some l -> + match X.term_extract e with + | None, _ -> None + | Some e, _ -> Some (e :: l)) + (Some []) (expand l) in + match l with + | None -> None + | Some l -> Some (Expr.mk_term h l t) + let add h arg arg_l = Timers.exec_timer_start Timers.M_AC Timers.F_add; let r = compact (flatten h arg arg_l) in diff --git a/src/lib/reasoners/ac.mli b/src/lib/reasoners/ac.mli index 9ce128925..22eea01a9 100644 --- a/src/lib/reasoners/ac.mli +++ b/src/lib/reasoners/ac.mli @@ -61,6 +61,9 @@ module type S = sig (* replaces the first argument by the second one in the given AC value *) val subst : r -> r -> t -> r + (* attempt to retrieve a term *) + val term_extract : t -> Expr.t option + (* add flatten the 2nd arg w.r.t HS.t, add it to the given list and compact the result *) val add : Symbols.t -> r * int -> (r * int) list -> (r * int) list diff --git a/src/lib/reasoners/intervalCalculus.ml b/src/lib/reasoners/intervalCalculus.ml index 2ed4c7560..2b9aa1f18 100644 --- a/src/lib/reasoners/intervalCalculus.ml +++ b/src/lib/reasoners/intervalCalculus.ml @@ -42,6 +42,9 @@ module I = Intervals module OracleContainer = (val (Inequalities.get_current ()) : Inequalities.Container_SIG) +(* Refresh plugins after proper parse of parameters. *) +let refresh_plugins () = + PolynomialInequalities.refresh () module X = Shostak.Combine @@ -54,6 +57,7 @@ module MX0 = Shostak.MXH module MPL = Expr.Map module Oracle = OracleContainer.Make(P) +module PolynomialIneqs = PolynomialInequalities.Container module SE = Expr.Set module ME = Expr.Map @@ -1673,6 +1677,15 @@ let assume ~query env uf la = in let env = Sim_Wrap.solve env 1 in let env = loop_update_intervals are_eq env 0 in + let () = + if new_ineqs then + let polys = + List.filter + (fun (p, i) -> + Uf.is_normalized uf (alien_of p) && not (I.is_undefined i)) + (MP.bindings env.polynomes) in + PolynomialIneqs.test_polynomes polys in + let env, eqs = equalities_from_intervals env eqs in Debug.env env; diff --git a/src/lib/reasoners/intervalCalculus.mli b/src/lib/reasoners/intervalCalculus.mli index c0c513d5e..9fde10b4f 100644 --- a/src/lib/reasoners/intervalCalculus.mli +++ b/src/lib/reasoners/intervalCalculus.mli @@ -27,3 +27,5 @@ (******************************************************************************) include Sig_rel.RELATION + +val refresh_plugins: unit -> unit diff --git a/src/lib/reasoners/polynomialInequalities.ml b/src/lib/reasoners/polynomialInequalities.ml new file mode 100644 index 000000000..dae0d1795 --- /dev/null +++ b/src/lib/reasoners/polynomialInequalities.ml @@ -0,0 +1,94 @@ +(******************************************************************************) +(* *) +(* The Alt-Ergo theorem prover *) +(* Copyright (C) 2006-2013 *) +(* *) +(* Sylvain Conchon *) +(* Evelyne Contejean *) +(* *) +(* Francois Bobot *) +(* Mohamed Iguernelala *) +(* Stephane Lescuyer *) +(* Alain Mebsout *) +(* *) +(* CNRS - INRIA - Universite Paris Sud *) +(* *) +(* This file is distributed under the terms of the Apache Software *) +(* License version 2.0 *) +(* *) +(* ------------------------------------------------------------------------ *) +(* *) +(* Alt-Ergo: The SMT Solver For Software Verification *) +(* Copyright (C) 2013-2017 --- OCamlPro SAS *) +(* *) +(* This file is distributed under the terms of the Apache Software *) +(* License version 2.0 *) +(* *) +(******************************************************************************) + +open Format + +module P = Shostak.Polynome + +module type S = sig + (* Raises Intervals.NotConsistent expl if it manages to prove that + the semi-algebraic set defined by polynomial inequalities in + [env] is empty. *) + val test_polynomes : (P.t * Intervals.t) list -> unit +end + +let test_polynomes_ref = ref (fun _ -> ()) +let set_test_polynomes myfun = test_polynomes_ref := myfun + +module Container : S = struct + let test_polynomes poly = !test_polynomes_ref poly +end + +let refresh () = + match Options.get_polynomial_plugin () with + | "" -> + if Options.get_debug_sdp () then + eprintf "[Dynlink] Using the default do-nothing module for polynomial \ + inequalities@." + | path -> + if Options.get_debug_sdp () then + eprintf "[Dynlink] Loading the 'polynomial inequalities' reasoner in \ + %s ...@." path; + try + MyDynlink.loadfile path; + if Options.get_debug_sdp () then eprintf "Success !@.@." + with + | MyDynlink.Error m1 -> + if Options.get_debug_sdp() then begin + eprintf + "[Dynlink] Loading the 'polynomial inequalities' reasoner in \ + \"%s\" failed!@." + path; + Format.eprintf ">> Failure message: %s@.@." + (MyDynlink.error_message m1); + end; + let prefixed_path = sprintf "%s/%s" Config.osdp_pluginsdir path in + if Options.get_debug_sdp () then + eprintf + "[Dynlink] Loading the 'polynomial inequalities' reasoner in \ + %s with prefix %s@." + path Config.osdp_pluginsdir; + try + MyDynlink.loadfile prefixed_path; + if Options.get_debug_sdp () then eprintf "Success !@.@." + with + | MyDynlink.Error m2 -> + if not (Options.get_debug_sdp()) then begin + eprintf + "[Dynlink] Loading the 'polynomial inequalities' reasoner in \ + \"%s\" failed!@." + path; + Format.eprintf ">> Failure message: %s@.@." + (MyDynlink.error_message m1); + end; + eprintf + "[Dynlink] Trying to load the plugin from \"%s\" failed too!@." + prefixed_path; + Format.eprintf ">> Failure message: %s@.@." + (MyDynlink.error_message m2); + exit 1 diff --git a/src/lib/reasoners/polynomialInequalities.mli b/src/lib/reasoners/polynomialInequalities.mli new file mode 100644 index 000000000..30e23e20e --- /dev/null +++ b/src/lib/reasoners/polynomialInequalities.mli @@ -0,0 +1,43 @@ +(******************************************************************************) +(* *) +(* The Alt-Ergo theorem prover *) +(* Copyright (C) 2006-2013 *) +(* *) +(* Sylvain Conchon *) +(* Evelyne Contejean *) +(* *) +(* Francois Bobot *) +(* Mohamed Iguernelala *) +(* Stephane Lescuyer *) +(* Alain Mebsout *) +(* *) +(* CNRS - INRIA - Universite Paris Sud *) +(* *) +(* This file is distributed under the terms of the Apache Software *) +(* License version 2.0 *) +(* *) +(* ------------------------------------------------------------------------ *) +(* *) +(* Alt-Ergo: The SMT Solver For Software Verification *) +(* Copyright (C) 2013-2018 --- OCamlPro SAS *) +(* *) +(* This file is distributed under the terms of the Apache Software *) +(* License version 2.0 *) +(* *) +(******************************************************************************) + +module type S = sig + (* Raises Intervals.NotConsistent expl if it manages to prove that + the semi-algebraic set defined by the given polynomial inequalities + is empty. *) + val test_polynomes : (Shostak.Polynome.t * Intervals.t) list -> unit +end + +module Container : S + +(* reload dyn lib *) +val refresh : unit -> unit + +(* used by dyn lib to change the actual function in Container *) +val set_test_polynomes : + ((Shostak.Polynome.t * Intervals.t) list -> unit) -> unit diff --git a/src/lib/reasoners/shostak.ml b/src/lib/reasoners/shostak.ml index c51033843..9b1f12769 100644 --- a/src/lib/reasoners/shostak.ml +++ b/src/lib/reasoners/shostak.ml @@ -163,7 +163,7 @@ struct | X5 _ -> X5.term_extract r | X6 _ -> X6.term_extract r | X7 _ -> X7.term_extract r - | Ac _ -> None, false (* SYLVAIN : TODO *) + | Ac r -> AC.term_extract r, false | Term t -> Some t, true let top () = term_embed Expr.vrai diff --git a/src/lib/util/numbersInterface.mli b/src/lib/util/numbersInterface.mli index ec219e964..375e23601 100644 --- a/src/lib/util/numbersInterface.mli +++ b/src/lib/util/numbersInterface.mli @@ -146,4 +146,6 @@ module type QSig = sig val div_2exp: t -> int -> t (** divides the first argument by 2^(the second argument) *) + val to_zarith : t -> Q.t + val of_zarith : Q.t -> t end diff --git a/src/lib/util/numsNumbers.ml b/src/lib/util/numsNumbers.ml index 2207bde0e..fc3e00c70 100644 --- a/src/lib/util/numsNumbers.ml +++ b/src/lib/util/numsNumbers.ml @@ -241,5 +241,7 @@ module Q : NumbersInterface.QSig with module Z = Z = struct let div_2exp t n = div t (power (Int 2) n) + let to_zarith t = Q.of_string (Num.string_of_num t) + let of_zarith t = Num.num_of_string (Q.to_string t) (* TODO: test and fix *) end diff --git a/src/lib/util/options.ml b/src/lib/util/options.ml index 4504acec3..4dd6fab42 100644 --- a/src/lib/util/options.ml +++ b/src/lib/util/options.ml @@ -104,6 +104,7 @@ let debug_combine = ref false let debug_constr = ref false let debug_explanations = ref false let debug_fm = ref false +let debug_sdp = ref false let debug_fpa = ref 0 let debug_gc = ref false let debug_interpretation = ref false @@ -132,6 +133,7 @@ let set_debug_combine b = debug_combine := b let set_debug_constr b = debug_constr := b let set_debug_explanations b = debug_explanations := b let set_debug_fm b = debug_fm := b +let set_debug_sdp b = debug_sdp := b let set_debug_fpa i = debug_fpa := i let set_debug_gc b = debug_gc := b let set_debug_interpretation b = debug_interpretation := b @@ -160,6 +162,7 @@ let get_debug_combine () = !debug_combine let get_debug_constr () = !debug_constr let get_debug_explanations () = !debug_explanations let get_debug_fm () = !debug_fm +let get_debug_sdp () = !debug_sdp let get_debug_fpa () = !debug_fpa let get_debug_gc () = !debug_gc let get_debug_interpretation () = !debug_interpretation @@ -446,9 +449,11 @@ let get_term_like_pp () = !term_like_pp let disable_adts = ref false let inequalities_plugin = ref "" +let polynomial_plugin = ref "" let no_ac = ref false let no_contracongru = ref false let no_fm = ref false +let no_sdp = ref false let no_nla = ref false let no_tcp = ref false let no_theory = ref false @@ -458,9 +463,11 @@ let use_fpa = ref false let set_disable_adts b = disable_adts := b let set_inequalities_plugin b = inequalities_plugin := b +let set_polynomial_plugin b = polynomial_plugin := b let set_no_ac b = no_ac := b let set_no_contracongru b = no_contracongru := b let set_no_fm b = no_fm := b +let set_no_sdp b = no_sdp := b let set_no_nla b = no_nla := b let set_no_tcp b = no_tcp := b let set_no_theory b = no_theory := b @@ -470,9 +477,11 @@ let set_use_fpa b = use_fpa := b let get_disable_adts () = !disable_adts let get_inequalities_plugin () = !inequalities_plugin +let get_polynomial_plugin () = !polynomial_plugin let get_no_ac () = !no_ac let get_no_contracongru () = !no_contracongru let get_no_fm () = !no_fm +let get_no_sdp () = !no_sdp let get_no_nla () = !no_nla let get_no_tcp () = !no_tcp let get_no_theory () = !no_theory diff --git a/src/lib/util/options.mli b/src/lib/util/options.mli index 308dbaae6..e9085ee4b 100644 --- a/src/lib/util/options.mli +++ b/src/lib/util/options.mli @@ -97,6 +97,9 @@ val set_debug_explanations : bool -> unit (** Set [debug_fm] accessible with {!val:get_debug_fm} *) val set_debug_fm : bool -> unit +(** Set [debug_sdp] accessible with {!val:get_debug_sdp} *) +val set_debug_sdp : bool -> unit + (** Set [debug_fpa] accessible with {!val:get_debug_fpa} *) val set_debug_fpa : int -> unit @@ -407,9 +410,15 @@ val set_disable_adts : bool -> unit (** Set [inequalities_plugin] accessible with {!val:get_inequalities_plugin} *) val set_inequalities_plugin : string -> unit +(** Set [polynomial_plugin] accessible with {!val:get_polynomial_plugin} *) +val set_polynomial_plugin : string -> unit + (** Set [no_fm] accessible with {!val:get_no_fm} *) val set_no_fm : bool -> unit +(** Set [no_sdp] accessible with {!val:get_no_sdp} *) +val set_no_sdp : bool -> unit + (** Set [no_tcp] accessible with {!val:get_no_tcp} *) val set_no_tcp : bool -> unit @@ -454,6 +463,9 @@ val get_debug_uf : unit -> bool (** Get the debugging flag of inequalities. *) val get_debug_fm : unit -> bool +(** Get the debugging flag of polynomial. *) +val get_debug_sdp : unit -> bool + (** Get the debugging value of floating-point. *) val get_debug_fpa : unit -> int (** Default to [0]. *) @@ -894,7 +906,11 @@ val get_disable_adts : unit -> bool (** Value specifying which module is used to handle inequalities of linear arithmetic. *) val get_inequalities_plugin : unit -> string -(** Default to [false] *) +(** Default to [""] *) + +(** Value specifying which module is used to handle polynomoial. *) +val get_polynomial_plugin : unit -> string +(** Default to [""] *) (** [true] if the AC (Associative and Commutative) theory is disabled for function symbols. *) @@ -909,6 +925,10 @@ val get_no_contracongru : unit -> bool val get_no_fm : unit -> bool (** Default to [false] *) +(** [true] if SDP algorithm is disabled. *) +val get_no_sdp : unit -> bool +(** Default to [false] *) + (** [true] if non-linear arithmetic reasoning (i.e. non-linear multplication, division and modulo on integers and rationals) is disabled. Non-linear multiplication remains AC. *) diff --git a/src/lib/util/timers.ml b/src/lib/util/timers.ml index cb4c1d4cd..d2cbd39f1 100644 --- a/src/lib/util/timers.ml +++ b/src/lib/util/timers.ml @@ -67,6 +67,8 @@ type ty_function = | F_add_terms | F_are_equal | F_assume + | F_sdp + | F_osdp | F_class_of | F_leaves | F_make @@ -86,6 +88,8 @@ let ftag f = match f with | F_add -> 0 | F_add_lemma -> 1 | F_assume -> 2 + | F_sdp -> 20 + | F_osdp -> 21 | F_class_of -> 3 | F_leaves -> 4 | F_make -> 5 @@ -104,7 +108,7 @@ let ftag f = match f with | F_apply_subst -> 18 | F_instantiate -> 19 -let nb_ftag = 20 +let nb_ftag = 22 let string_of_ty_module k = match k with | M_None -> "None" @@ -126,6 +130,8 @@ let string_of_ty_function f = match f with | F_add -> "add" | F_add_lemma -> "add_lemma" | F_assume -> "assume" + | F_sdp -> "sdp" + | F_osdp -> "osdp" | F_class_of -> "class_of" | F_leaves -> "leaves" | F_make -> "make" @@ -263,6 +269,8 @@ let all_functions = F_add_terms; F_are_equal; F_assume; + F_sdp; + F_osdp; F_class_of; F_leaves; F_make; diff --git a/src/lib/util/timers.mli b/src/lib/util/timers.mli index 8f4ab7f94..28a6f2c7d 100644 --- a/src/lib/util/timers.mli +++ b/src/lib/util/timers.mli @@ -49,6 +49,8 @@ type ty_function = | F_add_terms | F_are_equal | F_assume + | F_sdp + | F_osdp | F_class_of | F_leaves | F_make diff --git a/src/lib/util/zarithNumbers.ml b/src/lib/util/zarithNumbers.ml index f95e152e7..3c88b1980 100644 --- a/src/lib/util/zarithNumbers.ml +++ b/src/lib/util/zarithNumbers.ml @@ -169,4 +169,6 @@ module Q : NumbersInterface.QSig with module Z = Z = struct let div_2exp = Q.div_2exp + let to_zarith t = t + let of_zarith t = t end diff --git a/src/plugins/osdp/dune b/src/plugins/osdp/dune new file mode 100644 index 000000000..9cb7f3b52 --- /dev/null +++ b/src/plugins/osdp/dune @@ -0,0 +1,22 @@ +(executable + (name OsdpIneqs) + (public_name alt-ergo-osdp) + (package alt-ergo-osdp) + (modes native plugin) ; produce a cmxs + ; no modules declaration since we have a single module + (libraries alt-ergo-lib osdp) + (embed_in_plugin_libraries osdp) ; link statically osdp +) + +(documentation + (package alt-ergo-osdp) + (mld_files :standard) +) + +(install + (package alt-ergo-osdp) + (section share) + (files + (OsdpIneqs.cmxs as plugins/osdp-plugin.cmxs) + ) +) diff --git a/src/plugins/osdp/index_sdp.mld b/src/plugins/osdp/index_sdp.mld new file mode 100644 index 000000000..143b838c5 --- /dev/null +++ b/src/plugins/osdp/index_sdp.mld @@ -0,0 +1,2 @@ +{1 SDP/SOS plugin} + diff --git a/src/plugins/osdp/osdpIneqs.ml b/src/plugins/osdp/osdpIneqs.ml new file mode 100644 index 000000000..37a80e4ce --- /dev/null +++ b/src/plugins/osdp/osdpIneqs.ml @@ -0,0 +1,341 @@ +(* + * OSDP (OCaml SDP) plugin for Alt-Ergo + * Copyright (C) 2018, ONERA + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *) + +(* This plugin allows to solve polynomial goals (conjunctions of + polynomial inequalities) using a Sum of Squares (SOS) encoding into + a SemiDefinite Programming (SDP) optimization problem. + + Details can be found in the paper: A Non-linear Arithmetic + Procedure for Control-Command Software Verification, Pierre Roux, + Mohamed Iguernlala, Sylvain Conchon, TACAS 2018 + + In practice, the code in this file mostly translates Alt-Ergo + polynomials to the input format of the OSDP library, calls the + library and raises an Intervals.NotConsistent exception, with + explanations (set of inconsistent polynomial constraints), when + OSDP succeeds to prove inconsistency. *) +open AltErgoLib + +module PolyIneqs : PolynomialInequalities.S = struct + module P = Shostak.Polynome + module X = Shostak.Combine + + module Q = Numbers.Q + + module I = Intervals + + module MX0 = Map.Make(struct type t = X.r let compare = X.hash_cmp end) + + module Sos = Osdp.Sos.Q + module SosP = Sos.Poly + + module SSosP = Set.Make (SosP) + module SSSosP = Set.Make (SSosP) + + module MSSosP = Map.Make + (struct type t = SSosP.t let compare = SSosP.compare end) + + let cache_polynomes = ref MSSosP.empty + + let cache_entry_of pge = + let pge = List.map fst pge in + let set_of polys = List.fold_right SSosP.add polys SSosP.empty in + set_of pge + let find_res_in_cache ce = MSSosP.find ce !cache_polynomes + let add_res_to_cache ce res = + cache_polynomes := MSSosP.add ce res !cache_polynomes + + let p_to_osdp p = + let combine_opt_env f ft2 opt1 t2 = match opt1 with + | None -> None + | Some (t1, env, next) -> + match ft2 t2 env next with + | None -> None + | Some (t2, env, next) -> Some (f t1 t2, env, next) in + let rec trans_monom t env next = match Expr.term_view t with + | Expr.Term { Expr.f = Symbols.Op Symbols.Mult ; xs = l ; _ } -> + List.fold_left + (combine_opt_env SosP.mult trans_monom) + (Some (SosP.one, env, next)) l + | _ -> + let v, env, next = + try Expr.Map.find t env, env, next + with Not_found -> next, Expr.Map.add t next env, next + 1 in + Some (SosP.var v, env, next) in + let trans_monom m env next = + match X.term_extract m with + | None, _ -> None + | Some t, _ -> trans_monom t env next in + let opt = + let pm, pc = P.to_list p in + List.fold_left + (fun opt (c, m) -> + combine_opt_env + (fun t1 t2 -> SosP.(add t1 (mult_scalar (Q.to_zarith c) t2))) + trans_monom opt m) + (Some (SosP.const (Q.to_zarith pc), Expr.Map.empty, 0)) pm in + match opt with + | None -> None + | Some (p, env, _) -> Some (p, env) + + let tr_polys polys = + try + List.map + (fun (p, i) -> + match p_to_osdp p with + | None -> raise Exit + | Some (p, env) -> (p, i), env) + polys + with Exit -> [] + + (* For a list [polys] of pairs [pi, env] with [env] a mapping from + terms, [partition polys] returns a list of lists [l] such that + [pi, env] in differents lists [l] have [env] with empty + intersection. *) + let partition polys = + let uf = + List.fold_left + (fun uf (_, env) -> + match Expr.Map.bindings env with + | [] -> uf + | (t, _) :: env -> + let uf, _ = Uf.add uf t in + let r, _ = Uf.find uf t in + List.fold_left + (fun uf (t', _) -> + let uf, _ = Uf.add uf t' in + let r', _ = Uf.find uf t' in + fst (Uf.union uf r r' Explanation.empty)) + uf env) + (Uf.empty ()) polys in + List.fold_left + (fun m (pi, env) -> + try + let t, _ = Expr.Map.choose env in + let r, _ = Uf.find uf t in + let l = try MX0.find r m with Not_found -> [] in + MX0.add r ((pi, env) :: l) m + with Not_found -> m) + MX0.empty polys + |> MX0.bindings |> List.map snd + + (* For a list [polys] of pairs [(p, i), env] with [p] a polynomial + and [env] a mapping from terms to variable indices in [p], + [merge polys] returns a list of polynomials using the same + variable indices for the same symbols. *) + let merge polys = + (* For [env] and [env'] mappings from terms to integer indices, + [merge_env env env'] returns a pair [env'', trans]. [env''] + contains the same mapping as [env] plus mapping for extra + variables in [env'] to new indices (not appearing in + [env]). [trans] is an array of integer indices such that + [trans.(i) = j] for each variable mapped to [i] in [env'] and + to [j] in [env'']. *) + let merge_env env env' = + let next, trans = + let sz e = 1 + Expr.Map.fold (fun _ -> max) e (-1) in + sz env, Array.make (sz env') 0 in + let env'', _ = + Expr.Map.fold + (fun v i (env, next) -> + let j, env, next = + try Expr.Map.find v env, env, next + with Not_found -> next, Expr.Map.add v next env, next + 1 in + trans.(i) <- j; + env, next) + env' (env, next) in + env'', trans in + let apply_trans p trans = + let trans = Array.to_list trans |> List.map SosP.var in + SosP.compose p trans in + let polys, _ = + List.fold_left + (fun (polys, env) ((p, i), env') -> + let env, trans = merge_env env env' in + (apply_trans p trans, i) :: polys, env) + ([], Expr.Map.empty) polys in + List.rev polys + + (* For a list of polynomials and intervals [p_i, i_i], returns a + list [lpge0] of pairs [lpge0_i, e_i] such that \forall i, p_i + \in i_i implies \forall j, lpge0_j >= 0. [e_i] are explanations + for lpge0_i >= 0 *) + let pi_to_pge0 pil = + let pil = List.filter (fun (_, i) -> I.is_point i = None) pil in + let d = List.fold_left (fun d (p, _) -> max d (SosP.degree p)) 0 pil in + let lpe = + List.map + (fun (p, i) -> + let l = + try let v, ex, _ = I.borne_inf i in Some (Q.to_zarith v, ex) + with I.No_finite_bound -> None in + let u = + try let v, ex, _ = I.borne_sup i in Some (Q.to_zarith v, ex) + with I.No_finite_bound -> None in + (* normalize polynomials so that all coeffs are less than 1 *) + let c = + SosP.to_list p + |> List.map (fun (_, n) -> Q.of_zarith n |> Q.abs) + |> List.fold_left Q.max Q.zero |> Q.to_zarith in + match l, u with + | None, None -> [] + | None, Some (u, e) -> SosP.([(!u - p) / c, e]) + | Some (l, e), None -> SosP.([(p - !l) / c, e]) + | Some (l, el), Some (u, eu) -> + let pl, pu = SosP.((p - !l) / c, (!u - p) / c) in + if SosP.degree p > d / 2 then [(pl, el); (pu, eu)] + else [SosP.(pl * pu), Explanation.union el eu]) + pil in + List.flatten lpe + + (* For a list of polynomials [pge0_i], returns true iff it manages + to prove that the semi-algebraic set { x \in \R^n | \forall i + pge0_i >= 0 } is empty. *) + let psatz pge0 = + let pge0, expls = List.split pge0 in + let has_null_const p = + let zeros = + SosP.(Array.to_list (Array.make (nb_vars p) Coeff.zero)) in + SosP.(Coeff.compare (eval p zeros) Coeff.zero = 0) in + (* if none of pge0 has a constant, 0 satisfies the constraints *) + if List.for_all has_null_const pge0 then None else + try + let get_wits keep = + let sum, sigmas = + let n = List.map SosP.nb_vars pge0 |> List.fold_left max 0 in + let degs = List.map SosP.degree pge0 in + let max_deg = List.fold_left max 0 degs in + let rec prod i j = if i > j then 1 else i * prod (i + 1) j in + let among k n = + if k > n / 2 then prod (k + 1) n / prod 1 (n - k) + else prod (n - k + 1) n / prod 1 k in + (* Format.printf *) + (* "n = %d, max_deg = %d, (n parmi n + (d+1)/2) = %d@." *) + (* n max_deg (among n (n + (max_deg + 1) / 2)); *) + if among n (n + (max_deg + 1) / 2) > 64 then raise Exit; + let max_deg_list = + pge0 |> List.map SosP.degree_list + |> List.map Osdp.Monomial.of_list + |> Osdp.Monomial.(List.fold_left lcm one) in + let rup n = (n + 1) / 2 * 2 in + let rup_monomial m = + Osdp.Monomial.(m |> to_list |> List.map rup |> of_list) in + List.fold_left + (fun (sum, sigmas) (p, d) -> + let s = + let l = + let d = max_deg - d in + let d = if keep then d else rup d in + Sos.make ~n ~d "s" |> Sos.to_list in + let l = + if keep then l else + let lim = + let pl = + Osdp.Monomial.of_list (SosP.degree_list p) in + rup_monomial (Osdp.Monomial.div max_deg_list pl) in + List.filter + (fun (m, _) -> Osdp.Monomial.divide m lim) + l in + Sos.of_list l in + (* Format.printf *) + (* "p = %a ~~> s = %a@." Sos.Poly.pp p Sos.pp s; *) + Sos.(sum - s * !!p), s :: sigmas) + (Sos.(!!Poly.zero), []) (List.combine pge0 degs) in + (* Format.printf "sum: %a@." Sos.pp sum; *) + (* Format.printf "degrees: @[%a@]@." (Osdp.Utils.pp_list ~sep:",@ " + (fun fmt p -> Format.fprrintf \ + fmt "%d" (Sos.degree p))) sigmas; *) + let ret, _, _, witnesses = + let options = + { Sos.default + with Sos.verbose = 0(*3*) ; + Sos.sdp = + { Osdp.Sdp.default + with Osdp.Sdp.verbose = 0(*1*) } } in + Sos.solve ~options ~solver:Osdp.Sdp.Csdp + Sos.Purefeas (sum :: sigmas) in + match ret, witnesses with + | Osdp.SdpRet.Success, (m, _) :: _ + when + (* check that we proved sum > 0 (and not just sum >= 0) *) + Array.length m > 0 && Osdp.Monomial.(compare m.(0) one) = 0 -> + Some Explanation.(List.fold_left union empty expls) + | _ -> None in + match get_wits false with + | Some e -> Some e + | None -> get_wits true + with Exit -> None + + let psatz pge0 = + if Options.get_timers() then + try + Timers.exec_timer_start Timers.M_Arith Timers.F_osdp; + let res = psatz pge0 in + Timers.exec_timer_pause Timers.M_Arith Timers.F_osdp; + res + with e -> + Timers.exec_timer_pause Timers.M_Arith Timers.F_osdp; + raise e + else psatz pge0 + + let test_polynomes polys = + let polys = tr_polys polys in + let polys = partition polys in + if Options.get_debug_sdp () then + Printer.print_dbg "[sdp] %d partition(s)@." (List.length polys); + polys + |> List.iter + (fun polys -> + (* we don't do anything when everything is linear *) + if List.exists (fun ((p, _), _) -> SosP.degree p > 1) polys then + let polys = merge polys in + let pge0 = pi_to_pge0 polys in + let ce = cache_entry_of pge0 in + let res = + try + let tmp = find_res_in_cache ce in + if Options.get_debug_sdp () then + Printer.print_dbg "[sdp] reuse result in cache@."; + tmp + with Not_found -> + if Options.get_debug_sdp () then begin + Printer.print_dbg "[sdp] new problem@."; + Printer.print_dbg + "[sdp] @[%a@]@." + (Osdp.Utils.pp_list + ~sep: ",@ " + (fun fmt (p, _) -> + Format.fprintf fmt "%a >= 0" SosP.pp p)) + pge0; + end; + let tmp = psatz pge0 in + add_res_to_cache ce tmp; + tmp + in + match res with + | None -> () + | Some expls -> + if Options.get_debug_sdp () then + Printer.print_dbg "[sdp] Inconsistent@."; + raise (I.NotConsistent expls) + ) +end + +let () = + PolynomialInequalities.set_test_polynomes PolyIneqs.test_polynomes diff --git a/src/plugins/osdp/osdpIneqs.mli b/src/plugins/osdp/osdpIneqs.mli new file mode 100644 index 000000000..114e45216 --- /dev/null +++ b/src/plugins/osdp/osdpIneqs.mli @@ -0,0 +1,20 @@ +(* + * OSDP (OCaml SDP) plugin for Alt-Ergo + * Copyright (C) 2018, ONERA + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *) + +(* empty interface file *)