Diff of the two buildlogs: -- --- b1/build.log 2025-07-21 20:45:35.403931737 +0000 +++ b2/build.log 2025-07-21 20:48:30.708152217 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Jul 21 08:42:59 -12 2025 -I: pbuilder-time-stamp: 1753130579 +I: Current time: Mon Aug 24 17:08:44 +14 2026 +I: pbuilder-time-stamp: 1787540924 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -24,52 +24,84 @@ dpkg-source: info: applying 0001-Increase-timeout-in-test-that-takes-a-bit-longer-on-.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2029390/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Aug 24 03:09 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='53df288bc2614174bdebb1c54d0c2e87' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='2029390' - PS1='# ' - PS2='> ' + INVOCATION_ID=9505b56fd7ee47f38de87ecb5bc5e16d + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=763159 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QVjG84tx/pbuilderrc_gF8w --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QVjG84tx/b1 --logfile b1/build.log coq-elpi_2.5.0-1.1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QVjG84tx/pbuilderrc_Yr1H --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QVjG84tx/b2 --logfile b2/build.log coq-elpi_2.5.0-1.1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.1.0-37-cloud-arm64 #1 SMP Debian 6.1.140-1 (2025-05-22) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-37-cloud-arm64 #1 SMP Debian 6.1.140-1 (2025-05-22) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 12 19:25 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/2029390/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 May 12 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -211,7 +243,7 @@ Get: 86 http://deb.debian.org/debian unstable/main arm64 libstdio-ocaml-dev arm64 0.17.0-1+b2 [115 kB] Get: 87 http://deb.debian.org/debian unstable/main arm64 libppx-optcomp-ocaml-dev arm64 1:0.17.0-1+b7 [325 kB] Get: 88 http://deb.debian.org/debian unstable/main arm64 ocaml-dune arm64 3.17.2-1+b1 [5585 kB] -Fetched 371 MB in 2s (158 MB/s) +Fetched 371 MB in 2s (230 MB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19963 files and directories currently installed.) @@ -506,8 +538,8 @@ Setting up tzdata (2025b-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Mon Jul 21 20:44:04 UTC 2025. -Universal Time is now: Mon Jul 21 20:44:04 UTC 2025. +Local time is now: Mon Aug 24 03:09:42 UTC 2026. +Universal Time is now: Mon Aug 24 03:09:42 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... @@ -590,7 +622,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/coq-elpi-2.5.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../coq-elpi_2.5.0-1.1_source.changes +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/coq-elpi-2.5.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../coq-elpi_2.5.0-1.1_source.changes dpkg-buildpackage: info: source package coq-elpi dpkg-buildpackage: info: source version 2.5.0-1.1 dpkg-buildpackage: info: source distribution unstable @@ -604,7 +640,7 @@ dune clean Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.5.0' dh_ocamlclean @@ -622,7 +658,7 @@ dune build Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created File "./elpi/dummy.v", line 1, characters 0-93: Warning: To avoid stack overflow, large numbers in nat are interpreted as @@ -663,51 +699,6 @@ File "./elpi/dummy.v", line 13, characters 0-70: Warning: To avoid stack overflow, large numbers in nat are interpreted as applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 1, characters 0-99: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 2, characters 0-60: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 3, characters 0-59: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 4, characters 0-64: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 5, characters 0-74: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 6, characters 0-65: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 7, characters 0-62: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 8, characters 0-68: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 9, characters 0-60: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 10, characters 0-74: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 11, characters 0-70: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 12, characters 0-61: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 13, characters 0-61: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 14, characters 0-68: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] -File "./apps/tc/elpi/dummy.v", line 15, characters 0-59: -Warning: To avoid stack overflow, large numbers in nat are interpreted as -applications of Nat.of_num_uint. [abstract-large-number,numbers,default] File "./apps/NES/elpi/dummy.v", line 1, characters 0-99: Warning: To avoid stack overflow, large numbers in nat are interpreted as applications of Nat.of_num_uint. [abstract-large-number,numbers,default] @@ -829,6 +820,51 @@ File "./apps/derive/elpi/dummy.v", line 34, characters 0-58: Warning: To avoid stack overflow, large numbers in nat are interpreted as applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 1, characters 0-99: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 2, characters 0-60: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 3, characters 0-59: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 4, characters 0-64: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 5, characters 0-74: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 6, characters 0-65: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 7, characters 0-62: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 8, characters 0-68: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 9, characters 0-60: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 10, characters 0-74: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 11, characters 0-70: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 12, characters 0-61: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 13, characters 0-61: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 14, characters 0-68: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] +File "./apps/tc/elpi/dummy.v", line 15, characters 0-59: +Warning: To avoid stack overflow, large numbers in nat are interpreted as +applications of Nat.of_num_uint. [abstract-large-number,numbers,default] File "src/rocq_elpi_HOAS.ml", line 1675, characters 33-58: 1675 | Global.body_of_constant_body Library.indirect_accessor (Environ.lookup_constant c x.global_env) ^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -900,6 +936,7 @@ Arguments E_AND1 e1 e2 (b1 b2)%bool_scope _ _ Arguments E_OR1 e1 e2 (b1 b2)%bool_scope _ _ Arguments E_EQ1 e1 e2 (n1 n2)%nat_scope _ _ +3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) Notation p2 := (p2 nat 3 x) example_import_projections.p1 nat 3 x : nat : nat @@ -913,8 +950,6 @@ (Build bool false 3 eq_refl eq_refl) = 3 example_import_projections.f1 _ x : bool -(eq_refl : 2 = (let z := 1 in S z)) -3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) foo = {f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} : Type @@ -926,6 +961,7 @@ (forall t : f1, f2 t -> bool) -> foo Arguments mk_foo f1%type_scope (f2 f3)%function_scope +(eq_refl : 2 = (let z := 1 in S z)) Query assignments: GRnat = indt «nat» GRplus = const «Nat.add» @@ -1487,7 +1523,7 @@ Debug: rid:0 step:1 gid:4 user:rule:and = success -Debug: }}} -> (0.012s) +Debug: }}} -> (0.000s) Debug: run 2 {{{ Debug: @@ -1876,7 +1912,7 @@ Debug: rid:1 step:7 gid:20 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: -Debug: }}} -> (0.008s) +Debug: }}} -> (0.000s) Debug: select 6 {{{ Debug: @@ -1892,7 +1928,7 @@ Debug: rid:1 step:7 gid:20 user:rule:backchain = fail -Debug: }}} -> (0.000s) +Debug: }}} -> (0.008s) Debug: run 6 {{{ Debug: @@ -2207,6 +2243,99 @@ File "./examples/tutorial_elpi_lang.v", line 1518, characters 28-29 C is linear: name it _C (discard) or C_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +Hello [str world!] +Hello [int 46] +Hello [str there] +Hello [str my, str friend] +Hello [str this.is.a.qualified.name] +Hello +[trm + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app [global (indc «S»), global (indc «O»)]])] +Hello +[const-decl test + (some + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app [global (indc «S»), global (indc «O»)]])) (arity (sort prop))] +Hello +[indt-decl + (record test (sort (typ «Set»)) Build_test + (field [coercion off, canonical tt] f1 (global (indt «nat»)) c0 \ + field [coercion off, canonical tt] f2 + (app + [global (indt «eq»), global (indt «nat»), c0, + app [global (indc «S»), global (indc «O»)]]) c1 \ end-record))] +The type of +app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), global (indc «O»)], global (indc «O»)] is +sort prop +1 = true + : Prop +T= +app + [global (indt «eq»), X0, app [global (indc «S»), global (indc «O»)], + global (indc «true»)] +T1= +app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), global (indc «O»)], + app [global (const «bool2nat»), global (indc «true»)]] +Ty= sort prop +nK_bool = 2 + : nat +nK_False = 0 + : nat +Inductive tree' (A : Set) : Set := + leaf' : tree' A | node' : tree' A -> A -> tree' A -> tree' A. + +Arguments tree' A%type_scope +Arguments leaf' A%type_scope +Arguments node' A%type_scope _ _ _ +bob is 24 years old +alice is 21 years old +bob is 24 years old +alice is 21 years old +[attribute elpi.loc + (leaf-loc + File "./examples/tutorial_coq_elpi_command.v", line 610, column 31, characters 17257-17261:), + attribute elpi.phase (leaf-str interp), attribute this (leaf-str ), + attribute more (node [attribute stuff (leaf-str 33)])] +options= +[get-option elpi.loc + File "./examples/tutorial_coq_elpi_command.v", line 643, column 31, characters 18094-18104:, + get-option elpi.phase interp, get-option this tt, get-option more.stuff 33] +33 tt +That is all folks! +going from source to target via plane +synterp x := some _ +interp x := +some + (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) +The module is «elpi_examples.tutorial_coq_elpi_command.Module16» +Box.Box.Box.Box.foo = fun n : nat => n + 2 + : nat -> nat + +Arguments Box.Box.Box.Box.foo n%nat_scope +Module NextModule2 := Struct End +File "./examples/tutorial_coq_elpi_command.v", line 610, characters 2-24: +Warning: This command does not support these attributes: more, this. +[unsupported-attributes,parsing,default] +File "./examples/tutorial_coq_elpi_command.v", line 643, characters 2-24: +Warning: This command does not support these attributes: more, this. +[unsupported-attributes,parsing,default] +File "./examples/tutorial_coq_elpi_command.v", line 644, characters 7-14: +Warning: This command does not support this attribute: unknown. +[unsupported-attributes,parsing,default] +File "./apps/NES/theories/NES.v", line 39, characters 0-42: +Warning: +Undeclared globals: +- File "/build/reproducible-path/coq-elpi-2.5.0/apps/NES/elpi/nes_interp.elpi", line 6, column 24, characters 152-161: ns. +Please add the following text to your program: +type ns list string -> modpath -> prop. +[elpi.missing-types,elpi.typecheck,elpi,default] Query assignments: BO = fix `add` 0 (prod `n` (global (indt «nat»)) c0 \ @@ -2757,7 +2886,7 @@ c5 \ app [c2, c4, c5]]] Debug: [elpi] - Elpi: query-compilation:0.0013 static-check:0.0000 optimization:0.0001 runtime:0.0049 (with success) + Elpi: query-compilation:0.0013 static-check:0.0000 optimization:0.0001 runtime:0.0030 (with success) Query assignments: GR = indc «Ord» @@ -5161,7 +5290,7 @@ (X10 c0 c1 c2 c3 c4) Debug: [elpi] - Elpi: query-compilation:0.0009 static-check:0.0000 optimization:0.0001 runtime:0.0110 (with error) + Elpi: query-compilation:0.0092 static-check:0.0000 optimization:0.0001 runtime:0.0180 (with error) hd : forall A : Type, A -> list A -> A @@ -5175,99 +5304,6 @@ File "./tests-stdlib/test_quotation.v", line 47, characters 32-33 X is linear: name it _X (discard) or X_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/NES/theories/NES.v", line 39, characters 0-42: -Warning: -Undeclared globals: -- File "/build/reproducible-path/coq-elpi-2.5.0/apps/NES/elpi/nes_interp.elpi", line 6, column 24, characters 152-161: ns. -Please add the following text to your program: -type ns list string -> modpath -> prop. -[elpi.missing-types,elpi.typecheck,elpi,default] -Hello [str world!] -Hello [int 46] -Hello [str there] -Hello [str my, str friend] -Hello [str this.is.a.qualified.name] -Hello -[trm - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app [global (indc «S»), global (indc «O»)]])] -Hello -[const-decl test - (some - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app [global (indc «S»), global (indc «O»)]])) (arity (sort prop))] -Hello -[indt-decl - (record test (sort (typ «Set»)) Build_test - (field [coercion off, canonical tt] f1 (global (indt «nat»)) c0 \ - field [coercion off, canonical tt] f2 - (app - [global (indt «eq»), global (indt «nat»), c0, - app [global (indc «S»), global (indc «O»)]]) c1 \ end-record))] -The type of -app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), global (indc «O»)], global (indc «O»)] is -sort prop -1 = true - : Prop -T= -app - [global (indt «eq»), X0, app [global (indc «S»), global (indc «O»)], - global (indc «true»)] -T1= -app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), global (indc «O»)], - app [global (const «bool2nat»), global (indc «true»)]] -Ty= sort prop -nK_bool = 2 - : nat -nK_False = 0 - : nat -Inductive tree' (A : Set) : Set := - leaf' : tree' A | node' : tree' A -> A -> tree' A -> tree' A. - -Arguments tree' A%type_scope -Arguments leaf' A%type_scope -Arguments node' A%type_scope _ _ _ -bob is 24 years old -alice is 21 years old -bob is 24 years old -alice is 21 years old -[attribute elpi.loc - (leaf-loc - File "./examples/tutorial_coq_elpi_command.v", line 610, column 31, characters 17257-17261:), - attribute elpi.phase (leaf-str interp), attribute this (leaf-str ), - attribute more (node [attribute stuff (leaf-str 33)])] -options= -[get-option elpi.loc - File "./examples/tutorial_coq_elpi_command.v", line 643, column 31, characters 18094-18104:, - get-option elpi.phase interp, get-option this tt, get-option more.stuff 33] -33 tt -That is all folks! -going from source to target via plane -synterp x := some _ -interp x := -some - (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) -The module is «elpi_examples.tutorial_coq_elpi_command.Module50» -Box.Box.Box.Box.foo = fun n : nat => n + 2 - : nat -> nat - -Arguments Box.Box.Box.Box.foo n%nat_scope -Module NextModule2 := Struct End -File "./examples/tutorial_coq_elpi_command.v", line 610, characters 2-24: -Warning: This command does not support these attributes: more, this. -[unsupported-attributes,parsing,default] -File "./examples/tutorial_coq_elpi_command.v", line 643, characters 2-24: -Warning: This command does not support these attributes: more, this. -[unsupported-attributes,parsing,default] -File "./examples/tutorial_coq_elpi_command.v", line 644, characters 7-14: -Warning: This command does not support this attribute: unknown. -[unsupported-attributes,parsing,default] File "./apps/eltac/theories/apply.v", line 15, characters 16-19: Warning: File "./apps/eltac/theories/apply.v", line 15, characters 16-19 @@ -5315,7 +5351,7 @@ rid:0 step:2 gid:5 user:rule:backchain:candidates = File "elpi-builtin.elpi", line 34, column 0, characters 373-385: File "elpi-builtin.elpi", line 36, column 0, characters 388-400: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.008s) Debug: select 3 {{{ Debug: @@ -5476,7 +5512,7 @@ Debug: rid:0 step:5 gid:8 user:rule:backchain = success -Debug: }}} -> (0.009s) +Debug: }}} -> (0.001s) Debug: run 6 {{{ Debug: @@ -5857,7 +5893,7 @@ Debug: rid:0 step:19 gid:24 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.008s) Debug: run 20 {{{ Debug: @@ -5973,7 +6009,7 @@ Debug: rid:0 step:22 gid:26 user:rule:backchain = success -Debug: }}} -> (0.005s) +Debug: }}} -> (0.000s) Debug: run 23 {{{ Debug: @@ -6613,7 +6649,7 @@ Debug: rid:1 step:363 gid:1037 user:rule:backchain:candidates = File "builtin_stdlib.elpi", line 279, column 0, characters 9290-9316: -Debug: }}} -> (0.009s) +Debug: }}} -> (0.001s) Debug: select 270 {{{ Debug: @@ -7011,7 +7047,7 @@ Debug: rid:1 step:367 gid:1049 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.009s) Debug: run 368 {{{ Debug: @@ -7090,7 +7126,7 @@ Debug: rid:1 step:368 gid:1049 user:rule:eq = success -Debug: }}} -> (0.005s) +Debug: }}} -> (0.001s) Debug: run 369 {{{ Debug: @@ -7325,10 +7361,6 @@ Arguments expanded_g T%type_scope op%function_scope (l s)%list_scope h%bool_scope -The argument fun x : ?e => x + ?e1 was closed under 1 binders -old replacement: fun (x : ?e) (y : ?e0) => x - y with -fun (y : ?e1) (x : ?e2) => y + x -new replacement: fun y : ?e0 => x - y with fun y : ?e1 => y + x Goal: [decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] |- X0 c0 c1 : @@ -7432,6 +7464,10 @@ File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46 G2 is linear: name it _G2 (discard) or G2_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +The argument fun x : ?e => x + ?e1 was closed under 1 binders +old replacement: fun (x : ?e) (y : ?e0) => x - y with +fun (y : ?e1) (x : ?e2) => y + x +new replacement: fun y : ?e0 => x - y with fun y : ?e1 => y + x File "./tests/perf_calls.v", line 11, characters 2-3: Warning: File "./tests/perf_calls.v", line 11, characters 2-3 @@ -7447,192 +7483,16 @@ File "./tests/perf_calls.v", line 13, characters 7-8 N is linear: name it _N (discard) or N_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -Query assignments: - E = fun `n` (global (indt «nat»)) c0 \ - fun `t` (app [global (const «T2»), c0]) c1 \ - fun `x` - (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ - app - [global (const «g3»), c0, app [global (const «h»), c0, c1], - app - [global (indc «S»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = prod `n` (global (indt «nat»)) c0 \ - prod `t` (app [global (const «T2»), c0]) c1 \ - prod `x` - (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ - global (indt «nat») - X1_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.13 elpi.tests.test_API_elaborate.10 - elpi.tests.test_API_elaborate.9} |= - elpi.tests.test_API_elaborate.13 < elpi.tests.test_API_elaborate.9 - Set <= elpi.tests.test_API_elaborate.10 - Set <= elpi.tests.test_API_elaborate.13 - T2.u0 <= elpi.tests.test_API_elaborate.13 - f3.u0 <= elpi.tests.test_API_elaborate.13 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_elaborate.10} -FLEXIBLE UNIVERSES: - elpi.tests.test_API_elaborate.10 -SORTS: - α4 := Type - α5 := Type -WEAK CONSTRAINTS: - - -Query assignments: - E = app - [global (const «bar»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]], - global (const «xxx»)] - TY = prop - X2_ = X0 - X3_ = X1 -Query assignments: - E = app - [global (const «op»), global (const «c»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = app [global (const «field»), global (const «c»)] - X4_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.19 elpi.tests.test_API_elaborate.18} |= - elpi.tests.test_API_elaborate.19 < elpi.tests.test_API_elaborate.18 - s.u0 <= elpi.tests.test_API_elaborate.19 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α11 := Type -WEAK CONSTRAINTS: - +eq_refl : d = 3 + : d = 3 +eq_refl : e = 4 + : e = 4 +foo = fun a b c : nat => a + b + c + d + e + : nat -> nat -> nat -> nat -raw: -parameter A explicit (global (const «T1»)) c0 \ - inductive ind1 tt - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.22»))) c1 \ - [constructor K1 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), - constructor K2 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ - arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), - constructor K3 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) - c2 \ - arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] -elab1: -parameter A explicit (global (const «T1»)) c0 \ - inductive ind1 tt - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.23»)) - c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.25»))) c1 \ - [constructor K1 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.28»)) - c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), - constructor K2 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.30»)) - c2 \ - arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), - constructor K3 - (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.33»)) - c2 \ - arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] -elab2: -parameter A explicit (global (const «T1»)) c0 \ - parameter B explicit (sort (typ «ind1.u0»)) c1 \ - inductive ind1 tt (arity (sort (typ «ind1.u1»))) c2 \ - [constructor K1 (arity (prod `_` c2 c3 \ c2)), - constructor K2 - (arity (prod `_` (app [global (const «f1»), c0]) c3 \ c2)), - constructor K3 - (arity (prod `a` (app [global (const «f1»), c0]) c3 \ c2))] -raw: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «f1.u0»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -elab1: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «elpi.tests.test_API_elaborate.38»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -elab2: -parameter A explicit (global (const «T1»)) c0 \ - record ind2 (sort (typ «ind2.u0»)) Build_ind2 - (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) - c1 \ - field [coercion off, canonical tt] fld2 - (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) - c2 \ end-record) -raw: -record ind3 (sort (typ «elpi.tests.test_API_elaborate.41»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 - (sort (typ «elpi.tests.test_API_elaborate.40»)) c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -elab1: -record ind3 (sort (typ «elpi.tests.test_API_elaborate.42»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 - (sort (typ «elpi.tests.test_API_elaborate.43»)) c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -elab2: -record ind3 (sort (typ «ind3.u0»)) Build_ind3 - (field [coercion reversible, canonical tt] fld3 (sort (typ «ind3.u1»)) - c0 \ - field [coercion off, canonical tt] fld4 - (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) -forall x : ind3, x -> Prop - : Type +Arguments foo a%nat_scope [b]%nat_scope {c}%nat_scope Query assignments: - E = app - [global (const «op»), global (const «c»), - app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] - TY = app [global (const «field»), global (const «c»)] -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_elaborate.50 elpi.tests.test_API_elaborate.49} |= - elpi.tests.test_API_elaborate.50 < elpi.tests.test_API_elaborate.49 - s.u0 <= elpi.tests.test_API_elaborate.50 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α21 := Type -WEAK CONSTRAINTS: - - -unknown_gref -«elpi.tests.test_API_elaborate.52» «elpi.tests.test_API_elaborate.52» -File "./tests/test_API_elaborate.v", line 160, characters 19-20: -Warning: -File "./tests/test_API_elaborate.v", line 160, characters 19-20 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_elaborate.v", line 170, characters 33-34: -Warning: -File "./tests/test_API_elaborate.v", line 170, characters 33-34 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] + %arg1 = const «foo» Query assignments: I = const «imp» X2.imp : forall (T : Type) (x : T), x = x -> Prop @@ -7674,6 +7534,204 @@ = fun x : bool => x = x : bool -> Prop Query assignments: + L = [gref (indt «Empty_set»), gref (const «Empty_set_rect»), + gref (const «Empty_set_ind»), gref (const «Empty_set_rec»), + gref (const «Empty_set_sind»), gref (indt «unit»), + gref (const «unit_rect»), gref (const «unit_ind»), + gref (const «unit_rec»), gref (const «unit_sind»), + gref (indt «bool»), gref (const «bool_rect»), + gref (const «bool_ind»), gref (const «bool_rec»), + gref (const «bool_sind»), gref (const «andb»), gref (const «orb»), + gref (const «implb»), gref (const «xorb»), gref (const «negb»), + gref (const «andb_prop»), gref (const «andb_true_intro»), + gref (indt «eq_true»), gref (const «eq_true_rect»), + gref (const «eq_true_ind»), gref (const «eq_true_rec»), + gref (const «eq_true_sind»), gref (const «is_true»), + gref (const «eq_true_ind_r»), gref (const «eq_true_rec_r»), + gref (const «eq_true_rect_r»), gref (indt «BoolSpec»), + gref (const «BoolSpec_ind»), gref (const «BoolSpec_sind»), + gref (indt «nat»), gref (const «nat_rect»), gref (const «nat_ind»), + gref (const «nat_rec»), gref (const «nat_sind»), + gref (indt «option»), gref (const «option_rect»), + gref (const «option_ind»), gref (const «option_rec»), + gref (const «option_sind»), gref (const «option_map»), + gref (indt «sum»), gref (const «sum_rect»), gref (const «sum_ind»), + gref (const «sum_rec»), gref (const «sum_sind»), gref (indt «prod»), + gref (const «prod_rect»), gref (const «prod_ind»), + gref (const «prod_rec»), gref (const «prod_sind»), + gref (const «fst»), gref (const «snd»), + gref (const «surjective_pairing»), + gref (const «injective_projections»), gref (const «pair_equal_spec»), + gref (const «curry»), gref (const «uncurry»), + gref (const «rew_pair»), gref (indt «list»), + gref (const «list_rect»), gref (const «list_ind»), + gref (const «list_rec»), gref (const «list_sind»), + gref (const «length»), gref (const «app»), gref (indt «comparison»), + gref (const «comparison_rect»), gref (const «comparison_ind»), + gref (const «comparison_rec»), gref (const «comparison_sind»), + gref (const «comparison_eq_stable»), gref (const «CompOpp»), + gref (const «CompOpp_involutive»), gref (const «CompOpp_inj»), + gref (const «CompOpp_iff»), gref (indt «CompareSpec»), + gref (const «CompareSpec_ind»), gref (const «CompareSpec_sind»), + gref (indt «CompareSpecT»), gref (const «CompareSpecT_rect»), + gref (const «CompareSpecT_ind»), gref (const «CompareSpecT_rec»), + gref (const «CompareSpecT_sind»), gref (const «CompareSpec2Type»), + gref (const «CompSpec»), gref (const «CompSpecT»), + gref (const «CompSpec2Type»), gref (const «ID»), gref (const «id»), + gref (const «IDProp»), gref (const «idProp»)] + MP = «Coq.Init.Datatypes» +elpi.tests.test_API_module.X.i +[elpi, tests, test_API_module, X, Y] +[elpi, tests, test_API_module, X, Y] +Query assignments: + %arg1 = elpi.tests.test_API_module.X.i + %arg2 = elpi.tests.test_API_module.X.i + %arg3 = elpi.tests.test_API_module.X.Y.i + %arg4 = [elpi, tests, test_API_module, X, Y] + %arg5 = [elpi, tests, test_API_module, X, Y] + L = [gref (indt «X.i»), gref (const «X.i_rect»), gref (const «X.i_ind»), + gref (const «X.i_rec»), gref (const «X.i_sind»), gref (const «X.d»), + submodule «elpi.tests.test_API_module.X.Y» + [gref (indt «X.Y.i»), gref (const «X.Y.i_rect»), + gref (const «X.Y.i_ind»), gref (const «X.Y.i_rec»), + gref (const «X.Y.i_sind»), gref (const «X.Y.d»)]] + MP = «elpi.tests.test_API_module.X» + XYi = «X.Y.i» + XYr = «X.Y.i_rect» + Xi = «X.i» +Query assignments: + I = «Y.i» + ID = j + J = «Y.j» + MP = «elpi.tests.test_API_module.Y» + P = [elpi, tests, test_API_module, Y] +Query assignments: + Mp_ta = «elpi.tests.test_API_module.TA» +Query assignments: + GRy = EXN PRINTING: Not_found + I = EXN PRINTING: Not_found + L = [gref (const «A.z»), gref (const «A.i»)] + MP = «elpi.tests.test_API_module.A» + MP_TA = «elpi.tests.test_API_module.TA» + X1_ = «A.i.u0» + X2_ = «elpi.tests.test_API_module.11» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_module.11 A.i.u0} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_module.11 + A.i.u0 +SORTS: + +WEAK CONSTRAINTS: + + +Module +A + : TA +:= Struct + Definition x + Module B + Definition z + Inductive i1 + Definition i1_rect + Definition i1_ind + Definition i1_rec + Definition i1_sind + Definition i + End +A.z + : nat +A.i + : Type +*** [ A.i : Type ] +Query assignments: + A = «elpi.tests.test_API_module.a» + MP_TA = «elpi.tests.test_API_module.TA» + TF = «elpi.tests.test_API_module.TF» +Query assignments: + %arg1 = «elpi.tests.test_API_module.a» + %arg2 = const const EXN PRINTING: Not_found + MP_TA = «elpi.tests.test_API_module.TA» + MP_TF = «elpi.tests.test_API_module.TF» +Module +F + : Funsig (a:TA) Funsig (b:TA) TF +:= Functor (a:TA) Functor (b:TA) Struct Definition w : nat. End +Module B : Sig Parameter w : nat. End := (F A A) +*** [ B.w : nat ] +Query assignments: + MP_TA = «elpi.tests.test_API_module.TA» +Module Type TB = Funsig (A:TA) Sig End +Query assignments: + A = «elpi.tests.test_API_module.A» +Query assignments: + %arg1 = «elpi.tests.test_API_module.A» +Module IA := Struct Definition z : nat. Definition i : Type. End +Query assignments: + %arg1 = «elpi.tests.test_API_module.IA» +Query assignments: + %arg1 = «elpi.tests.test_API_module.IA» +i + : Type +Query assignments: + %arg1 = «elpi.tests.test_API_module.TA» +Query assignments: + %arg1 = «elpi.tests.test_API_module.TA» +Module Type ITA = Sig Parameter z : nat. Parameter i : Type. End +Query assignments: + F = «elpi.tests.test_API_module.R.F» + FT = «elpi.tests.test_API_module.R.FT» + L = [submodule «elpi.tests.test_API_module.R.S» [gref (const «R.S.x»)], + module-type «elpi.tests.test_API_module.R.P1», + module-type «elpi.tests.test_API_module.R.P2», + «elpi.tests.test_API_module.R.F» module-functor + [«elpi.tests.test_API_module.R.P1», «elpi.tests.test_API_module.R.P2»], + «elpi.tests.test_API_module.R.FT» module-type-functor + [«elpi.tests.test_API_module.R.P2», «elpi.tests.test_API_module.R.P1»], + gref (const «R.a»)] + P1 = «elpi.tests.test_API_module.R.P1» + P2 = «elpi.tests.test_API_module.R.P2» + R = «elpi.tests.test_API_module.R» + S = «elpi.tests.test_API_module.R.S» +File "./tests/test_API_module.v", line 7, characters 69-70: +Warning: +File "./tests/test_API_module.v", line 7, characters 69-70 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 50, characters 26-28: +Warning: +File "./tests/test_API_module.v", line 50, characters 26-28 +ID is linear: name it _ID (discard) or ID_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 49, characters 28-29: +Warning: +File "./tests/test_API_module.v", line 49, characters 28-29 +P is linear: name it _P (discard) or P_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 77, characters 21-22: +Warning: +File "./tests/test_API_module.v", line 77, characters 21-22 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 67, characters 27-32: +Warning: +File "./tests/test_API_module.v", line 67, characters 27-32 +MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 102, characters 31-36: +Warning: +File "./tests/test_API_module.v", line 102, characters 31-36 +MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_module.v", line 101, characters 27-32: +Warning: +File "./tests/test_API_module.v", line 101, characters 27-32 +MP_TF is linear: name it _MP_TF (discard) or MP_TF_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: GR = const «myi» Query assignments: GR = const «myi» @@ -7894,45 +7952,6 @@ File "./tests/test_API_TC_CS.v", line 159, characters 32-33 L is linear: name it _L (discard) or L_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -normP : -forall {T : Type} {e : T} {op : T -> T -> T} {gamma : list T} {t1 t2 : lang}, -(forall a b c : T, op a (op b c) = op (op a b) c) -> -(forall a : T, op e a = a) -> -(forall a : T, op a e = a) -> -norm t1 = norm t2 -> interp T e op gamma t1 = interp T e op gamma t2 - -normP is not universe polymorphic -Arguments normP {T}%type_scope {e} {op}%function_scope - {gamma}%list_scope {t1 t2} (p1 p2 p3)%function_scope - H -normP is transparent -Expands to: Constant elpi_examples_stdlib.example_reflexive_tactic.normP -(fun x y z t : Z => - normP Z.add_assoc Z.add_0_l Z.add_0_r - (eq_refl - <: - norm (add (add (var 0) (var 1)) (add (add (var 2) zero) (var 3))) = - norm (add (add (var 0) (add (var 1) (var 2))) (var 3)))) -Debug: In environment -x, y, z, t : Z -Unable to unify "var 1" with - "var 0". -Raised at Loc.raise in file "lib/loc.ml", line 101, characters 16-23 -Called from Unification.unify_0_with_initial_metas in file "pretyping/unification.ml", line 1281, characters 13-48 -Re-raised at Exninfo.iraise in file "clib/exninfo.ml", line 81, characters 4-38 -Called from Unification.unify_with_eta in file "pretyping/unification.ml", line 1320, characters 14-48 -Called from Unification.merge_instances in file "pretyping/unification.ml", line 1333, characters 23-64 -Called from Unification.w_merge.w_merge_rec in file "pretyping/unification.ml", line 1554, characters 14-63 -Called from Unification.w_merge in file "pretyping/unification.ml", lines 1608-1610, characters 4-35 -Called from Unification.w_unify_core_0 in file "pretyping/unification.ml", line 1661, characters 12-65 -Called from Clenv.clenv_unify in file "proofs/clenv.ml", line 298, characters 25-73 -Called from Clenv.res_pf.(fun) in file "proofs/clenv.ml", line 771, characters 16-56 -Called from Proofview.Goal.enter.f in file "engine/proofview.ml", line 1136, characters 40-46 -Called from Proofview.Goal.enter.(fun) in file "engine/proofview.ml", line 1141, characters 10-34 - -Query q X0 -Query r X0 -Result r 1 Coq version: 8.20.1 = 8 . 20 . 1 Query assignments: MA = 8 @@ -8120,214 +8139,6 @@ File "./tests/test_API.v", line 95, characters 31-32 Y is linear: name it _Y (discard) or Y_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -Query assignments: - L = [gref (indt «Empty_set»), gref (const «Empty_set_rect»), - gref (const «Empty_set_ind»), gref (const «Empty_set_rec»), - gref (const «Empty_set_sind»), gref (indt «unit»), - gref (const «unit_rect»), gref (const «unit_ind»), - gref (const «unit_rec»), gref (const «unit_sind»), - gref (indt «bool»), gref (const «bool_rect»), - gref (const «bool_ind»), gref (const «bool_rec»), - gref (const «bool_sind»), gref (const «andb»), gref (const «orb»), - gref (const «implb»), gref (const «xorb»), gref (const «negb»), - gref (const «andb_prop»), gref (const «andb_true_intro»), - gref (indt «eq_true»), gref (const «eq_true_rect»), - gref (const «eq_true_ind»), gref (const «eq_true_rec»), - gref (const «eq_true_sind»), gref (const «is_true»), - gref (const «eq_true_ind_r»), gref (const «eq_true_rec_r»), - gref (const «eq_true_rect_r»), gref (indt «BoolSpec»), - gref (const «BoolSpec_ind»), gref (const «BoolSpec_sind»), - gref (indt «nat»), gref (const «nat_rect»), gref (const «nat_ind»), - gref (const «nat_rec»), gref (const «nat_sind»), - gref (indt «option»), gref (const «option_rect»), - gref (const «option_ind»), gref (const «option_rec»), - gref (const «option_sind»), gref (const «option_map»), - gref (indt «sum»), gref (const «sum_rect»), gref (const «sum_ind»), - gref (const «sum_rec»), gref (const «sum_sind»), gref (indt «prod»), - gref (const «prod_rect»), gref (const «prod_ind»), - gref (const «prod_rec»), gref (const «prod_sind»), - gref (const «fst»), gref (const «snd»), - gref (const «surjective_pairing»), - gref (const «injective_projections»), gref (const «pair_equal_spec»), - gref (const «curry»), gref (const «uncurry»), - gref (const «rew_pair»), gref (indt «list»), - gref (const «list_rect»), gref (const «list_ind»), - gref (const «list_rec»), gref (const «list_sind»), - gref (const «length»), gref (const «app»), gref (indt «comparison»), - gref (const «comparison_rect»), gref (const «comparison_ind»), - gref (const «comparison_rec»), gref (const «comparison_sind»), - gref (const «comparison_eq_stable»), gref (const «CompOpp»), - gref (const «CompOpp_involutive»), gref (const «CompOpp_inj»), - gref (const «CompOpp_iff»), gref (indt «CompareSpec»), - gref (const «CompareSpec_ind»), gref (const «CompareSpec_sind»), - gref (indt «CompareSpecT»), gref (const «CompareSpecT_rect»), - gref (const «CompareSpecT_ind»), gref (const «CompareSpecT_rec»), - gref (const «CompareSpecT_sind»), gref (const «CompareSpec2Type»), - gref (const «CompSpec»), gref (const «CompSpecT»), - gref (const «CompSpec2Type»), gref (const «ID»), gref (const «id»), - gref (const «IDProp»), gref (const «idProp»)] - MP = «Coq.Init.Datatypes» -elpi.tests.test_API_module.X.i -[elpi, tests, test_API_module, X, Y] -[elpi, tests, test_API_module, X, Y] -Query assignments: - %arg1 = elpi.tests.test_API_module.X.i - %arg2 = elpi.tests.test_API_module.X.i - %arg3 = elpi.tests.test_API_module.X.Y.i - %arg4 = [elpi, tests, test_API_module, X, Y] - %arg5 = [elpi, tests, test_API_module, X, Y] - L = [gref (indt «X.i»), gref (const «X.i_rect»), gref (const «X.i_ind»), - gref (const «X.i_rec»), gref (const «X.i_sind»), gref (const «X.d»), - submodule «elpi.tests.test_API_module.X.Y» - [gref (indt «X.Y.i»), gref (const «X.Y.i_rect»), - gref (const «X.Y.i_ind»), gref (const «X.Y.i_rec»), - gref (const «X.Y.i_sind»), gref (const «X.Y.d»)]] - MP = «elpi.tests.test_API_module.X» - XYi = «X.Y.i» - XYr = «X.Y.i_rect» - Xi = «X.i» -Query assignments: - I = «Y.i» - ID = j - J = «Y.j» - MP = «elpi.tests.test_API_module.Y» - P = [elpi, tests, test_API_module, Y] -Query assignments: - Mp_ta = «elpi.tests.test_API_module.TA» -Query assignments: - GRy = EXN PRINTING: Not_found - I = EXN PRINTING: Not_found - L = [gref (const «A.z»), gref (const «A.i»)] - MP = «elpi.tests.test_API_module.A» - MP_TA = «elpi.tests.test_API_module.TA» - X1_ = «A.i.u0» - X2_ = «elpi.tests.test_API_module.11» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_module.11 A.i.u0} -FLEXIBLE UNIVERSES: - elpi.tests.test_API_module.11 - A.i.u0 -SORTS: - -WEAK CONSTRAINTS: - - -Module -A - : TA -:= Struct - Definition x - Module B - Definition z - Inductive i1 - Definition i1_rect - Definition i1_ind - Definition i1_rec - Definition i1_sind - Definition i - End -A.z - : nat -A.i - : Type -*** [ A.i : Type ] -Query assignments: - A = «elpi.tests.test_API_module.a» - MP_TA = «elpi.tests.test_API_module.TA» - TF = «elpi.tests.test_API_module.TF» -Query assignments: - %arg1 = «elpi.tests.test_API_module.a» - %arg2 = const const EXN PRINTING: Not_found - MP_TA = «elpi.tests.test_API_module.TA» - MP_TF = «elpi.tests.test_API_module.TF» -Module -F - : Funsig (a:TA) Funsig (b:TA) TF -:= Functor (a:TA) Functor (b:TA) Struct Definition w : nat. End -Module B : Sig Parameter w : nat. End := (F A A) -*** [ B.w : nat ] -Query assignments: - MP_TA = «elpi.tests.test_API_module.TA» -Module Type TB = Funsig (A:TA) Sig End -Query assignments: - A = «elpi.tests.test_API_module.A» -Query assignments: - %arg1 = «elpi.tests.test_API_module.A» -Module IA := Struct Definition z : nat. Definition i : Type. End -Query assignments: - %arg1 = «elpi.tests.test_API_module.IA» -Query assignments: - %arg1 = «elpi.tests.test_API_module.IA» -i - : Type -Query assignments: - %arg1 = «elpi.tests.test_API_module.TA» -Query assignments: - %arg1 = «elpi.tests.test_API_module.TA» -Module Type ITA = Sig Parameter z : nat. Parameter i : Type. End -Query assignments: - F = «elpi.tests.test_API_module.R.F» - FT = «elpi.tests.test_API_module.R.FT» - L = [submodule «elpi.tests.test_API_module.R.S» [gref (const «R.S.x»)], - module-type «elpi.tests.test_API_module.R.P1», - module-type «elpi.tests.test_API_module.R.P2», - «elpi.tests.test_API_module.R.F» module-functor - [«elpi.tests.test_API_module.R.P1», «elpi.tests.test_API_module.R.P2»], - «elpi.tests.test_API_module.R.FT» module-type-functor - [«elpi.tests.test_API_module.R.P2», «elpi.tests.test_API_module.R.P1»], - gref (const «R.a»)] - P1 = «elpi.tests.test_API_module.R.P1» - P2 = «elpi.tests.test_API_module.R.P2» - R = «elpi.tests.test_API_module.R» - S = «elpi.tests.test_API_module.R.S» -File "./tests/test_API_module.v", line 7, characters 69-70: -Warning: -File "./tests/test_API_module.v", line 7, characters 69-70 -L is linear: name it _L (discard) or L_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 50, characters 26-28: -Warning: -File "./tests/test_API_module.v", line 50, characters 26-28 -ID is linear: name it _ID (discard) or ID_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 49, characters 28-29: -Warning: -File "./tests/test_API_module.v", line 49, characters 28-29 -P is linear: name it _P (discard) or P_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 77, characters 21-22: -Warning: -File "./tests/test_API_module.v", line 77, characters 21-22 -L is linear: name it _L (discard) or L_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 67, characters 27-32: -Warning: -File "./tests/test_API_module.v", line 67, characters 27-32 -MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 102, characters 31-36: -Warning: -File "./tests/test_API_module.v", line 102, characters 31-36 -MP_TA is linear: name it _MP_TA (discard) or MP_TA_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_module.v", line 101, characters 27-32: -Warning: -File "./tests/test_API_module.v", line 101, characters 27-32 -MP_TF is linear: name it _MP_TF (discard) or MP_TF_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -eq_refl : d = 3 - : d = 3 -eq_refl : e = 4 - : e = 4 -foo = fun a b c : nat => a + b + c + d + e - : nat -> nat -> nat -> nat - -Arguments foo a%nat_scope [b]%nat_scope {c}%nat_scope -Query assignments: - %arg1 = const «foo» «elpi.tests.test_API_notations.abbr» Query assignments: A = «elpi.tests.test_API_notations.abbr» @@ -8405,9 +8216,231 @@ X7_ = X2 Query assignments: %arg1 = «elpi.tests.test_API_notations.abbr2» -File "./tests/test_File3.v", line 18, characters 2-16: -Warning: This command does not support this attribute: phase. -[unsupported-attributes,parsing,default] +Query q X0 +Query r X0 +Result r 1 +normP : +forall {T : Type} {e : T} {op : T -> T -> T} {gamma : list T} {t1 t2 : lang}, +(forall a b c : T, op a (op b c) = op (op a b) c) -> +(forall a : T, op e a = a) -> +(forall a : T, op a e = a) -> +norm t1 = norm t2 -> interp T e op gamma t1 = interp T e op gamma t2 + +normP is not universe polymorphic +Arguments normP {T}%type_scope {e} {op}%function_scope + {gamma}%list_scope {t1 t2} (p1 p2 p3)%function_scope + H +normP is transparent +Expands to: Constant elpi_examples_stdlib.example_reflexive_tactic.normP +(fun x y z t : Z => + normP Z.add_assoc Z.add_0_l Z.add_0_r + (eq_refl + <: + norm (add (add (var 0) (var 1)) (add (add (var 2) zero) (var 3))) = + norm (add (add (var 0) (add (var 1) (var 2))) (var 3)))) +Debug: In environment +x, y, z, t : Z +Unable to unify "var 1" with + "var 0". +Raised at Loc.raise in file "lib/loc.ml", line 101, characters 16-23 +Called from Unification.unify_0_with_initial_metas in file "pretyping/unification.ml", line 1281, characters 13-48 +Re-raised at Exninfo.iraise in file "clib/exninfo.ml", line 81, characters 4-38 +Called from Unification.unify_with_eta in file "pretyping/unification.ml", line 1320, characters 14-48 +Called from Unification.merge_instances in file "pretyping/unification.ml", line 1333, characters 23-64 +Called from Unification.w_merge.w_merge_rec in file "pretyping/unification.ml", line 1554, characters 14-63 +Called from Unification.w_merge in file "pretyping/unification.ml", lines 1608-1610, characters 4-35 +Called from Unification.w_unify_core_0 in file "pretyping/unification.ml", line 1661, characters 12-65 +Called from Clenv.clenv_unify in file "proofs/clenv.ml", line 298, characters 25-73 +Called from Clenv.res_pf.(fun) in file "proofs/clenv.ml", line 771, characters 16-56 +Called from Proofview.Goal.enter.f in file "engine/proofview.ml", line 1136, characters 40-46 +Called from Proofview.Goal.enter.(fun) in file "engine/proofview.ml", line 1141, characters 10-34 + +Query assignments: + E = fun `n` (global (indt «nat»)) c0 \ + fun `t` (app [global (const «T2»), c0]) c1 \ + fun `x` + (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ + app + [global (const «g3»), c0, app [global (const «h»), c0, c1], + app + [global (indc «S»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = prod `n` (global (indt «nat»)) c0 \ + prod `t` (app [global (const «T2»), c0]) c1 \ + prod `x` + (app [global (const «f3»), c0, app [global (const «h»), c0, c1]]) c2 \ + global (indt «nat») + X1_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.13 elpi.tests.test_API_elaborate.10 + elpi.tests.test_API_elaborate.9} |= + elpi.tests.test_API_elaborate.13 < elpi.tests.test_API_elaborate.9 + Set <= elpi.tests.test_API_elaborate.10 + Set <= elpi.tests.test_API_elaborate.13 + T2.u0 <= elpi.tests.test_API_elaborate.13 + f3.u0 <= elpi.tests.test_API_elaborate.13 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_elaborate.10} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_elaborate.10 +SORTS: + α4 := Type + α5 := Type +WEAK CONSTRAINTS: + + +Query assignments: + E = app + [global (const «bar»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]], + global (const «xxx»)] + TY = prop + X2_ = X0 + X3_ = X1 +Query assignments: + E = app + [global (const «op»), global (const «c»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = app [global (const «field»), global (const «c»)] + X4_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.19 elpi.tests.test_API_elaborate.18} |= + elpi.tests.test_API_elaborate.19 < elpi.tests.test_API_elaborate.18 + s.u0 <= elpi.tests.test_API_elaborate.19 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α11 := Type +WEAK CONSTRAINTS: + + +raw: +parameter A explicit (global (const «T1»)) c0 \ + inductive ind1 tt + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.22»))) c1 \ + [constructor K1 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), + constructor K2 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ + arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), + constructor K3 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.20»)) + c2 \ + arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] +elab1: +parameter A explicit (global (const «T1»)) c0 \ + inductive ind1 tt + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.23»)) + c1 \ arity (sort (typ «elpi.tests.test_API_elaborate.25»))) c1 \ + [constructor K1 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.28»)) + c2 \ arity (prod `_` (app [c1, c2]) c3 \ app [c1, c2])), + constructor K2 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.30»)) + c2 \ + arity (prod `_` (app [global (const «f1»), c0]) c3 \ app [c1, c2])), + constructor K3 + (parameter B explicit (sort (typ «elpi.tests.test_API_elaborate.33»)) + c2 \ + arity (prod `a` (app [global (const «f1»), c0]) c3 \ app [c1, c2]))] +elab2: +parameter A explicit (global (const «T1»)) c0 \ + parameter B explicit (sort (typ «ind1.u0»)) c1 \ + inductive ind1 tt (arity (sort (typ «ind1.u1»))) c2 \ + [constructor K1 (arity (prod `_` c2 c3 \ c2)), + constructor K2 + (arity (prod `_` (app [global (const «f1»), c0]) c3 \ c2)), + constructor K3 + (arity (prod `a` (app [global (const «f1»), c0]) c3 \ c2))] +raw: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «f1.u0»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +elab1: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «elpi.tests.test_API_elaborate.38»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +elab2: +parameter A explicit (global (const «T1»)) c0 \ + record ind2 (sort (typ «ind2.u0»)) Build_ind2 + (field [coercion off, canonical tt] fld1 (app [global (const «f1»), c0]) + c1 \ + field [coercion off, canonical tt] fld2 + (app [global (indt «eq»), app [global (const «f1»), c0], c1, c1]) + c2 \ end-record) +raw: +record ind3 (sort (typ «elpi.tests.test_API_elaborate.41»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 + (sort (typ «elpi.tests.test_API_elaborate.40»)) c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +elab1: +record ind3 (sort (typ «elpi.tests.test_API_elaborate.42»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 + (sort (typ «elpi.tests.test_API_elaborate.43»)) c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +elab2: +record ind3 (sort (typ «ind3.u0»)) Build_ind3 + (field [coercion reversible, canonical tt] fld3 (sort (typ «ind3.u1»)) + c0 \ + field [coercion off, canonical tt] fld4 + (prod `x` c0 c1 \ app [global (indt «eq»), c0, c1, c1]) c1 \ end-record) +forall x : ind3, x -> Prop + : Type +Query assignments: + E = app + [global (const «op»), global (const «c»), + app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]] + TY = app [global (const «field»), global (const «c»)] +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_elaborate.50 elpi.tests.test_API_elaborate.49} |= + elpi.tests.test_API_elaborate.50 < elpi.tests.test_API_elaborate.49 + s.u0 <= elpi.tests.test_API_elaborate.50 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α21 := Type +WEAK CONSTRAINTS: + + +unknown_gref +«elpi.tests.test_API_elaborate.52» «elpi.tests.test_API_elaborate.52» +File "./tests/test_API_elaborate.v", line 160, characters 19-20: +Warning: +File "./tests/test_API_elaborate.v", line 160, characters 19-20 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_elaborate.v", line 170, characters 33-34: +Warning: +File "./tests/test_API_elaborate.v", line 170, characters 33-34 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] Query assignments: CA = «a» CB = «b» @@ -8431,6 +8464,29 @@ : nat bar : bool -> nat : bool -> nat +File "./tests/test_File3.v", line 18, characters 2-16: +Warning: This command does not support this attribute: phase. +[unsupported-attributes,parsing,default] +d1 + : nat +d2 + : nat +i1 + : Prop +i2 + : Prop +k1 + : i1 +k2 + : i2 +r1 + : Set +r2 + : Type +f1 + : r1 -> nat +f2 + : r2 -> nat Query assignments: BO = fix `add` 0 (prod `n` (global (indt «nat»)) c0 \ @@ -8567,2626 +8623,6 @@ File "./tests/test_API_typecheck.v", line 59, characters 2-4 LE is linear: name it _LE (discard) or LE_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -Query assignments: - BO = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - GR = «Nat.add» - GRNat = indt «nat» - GRSucc = indc «S» - Nat = global (indt «nat») - Succ = global (indc «S») - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -Query assignments: - GR = «empty_nat» - TY = global (indt «nat») -Query assignments: - GR1 = indc «Vector.nil» - GR2 = indt «nat» - GR3 = const «A» -add_equal -Query assignments: - %arg1 = add_equal - %arg2 = add_equal - BO = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - GR = «Nat.add» - NGR = «add_equal» - Name = add_equal - S = add - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -add_equal : nat -> nat -> nat - -add_equal is not universe polymorphic -Arguments add_equal (n m)%nat_scope -add_equal is opaque -Expands to: Constant elpi_tests_stdlib.test_API_env.add_equal -«myfalse» -Query assignments: - F = indt «False» - GR = «myfalse» -myfalse - : False -parameter T X0 (sort (typ X1)) c0 \ - record eq_class (sort (typ X2)) mk_eq_class - (field [canonical ff, coercion regular] eq_f (global (indt «bool»)) c1 \ - field X3 eq_proof - (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ - end-record) -Query assignments: - DECL = parameter T X0 (sort (typ «eq_class.u0»)) c0 \ - record eq_class (sort (typ «eq_class.u1»)) mk_eq_class - (field [canonical ff, coercion regular] eq_f (global (indt «bool»)) c1 \ - field X3 eq_proof - (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ - end-record) - GR = «eq_class» - X1_ = «eq_class.u0» - X2_ = «eq_class.u1» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {eq_class.u1 eq_class.u0} -FLEXIBLE UNIVERSES: - eq_class.u1 - eq_class.u0 -SORTS: - -WEAK CONSTRAINTS: - - -Record eq_class (T : Type@{eq_class.u0}) : Type@{eq_class.u1} := mk_eq_class - { eq_f : bool; eq_proof : eq_f = eq_f }. - -Arguments eq_class T%type_scope -Arguments mk_eq_class T%type_scope eq_f%bool_scope eq_proof -Arguments eq_f T%type_scope record -Arguments eq_proof T%type_scope record -fun x : eq_class nat => x : bool - : eq_class nat -> bool -p <- eq_proof ( xxx ) -Query assignments: - DECL = parameter T X0 (sort (typ «prim_eq_class.u0»)) c0 \ - record prim_eq_class (sort (typ «prim_eq_class.u1»)) mk_prim_eq_class - (field [canonical ff, coercion reversible] prim_eq_f - (global (indt «bool»)) c1 \ - field X1 prim_eq_proof - (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ - end-record) - GR = «prim_eq_class» - X3_ = «prim_eq_class.u0» - X4_ = «prim_eq_class.u1» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {prim_eq_class.u1 prim_eq_class.u0} -FLEXIBLE UNIVERSES: - prim_eq_class.u1 - prim_eq_class.u0 -SORTS: - -WEAK CONSTRAINTS: - - -fun r : prim_eq_class nat => -eq_refl : r = {| prim_eq_f := r; prim_eq_proof := prim_eq_proof _ r |} - : forall r : prim_eq_class nat, - r = {| prim_eq_f := r; prim_eq_proof := prim_eq_proof _ r |} -(* {} |= prim_eq_class.u1 <= eq.u0 *) -fun `r` (app [global (indt «prim_eq_class»), global (indt «nat»)]) c0 \ - app [primitive (proj elpi_tests_stdlib.test_API_env.prim_eq_f 1), c0] -Query assignments: - C = «pc» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {myind.u0} -FLEXIBLE UNIVERSES: - myind.u0 -SORTS: - -WEAK CONSTRAINTS: - - -myind true false : Prop - : Prop -K2 true : myind true true - : myind true true -myind1 true false : Prop - : Prop -K21 true : myind1 true true - : myind1 true true -Query assignments: - X6_ = «nuind.u0» - X7_ = «nuind.u1» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {nuind.u1 nuind.u0} -FLEXIBLE UNIVERSES: - nuind.u1 - nuind.u0 -SORTS: - -WEAK CONSTRAINTS: - - -fun x : nuind nat 3 false => -match x in (nuind _ _ b) return (b = b) with -| k1 _ _ => eq_refl : true = true -| k2 _ _ x0 => (fun _ : nuind nat 1 false => eq_refl : false = false) x0 -end - : nuind nat 3 false -> false = false -c0 global (indt «nat») -Query assignments: - T = global (indt «nat») -Query assignments: - D = parameter A X0 (sort (typ «tx.u0»)) c0 \ - inductive tx X1 - (parameter y X2 (global (indt «nat»)) c1 \ - arity (prod `_` (global (indt «bool»)) c2 \ sort (typ «tx.u1»))) c1 \ - [constructor K1x - (parameter y X3 (global (indt «nat»)) c2 \ - arity - (prod `x` c0 c3 \ - prod `n` (global (indt «nat»)) c4 \ - prod `p` - (app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), c4], c2]) c5 \ - prod `e` (app [c1, c4, global (indc «true»)]) c6 \ - app [c1, c2, global (indc «true»)])), - constructor K2x - (parameter y X4 (global (indt «nat»)) c2 \ - arity (app [c1, c2, global (indc «false»)]))] - X8_ = «tx.u0» - X9_ = «tx.u1» -Universe constraints: -UNIVERSES: - {elpi_tests_stdlib.test_API_env.18 elpi_tests_stdlib.test_API_env.17 - elpi_tests_stdlib.test_API_env.16 elpi_tests_stdlib.test_API_env.15 - elpi_tests_stdlib.test_API_env.14 elpi_tests_stdlib.test_API_env.13 - elpi_tests_stdlib.test_API_env.11} |= - tx.u0 < elpi_tests_stdlib.test_API_env.11 - tx.u1 < elpi_tests_stdlib.test_API_env.13 - Set <= elpi_tests_stdlib.test_API_env.13 - Set <= elpi_tests_stdlib.test_API_env.14 - Set <= elpi_tests_stdlib.test_API_env.15 - Set <= elpi_tests_stdlib.test_API_env.16 - Set <= elpi_tests_stdlib.test_API_env.17 - Set <= elpi_tests_stdlib.test_API_env.18 - tx.u0 <= elpi_tests_stdlib.test_API_env.14 - tx.u1 <= elpi_tests_stdlib.test_API_env.14 - elpi_tests_stdlib.test_API_env.14 <= tx.u1 -ALGEBRAIC UNIVERSES: - {tx.u1 tx.u0} -FLEXIBLE UNIVERSES: - tx.u1 - tx.u0 -SORTS: - α2 := Type - α3 := Type - α4 := Type - α5 := Type -WEAK CONSTRAINTS: - - -Query assignments: - D = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ - parameter a explicit c0 c1 \ - inductive ind1 tt - (parameter B explicit (sort (typ «ind1.u0»)) c2 \ - parameter b explicit c2 c3 \ - arity - (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.26»))) - c2 \ - [constructor k1 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (prod `bb` (app [global (indt «prod»), c3, c3]) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c5, - global (indt «bool»), global (indc «true»)]) c6 \ - app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), - constructor k2 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (app - [c2, c3, c4, global (indt «nat»), - app [global (indc «S»), global (indc «O»)]]))] - D1 = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ - parameter a explicit c0 c1 \ - inductive ind1 tt - (parameter B explicit (sort (typ «ind1.u0»)) c2 \ - parameter b explicit c2 c3 \ - arity - (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.26»))) - c2 \ - [constructor k1 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (prod `bb` (app [global (indt «prod»), c3, c3]) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c5, - global (indt «bool»), global (indc «true»)]) c6 \ - app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), - constructor k2 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (app - [c2, c3, c4, global (indt «nat»), - app [global (indc «S»), global (indc «O»)]]))] - I = «ind1» - U = «elpi_tests_stdlib.test_API_env.26» - UA = «elpi_tests_stdlib.test_API_env.20» - UB1 = «ind1.u0» - UB2 = «ind1.u0» - UB3 = «ind1.u0» - UC = «elpi_tests_stdlib.test_API_env.22» -Universe constraints: -UNIVERSES: - {elpi_tests_stdlib.test_API_env.26} |= - Set <= elpi_tests_stdlib.test_API_env.26 - ind1.u0 <= elpi_tests_stdlib.test_API_env.26 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - D = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ - parameter a explicit c0 c1 \ - inductive ind1 tt - (parameter B explicit (sort (typ «ind1.u0»)) c2 \ - parameter b explicit c2 c3 \ - arity - (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.27»))) - c2 \ - [constructor k1 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - parameter bb implicit (app [global (indt «prod»), c3, c3]) c5 \ - arity - (prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c5, - global (indt «bool»), global (indc «true»)]) c6 \ - app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), - constructor k2 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (app - [c2, c3, c4, global (indt «nat»), - app [global (indc «S»), global (indc «O»)]]))] - D1 = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ - parameter a explicit c0 c1 \ - inductive ind1 tt - (parameter B explicit (sort (typ «ind1.u0»)) c2 \ - parameter b explicit c2 c3 \ - arity - (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.27»))) - c2 \ - [constructor k1 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - parameter bb implicit (app [global (indt «prod»), c3, c3]) c5 \ - arity - (prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c5, - global (indt «bool»), global (indc «true»)]) c6 \ - app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), - constructor k2 - (parameter B explicit (sort (typ «ind1.u0»)) c3 \ - parameter b explicit c3 c4 \ - arity - (app - [c2, c3, c4, global (indt «nat»), - app [global (indc «S»), global (indc «O»)]]))] - I = «ind1» - U = «elpi_tests_stdlib.test_API_env.27» - UA = «elpi_tests_stdlib.test_API_env.20» - UB1 = «ind1.u0» - UB2 = «ind1.u0» - UB3 = «ind1.u0» - UC = «elpi_tests_stdlib.test_API_env.22» -Universe constraints: -UNIVERSES: - {elpi_tests_stdlib.test_API_env.27} |= - Set <= elpi_tests_stdlib.test_API_env.27 - ind1.u0 <= elpi_tests_stdlib.test_API_env.27 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - D = parameter P explicit (sort (typ «r1.u0»)) c0 \ - parameter p explicit c0 c1 \ - record r1 (sort (typ «r1.u0»)) mk_r1 - (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ - field [coercion off, canonical ff] f2 - (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) - D1 = parameter P explicit (sort (typ «r1.u0»)) c0 \ - parameter p explicit c0 c1 \ - record r1 (sort (typ «r1.u0»)) mk_r1 - (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ - field [coercion off, canonical ff] f2 - (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) - I = «r1» - UP = «r1.u0» - UR = «r1.u0» -Query assignments: - D = parameter P explicit (sort (typ «r1.u0»)) c0 \ - parameter p explicit c0 c1 \ - record r1 (sort (typ «r1.u0»)) mk_r1 - (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ - field [coercion regular, canonical ff] f2 - (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) - D1 = parameter P explicit (sort (typ «r1.u0»)) c0 \ - parameter p explicit c0 c1 \ - record r1 (sort (typ «r1.u0»)) mk_r1 - (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ - field [coercion regular, canonical ff] f2 - (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) - I = «r1» - UP = «r1.u0» - UR = «r1.u0» -{{ nat; S; }} -{{ nat; S; }} -Query assignments: - GR = const «Nat.add» - L = {{ nat; S; }} - S = {{ nat; S; }} -{{ X.a; }} {{ X.a; Nat.add; nat; }} -{{ X.a; }} {{ X.a; Nat.add; nat; O; S; }} -Query assignments: - %arg1 = const «X.a» - AllL = {{ X.a; Nat.add; nat; }} - AllS = {{ X.a; Nat.add; nat; O; S; }} - GR = const «X.b» - L = {{ X.a; }} - M = «elpi_tests_stdlib.test_API_env.HOAS.X» - S = {{ X.a; }} -Query assignments: - %arg1 = 3372 - GR = const «Ranalysis5.derivable_pt_lim_CVU» - S = {{ Field_theory.AF_1_neq_0; Field_theory.AF_AR; Field_theory.AFdiv_def; - Field_theory.AFinv_l; Ring_theory.ARadd_0_l; Ring_theory.ARadd_0_r; - Ring_theory.ARadd_assoc; Ring_theory.ARadd_assoc1; - Ring_theory.ARadd_assoc2; Ring_theory.ARadd_comm; Ring_theory.ARdistr_l; - Ring_theory.ARdistr_r; InitialRing.ARgen_phiPOS_Psucc; - InitialRing.ARgen_phiPOS_add; InitialRing.ARgen_phiPOS_mult; - Ring_theory.ARmul_0_l; Ring_theory.ARmul_0_r; Ring_theory.ARmul_1_l; - Ring_theory.ARmul_1_r; Ring_theory.ARmul_assoc; - Ring_theory.ARmul_assoc1; Ring_theory.ARmul_assoc2; - Ring_theory.ARmul_comm; Ring_theory.ARopp_add; Ring_theory.ARopp_mul_l; - Ring_theory.ARopp_mul_r; Ring_theory.ARopp_zero; Ring_theory.ARsub_def; - Ring_theory.ARsub_ext; Ring_theory.ARth_SRth; RList.AbsList; - RList.AbsList_P1; RList.AbsList_P2; Acc_inv; - Morphisms_Prop.Acc_pt_morphism; Acc_rect; Tauto.BFormula; - PSeries_reg.Ball_in_inter; Rlimit.Base; PSeries_reg.Boule; - PSeries_reg.Boule_center; Setoid.Build_Setoid_Theory; - Ring_polynom.CFactor; RMicromega.CInvR0; RMicromega.CPowR0; - ConstructiveReals.CR_Q_dense; ConstructiveReals.CR_archimedean; - ConstructiveReals.CR_cauchy; ConstructiveReals.CR_complete; - ConstructiveReals.CR_cv; ConstructiveLimits.CR_cv_bound_down; - ConstructiveLimits.CR_cv_le; ConstructiveLimits.CR_cv_open_above; - ConstructiveLimits.CR_cv_open_below; ConstructiveLimits.CR_cv_opp; - ConstructiveLimits.CR_cv_plus; ConstructiveLimits.CR_cv_proper; - ConstructiveReals.CR_of_Q; ConstructiveReals.CR_of_Q_le; - ConstructiveReals.CR_of_Q_lt; ConstructiveReals.CR_of_Q_morph; - ConstructiveReals.CR_of_Q_morph_Proper; - ConstructiveReals.CR_of_Q_morph_T; ConstructiveReals.CR_of_Q_mult; - ConstructiveReals.CR_of_Q_opp; ConstructiveReals.CR_of_Q_plus; - ConstructiveReals.CR_of_Q_pos; ConstructiveLUB.CR_sig_lub; - ConstructiveReals.CRabs; ConstructiveReals.CRabs_def; - ConstructiveAbs.CRabs_le; ConstructiveAbs.CRabs_lt; - ConstructiveAbs.CRabs_morph; ConstructiveAbs.CRabs_morph_prop_Proper; - ConstructiveAbs.CRabs_opp; ConstructiveAbs.CRabs_right; - ConstructiveAbs.CRabs_triang; ConstructiveReals.CRapart; - ConstructiveReals.CRcarrier; ConstructiveRcomplete.CRealAbsLUB; - ConstructiveCauchyRealsMult.CRealArchimedean; - ConstructiveRcomplete.CRealComplete; - ConstructiveRcomplete.CRealConstructive; - ConstructiveCauchyReals.CRealEq; ConstructiveCauchyReals.CRealEq_diff; - ConstructiveCauchyReals.CRealEq_refl; - ConstructiveCauchyReals.CRealEq_rel; - ConstructiveCauchyReals.CRealEq_relT; - ConstructiveCauchyReals.CRealEq_rel_Reflexive; - ConstructiveCauchyReals.CRealEq_rel_Symmetric; - ConstructiveCauchyReals.CRealEq_rel_Transitive; - ConstructiveCauchyReals.CRealEq_sym; - ConstructiveCauchyReals.CRealEq_trans; ConstructiveCauchyReals.CRealGe; - ConstructiveCauchyReals.CRealLe; - ConstructiveCauchyAbs.CRealLe_0R_to_single_dist; - ConstructiveCauchyReals.CRealLe_morph_Proper; - ConstructiveCauchyReals.CRealLe_not_lt; - ConstructiveCauchyReals.CRealLe_refl; - ConstructiveCauchyRealsMult.CRealLowerBound; - ConstructiveCauchyRealsMult.CRealLowerBoundSpec; - ConstructiveCauchyRealsMult.CRealLowerBound_lt_scale; - ConstructiveCauchyReals.CRealLt; - ConstructiveRcomplete.CRealLtDisjunctEpsilon; - ConstructiveCauchyReals.CRealLtEpsilon; - ConstructiveCauchyReals.CRealLtForget; - ConstructiveRcomplete.CRealLtIsLinear; - ConstructiveCauchyReals.CRealLtProp; - ConstructiveCauchyReals.CRealLtProp_morph_Proper; - ConstructiveCauchyReals.CRealLt_0_1; - ConstructiveCauchyAbs.CRealLt_RQ_from_single_dist; - ConstructiveCauchyReals.CRealLt_above; - ConstructiveCauchyReals.CRealLt_aboveSig; - ConstructiveCauchyReals.CRealLt_aboveSig'; - ConstructiveCauchyReals.CRealLt_above_same; - ConstructiveCauchyReals.CRealLt_asym; - ConstructiveCauchyReals.CRealLt_dec; - ConstructiveCauchyReals.CRealLt_irrefl; - ConstructiveCauchyReals.CRealLt_lpo_dec; - ConstructiveCauchyReals.CRealLt_morph; - ConstructiveCauchyRealsMult.CRealQ_dense; - ConstructiveCauchyRealsMult.CRealRing_ring_lemma1; - ConstructiveCauchyRealsMult.CRealRing_ring_lemma2; - ConstructiveCauchyAbs.CReal_abs; - ConstructiveCauchyAbs.CReal_abs_appart_0; - ConstructiveCauchyAbs.CReal_abs_bound; - ConstructiveCauchyAbs.CReal_abs_cauchy; - ConstructiveCauchyAbs.CReal_abs_def2; - ConstructiveCauchyAbs.CReal_abs_le; - ConstructiveCauchyAbs.CReal_abs_left; - ConstructiveCauchyAbs.CReal_abs_minus_sym; - ConstructiveCauchyAbs.CReal_abs_morph; - ConstructiveCauchyAbs.CReal_abs_morph_Proper; - ConstructiveCauchyAbs.CReal_abs_opp; - ConstructiveCauchyAbs.CReal_abs_pos; - ConstructiveCauchyAbs.CReal_abs_right; - ConstructiveCauchyAbs.CReal_abs_scale; - ConstructiveCauchyAbs.CReal_abs_seq; - ConstructiveCauchyAbs.CReal_abs_triang; - ConstructiveCauchyReals.CReal_appart; - ConstructiveRcomplete.CReal_cv_self'; - ConstructiveRcomplete.CReal_from_cauchy; - ConstructiveRcomplete.CReal_from_cauchy_bound; - ConstructiveRcomplete.CReal_from_cauchy_cauchy; - ConstructiveRcomplete.CReal_from_cauchy_cm; - ConstructiveRcomplete.CReal_from_cauchy_cm_mono; - ConstructiveRcomplete.CReal_from_cauchy_scale; - ConstructiveRcomplete.CReal_from_cauchy_seq; - ConstructiveRcomplete.CReal_from_cauchy_seq_bound; - ConstructiveCauchyRealsMult.CReal_inv; - ConstructiveCauchyRealsMult.CReal_inv_0_lt_compat; - ConstructiveCauchyRealsMult.CReal_inv_l; - ConstructiveCauchyRealsMult.CReal_inv_l_pos; - ConstructiveCauchyRealsMult.CReal_inv_pos; - ConstructiveCauchyRealsMult.CReal_inv_pos_bound; - ConstructiveCauchyRealsMult.CReal_inv_pos_cauchy; - ConstructiveCauchyRealsMult.CReal_inv_pos_cm; - ConstructiveCauchyRealsMult.CReal_inv_pos_scale; - ConstructiveCauchyRealsMult.CReal_inv_pos_seq; - ConstructiveCauchyRealsMult.CReal_isRing; - ConstructiveCauchyRealsMult.CReal_isRingExt; - ConstructiveCauchyAbs.CReal_le_abs; - ConstructiveCauchyReals.CReal_le_lt_trans; - ConstructiveCauchyReals.CReal_le_trans; - ConstructiveCauchyReals.CReal_lt_le_trans; - ConstructiveCauchyReals.CReal_lt_trans; - ConstructiveCauchyReals.CReal_minus; - ConstructiveCauchyRealsMult.CReal_mult; - ConstructiveCauchyRealsMult.CReal_mult_1_l; - ConstructiveCauchyRealsMult.CReal_mult_assoc; - ConstructiveCauchyRealsMult.CReal_mult_bound; - ConstructiveCauchyRealsMult.CReal_mult_cauchy; - ConstructiveCauchyRealsMult.CReal_mult_comm; - ConstructiveCauchyRealsMult.CReal_mult_lt_0_compat; - ConstructiveCauchyRealsMult.CReal_mult_lt_0_compat_correct; - ConstructiveCauchyRealsMult.CReal_mult_lt_compat_l; - ConstructiveCauchyRealsMult.CReal_mult_morph_Proper; - ConstructiveCauchyRealsMult.CReal_mult_plus_distr_l; - ConstructiveCauchyRealsMult.CReal_mult_proper_0_l; - ConstructiveCauchyRealsMult.CReal_mult_proper_l; - ConstructiveCauchyRealsMult.CReal_mult_scale; - ConstructiveCauchyRealsMult.CReal_mult_seq; - ConstructiveCauchyRealsMult.CReal_neg_lt_pos; - ConstructiveCauchyRealsMult.CReal_neg_lt_pos_subproof; - ConstructiveCauchyReals.CReal_opp; ConstructiveCauchyReals.CReal_opp_0; - ConstructiveCauchyReals.CReal_opp_bound; - ConstructiveCauchyReals.CReal_opp_cauchy; - ConstructiveCauchyReals.CReal_opp_ge_le_contravar; - ConstructiveCauchyReals.CReal_opp_involutive; - ConstructiveCauchyRealsMult.CReal_opp_morph_Proper; - ConstructiveCauchyRealsMult.CReal_opp_morph_T; - ConstructiveCauchyRealsMult.CReal_opp_mult_distr_l; - ConstructiveCauchyRealsMult.CReal_opp_mult_distr_r; - ConstructiveCauchyReals.CReal_opp_scale; - ConstructiveCauchyReals.CReal_opp_seq; - ConstructiveCauchyReals.CReal_plus; - ConstructiveCauchyReals.CReal_plus_0_l; - ConstructiveCauchyReals.CReal_plus_0_r; - ConstructiveCauchyReals.CReal_plus_assoc; - ConstructiveCauchyReals.CReal_plus_bound; - ConstructiveCauchyReals.CReal_plus_cauchy; - ConstructiveCauchyReals.CReal_plus_comm; - ConstructiveCauchyReals.CReal_plus_eq_reg_l; - ConstructiveCauchyReals.CReal_plus_le_compat; - ConstructiveCauchyReals.CReal_plus_le_compat_l; - ConstructiveCauchyReals.CReal_plus_le_lt_compat; - ConstructiveCauchyReals.CReal_plus_le_reg_r; - ConstructiveCauchyReals.CReal_plus_lt_compat_l; - ConstructiveCauchyReals.CReal_plus_lt_compat_r; - ConstructiveCauchyReals.CReal_plus_lt_reg_l; - ConstructiveCauchyReals.CReal_plus_lt_reg_r; - ConstructiveCauchyReals.CReal_plus_morph; - ConstructiveCauchyReals.CReal_plus_morph_Proper; - ConstructiveCauchyReals.CReal_plus_morph_T; - ConstructiveCauchyReals.CReal_plus_opp_l; - ConstructiveCauchyReals.CReal_plus_opp_r; - ConstructiveCauchyReals.CReal_plus_proper_l; - ConstructiveCauchyReals.CReal_plus_proper_r; - ConstructiveCauchyReals.CReal_plus_scale; - ConstructiveCauchyReals.CReal_plus_seq; - ConstructiveCauchyRealsMult.CReal_red_scale; - ConstructiveCauchyReals.CReal_red_seq; - ConstructiveCauchyRealsMult.CReal_scale_sep0_limit; - ConstructiveReals.CReq; ConstructiveReals.CReq_refl; - ConstructiveReals.CReq_rel; ConstructiveReals.CReq_relT; - ConstructiveReals.CReq_rel_Reflexive; - ConstructiveReals.CReq_rel_Symmetric; - ConstructiveReals.CReq_rel_Transitive; ConstructiveReals.CReq_sym; - ConstructiveReals.CReq_trans; ConstructiveReals.CRinv; - ConstructiveReals.CRinv_0_lt_compat; ConstructiveReals.CRinv_l; - ConstructiveReals.CRinv_r; ConstructiveReals.CRisRing; - ConstructiveReals.CRisRingExt; ConstructiveLUB.CRis_upper_bound; - ConstructiveReals.CRle; ConstructiveAbs.CRle_abs; - ConstructiveReals.CRle_lt_trans; ConstructiveReals.CRle_morph_Proper; - ConstructiveReals.CRle_refl; ConstructiveReals.CRle_trans; - ConstructiveReals.CRlt; ConstructiveReals.CRltEpsilon; - ConstructiveReals.CRltForget; ConstructiveReals.CRltLinear; - ConstructiveReals.CRltProp; ConstructiveReals.CRlt_asym; - ConstructiveReals.CRlt_le_trans; ConstructiveLUB.CRlt_lpo_dec; - ConstructiveReals.CRlt_minus; ConstructiveReals.CRlt_morph; - ConstructiveReals.CRlt_proper; ConstructiveReals.CRlt_trans; - ConstructiveReals.CRminus; ConstructiveReals.CRmult; - ConstructiveReals.CRmult_0_r; ConstructiveReals.CRmult_1_l; - ConstructiveReals.CRmult_1_r; ConstructiveReals.CRmult_assoc; - ConstructiveReals.CRmult_comm; ConstructiveReals.CRmult_lt_0_compat; - ConstructiveReals.CRmult_lt_compat_l; - ConstructiveReals.CRmult_lt_compat_r; ConstructiveReals.CRmult_lt_reg_l; - ConstructiveReals.CRmult_lt_reg_r; ConstructiveReals.CRmult_morph; - ConstructiveReals.CRmult_morph_Proper; ConstructiveReals.CRmult_morph_T; - ConstructiveReals.CRmult_plus_distr_l; - ConstructiveReals.CRmult_plus_distr_r; ConstructiveReals.CRopp; - ConstructiveReals.CRopp_0; ConstructiveReals.CRopp_ge_le_contravar; - ConstructiveReals.CRopp_gt_lt_contravar; - ConstructiveReals.CRopp_involutive; ConstructiveReals.CRopp_lt_cancel; - ConstructiveReals.CRopp_morph_Proper; - ConstructiveReals.CRopp_mult_distr_l; - ConstructiveReals.CRopp_mult_distr_r; - ConstructiveReals.CRopp_plus_distr; ConstructiveReals.CRplus; - ConstructiveReals.CRplus_0_l; ConstructiveReals.CRplus_0_r; - ConstructiveReals.CRplus_assoc; ConstructiveReals.CRplus_comm; - ConstructiveReals.CRplus_eq_reg_l; ConstructiveReals.CRplus_le_compat; - ConstructiveReals.CRplus_le_compat_l; - ConstructiveReals.CRplus_le_compat_r; ConstructiveReals.CRplus_le_reg_l; - ConstructiveReals.CRplus_le_reg_r; ConstructiveReals.CRplus_lt_compat_l; - ConstructiveReals.CRplus_lt_compat_r; ConstructiveReals.CRplus_lt_reg_l; - ConstructiveReals.CRplus_lt_reg_r; ConstructiveReals.CRplus_morph; - ConstructiveReals.CRplus_morph_Proper; ConstructiveReals.CRplus_morph_T; - ConstructiveReals.CRplus_opp_l; ConstructiveReals.CRplus_opp_r; - ConstructiveReals.CRup_nat; ConstructiveReals.CRzero_double; - PSeries_reg.CVU; CompOpp; CompOpp_iff; CompOpp_inj; CompOpp_involutive; - CompSpec; CompSpec2Type; CompSpecT; CompareSpec2Type; - ConstructiveLUB.DDcut_limit; ConstructiveLUB.DDcut_limit_fix; - ConstructiveLUB.DDdec; ConstructiveLUB.DDhigh; - ConstructiveLUB.DDhighProp; ConstructiveLUB.DDinterval; - ConstructiveLUB.DDlow; ConstructiveLUB.DDlowProp; - ConstructiveLUB.DDlow_below_up; ConstructiveLUB.DDproper; - ConstructiveLUB.DDupcut; Rderiv.D_in; Rderiv.D_x; Rderiv.Dmult; Env.Env; - Ring_theory.Eq_ext; Ring_theory.Eqsth; RelationClasses.Equivalence_PER; - CRelationClasses.Equivalence_Reflexive; - RelationClasses.Equivalence_Reflexive; - CRelationClasses.Equivalence_Symmetric; - RelationClasses.Equivalence_Symmetric; - RelationClasses.Equivalence_Transitive; ZMicromega.F; Field_theory.F2AF; - Field_theory.FEeval; Field_theory.FExpr_ind; Field_theory.F_1_neq_0; - Field_theory.F_R; False_ind; False_rec; False_rect; Field_theory.Fapp; - Field_theory.Fcons0; Field_theory.Fcons1; Field_theory.Fcons2; - Field_theory.Fdiv_def; Field_theory.Field_correct; - Field_theory.Field_rw_pow_correct; - Field_theory.Field_simplify_eq_pow_correct; Field_theory.Finv_l; - Field_theory.Fnorm; Field_theory.Fnorm_FEeval_PEeval; - Field_theory.Fnorm_crossproduct; Tauto.GFormula_ind; ID; - Ring_theory.IDmorph; Ring_theory.IDphi; Rdefinitions.IPR; - Rdefinitions.IPR_2; RIneq.IPR_2_xH; RIneq.IPR_2_xI; RIneq.IPR_2_xO; - RIneq.IPR_IPR_2; RIneq.IPR_ge_1; RIneq.IPR_gt_0; RIneq.IPR_xH; - RIneq.IPR_xI; RIneq.IPR_xO; Rdefinitions.IZR; RIneq.IZR_ge; - RIneq.IZR_le; RIneq.IZR_lt; Qreals.IZR_nz; List.In; ZifyInst.Inj_Z_Z; - ZifyInst.Inj_pos_Z; RelationClasses.Irreflexive; Ring_polynom.MFactor; - Ring_polynom.MPcond; MVT.MVT; RList.MaxRlist; RList.MaxRlist_P1; - Ring_polynom.Mcphi_ok; RList.MinRlist; RList.MinRlist_P1; - RList.MinRlist_P2; Ring_polynom.Mphi; Ring_polynom.Mphi_ok; - RingMicromega.NFormula; Classical_Prop.NNPP; Field_theory.NPEadd; - Field_theory.NPEadd_ok; Field_theory.NPEequiv; Field_theory.NPEequiv_eq; - Field_theory.NPEeval_ext; Field_theory.NPEmul; Field_theory.NPEmul_ok; - Field_theory.NPEopp; Field_theory.NPEopp_ok; Field_theory.NPEpow; - Field_theory.NPEpow_ok; Field_theory.NPEsub; Field_theory.NPEsub_ok; - InitialRing.Nopp; InitialRing.Nsub; Field_theory.NtoZ; - InitialRing.Ntriv_div_th; O_S; ConstructiveEpsilon.O_witness; - RingMicromega.OpAdd; RingMicromega.OpAdd_sound; RingMicromega.OpMult; - RingMicromega.OpMult_sound; ConstructiveEpsilon.P'; - ConstructiveEpsilon.P'_decidable; EnvRing.P0; Ring_polynom.P0; - EnvRing.P1; Ring_polynom.P1; Field_theory.PCond; Field_theory.PCond_app; - Field_theory.PCond_cons; RelationClasses.PER_Symmetric; - RelationClasses.PER_Transitive; Morphisms.PER_morphism; - Morphisms.PER_morphism_obligation_1; Field_theory.PE_1_l; - Field_theory.PE_1_r; Field_theory.PEadd_ext; EnvRing.PEeval; - Ring_polynom.PEeval; Field_theory.PEmul_ext; Field_theory.PEopp_ext; - Field_theory.PEpow_0_r; Field_theory.PEpow_1_l; Field_theory.PEpow_1_r; - Field_theory.PEpow_add_r; Field_theory.PEpow_ext; - Field_theory.PEpow_mul_l; Field_theory.PEpow_mul_r; - Field_theory.PEpow_nz; Field_theory.PEsimp; Field_theory.PEsimp_ok; - Field_theory.PEsub_ext; Field_theory.PExpr_eq; - Field_theory.PExpr_eq_semi_ok; Field_theory.PExpr_eq_spec; - EnvRing.PExpr_ind; Ring_polynom.PExpr_ind; - Field_theory.PFcons0_fcons_inv; Field_theory.PFcons1_fcons_inv; - Field_theory.PFcons2_fcons_inv; Ring_polynom.PNSubst; - Ring_polynom.PNSubst1; Ring_polynom.PNSubst1_ok; Ring_polynom.PNSubstL; - Ring_polynom.PNSubstL_ok; Ring_polynom.PNSubst_ok; - Ring_polynom.POneSubst; Ring_polynom.POneSubst_ok; Ring_polynom.PSubstL; - Ring_polynom.PSubstL1; Ring_polynom.PSubstL1_ok; - Ring_polynom.PSubstL_ok; Ring_polynom.PX_ext; EnvRing.Padd; - Ring_polynom.Padd; EnvRing.PaddC; Ring_polynom.PaddC; EnvRing.PaddC_ok; - Ring_polynom.PaddC_ok; EnvRing.PaddI; Ring_polynom.PaddI; EnvRing.PaddX; - Ring_polynom.PaddX; EnvRing.PaddX_ok; Ring_polynom.PaddX_ok; - EnvRing.Padd_ok; Ring_polynom.Padd_ok; Field_theory.Pcond_Fnorm; - Field_theory.Pcond_simpl_complete; EnvRing.Peq; Ring_polynom.Peq; - EnvRing.Peq_ok; Ring_polynom.Peq_ok; EnvRing.Peq_spec; - Ring_polynom.Peq_spec; Ring_polynom.Pequiv; Ring_polynom.Pequiv_eq; - EnvRing.Pjump_add; EnvRing.Pjump_pred_double; EnvRing.Pjump_xO_tail; - EnvRing.Pmul; Ring_polynom.Pmul; EnvRing.PmulC; Ring_polynom.PmulC; - EnvRing.PmulC_aux; Ring_polynom.PmulC_aux; EnvRing.PmulC_aux_ok; - Ring_polynom.PmulC_aux_ok; EnvRing.PmulC_ok; Ring_polynom.PmulC_ok; - EnvRing.PmulI; Ring_polynom.PmulI; EnvRing.PmulI_ok; - Ring_polynom.PmulI_ok; EnvRing.Pmul_ok; Ring_polynom.Pmul_ok; - RingMicromega.PolC; RingMicromega.PolEnv; EnvRing.Pol_ind; - Ring_polynom.Pol_ind; EnvRing.Popp; Ring_polynom.Popp; EnvRing.Popp_ok; - Ring_polynom.Popp_ok; ConstructiveRcomplete.Pos2Z_pos_is_pos; - QExtra.Pos_log2floor_plus1; QExtra.Pos_log2floor_plus1_spec; - PosExtra.Pos_pow_1_r; PosExtra.Pos_pow_le_mono_r; - ConstructiveExtra.Pos_pred_double_inj; - ConstructiveRcomplete.Pospow_lin_le_2pow; EnvRing.Pphi; - Ring_polynom.Pphi; EnvRing.Pphi0; Ring_polynom.Pphi0; EnvRing.Pphi1; - Ring_polynom.Pphi1; Ring_polynom.Pphi_avoid; Ring_polynom.Pphi_avoid_ok; - Ring_polynom.Pphi_dev; Ring_polynom.Pphi_dev_ok; Ring_polynom.Pphi_ext; - Ring_polynom.Pphi_pow; Ring_polynom.Pphi_pow_ok; - BinPos.Pplus_one_succ_l; BinPos.Pplus_one_succ_r; EnvRing.Ppow_N; - Ring_polynom.Ppow_N; EnvRing.Ppow_N_ok; Ring_polynom.Ppow_N_ok; - EnvRing.Ppow_pos; Ring_polynom.Ppow_pos; EnvRing.Ppow_pos_ok; - Ring_polynom.Ppow_pos_ok; RelationClasses.PreOrder_Reflexive; - RelationClasses.PreOrder_Transitive; RIneq.Private_sumbool_to_or; - CMorphisms.Proper; Morphisms.Proper; CMorphisms.ProperProxy; - Morphisms.ProperProxy; Qminmax.Q.Proper_instance_0; - BinInt.Z.Proper_instance_0; RingMicromega.Psatz_ind; EnvRing.Psquare; - EnvRing.Psquare_ok; EnvRing.Psub; Ring_polynom.Psub; EnvRing.PsubC; - Ring_polynom.PsubC; EnvRing.PsubC_ok; RingMicromega.PsubC_ok; - Ring_polynom.PsubC_ok; EnvRing.PsubI; Ring_polynom.PsubI; EnvRing.PsubX; - Ring_polynom.PsubX; EnvRing.PsubX_ok; EnvRing.Psub_ok; - Ring_polynom.Psub_ok; Ring_polynom.Psub_opp; Rdefinitions.Q2R; - RMicromega.Q2R_0; RMicromega.Q2R_1; Qreals.Q2R_inv; - RMicromega.Q2R_inv_ext; RMicromega.Q2R_m_Proper; Qreals.Q2R_minus; - Qreals.Q2R_mult; Qreals.Q2R_opp; Qreals.Q2R_plus; RMicromega.Q2R_pow_N; - RMicromega.Q2R_pow_pos; RMicromega.Q2RpowerRZ; - ConstructiveCauchyReals.QBound; ConstructiveCauchyReals.QCauchySeq; - QMicromega.QNpower; RMicromega.QReval_expr; RMicromega.QReval_formula; - RMicromega.QReval_formula'; RMicromega.QReval_formula_compat; - QMicromega.QSORaddon; RMicromega.QSORaddon; QMicromega.QTautoChecker; - QMicromega.QTautoChecker_sound; QMicromega.QWeakChecker; - QMicromega.QWeakChecker_sound; QMicromega.QWitness; - QArith_base.Q_Setoid; QArith_base.Q_dec; RMicromega.Q_of_Rcst; - RMicromega.Q_of_RcstR; Qabs.Qabs; - ConstructiveRcomplete.Qabs_Qgt_condition; Qabs.Qabs_Qinv; - Qabs.Qabs_Qle_condition; Qabs.Qabs_Qlt_condition; Qabs.Qabs_Qmult; - ConstructiveRcomplete.Qabs_Rabs; Qabs.Qabs_case; - Qabs.Qabs_case_subproof; Qabs.Qabs_case_subproof0; - Qabs.Qabs_case_subproof1; Qabs.Qabs_gt; - ConstructiveCauchyAbs.Qabs_involutive; Qabs.Qabs_neg; Qabs.Qabs_nonneg; - Qabs.Qabs_opp; Qabs.Qabs_pos; Qabs.Qabs_triangle; - Qabs.Qabs_triangle_reverse; Qabs.Qabs_wd; Qabs.Qabs_wd_Proper; - QArith_base.Qarchimedean; QExtra.QarchimedeanExp2_Z; - QExtra.QarchimedeanLowExp2_Z; QExtra.Qbound_lt_ZExp2; - QExtra.Qbound_lt_ZExp2_spec; QExtra.Qbound_ltabs_ZExp2; - QExtra.Qbound_ltabs_ZExp2_spec; QArith_base.Qcompare; - QArith_base.Qcompare_comp; QArith_base.Qden; QArith_base.Qdiv; - QArith_base.Qdiv_comp; QArith_base.Qdiv_mult_l; QArith_base.Qeq; - QArith_base.Qeq_alt; QArith_base.Qeq_bool; QArith_base.Qeq_bool_eq; - QArith_base.Qeq_bool_iff; QArith_base.Qeq_bool_neq; QArith_base.Qeq_dec; - Qreals.Qeq_eqR; QArith_base.Qeq_eq_bool; RMicromega.Qeq_false; - QArith_base.Qeq_refl; QArith_base.Qeq_sym; QArith_base.Qeq_trans; - RMicromega.Qeq_true; QMicromega.Qeval_bop2; QMicromega.Qeval_expr; - QMicromega.Qeval_expr'; QMicromega.Qeval_expr_compat; - QMicromega.Qeval_formula; QMicromega.Qeval_formula'; - QMicromega.Qeval_formula_compat; QMicromega.Qeval_nformula; - RMicromega.Qeval_nformula; QMicromega.Qeval_nformula_dec; - QMicromega.Qeval_op2; QMicromega.Qeval_op2_hold; QMicromega.Qeval_pop2; - Qfield.Qfield_field_lemma1; Qfield.Qfield_field_lemma2; - Qfield.Qfield_lemma5; Qfield.Qfield_ring_lemma1; - Qfield.Qfield_ring_lemma2; Qround.Qfloor; Qround.Qfloor_le; - QArith_base.Qinv; QArith_base.Qinv_comp; QArith_base.Qinv_involutive; - QArith_base.Qinv_le_0_compat; QArith_base.Qinv_lt_0_compat; - QArith_base.Qinv_lt_contravar; QArith_base.Qinv_mult_distr; - QArith_base.Qinv_plus_distr; QArith_base.Qinv_pos; Qpower.Qinv_power; - Qpower.Qinv_power_positive; QArith_base.Qle; Qabs.Qle_Qabs; - Qreals.Qle_Rle; QArith_base.Qle_alt; QArith_base.Qle_antisym; - QArith_base.Qle_bool; QArith_base.Qle_bool_iff; - QArith_base.Qle_bool_imp_le; QArith_base.Qle_comp; - QArith_base.Qle_lt_trans; QArith_base.Qle_minus_iff; - QArith_base.Qle_not_lt; QArith_base.Qle_refl; - QArith_base.Qle_shift_div_l; QArith_base.Qle_shift_div_r; - QArith_base.Qle_trans; RMicromega.Qle_true; - QExtra.Qlowbound_lt_ZExp2_spec; QExtra.Qlowbound_ltabs_ZExp2; - QExtra.Qlowbound_ltabs_ZExp2_inv; QArith_base.Qlt; QArith_base.Qlt_alt; - QMicromega.Qlt_bool; QMicromega.Qlt_bool_iff; QArith_base.Qlt_compat; - Qround.Qlt_floor; QArith_base.Qlt_irrefl; QArith_base.Qlt_le_dec; - QArith_base.Qlt_le_trans; QArith_base.Qlt_le_weak; - QArith_base.Qlt_leneq; QArith_base.Qlt_minus_iff; - QArith_base.Qlt_not_eq; QArith_base.Qlt_not_le; - QArith_base.Qlt_shift_div_l; QArith_base.Qlt_shift_div_r; - QArith_base.Qlt_shift_inv_l; QArith_base.Qlt_trans; - ConstructiveRcomplete.Qlt_trans_swap_hyp; QArith_base.Qminus; - QArith_base.Qminus_comp; QArith_base.Qmult; QArith_base.Qmult_0_l; - QArith_base.Qmult_0_r; QArith_base.Qmult_1_l; QArith_base.Qmult_1_r; - QArith_base.Qmult_assoc; QArith_base.Qmult_comm; QArith_base.Qmult_comp; - QArith_base.Qmult_div_r; QArith_base.Qmult_frac_l; - QArith_base.Qmult_integral; RMicromega.Qmult_integral; - QArith_base.Qmult_integral_l; QArith_base.Qmult_inv_r; - QArith_base.Qmult_le_0_compat; QArith_base.Qmult_le_1_compat; - QArith_base.Qmult_le_compat_nonneg; QArith_base.Qmult_le_compat_r; - QArith_base.Qmult_le_l; QArith_base.Qmult_le_lt_compat_pos; - QArith_base.Qmult_le_r; QArith_base.Qmult_lt_0_le_reg_r; - QArith_base.Qmult_lt_compat_nonneg; QArith_base.Qmult_lt_compat_r; - QArith_base.Qmult_lt_l; QArith_base.Qmult_lt_r; - QArith_base.Qmult_plus_distr_l; QMicromega.Qnegate; - QMicromega.Qnormalise; QArith_base.Qnot_eq_sym; QArith_base.Qnot_le_lt; - QArith_base.Qnot_lt_le; QArith_base.Qnum; QArith_base.Qopp; - QArith_base.Qopp_comp; QArith_base.Qopp_le_compat; - QArith_base.Qopp_lt_compat; ConstructiveCauchyAbs.Qopp_mult_mone; - Qfield.Qopp_opp; QArith_base.Qplus; QArith_base.Qplus_0_l; - QArith_base.Qplus_0_r; QArith_base.Qplus_assoc; QArith_base.Qplus_comm; - QArith_base.Qplus_comp; QArith_base.Qplus_le_compat; - QArith_base.Qplus_le_l; QArith_base.Qplus_le_r; QArith_base.Qplus_lt_l; - QArith_base.Qplus_lt_le_compat; QArith_base.Qplus_lt_r; - QArith_base.Qplus_opp_r; QArith_base.Qpower; RMicromega.Qpower0; - Qpower.Qpower_0_le; Qpower.Qpower_0_lt; Qpower.Qpower_0_r; - Qpower.Qpower_1_le; Qpower.Qpower_1_le_pos; - ConstructiveRcomplete.Qpower_2powneg_le_inv; QArith_base.Qpower_comp; - Qpower.Qpower_decomp_pos; Qpower.Qpower_decomp_positive; - Qpower.Qpower_le_compat_l; Qpower.Qpower_lt_compat_l_inv; - Qpower.Qpower_minus; Qpower.Qpower_minus_pos; - Qpower.Qpower_minus_positive; Qpower.Qpower_not_0; - Qpower.Qpower_not_0_positive; Qpower.Qpower_opp; Qpower.Qpower_plus; - Qpower.Qpower_plus_positive; Qpower.Qpower_pos_positive; - QArith_base.Qpower_positive; Qpower.Qpower_positive_0; - QArith_base.Qpower_positive_comp; RMicromega.Qpower_positive_eq_zero; - RMicromega.Qpower_positive_zero; Qfield.Qpower_theory; Qreduction.Qred; - Qreduction.Qred_correct; Qfield.Qsft; QMicromega.Qsor; Qfield.Qsrt; - Rdefinitions.RbaseSymbolsImpl.R; Rdefinitions.RbaseSymbolsImpl.R0; - Rdefinitions.RbaseSymbolsImpl.R0_def; Rdefinitions.RbaseSymbolsImpl.R1; - Rdefinitions.RbaseSymbolsImpl.R1_def; Raxioms.R1_neq_R0; - RIneq.RField_field_lemma1; RIneq.RField_field_lemma3; - RIneq.RField_lemma5; RIneq.RField_ring_lemma1; Rbasic_fun.RRle_abs; - RMicromega.RTautoChecker; RMicromega.RTautoChecker_sound; - RealField.RTheory; RMicromega.RWeakChecker; - RMicromega.RWeakChecker_sound; RMicromega.RWitness; Rlimit.R_met; - RMicromega.R_of_Rcst; RealField.R_power_theory; RIneq.R_rm; - InitialRing.R_set1; InitialRing.R_set1_Reflexive; - InitialRing.R_set1_Transitive; InitialRing.R_setoid3; - InitialRing.R_setoid3_Reflexive; InitialRing.R_setoid3_Symmetric; - InitialRing.R_setoid3_Transitive; InitialRing.R_setoid4; - InitialRing.R_setoid4_Reflexive; InitialRing.R_setoid4_Transitive; - Rbasic_fun.Rabs; Rbasic_fun.Rabs_R0; Rbasic_fun.Rabs_Ropp; - Rbasic_fun.Rabs_def1; Rbasic_fun.Rabs_def2; Rbasic_fun.Rabs_inv; - Rbasic_fun.Rabs_minus_sym; Rbasic_fun.Rabs_mult; Rbasic_fun.Rabs_no_R0; - Rbasic_fun.Rabs_pos; Rbasic_fun.Rabs_pos_eq; Rbasic_fun.Rabs_pos_lt; - Rbasic_fun.Rabs_right; Rbasic_fun.Rabs_triang; - Rbasic_fun.Rabs_triang_inv; Rdefinitions.RbaseSymbolsImpl.Rabst; - Ring_theory.Radd_0_l; Ring_theory.Radd_assoc; Ring_theory.Radd_comm; - Ring_theory.Radd_ext; Rbasic_fun.Rcase_abs; - ConstructiveRcomplete.Rcauchy_complete; RMicromega.Rcst_ind; - RealField.Rdef_pow_add; Rfunctions.Rdist; Rfunctions.Rdist_plus; - Rfunctions.Rdist_pos; Rfunctions.Rdist_refl; Rfunctions.Rdist_sym; - Rfunctions.Rdist_tri; Ring_theory.Rdistr_l; Rdefinitions.Rdiv; - RIneq.Rdiv_plus_distr; CRelationClasses.Reflexive; - RelationClasses.Reflexive; Morphisms.ReflexiveProxy; - CMorphisms.Reflexive_partial_app_morphism; - Morphisms.Reflexive_partial_app_morphism; Rdefinitions.Req_appart_dec; - RIneq.Req_dec; RIneq.Req_dec_T; OrderedRing.Req_dne; OrderedRing.Req_em; - RIneq.Req_le; RIneq.Req_le_sym; RMicromega.Reval_bop2; - RMicromega.Reval_expr; RMicromega.Reval_formula; - RMicromega.Reval_formula'; RMicromega.Reval_formula_compat; - RMicromega.Reval_nformula_dec; RMicromega.Reval_op2; - RMicromega.Reval_op2_hold; RMicromega.Reval_pop2; - RMicromega.Reval_pop2_eval_op2; RealField.Rfield; Rdefinitions.Rge; - RIneq.Rge_antisym; RIneq.Rge_gt_dec; RIneq.Rge_gt_trans; RIneq.Rge_le; - RIneq.Rge_minus; RIneq.Rge_not_lt; RIneq.Rge_trans; Rdefinitions.Rgt; - RIneq.Rgt_dec; RIneq.Rgt_ge_trans; RIneq.Rgt_lt; RIneq.Rgt_minus; - RIneq.Rgt_not_eq; RIneq.Rgt_not_ge; RIneq.Rgt_not_le; RIneq.Rgt_trans; - BinInt.Z.Rgt_wd; Rdefinitions.RinvImpl.Rinv; RIneq.Rinv_0; - RIneq.Rinv_0_lt_compat; RIneq.Rinv_1; RMicromega.Rinv_1; - Rdefinitions.RinvImpl.Rinv_def; Raxioms.Rinv_l; RIneq.Rinv_lt_0_compat; - RIneq.Rinv_mult; RIneq.Rinv_neq_0_compat; RIneq.Rinv_opp; RIneq.Rinv_r; - Rdefinitions.Rle; RIneq.Rle_0_1; RIneq.Rle_0_sqr; RIneq.Rle_Reflexive; - RIneq.Rle_Transitive; Rbasic_fun.Rle_abs; RIneq.Rle_antisym; - OrderedRing.Rle_antisymm; RIneq.Rle_dec; RIneq.Rle_ge; - OrderedRing.Rle_gt_cases; RIneq.Rle_le_eq; OrderedRing.Rle_le_minus; - RIneq.Rle_lt_dec; OrderedRing.Rle_lt_eq; OrderedRing.Rle_lt_trans; - RIneq.Rle_lt_trans; OrderedRing.Rle_ngt; RIneq.Rle_not_lt; - OrderedRing.Rle_refl; RIneq.Rle_refl; OrderedRing.Rle_trans; - RIneq.Rle_trans; Rdefinitions.RbaseSymbolsImpl.Rlt; RIneq.Rlt_0_1; - RIneq.Rlt_0_2; RIneq.Rlt_0_minus; RIneq.Rlt_0_sqr; Raxioms.Rlt_asym; - RIneq.Rlt_dec; Rdefinitions.RbaseSymbolsImpl.Rlt_def; - RIneq.Rlt_dichotomy_converse; RIneq.Rlt_gt; RIneq.Rlt_irrefl; - RIneq.Rlt_le; RIneq.Rlt_le_dec; OrderedRing.Rlt_le_neq; - OrderedRing.Rlt_le_trans; RIneq.Rlt_le_trans; OrderedRing.Rlt_lt_minus; - OrderedRing.Rlt_neq; OrderedRing.Rlt_nge; RIneq.Rlt_not_eq; - RIneq.Rlt_not_ge; RIneq.Rlt_not_le; RIneq.Rlt_or_le; - OrderedRing.Rlt_trans; Raxioms.Rlt_trans; OrderedRing.Rlt_trichotomy; - BinNat.N.Rlt_wd; PeanoNat.Nat.Rlt_wd; BinInt.Z.Rlt_wd; Rbasic_fun.Rmax; - Rbasic_fun.Rmax_Rlt; Rbasic_fun.Rmax_case_strong; Rbasic_fun.Rmax_l; - Rbasic_fun.Rmax_left; Rbasic_fun.Rmax_lub_lt; Rbasic_fun.Rmax_r; - Rbasic_fun.Rmax_right; Rbasic_fun.Rmax_stable_in_negreal; - Rbasic_fun.Rmin; Rbasic_fun.Rmin_Rgt; Rbasic_fun.Rmin_Rgt_l; - Rbasic_fun.Rmin_Rgt_r; Rbasic_fun.Rmin_case_strong; - Rbasic_fun.Rmin_glb_lt; Rbasic_fun.Rmin_l; Rbasic_fun.Rmin_r; - Rbasic_fun.Rmin_stable_in_posreal; Rdefinitions.Rminus; - RIneq.Rminus_0_r; RIneq.Rminus_diag_eq; RIneq.Rminus_diag_uniq; - RIneq.Rminus_diag_uniq_sym; OrderedRing.Rminus_eq_0; - RIneq.Rminus_eq_contra; RIneq.Rminus_ge; RIneq.Rminus_gt; - RIneq.Rminus_le; RIneq.Rminus_lt; RIneq.Rminus_not_eq; - RIneq.Rminus_plus_distr; RIneq.Rminus_plus_l_l; RIneq.Rminus_plus_r_l; - RIneq.Rminus_plus_r_r; Ring_theory.Rmul_0_l; Ring_theory.Rmul_1_l; - Ring_theory.Rmul_assoc; Ring_theory.Rmul_comm; Ring_theory.Rmul_ext; - Rdefinitions.RbaseSymbolsImpl.Rmult; RIneq.Rmult_0_l; RIneq.Rmult_0_r; - Raxioms.Rmult_1_l; RIneq.Rmult_1_r; Raxioms.Rmult_assoc; - Raxioms.Rmult_comm; Rdefinitions.RbaseSymbolsImpl.Rmult_def; - RIneq.Rmult_div_l; RIneq.Rmult_div_r; RIneq.Rmult_eq_compat_l; - RIneq.Rmult_eq_reg_l; RIneq.Rmult_ge_0_gt_0_lt_compat; - RIneq.Rmult_gt_0_compat; RIneq.Rmult_integral; - RIneq.Rmult_integral_contrapositive; - RIneq.Rmult_integral_contrapositive_currified; RIneq.Rmult_inv_r_id_l; - RIneq.Rmult_inv_r_id_m; RIneq.Rmult_inv_r_uniq; - RIneq.Rmult_le_0_lt_compat; RIneq.Rmult_le_compat; - RIneq.Rmult_le_compat_l; RIneq.Rmult_le_compat_neg_l; - RIneq.Rmult_le_compat_r; RIneq.Rmult_le_pos; RIneq.Rmult_lt_0_compat; - Raxioms.Rmult_lt_compat_l; RIneq.Rmult_lt_compat_r; - RIneq.Rmult_lt_gt_compat_neg_l; RIneq.Rmult_lt_reg_l; RIneq.Rmult_ne; - RIneq.Rmult_opp_opp; Raxioms.Rmult_plus_distr_l; - RIneq.Rmult_plus_distr_r; RMicromega.Rnegate; OrderedRing.Rneq_symm; - RMicromega.Rnormalise; RIneq.Rnot_gt_ge; RIneq.Rnot_le_gt; - RIneq.Rnot_le_lt; RIneq.Rnot_lt_ge; RIneq.Rnot_lt_le; - Rdefinitions.RbaseSymbolsImpl.Ropp; RIneq.Ropp_0; Rbasic_fun.Ropp_Rmin; - RIneq.Ropp_Ropp_IZR; Ring_theory.Ropp_add; Ring_theory.Ropp_def; - Rdefinitions.RbaseSymbolsImpl.Ropp_def; RIneq.Ropp_eq_0_compat; - RIneq.Ropp_eq_compat; RIneq.Ropp_eq_reg; Ring_theory.Ropp_ext; - RIneq.Ropp_ge_cancel; RIneq.Ropp_ge_le_contravar; - RIneq.Ropp_gt_lt_0_contravar; RIneq.Ropp_gt_lt_contravar; - RIneq.Ropp_involutive; RIneq.Ropp_le_cancel; RIneq.Ropp_le_contravar; - RIneq.Ropp_le_ge_contravar; RIneq.Ropp_lt_cancel; - RIneq.Ropp_lt_contravar; RIneq.Ropp_lt_gt_0_contravar; - RIneq.Ropp_lt_gt_contravar; OrderedRing.Ropp_lt_mono; - RIneq.Ropp_minus_distr; Ring_theory.Ropp_mul_l; RIneq.Ropp_mult_distr_l; - RIneq.Ropp_mult_distr_l_reverse; RIneq.Ropp_mult_distr_r; - RIneq.Ropp_neq_0_compat; Ring_theory.Ropp_opp; RIneq.Ropp_plus_distr; - OrderedRing.Ropp_pos_neg; RingMicromega.Rops_wd; - Rdefinitions.RbaseSymbolsImpl.Rplus; OrderedRing.Rplus_0_l; - Raxioms.Rplus_0_l; OrderedRing.Rplus_0_r; RIneq.Rplus_0_r; - RIneq.Rplus_0_r_uniq; Raxioms.Rplus_assoc; OrderedRing.Rplus_cancel_l; - OrderedRing.Rplus_comm; Raxioms.Rplus_comm; - Rdefinitions.RbaseSymbolsImpl.Rplus_def; RIneq.Rplus_diag; - RIneq.Rplus_eq_compat_l; RIneq.Rplus_eq_compat_r; RIneq.Rplus_eq_reg_l; - RIneq.Rplus_ge_compat_l; RIneq.Rplus_ge_compat_r; RIneq.Rplus_ge_reg_r; - RIneq.Rplus_half_diag; RIneq.Rplus_le_compat; RIneq.Rplus_le_compat_l; - RIneq.Rplus_le_compat_r; RIneq.Rplus_le_lt_0_compat; - RIneq.Rplus_le_lt_0_neq_0; RIneq.Rplus_le_lt_compat; - OrderedRing.Rplus_le_lt_mono; OrderedRing.Rplus_le_mono; - OrderedRing.Rplus_le_mono_l; OrderedRing.Rplus_le_mono_r; - RIneq.Rplus_le_reg_l; RIneq.Rplus_le_reg_r; RIneq.Rplus_lt_0_compat; - RIneq.Rplus_lt_compat; Raxioms.Rplus_lt_compat_l; - RIneq.Rplus_lt_compat_r; RIneq.Rplus_lt_le_0_compat; - RIneq.Rplus_lt_le_compat; OrderedRing.Rplus_lt_le_mono; - OrderedRing.Rplus_lt_mono; OrderedRing.Rplus_lt_mono_l; - OrderedRing.Rplus_lt_mono_r; RIneq.Rplus_lt_reg_l; RIneq.Rplus_lt_reg_r; - RIneq.Rplus_minus_assoc; RIneq.Rplus_minus_l; RIneq.Rplus_minus_r; - RIneq.Rplus_ne; OrderedRing.Rplus_nonneg_nonneg; - OrderedRing.Rplus_nonneg_pos; RIneq.Rplus_opp_l; Raxioms.Rplus_opp_r; - RIneq.Rplus_opp_r_uniq; OrderedRing.Rplus_pos_nonneg; - OrderedRing.Rplus_pos_pos; Rdefinitions.RbaseSymbolsImpl.Rquot1; - Rdefinitions.RbaseSymbolsImpl.Rquot2; - Rdefinitions.RbaseSymbolsImpl.Rrepr; Raxioms.Rrepr_0; Raxioms.Rrepr_1; - Rdefinitions.Rrepr_appart_0; Raxioms.Rrepr_le; Raxioms.Rrepr_mult; - Raxioms.Rrepr_opp; Raxioms.Rrepr_plus; Field_theory.Rring_ring_lemma1; - RMicromega.Rsor; RIneq.Rsqr; RIneq.Rsqr_0_uniq; RIneq.Rsqr_def; - RMicromega.Rsrt; Ring_theory.Rsub_def; Ring_theory.Rth_ARth; - OrderedRing.Rtimes_0_l; OrderedRing.Rtimes_0_r; OrderedRing.Rtimes_comm; - OrderedRing.Rtimes_neg_neg; OrderedRing.Rtimes_neq_0; - OrderedRing.Rtimes_nonneg_nonneg; OrderedRing.Rtimes_pos_neg; - OrderedRing.Rtimes_pos_pos; OrderedRing.Rtimes_square_nonneg; - RIneq.Rtotal_order; ConstructiveRcomplete.Rup_pos; - RingMicromega.SORRing_ring_lemma1; OrderedRing.SOR_ring_lemma1; - RingMicromega.SORcleb_morph; RingMicromega.SORcneqb_morph; - OrderedRing.SORle_antisymm; OrderedRing.SORle_refl; - OrderedRing.SORle_trans; OrderedRing.SORle_wd; OrderedRing.SORlt_le_neq; - OrderedRing.SORlt_trichotomy; OrderedRing.SORlt_wd; - OrderedRing.SORopp_wd; OrderedRing.SORplus_le_mono_l; - OrderedRing.SORplus_wd; RingMicromega.SORpower; RingMicromega.SORrm; - OrderedRing.SORrt; OrderedRing.SORsetoid; OrderedRing.SORtimes_pos_pos; - OrderedRing.SORtimes_wd; Ring_theory.SRadd_0_l; Ring_theory.SRadd_assoc; - Ring_theory.SRadd_comm; Ring_theory.SRadd_ext; Ring_theory.SRdistr_l; - Ring_theory.SReqe_Reqe; Ring_theory.SRmul_0_l; Ring_theory.SRmul_1_l; - Ring_theory.SRmul_assoc; Ring_theory.SRmul_comm; Ring_theory.SRmul_ext; - Ring_theory.SRopp; Ring_theory.SRopp_add; Ring_theory.SRopp_ext; - Ring_theory.SRopp_mul_l; Ring_theory.SRsub; Ring_theory.SRsub_def; - Ring_theory.SRth_ARth; Setoid.Seq_refl; Setoid.Seq_sym; - Setoid.Seq_trans; Setoid.Setoid_Theory; Ring_theory.Smorph0; - Ring_theory.Smorph1; Ring_theory.Smorph_add; Ring_theory.Smorph_eq; - Ring_theory.Smorph_morph; Ring_theory.Smorph_mul; - Ring_theory.Smorph_opp; Ring_theory.Smorph_sub; - RelationClasses.StrictOrder_Irreflexive; - RelationClasses.StrictOrder_Transitive; CRelationClasses.Symmetric; - RelationClasses.Symmetric; Tauto.TFormula; CRelationClasses.Transitive; - RelationClasses.Transitive; ConstructiveRcomplete.Un_cauchy_mod; - Rseries.Un_cv; ConstructiveLimits.Un_cv_nat_real; Init.Unconvertible; - ConstructiveCauchyRealsMult.Weaken_Qle_QpowerAddExp; - ConstructiveCauchyRealsMult.Weaken_Qle_QpowerFac; - ConstructiveCauchyRealsMult.Weaken_Qle_QpowerRemSubExp; - ZMicromega.ZChecker; ZMicromega.ZChecker_sound; ZMicromega.ZNpower; - ZMicromega.ZSORaddon; ZMicromega.ZTautoChecker; - ZMicromega.ZTautoChecker_sound; ZMicromega.ZWitness; Znat.Z_N_nat; - RIneq.Z_R_minus; ZArith_dec.Z_dec'; Zdiv.Z_div_mod; - Zdiv.Z_div_mod_eq_full; ConstructiveExtra.Z_inj_nat; -...TRUNCATED BY DUNE... - Tauto.add_term; Tauto.add_term_correct; BinNat.N.add_wd; - PeanoNat.Nat.add_wd; BinInt.Z.add_wd; PeanoNat.Nat.add_wd_obligation_1; - BinPos.Pos.add_xI_pred_double; BinPos.Pos.add_xO; Rlimit.adhDa; - Rtopology.adherence; Rtopology.adherence_P1; Rtopology.adherence_P2; - Rtopology.adherence_P3; ZMicromega.agree_env; - ZMicromega.agree_env_eval_nformula; ZMicromega.agree_env_eval_nformulae; - ZMicromega.agree_env_jump; ZMicromega.agree_env_subset; - ZMicromega.agree_env_tail; all; Morphisms_Prop.all_iff_morphism; - Morphisms_Prop.all_iff_morphism_obligation_1; and_assoc; Tauto.and_cnf; - Tauto.and_cnf_opt; Tauto.and_cnf_opt_cnf_ff_r; Tauto.and_cnf_opt_cnf_tt; - and_comm; and_iff_compat_l; Morphisms_Prop.and_iff_morphism; - Morphisms_Prop.and_iff_morphism_obligation_1; and_ind; - ZifyClasses.and_morph; and_rec; and_rect; andb; Bool.andb_false_iff; - andb_prop; Bool.andb_true_iff; app; CRelationClasses.arrow; - CRelationClasses.arrow_Transitive; - CRelationClasses.arrow_Transitive_obligation_1; ZMicromega.bdepth; - BinNat.N.bi_induction; PeanoNat.Nat.bi_induction; BinInt.Z.bi_induction; - ConstructiveCauchyReals.bound; Raxioms.bound; ZMicromega.bound_var; - Rtopology.bounded; BinNat.N.case_analysis; PeanoNat.Nat.case_analysis; - ConstructiveCauchyReals.cauchy; ZMicromega.ceiling; - BinNat.N.central_induction; PeanoNat.Nat.central_induction; - BinInt.Z.central_induction; EnvRing.ceqb_spec; Field_theory.ceqb_spec; - Ring_polynom.ceqb_spec; Field_theory.ceqb_spec'; - RingMicromega.check_inconsistent; - RingMicromega.check_inconsistent_sound; - RingMicromega.check_normalised_formulas; RingMicromega.checker_nf_sound; - Classical_Prop.classic; Tauto.clause; RingMicromega.cleb_sound; - Rtopology.closed_set; Rtopology.closed_set_P1; RingMicromega.cltb; - RingMicromega.cltb_sound; RingMicromega.cneqb; - RingMicromega.cneqb_sound; Tauto.cnf; Tauto.cnf_checker; - Tauto.cnf_checker_sound; Tauto.cnf_ff; RingMicromega.cnf_negate; - RingMicromega.cnf_negate_correct; RingMicromega.cnf_normalise; - RingMicromega.cnf_normalise_correct; RingMicromega.cnf_of_list; - ZMicromega.cnf_of_list; RingMicromega.cnf_of_list_correct; - ZMicromega.cnf_of_list_correct; Tauto.cnf_tt; Rtopology.compact; - Rtopology.compact_EMP; Rtopology.compact_P1; Rtopology.compact_P2; - Rtopology.compact_P3; Rtopology.compact_eqDom; PeanoNat.Nat.compare; - BinNat.N.compare; BinPos.Pos.compare; BinInt.Z.compare; - BinNat.N.compare_antisym; PeanoNat.Nat.compare_antisym; - BinPos.Pos.compare_antisym; BinInt.Z.compare_antisym; - BinPos.Pos.compare_cont; BinPos.Pos.compare_cont_antisym; - BinPos.Pos.compare_cont_spec; BinNat.N.compare_eq_iff; - PeanoNat.Nat.compare_eq_iff; BinPos.Pos.compare_eq_iff; - BinInt.Z.compare_eq_iff; PeanoNat.Nat.compare_ge_iff; - PeanoNat.Nat.compare_gt_iff; BinInt.Z.compare_gt_iff; - BinNat.N.compare_le_iff; PeanoNat.Nat.compare_le_iff; - BinPos.Pos.compare_le_iff; BinInt.Z.compare_le_iff; - BinNat.N.compare_lt_iff; PeanoNat.Nat.compare_lt_iff; - BinPos.Pos.compare_lt_iff; BinInt.Z.compare_lt_iff; - BinNat.N.compare_nge_iff; BinInt.Z.compare_nge_iff; - BinInt.Z.compare_ngt_iff; BinNat.N.compare_nle_iff; - BinInt.Z.compare_nle_iff; BinNat.N.compare_refl; - PeanoNat.Nat.compare_refl; BinPos.Pos.compare_refl; - BinInt.Z.compare_refl; BinNat.N.compare_spec; PeanoNat.Nat.compare_spec; - BinPos.Pos.compare_spec; Qminmax.Q.OT.compare_spec; - BinInt.Z.compare_spec; BinInt.Z.compare_sub; - BinPos.Pos.compare_sub_mask; PeanoNat.Nat.compare_succ; - BinPos.Pos.compare_succ_l; BinPos.Pos.compare_succ_r; - BinPos.Pos.compare_succ_succ; BinPos.Pos.compare_xI_xI; - BinPos.Pos.compare_xI_xO; BinPos.Pos.compare_xO_xI; - BinPos.Pos.compare_xO_xO; RelationClasses.complement; - Rtopology.complementary; Raxioms.completeness; Rtopology.cond_fam; - RIneq.cond_neg; RIneq.cond_pos; Field_theory.condition; - ConstructiveEpsilon.constructive_indefinite_ground_description; - ConstructiveExtra.constructive_indefinite_ground_description_Z; - ConstructiveEpsilon.constructive_indefinite_ground_description_nat; - Rderiv.cont_deriv; Rderiv.continue_in; Ranalysis1.continuity; - Rtopology.continuity_P1; Rtopology.continuity_P2; - Rtopology.continuity_ab_maj; Rtopology.continuity_ab_min; - Rtopology.continuity_compact; Ranalysis1.continuity_pt; - Ranalysis1.continuity_pt_minus; Ranalysis1.continuity_pt_mult; - Ranalysis1.continuity_pt_opp; Rtopology.covering; - Rtopology.covering_finite; Rtopology.covering_open_set; - CRelationClasses.crelation; Field_theory.cross_product_eq; - ZMicromega.cutting_plane_sound; Decidable.decidable; - Field_theory.default_isIn; Field_theory.default_isIn_ok; - SetoidTactics.default_relation; Field_theory.denum; - Ranalysis1.deriv_constant2; Ranalysis1.deriv_maximum; - Ranalysis1.deriv_minimum; Ranalysis1.derivable; - Ranalysis1.derivable_const; Ranalysis1.derivable_continuous; - Ranalysis1.derivable_continuous_pt; Ranalysis1.derivable_derive; - Ranalysis1.derivable_id; Ranalysis1.derivable_pt; - Ranalysis1.derivable_pt_abs; Ranalysis1.derivable_pt_const; - Ranalysis1.derivable_pt_id; Ranalysis1.derivable_pt_lim; - Ranalysis1.derivable_pt_lim_D_in; Ranalysis1.derivable_pt_lim_const; - Ranalysis1.derivable_pt_lim_id; Ranalysis1.derivable_pt_lim_minus; - Ranalysis1.derivable_pt_lim_mult; Ranalysis1.derivable_pt_lim_opp; - Ranalysis1.derivable_pt_lim_opp_fwd; Ranalysis1.derivable_pt_minus; - Ranalysis1.derivable_pt_mult; Ranalysis1.derivable_pt_opp; - Ranalysis1.derive_pt; Ranalysis1.derive_pt_D_in; - Ranalysis1.derive_pt_const; Ranalysis1.derive_pt_eq; - Ranalysis1.derive_pt_eq_0; Ranalysis1.derive_pt_eq_1; - Ranalysis1.derive_pt_id; Ranalysis1.derive_pt_minus; - Ranalysis1.derive_pt_mult; Ranalysis1.derive_pt_opp; - Bool.diff_false_true; Rtopology.disc; Rtopology.disc_P1; - Field_theory.display_pow_linear; Rlimit.dist; BinInt.Z.div; - BinNat.N.div_eucl; BinInt.Z.div_eucl; BinInt.Z.div_eucl_eq; - BinNat.N.div_eucl_spec; Ring_theory.div_eucl_th; BinInt.Z.div_mod; - BinInt.Z.Private_NZDiv.div_mod_unique; BinInt.Z.div_mod_unique; - BinInt.Z.div_mul; BinInt.Z.div_unique; BinInt.Z.div_unique_exact; - BinInt.Z.div_wd; BinPos.Pos.divide; BinInt.Z.divide; - BinInt.Z.divide_Zpos; BinInt.Z.divide_Zpos_Zneg_l; - BinInt.Z.divide_Zpos_Zneg_r; BinInt.Z.divide_abs_l; - BinInt.Z.divide_abs_r; BinPos.Pos.divide_add_cancel_l; - BinInt.Z.divide_antisym; BinInt.Z.divide_antisym_abs; - BinInt.Z.divide_antisym_nonneg; BinPos.Pos.divide_mul_l; - BinPos.Pos.divide_mul_r; BinInt.Z.divide_opp_l; BinInt.Z.divide_opp_r; - BinInt.Z.divide_refl; BinInt.Z.divide_trans; BinInt.Z.divide_wd; - BinPos.Pos.divide_xO_xI; BinPos.Pos.divide_xO_xO; - Rtopology.domain_finite; BinNat.N.double; BinInt.Z.double; - BinNat.N.double_add; BinPos.Pos.double_mask; BinNat.N.double_mul; - BinPos.Pos.double_pred_mask; Tauto.eAND; Tauto.eAnd_morph_Proper; - Tauto.eFF; Tauto.eIFF; Tauto.eIFF_morph_Proper; Tauto.eIMPL; - Tauto.eIMPL_morph_Proper; Tauto.eKind; Tauto.eNOT; - Tauto.eNOT_morph_Proper; Tauto.eOR; Tauto.eOR_morph_Proper; Tauto.eTT; - Tauto.e_rtyp; Tauto.eiff; Tauto.eiff_eq; Tauto.eiff_refl; - Tauto.eiff_sym; Tauto.eiff_trans; Ztac.elim_concl_le; EnvRing.env_morph; - Rlimit.eps2; Rlimit.eps2_Rgt_R0; BinNat.N.eq; BinInt.Z.eq; - RingMicromega.eq0_cnf; Qreals.eqR_Qeq; Rtopology.eq_Dom; RIneq.eq_IZR; - RIneq.eq_IZR_R0; RIneq.eq_IZR_contrapositive; - RelationClasses.eq_Reflexive; RelationClasses.eq_Symmetric; - RelationClasses.eq_Transitive; eq_add_S; ZMicromega.eq_cnf; - BinPos.Pos.eq_dec; BinInt.Z.eq_dec; BinInt.Z.eq_decidable; - BinNat.N.Private_OrderTac.IsTotal.eq_equiv; - PeanoNat.Nat.Private_OrderTac.IsTotal.eq_equiv; - BinInt.Z.Private_OrderTac.IsTotal.eq_equiv; BinNat.N.eq_equiv; - PeanoNat.Nat.eq_equiv; BinPos.Pos.eq_equiv; Qminmax.Q.OT.eq_equiv; - BinInt.Z.eq_equiv; RelationClasses.eq_equivalence; Ztac.eq_incl; eq_ind; - eq_ind_r; BinPos.Pos.Private_Tac.eq_le; Qminmax.Q.Private_Tac.eq_le; - BinInt.Z.Private_Tac.eq_le; BinInt.Z.Private_OrderTac.Tac.eq_le; - ZMicromega.eq_le_iff; BinNat.N.eq_le_incl; PeanoNat.Nat.eq_le_incl; - BinInt.Z.eq_le_incl; PeanoNat.Nat.Private_Tac.eq_lt; - BinPos.Pos.Private_Tac.eq_lt; Qminmax.Q.Private_Tac.eq_lt; - BinInt.Z.Private_Tac.eq_lt; BinInt.Z.Private_OrderTac.Tac.eq_lt; - BinInt.Z.eq_mul_0; BinInt.Z.eq_mul_1_nonneg; BinInt.Z.eq_mul_1_nonneg'; - BinPos.Pos.Private_Tac.eq_neq; BinInt.Z.Private_OrderTac.Tac.eq_neq; - BinInt.Z.eq_opp_l; ZifyInst.eq_pos_inj; Morphisms.eq_proper_proxy; - eq_rec; eq_rec_r; eq_rect; BinPos.Pos.Private_Tac.eq_refl; - BinInt.Z.Private_OrderTac.Tac.eq_refl; BinInt.Z.eq_refl; eq_sym; - PeanoNat.Nat.Private_Tac.eq_sym; BinPos.Pos.Private_Tac.eq_sym; - Qminmax.Q.Private_Tac.eq_sym; BinInt.Z.Private_Tac.eq_sym; - BinInt.Z.Private_OrderTac.Tac.eq_sym; BinInt.Z.eq_sym_iff; eq_trans; - BinPos.Pos.Private_Tac.eq_trans; BinInt.Z.Private_OrderTac.Tac.eq_trans; - Bool.eqb; BinNat.N.eqb; BinPos.Pos.eqb; BinInt.Z.eqb; BinNat.N.eqb_eq; - BinPos.Pos.eqb_eq; BinInt.Z.eqb_eq; BinPos.Pos.eqb_neq; - BinPos.Pos.eqb_refl; BinNat.N.eqb_spec; BinPos.Pos.eqb_spec; - Bool.eqb_true_iff; SetoidTactics.equivalence_default; - RelationClasses.equivalence_rewrite_relation; RingMicromega.eval_Psatz; - ZMicromega.eval_Psatz; RingMicromega.eval_Psatz_Sound; - ZMicromega.eval_Psatz_sound; Tauto.eval_bf; Tauto.eval_bf_map; - Tauto.eval_clause; Tauto.eval_cnf; Tauto.eval_cnf_and_opt; - Tauto.eval_cnf_app; Tauto.eval_cnf_cons_iff; Tauto.eval_cnf_ff; - Tauto.eval_cnf_tt; ZMicromega.eval_expr; Tauto.eval_f; - Tauto.eval_f_morph; RingMicromega.eval_formula; - RingMicromega.eval_formulaSC; RingMicromega.eval_nformula; - ZMicromega.eval_nformula; ZMicromega.eval_nformula_bound_var; - RingMicromega.eval_nformula_dec; ZMicromega.eval_nformula_mk_eq_pos; - ZMicromega.eval_nformula_split; RingMicromega.eval_op1; - RingMicromega.eval_op2; Tauto.eval_opt_clause; RingMicromega.eval_pexpr; - RingMicromega.eval_pexprSC; RingMicromega.eval_pol; ZMicromega.eval_pol; - ZMicromega.eval_pol_Pc; RingMicromega.eval_pol_add; - ZMicromega.eval_pol_add; RingMicromega.eval_pol_norm; - ZMicromega.eval_pol_norm; RingMicromega.eval_pol_opp; - RingMicromega.eval_pol_sub; ZMicromega.eval_pol_sub; - RingMicromega.eval_sexpr; RingMicromega.eval_sformula; Tauto.eval_tt; - Morphisms_Prop.ex_iff_morphism; - Morphisms_Prop.ex_iff_morphism_obligation_1; ex_ind; Rtopology.f; - f_equal; f_equal_nat; Rtopology.family_finite; - Rtopology.family_open_set; Field_theory.fcons_ok; Ranalysis1.fct_cte; - Field_theory.field_is_integral_domain; VarMap.find; Basics.flip; - CRelationClasses.flip; RelationClasses.flip_Reflexive; List.fold_left; - List.fold_right; fst; BinPos.Pos.gcd; BinInt.Z.gcd; - BinInt.Z.gcd_divide_l; BinInt.Z.gcd_divide_r; BinPos.Pos.gcd_greatest; - BinInt.Z.gcd_greatest; BinInt.Z.gcd_nonneg; BinPos.Pos.gcdn; - BinPos.Pos.gcdn_greatest; ge; BinPos.Pos.ge; BinInt.Z.ge; - BinInt.Z.ge_le; BinPos.Pos.ge_le_iff; BinInt.Z.ge_le_iff; BinInt.Z.geb; - BinInt.Z.geb_le; BinInt.Z.geb_leb; ZMicromega.genCuttingPlane; - ZMicromega.genCuttingPlaneNone; InitialRing.gen_Zeqb_ok; - InitialRing.gen_phiN; InitialRing.gen_phiN1; InitialRing.gen_phiN_add; - InitialRing.gen_phiN_morph; InitialRing.gen_phiN_mult; - InitialRing.gen_phiN_sub; InitialRing.gen_phiPOS; - InitialRing.gen_phiPOS1; InitialRing.gen_phiZ; InitialRing.gen_phiZ1; - InitialRing.gen_phiZ1_pos_sub; InitialRing.gen_phiZ_add; - InitialRing.gen_phiZ_ext; InitialRing.gen_phiZ_morph; - InitialRing.gen_phiZ_mul; EnvRing.get_PEopp; Ring_polynom.get_PEopp; - InitialRing.get_signZ; InitialRing.get_signZ_th; - Ring_theory.get_sign_None; Ring_theory.get_sign_None_th; - BinPos.Pos.ggcd; BinInt.Z.ggcd; BinPos.Pos.ggcd_correct_divisors; - BinInt.Z.ggcd_correct_divisors; BinPos.Pos.ggcd_gcd; BinInt.Z.ggcd_gcd; - BinPos.Pos.ggcdn; BinPos.Pos.ggcdn_correct_divisors; - BinPos.Pos.ggcdn_gcdn; ConstructiveLUB.glb_dec_Q; BinPos.Pos.gt; - BinInt.Z.gt; BinPos.Pos.gt_lt; BinInt.Z.gt_lt; BinPos.Pos.gt_lt_iff; - BinInt.Z.gt_lt_iff; BinInt.Z.gt_wf; BinInt.Z.gtb; BinInt.Z.gtb_ltb; - BinInt.Z.gtb_spec; Env.hd; List.hd; Tauto.hold; Tauto.hold_eAND; - Tauto.hold_eEQ; Tauto.hold_eFF; Tauto.hold_eIFF; Tauto.hold_eIFF_IMPL; - Tauto.hold_eIMPL; Tauto.hold_eNOT; Tauto.hold_eOR; Tauto.hold_eTT; - Tauto.hold_eiff; id; Ranalysis1.id; Nnat.N2Nat.id; Znat.N2Z.id; - Nnat.Nat2N.id; Pnat.Nat2Pos.id; Znat.Nat2Z.id; Pnat.Pos2Nat.id; - Znat.Z2N.id; Znat.Z2Nat.id; BinInt.Z2Pos.id; Ring_theory.id_phi_N; - Pnat.SuccNat2Pos.id_succ; Tauto.if_cnf_tt; Field_theory.if_true; iff; - CRelationClasses.iffT; CMorphisms.iffT_arrow_subrelation; - CMorphisms.iffT_flip_arrow_subrelation; RelationClasses.iff_Reflexive; - RelationClasses.iff_Symmetric; RelationClasses.iff_Transitive; - RelationClasses.iff_equivalence; Morphisms.iff_flip_impl_subrelation; - Morphisms_Prop.iff_iff_iff_impl_morphism; - Morphisms_Prop.iff_iff_iff_impl_morphism_obligation_1; - Morphisms.iff_impl_subrelation; iff_refl; Bool.iff_reflect; iff_stepl; - iff_sym; iff_trans; Rtopology.image_dir; Rtopology.image_rec; - Basics.impl; RelationClasses.impl_Reflexive; - RelationClasses.impl_Reflexive_obligation_1; implb; - Classical_Prop.imply_to_and; ZMicromega.in_bdepth; Rtopology.included; - Rtopology.included_trans; Rtopology.ind; BinNat.N.induction; - PeanoNat.Nat.induction; ZifyClasses.inj; Nnat.N2Nat.inj; Znat.Nat2Z.inj; - Pnat.Pos2Nat.inj; BinInt.Pos2Z.inj; Pnat.Pos2Nat.inj_1; - Nnat.N2Nat.inj_add; Znat.N2Z.inj_add; Nnat.Nat2N.inj_add; - Znat.Nat2Z.inj_add; Pnat.Pos2Nat.inj_add; BinInt.Pos2Z.inj_add; - Nnat.N2Nat.inj_compare; Znat.N2Z.inj_compare; Nnat.Nat2N.inj_compare; - Znat.Nat2Z.inj_compare; Pnat.Pos2Nat.inj_compare; - Znat.Z2Nat.inj_compare; Znat.Nat2Z.inj_ge; Znat.Nat2Z.inj_iff; - BinInt.Pos2Z.inj_iff; Znat.Nat2Z.inj_le; Pnat.Pos2Nat.inj_le; - Znat.Z2Nat.inj_le; Znat.Nat2Z.inj_lt; Nnat.N2Nat.inj_max; - Znat.N2Z.inj_max; Nnat.Nat2N.inj_max; Znat.Nat2Z.inj_max; - Pnat.Pos2Nat.inj_mul; BinInt.Pos2Z.inj_mul; Znat.N2Z.inj_pos; - BinInt.Pos2Z.inj_pow; BinInt.Pos2Z.inj_pow_pos; Znat.Nat2Z.inj_succ; - Pnat.Pos2Nat.inj_succ; BinInt.Pos2Z.inj_succ; Pnat.Pos2Nat.inj_xI; - Pnat.Pos2Nat.inj_xO; ConstructiveCauchyReals.inject_Q; - ConstructiveCauchyReals.inject_Q_cauchy; - ConstructiveCauchyReals.inject_Q_compare; - ConstructiveCauchyReals.inject_Q_le; - ConstructiveCauchyReals.inject_Q_lt; - ConstructiveCauchyReals.inject_Q_morph; - ConstructiveCauchyReals.inject_Q_morph_Proper; - ConstructiveCauchyRealsMult.inject_Q_mult; - ConstructiveCauchyReals.inject_Q_plus; ConstructiveCauchyReals.inject_Z; - QArith_base.inject_Z; Rtopology.interior; Rtopology.interior_P1; - Rtopology.interior_P2; Ring_polynom.interp_PElist; - Ring_polynom.interp_PElist_ok; PeanoNat.Nat.Private_Tac.interp_ord; - BinPos.Pos.Private_Tac.interp_ord; Qminmax.Q.Private_Tac.interp_ord; - BinInt.Z.Private_Tac.interp_ord; - BinNat.N.Private_OrderTac.Tac.interp_ord; - PeanoNat.Nat.Private_OrderTac.Tac.interp_ord; - BinInt.Z.Private_OrderTac.Tac.interp_ord; Rtopology.intersection_domain; - Pnat.SuccNat2Pos.inv; ConstructiveEpsilon.inv_before_witness; - Field_theory.isIn; Field_theory.isIn_ok; - ConstructiveReals.isLinearOrder; Tauto.is_bool; Tauto.is_bool_inv; - Tauto.is_cnf_ff; Tauto.is_cnf_ff_cnf_ff; Tauto.is_cnf_ff_inv; - Tauto.is_cnf_tt; Tauto.is_cnf_tt_cnf_ff; Tauto.is_cnf_tt_inv; - ConstructiveLUB.is_lub; Raxioms.is_lub; Znat.Nat2Z.is_nonneg; - BinInt.Pos2Z.is_nonneg; ZMicromega.is_pol_Z0; - ZMicromega.is_pol_Z0_eval_pol; Pnat.Pos2Nat.is_pos; BinInt.Pos2Z.is_pos; - Pnat.Pos2Nat.is_succ; is_true; ConstructiveLUB.is_upper_bound; - Raxioms.is_upper_bound; ConstructiveLUB.is_upper_bound_closed; - ConstructiveLUB.is_upper_bound_dec; - ConstructiveLUB.is_upper_bound_epsilon; - ConstructiveLUB.is_upper_bound_glb; - ConstructiveLUB.is_upper_bound_not_epsilon; BinPos.Pos.iter; - BinPos.Pos.iter_add; BinPos.Pos.iter_ind; BinPos.Pos.iter_invariant; - BinPos.Pos.iter_op; BinPos.Pos.iter_op_succ; BinPos.Pos.iter_succ; - BinPos.Pos.iter_swap; BinPos.Pos.iter_swap_gen; BinList.jump; Env.jump; - BinList.jump_add; Env.jump_add; Ring_polynom.jump_add'; - BinList.jump_pred_double; Env.jump_pred_double; Env.jump_simpl; - BinList.jump_succ; BinList.jump_tl; BinNat.N.le; BinPos.Pos.le; - BinInt.Z.le; ZMicromega.le_0_iff; BinNat.N.le_0_l; PeanoNat.Nat.le_0_l; - le_0_n; BinInt.Z.le_0_sub; BinPos.Pos.le_1_l; le_S_n; - BinInt.Z.le_add_le_sub_l; BinInt.Z.le_add_le_sub_r; - BinPos.Pos.le_antisym; BinPos.Pos.Private_Tac.le_antisym; - BinInt.Z.Private_OrderTac.Tac.le_antisym; BinInt.Z.le_antisymm; - Qminmax.Q.Private_Tac.le_eq; BinInt.Z.Private_Tac.le_eq; - BinInt.Z.Private_OrderTac.Tac.le_eq; BinInt.Z.le_exists_sub; - BinInt.Z.le_ge; BinInt.Z.le_ge_cases; BinNat.N.le_gt_cases; - PeanoNat.Nat.le_gt_cases; BinInt.Z.le_gt_cases; le_ind; BinInt.Z.le_ind; - BinNat.N.le_le_succ_r; PeanoNat.Nat.le_le_succ_r; BinInt.Z.le_le_succ_r; - BinInt.Z.le_lt_add_lt; Compare_dec.le_lt_dec; - PeanoNat.Nat.Private_Tac.le_lt_trans; - BinPos.Pos.Private_Tac.le_lt_trans; Qminmax.Q.Private_Tac.le_lt_trans; - BinInt.Z.Private_Tac.le_lt_trans; - BinNat.N.Private_OrderTac.Tac.le_lt_trans; - PeanoNat.Nat.Private_OrderTac.Tac.le_lt_trans; - BinInt.Z.Private_OrderTac.Tac.le_lt_trans; BinInt.Z.le_lt_trans; - BinNat.N.Private_OrderTac.IsTotal.le_lteq; - PeanoNat.Nat.Private_OrderTac.IsTotal.le_lteq; - BinInt.Z.Private_OrderTac.IsTotal.le_lteq; BinNat.N.le_lteq; - PeanoNat.Nat.le_lteq; BinPos.Pos.le_lteq; Qminmax.Q.OT.le_lteq; - BinInt.Z.le_lteq; PeanoNat.Nat.le_max_l; BinPos.Pos.le_max_l; - PeanoNat.Nat.le_max_r; BinPos.Pos.le_max_r; BinInt.Z.le_min_l; le_n_S; - ZMicromega.le_neg; BinInt.Z.le_neq; BinPos.Pos.Private_Tac.le_neq_lt; - BinInt.Z.Private_OrderTac.Tac.le_neq_lt; PeanoNat.Nat.le_ngt; - BinInt.Z.le_ngt; BinPos.Pos.le_nlt; le_pred; BinNat.N.le_preorder; - PeanoNat.Nat.le_preorder; BinInt.Z.le_preorder; BinNat.N.le_refl; - PeanoNat.Nat.le_refl; BinPos.Pos.le_refl; - BinInt.Z.Private_OrderTac.Tac.le_refl; BinInt.Z.le_refl; - BinInt.Z.le_sub_le_add_l; BinInt.Z.le_sub_le_add_r; BinNat.N.le_succ_l; - PeanoNat.Nat.le_succ_l; BinPos.Pos.le_succ_l; BinInt.Z.le_succ_l; - BinNat.N.le_succ_r; PeanoNat.Nat.le_succ_r; BinInt.Z.le_succ_r; - BinNat.N.le_trans; PeanoNat.Nat.le_trans; BinPos.Pos.le_trans; - BinInt.Z.le_trans; BinNat.N.le_wd; PeanoNat.Nat.le_wd; BinInt.Z.le_wd; - BinNat.N.leb; BinPos.Pos.leb; BinInt.Z.leb; BinInt.Z.leb_gt; - BinNat.N.leb_le; BinPos.Pos.leb_le; BinInt.Z.leb_le; BinInt.Z.leb_nle; - BinNat.N.leb_spec; BinInt.Z.leb_spec; BinNat.N.leb_spec0; - BinInt.Z.leb_spec0; BinInt.Z.left_induction; Rlimit.limit1_in; - Rlimit.limit_Ropp; Rlimit.limit_in; Rlimit.limit_minus; - Rlimit.limit_mul; Rlimit.limit_plus; - ConstructiveCauchyReals.linear_order_T; - ConstructiveEpsilon.linear_search_conform; - ConstructiveEpsilon.linear_search_from_0_conform; list_ind; list_rec; - list_rect; Ring_polynom.local_mkpow_ok; lt; BinNat.N.lt; BinPos.Pos.lt; - BinInt.Z.lt; BinInt.Z.lt_0_1; RIneq.lt_0_IZR; BinInt.Z.lt_0_sub; - PeanoNat.Nat.lt_0_succ; BinInt.Z.lt_1_2; BinInt.Z.lt_1_l; - BinInt.Z.lt_1_mul_pos; BinPos.Pos.lt_1_succ; - ConstructiveReals.lt_CR_of_Q; RIneq.lt_IZR; BinInt.Z.lt_add_lt_sub_r; - BinInt.Z.lt_add_pos_l; BinInt.Z.lt_add_pos_r; BinPos.Pos.lt_add_r; - BinNat.N.lt_asymm; PeanoNat.Nat.lt_asymm; BinInt.Z.lt_asymm; - BinNat.N.Private_OrderTac.IsTotal.lt_compat; - PeanoNat.Nat.Private_OrderTac.IsTotal.lt_compat; - BinInt.Z.Private_OrderTac.IsTotal.lt_compat; BinNat.N.lt_compat; - PeanoNat.Nat.lt_compat; BinPos.Pos.lt_compat; Qminmax.Q.OT.lt_compat; - BinInt.Z.lt_compat; BinPos.Pos.Private_Tac.lt_eq; - Qminmax.Q.Private_Tac.lt_eq; BinInt.Z.Private_Tac.lt_eq; - BinNat.N.Private_OrderTac.Tac.lt_eq; - PeanoNat.Nat.Private_OrderTac.Tac.lt_eq; - BinInt.Z.Private_OrderTac.Tac.lt_eq; BinNat.N.lt_eq_cases; - PeanoNat.Nat.lt_eq_cases; BinPos.Pos.lt_eq_cases; BinInt.Z.lt_eq_cases; - BinNat.N.lt_exists_pred; PeanoNat.Nat.lt_exists_pred; - BinInt.Z.lt_exists_pred; BinInt.Z.lt_ge_cases; BinPos.Pos.lt_gt; - BinInt.Z.lt_gt; BinInt.Z.lt_gt_cases; BinPos.Pos.lt_iff_add; - BinNat.N.lt_ind; BinInt.Z.lt_ind; BinNat.N.lt_ind_rel; - ConstructiveCauchyReals.lt_inject_Q; BinNat.N.lt_irrefl; - PeanoNat.Nat.lt_irrefl; BinPos.Pos.lt_irrefl; - PeanoNat.Nat.Private_Tac.lt_irrefl; BinPos.Pos.Private_Tac.lt_irrefl; - Qminmax.Q.Private_Tac.lt_irrefl; BinInt.Z.Private_Tac.lt_irrefl; - BinNat.N.Private_OrderTac.Tac.lt_irrefl; - PeanoNat.Nat.Private_OrderTac.Tac.lt_irrefl; - BinInt.Z.Private_OrderTac.Tac.lt_irrefl; BinInt.Z.lt_irrefl; - ZMicromega.lt_le_iff; BinNat.N.lt_le_incl; PeanoNat.Nat.lt_le_incl; - BinInt.Z.lt_le_incl; BinInt.Z.lt_le_pred; PeanoNat.Nat.lt_le_trans; - BinPos.Pos.lt_le_trans; BinInt.Z.lt_le_trans; BinNat.N.lt_lt_succ_r; - PeanoNat.Nat.lt_lt_succ_r; BinInt.Z.lt_lt_succ_r; BinInt.Z.lt_neq; - BinInt.Z.lt_nge; BinPos.Pos.lt_nle; - BinNat.N.Private_OrderTac.IsTotal.lt_strorder; - PeanoNat.Nat.Private_OrderTac.IsTotal.lt_strorder; - BinInt.Z.Private_OrderTac.IsTotal.lt_strorder; BinNat.N.lt_strorder; - PeanoNat.Nat.lt_strorder; BinPos.Pos.lt_strorder; - Qminmax.Q.OT.lt_strorder; BinInt.Z.lt_strorder; - BinInt.Z.lt_sub_lt_add_r; BinNat.N.lt_succ_diag_r; - PeanoNat.Nat.lt_succ_diag_r; BinPos.Pos.lt_succ_diag_r; - BinInt.Z.lt_succ_diag_r; BinNat.N.lt_succ_l; BinInt.Z.lt_succ_l; - BinNat.N.lt_succ_r; PeanoNat.Nat.lt_succ_r; BinPos.Pos.lt_succ_r; - BinInt.Z.lt_succ_r; BinNat.N.Private_OrderTac.IsTotal.lt_total; - PeanoNat.Nat.Private_OrderTac.IsTotal.lt_total; - BinInt.Z.Private_OrderTac.IsTotal.lt_total; BinNat.N.lt_total; - PeanoNat.Nat.lt_total; Qminmax.Q.OT.lt_total; BinPos.Pos.lt_total; - BinInt.Z.lt_total; BinNat.N.lt_trans; PeanoNat.Nat.lt_trans; - BinPos.Pos.lt_trans; PeanoNat.Nat.Private_Tac.lt_trans; - BinPos.Pos.Private_Tac.lt_trans; BinInt.Z.Private_Tac.lt_trans; - BinNat.N.Private_OrderTac.Tac.lt_trans; - PeanoNat.Nat.Private_OrderTac.Tac.lt_trans; - BinInt.Z.Private_OrderTac.Tac.lt_trans; BinInt.Z.lt_trans; - BinNat.N.lt_trichotomy; PeanoNat.Nat.lt_trichotomy; - BinInt.Z.lt_trichotomy; BinNat.N.lt_wd; PeanoNat.Nat.lt_wd; - BinInt.Z.lt_wd; PeanoNat.Nat.lt_wd_obligation_1; BinNat.N.lt_wf; - PeanoNat.Nat.lt_wf; BinInt.Z.lt_wf; BinInt.Z.ltb; BinInt.Z.ltb_ge; - BinInt.Z.ltb_lt; BinInt.Z.ltb_nlt; BinInt.Z.ltb_spec; - BinInt.Z.ltb_spec0; Wf_nat.ltof; ZMicromega.ltof_bdepth_split_l; - ZMicromega.ltof_bdepth_split_r; ZMicromega.makeCuttingPlane; - ZMicromega.makeCuttingPlane_ns_sound; Refl.make_conj; - Refl.make_conj_app; Refl.make_conj_cons; Refl.make_conj_impl; - Refl.make_conj_in; Refl.make_conj_rapp; Refl.make_impl; - Refl.make_impl_map; List.map; RingMicromega.map_Formula; - RingMicromega.map_PExpr; Tauto.map_bformula; RingMicromega.map_option; - RingMicromega.map_option2; BinPos.Pos.mask2cmp; PeanoNat.Nat.max; - BinNat.N.max; BinPos.Pos.max; BinInt.Z.max; BinPos.Pos.max_1_l; - BinInt.Z.max_case; BinPos.Pos.max_case_strong; - BinPos.Pos.Private_Dec.max_case_strong; - BinInt.Z.Private_Dec.max_case_strong; BinInt.Z.max_case_strong; - BinInt.Z.max_comm; max_l; PeanoNat.Nat.max_l; BinPos.Pos.max_l; - BinInt.Z.max_l; BinPos.Pos.max_le_compat_r; BinPos.Pos.max_lub_iff; - BinPos.Pos.max_mono; BinPos.Pos.max_monotone; max_r; PeanoNat.Nat.max_r; - BinPos.Pos.max_r; BinInt.Z.max_r; PeanoNat.Nat.max_spec; - BinPos.Pos.max_spec; BinInt.Z.max_spec; ZMicromega.max_var; - ZMicromega.max_var_acc; ZMicromega.max_var_nformulae; - ZMicromega.max_var_nformulae_mono_aux; - ZMicromega.max_var_nformulae_mono_aux'; - RingMicromega.micomega_sor_setoid; - RingMicromega.micomega_sor_setoid_Reflexive; - RingMicromega.micomega_sor_setoid_Symmetric; - RingMicromega.micomega_sor_setoid_Transitive; BinInt.Z.min; - BinInt.Z.Private_Dec.min_case; BinInt.Z.Private_Dec.min_case_strong; - BinInt.Z.Private_Dec.min_dec; BinInt.Z.min_dec; BinInt.Z.min_l; - BinInt.Z.min_r; BinInt.Z.min_spec; RIneq.minus_IPR; RIneq.minus_IZR; - Ranalysis1.minus_fct; EnvRing.mkPX; Ring_polynom.mkPX; - Ring_polynom.mkPX_ext; EnvRing.mkPX_ok; Ring_polynom.mkPX_ok; - EnvRing.mkPinj; Ring_polynom.mkPinj; Ring_polynom.mkPinj_ext; - EnvRing.mkPinj_ok; Ring_polynom.mkPinj_ok; EnvRing.mkPinj_pred; - Ring_polynom.mkPinj_pred; Ring_polynom.mkVmon; Ring_polynom.mkVmon_ok; - EnvRing.mkX; Ring_polynom.mkX; EnvRing.mkX_ok; Ring_polynom.mkX_ok; - EnvRing.mkXi; Ring_polynom.mkXi; Ring_polynom.mkZmon; - Ring_polynom.mkZmon_ok; EnvRing.mk_X; Ring_polynom.mk_X; Tauto.mk_and; - ZMicromega.mk_eq_pos; Tauto.mk_iff; Tauto.mk_iff_is_bool; Tauto.mk_impl; - Ring_polynom.mk_monpol_list; Tauto.mk_or; Ring_polynom.mkadd_mult; - Ring_polynom.mkadd_mult_ok; ZifyClasses.mkapp; ZifyClasses.mkapp2; - Ring_polynom.mkmult1; Ring_polynom.mkmult1_ok; Ring_polynom.mkmult_c; - Ring_polynom.mkmult_c_ok; Ring_polynom.mkmult_c_pos; - Ring_polynom.mkmult_c_pos_ok; Ring_polynom.mkmult_pow; - Ring_polynom.mkmult_pow_ok; Ring_polynom.mkmult_rec; - Ring_polynom.mkmult_rec_ok; Ring_polynom.mkmultm1; - Ring_polynom.mkmultm1_ok; Ring_polynom.mkopp_pow; - Ring_polynom.mkopp_pow_ok; Ring_polynom.mkpow; Ring_polynom.mkpow_ok; - ZifyClasses.mkrel; BinInt.Z.mod_eq; BinInt.Z.mod_mul; - BinInt.Z.mod_neg_bound; BinInt.Z.mod_pos_bound; BinInt.Z.modulo; - Ring_polynom.mon_of_pol; Ring_polynom.mon_of_pol_ok; Ring_theory.morph0; - Ring_theory.morph1; Ring_theory.morph_add; Ring_theory.morph_eq; - Ring_theory.morph_mul; Ring_theory.morph_opp; Ring_theory.morph_sub; - Nat.mul; BinNat.N.mul; BinPos.Pos.mul; BinInt.Z.mul; BinNat.N.mul_0_l; - BinInt.Z.mul_0_l; BinNat.N.mul_0_r; BinInt.Z.Private_BootStrap.mul_0_r; - BinInt.Z.mul_0_r; BinPos.Pos.mul_1_l; - BinInt.Z.Private_BootStrap.mul_1_l; BinInt.Z.mul_1_l; - BinPos.Pos.mul_1_r; BinInt.Z.mul_1_r; BinPos.Pos.mul_add_distr_l; - BinInt.Z.mul_add_distr_l; BinInt.Z.Private_BootStrap.mul_add_distr_pos; - BinPos.Pos.mul_add_distr_r; BinInt.Z.Private_BootStrap.mul_add_distr_r; - BinInt.Z.mul_add_distr_r; BinPos.Pos.mul_assoc; BinInt.Z.mul_assoc; - BinInt.Z.mul_cancel_l; BinInt.Z.mul_cancel_r; BinNat.N.mul_comm; - BinPos.Pos.mul_comm; BinInt.Z.mul_comm; BinPos.Pos.mul_compare_mono_l; - BinPos.Pos.mul_compare_mono_r; BinInt.Z.mul_div_le; Rlimit.mul_factor; - Rlimit.mul_factor_gt; Rlimit.mul_factor_gt_f; Rlimit.mul_factor_wd; - BinInt.Z.mul_id_l; BinPos.Pos.mul_le_mono_l; - BinInt.Z.mul_le_mono_nonneg; BinInt.Z.mul_le_mono_nonneg_l; - BinInt.Z.mul_le_mono_nonneg_r; BinInt.Z.mul_le_mono_nonpos_l; - BinInt.Z.mul_le_mono_nonpos_r; BinInt.Z.mul_le_mono_pos_l; - BinInt.Z.mul_le_mono_pos_r; BinPos.Pos.mul_lt_mono_l; - BinInt.Z.mul_lt_mono_neg_l; BinInt.Z.mul_lt_mono_neg_r; - BinInt.Z.mul_lt_mono_nonneg; BinInt.Z.mul_lt_mono_pos_l; - BinInt.Z.mul_lt_mono_pos_r; BinPos.Pos.mul_lt_mono_r; - BinInt.Z.mul_lt_pred; BinInt.Z.mul_neg_neg; BinInt.Z.mul_neg_pos; - BinInt.Z.mul_nonneg_nonneg; BinInt.Z.mul_nonneg_nonpos; - BinInt.Z.mul_opp_comm; BinInt.Z.mul_opp_l; BinInt.Z.mul_opp_opp; - BinInt.Z.Private_BootStrap.mul_opp_r; BinInt.Z.mul_opp_r; - BinInt.Z.mul_pos_cancel_l; BinInt.Z.mul_pos_neg; BinInt.Z.mul_pos_pos; - BinInt.Z.mul_reg_r; BinInt.Z.mul_shuffle0; BinInt.Z.mul_shuffle1; - BinPos.Pos.mul_sub_distr_l; BinPos.Pos.mul_sub_distr_r; - BinNat.N.mul_succ_l; BinPos.Pos.mul_succ_l; BinInt.Z.mul_succ_l; - BinNat.N.mul_succ_r; BinPos.Pos.mul_succ_r; BinInt.Z.mul_succ_r; - BinNat.N.mul_wd; BinInt.Z.mul_wd; BinPos.Pos.mul_xI_r; - BinPos.Pos.mul_xO_r; RIneq.mult_IPR; RIneq.mult_IZR; - Ring_polynom.mult_dev; Ring_polynom.mult_dev_ok; Ranalysis1.mult_fct; - ZMicromega.narrow_interval_lower_bound; Znat.nat_N_Z; - Compare_dec.nat_compare_ge; Compare_dec.nat_compare_le; - Compare_dec.nat_compare_lt; nat_ind; nat_rec; nat_rect; RIneq.neg; - BinInt.Pos2Z.neg_is_neg; ZMicromega.negate; ZMicromega.negate_correct; - negb; Bool.negb_false_iff; Bool.negb_true_iff; Rtopology.neighbourhood; - PeanoNat.Nat.neq_0_lt_0; RelationClasses.neq_Symmetric; - BinPos.Pos.Private_Tac.neq_eq; BinInt.Z.Private_OrderTac.Tac.neq_eq; - BinNat.N.neq_succ_0; PeanoNat.Nat.neq_succ_0; BinNat.N.neq_succ_diag_l; - PeanoNat.Nat.neq_succ_diag_l; BinInt.Z.neq_succ_diag_l; - BinInt.Z.Private_OrderTac.Tac.neq_sym; BinInt.Z.neq_sym; - ZMicromega.nformula_of_cutting_plane; - RingMicromega.nformula_plus_nformula; - RingMicromega.nformula_plus_nformula_correct; - RingMicromega.nformula_times_nformula; - RingMicromega.nformula_times_nformula_correct; BinInt.Z.nle_gt; - BinNat.N.nle_succ_diag_l; PeanoNat.Nat.nle_succ_diag_l; - BinInt.Z.nle_succ_diag_l; PeanoNat.Nat.nlt_0_r; BinPos.Pos.nlt_1_r; - BinInt.Z.nlt_ge; BinNat.N.nlt_succ_diag_l; PeanoNat.Nat.nlt_succ_diag_l; - BinInt.Z.nlt_succ_diag_l; Ranalysis1.no_cond; RingMicromega.norm; - ZMicromega.normZ; EnvRing.norm_aux; Ring_polynom.norm_aux; - EnvRing.norm_aux_PEadd; Ring_polynom.norm_aux_PEadd; - EnvRing.norm_aux_PEopp; Ring_polynom.norm_aux_PEopp; - EnvRing.norm_aux_spec; Ring_polynom.norm_aux_spec; - Ring_polynom.norm_subst; Ring_polynom.norm_subst_ok; - Ring_polynom.norm_subst_spec; RingMicromega.normalise; - ZMicromega.normalise; ZMicromega.normalise_correct; - RingMicromega.normalise_sound; not; RIneq.not_0_IZR; - ZArith_dec.not_Zeq_inf; Classical_Pred_Type.not_all_ex_not; - Classical_Pred_Type.not_all_not_ex; Classical_Prop.not_and_or; - not_eq_sym; Classical_Pred_Type.not_ex_all_not; - BinPos.Pos.Private_Tac.not_ge_lt; - BinNat.N.Private_OrderTac.Tac.not_ge_lt; - PeanoNat.Nat.Private_OrderTac.Tac.not_ge_lt; - BinInt.Z.Private_OrderTac.Tac.not_ge_lt; - PeanoNat.Nat.Private_Tac.not_gt_le; BinPos.Pos.Private_Tac.not_gt_le; - Qminmax.Q.Private_Tac.not_gt_le; BinInt.Z.Private_Tac.not_gt_le; - BinNat.N.Private_OrderTac.Tac.not_gt_le; - PeanoNat.Nat.Private_OrderTac.Tac.not_gt_le; - BinInt.Z.Private_OrderTac.Tac.not_gt_le; - Morphisms_Prop.not_iff_morphism; - Morphisms_Prop.not_iff_morphism_obligation_1; - Classical_Prop.not_imply_elim; Classical_Prop.not_imply_elim2; - BinPos.Pos.Private_Tac.not_neq_eq; - BinInt.Z.Private_OrderTac.Tac.not_neq_eq; Bool.not_true_iff_false; - BinList.nth; Env.nth; List.nth; List.nth_in_or_default; - BinList.nth_jump; Env.nth_jump; BinList.nth_pred_double; - Env.nth_pred_double; Env.nth_spec; Field_theory.num; BinInt.Z.of_N; - BinNat.N.of_nat; BinPos.Pos.of_nat; BinInt.Z.of_nat; - BinPos.Pos.of_nat_succ; BinPos.Pos.of_succ_nat; BinInt.Z.one_succ; - Rtopology.open_set; Rtopology.open_set_P1; Rtopology.open_set_P4; - Rtopology.open_set_P6; BinInt.Z.opp; BinInt.Z.opp_0; RIneq.opp_IZR; - BinInt.Z.Private_BootStrap.opp_add_distr; BinInt.Z.opp_add_distr; - Ranalysis1.opp_fct; BinInt.Z.Private_BootStrap.opp_inj; - BinInt.Z.opp_inj; BinInt.Z.opp_inj_wd; - ConstructiveCauchyReals.opp_inject_Q; BinInt.Z.opp_involutive; - BinInt.Z.opp_le_mono; BinInt.Z.opp_lt_mono; BinInt.Z.opp_nonneg_nonpos; - BinInt.Z.opp_nonpos_nonneg; BinInt.Pos2Z.opp_pos; BinInt.Z.opp_pred; - BinInt.Z.opp_sub_distr; BinInt.Z.opp_succ; BinInt.Z.opp_wd; or_cancel_r; - Tauto.or_clause; Tauto.or_clause_cnf; Tauto.or_clause_cnf_correct; - Tauto.or_clause_correct; Tauto.or_cnf; Tauto.or_cnf_correct; - Tauto.or_cnf_opt; Tauto.or_cnf_opt_cnf_ff; Tauto.or_cnf_opt_cnf_ff_r; - Tauto.or_cnf_opt_correct; or_comm; or_iff_compat_r; - Morphisms_Prop.or_iff_morphism; - Morphisms_Prop.or_iff_morphism_obligation_1; or_ind; orb; Bool.orb_comm; - Bool.orb_true_iff; BinInt.Z.order_induction; BinInt.Z.order_induction_0; - RingMicromega.padd; ZMicromega.padd; BinPos.Pos.peano_ind; - BinInt.Z.peano_ind; BinNat.N.peano_rect; BinPos.Pos.peano_rect; - Morphisms.per_partial_app_morphism; - Morphisms.per_partial_app_morphism_obligation_1; - RingMicromega.pexpr_times_nformula; - RingMicromega.pexpr_times_nformula_correct; Ring_theory.phi_ext1_Proper; - RIneq.plus_IPR; RIneq.plus_IZR; RIneq.plus_IZR_NEG_POS; plus_Sn_m; - plus_n_O; plus_n_Sm; Rtopology.point_adherent; - Morphisms.pointwise_relation; QMicromega.pop2_bop2; - RMicromega.pop2_bop2; ZMicromega.pop2_bop2; RingMicromega.popp; - ZMicromega.popp; RIneq.pos; BinNat.N.pos_div_eucl; - BinInt.Z.pos_div_eucl; BinInt.Z.pos_div_eucl_bound; - BinInt.Z.pos_div_eucl_eq; BinNat.N.pos_div_eucl_spec; - BinInt.Pos2Z.pos_is_pos; BinInt.Pos2Z.pos_le_pos; BinInt.Z.pos_sub; - BinInt.Z.Private_BootStrap.pos_sub_add; BinInt.Z.pos_sub_diag; - BinInt.Z.pos_sub_discr; BinInt.Z.pos_sub_gt; BinInt.Z.pos_sub_lt; - BinInt.Z.pos_sub_opp; BinInt.Z.pos_sub_spec; Znat.positive_N_nat; - BinNums.positive_ind; Znat.positive_nat_Z; BinNums.positive_rec; - BinNums.positive_rect; Rpow_def.pow; BinPos.Pos.pow; BinInt.Z.pow; - BinInt.Z.pow_0_r; BinInt.Z.pow_1_l; BinPos.Pos.pow_1_r; - BinInt.Z.pow_1_r; Ring_theory.pow_N; Field_theory.pow_N_ext; - Ring_theory.pow_N_pow_N; Ring_theory.pow_N_th; BinInt.Z.pow_add_r; - Field_theory.pow_ext; BinInt.Z.pow_gt_1; BinInt.Z.pow_le_mono_r; - BinInt.Z.pow_lt_mono_l; BinInt.Z.pow_lt_mono_r; BinInt.Z.pow_neg_r; - BinInt.Z.pow_nonneg; Ring_theory.pow_pos; BinInt.Z.pow_pos; - Field_theory.pow_pos_0; Field_theory.pow_pos_1; EnvRing.pow_pos_add; - Ring_polynom.pow_pos_add; Ring_theory.pow_pos_add; - Field_theory.pow_pos_add_r; Field_theory.pow_pos_cst; - Field_theory.pow_pos_div; Field_theory.pow_pos_mul_l; - Field_theory.pow_pos_mul_r; BinInt.Z.pow_pos_nonneg; - Field_theory.pow_pos_nz; Ring_theory.pow_pos_succ; - Ring_theory.pow_pos_swap; BinPos.Pos.pow_succ_r; BinInt.Z.pow_succ_r; - BinInt.Z.pow_twice_r; BinInt.Z.pow_wd; Rfunctions.powerRZ; - Ranalysis1.pr_nu; Ranalysis4.pr_nu_var; PeanoNat.Nat.pred; - BinNat.N.pred; BinPos.Pos.pred; BinInt.Z.pred; BinNat.N.pred_0; - PeanoNat.Nat.pred_0; BinPos.Pos.pred_N; BinPos.Pos.pred_N_succ; - BinPos.Pos.pred_double; BinInt.Z.pred_double; - BinPos.Pos.pred_double_succ; BinInt.Z.pred_inj; BinInt.Z.pred_inj_wd; - BinPos.Pos.pred_mask; BinNat.N.pred_succ; PeanoNat.Nat.pred_succ; - BinInt.Z.pred_succ; BinNat.N.pred_wd; PeanoNat.Nat.pred_wd; - BinInt.Z.pred_wd; PeanoNat.Nat.pred_wd_obligation_1; prod_ind; - prod_rect; proj1; proj1_sig; proj2; proj2_sig; - Rtopology.prolongement_C0; Rlimit.prop_eps; Morphisms.proper_prf; - Morphisms.proper_sym_impl_iff; RingMicromega.psub; ZMicromega.psub; - RingMicromega.psubC; QMicromega.qdeduce; QMicromega.qunsat; - BinInt.Z.quotrem; BinInt.Z.quotrem_eq; Ring_polynom.r_list_pow; - Ring_polynom.r_list_pow_rev; Field_theory.radd_ext; - Ring_theory.radd_ext2_Proper; InitialRing.radd_ext3_Proper; - InitialRing.radd_ext4_Proper; EnvRing.radd_ext_Proper; - Field_theory.radd_ext_Proper; InitialRing.radd_ext_Proper; - Ring_polynom.radd_ext_Proper; RMicromega.rdeduce; Field_theory.rdiv1; - Field_theory.rdiv2b; Field_theory.rdiv3b; Field_theory.rdiv4; - Field_theory.rdiv4b; Field_theory.rdiv5; Field_theory.rdiv6; - Field_theory.rdiv7; Field_theory.rdiv7b; Field_theory.rdiv_ext; - Field_theory.rdiv_r_r; Field_theory.rdiv_simpl; - Morphisms.reflexive_eq_dom_reflexive; Morphisms.reflexive_proper; - CMorphisms.reflexive_proper_proxy; Morphisms.reflexive_proper_proxy; - Morphisms.reflexive_reflexive_proxy; RelationClasses.reflexivity; - ConstructiveEpsilon.rel_ls_ind; ConstructiveEpsilon.rel_ls_post; - Relation_Definitions.relation; CMorphisms.respectful; - Morphisms.respectful; Rtopology.restriction_family; List.rev'; - List.rev_append; ZifyClasses.rew_iff; ZifyClasses.rew_iff_rev; - Morphisms.rewrite_relation_eq_dom; BinNat.N.right_induction; - PeanoNat.Nat.right_induction; BinInt.Z.right_induction; - Ring_polynom.ring_correct; Ring_polynom.ring_rw_correct; - Ring_polynom.ring_rw_pow_correct; Ring_tac.ring_subst_niter; - Field_theory.rinv_ext_Proper; OrderedRing.rle_morph_Proper; - RingMicromega.rle_morph_Proper; OrderedRing.rlt_morph_Proper; - RingMicromega.rlt_morph_Proper; OrderedRing.rminus_morph; - OrderedRing.rminus_morph_Proper; RingMicromega.rminus_morph_Proper; - Field_theory.rmul_ext; Ring_theory.rmul_ext2_Proper; - InitialRing.rmul_ext3_Proper; InitialRing.rmul_ext4_Proper; - EnvRing.rmul_ext_Proper; Field_theory.rmul_ext_Proper; - InitialRing.rmul_ext_Proper; Ring_polynom.rmul_ext_Proper; - Field_theory.rmul_reg_l; Ring_theory.ropp_ext2_Proper; - InitialRing.ropp_ext3_Proper; EnvRing.ropp_ext_Proper; - Field_theory.ropp_ext_Proper; Ring_polynom.ropp_ext_Proper; - OrderedRing.ropp_morph_Proper; RingMicromega.ropp_morph_Proper; - Field_theory.ropp_neq_0; OrderedRing.rplus_morph_Proper; - RingMicromega.rplus_morph_Proper; Ring_theory.rpow_pow_N; - Field_theory.rsplit_common; Field_theory.rsplit_left; - Field_theory.rsplit_right; Field_theory.rsub_0_l; Field_theory.rsub_0_r; - EnvRing.rsub_ext_Proper; Field_theory.rsub_ext_Proper; - Ring_polynom.rsub_ext_Proper; OrderedRing.rtimes_morph_Proper; - RingMicromega.rtimes_morph_Proper; Tauto.rtyp; RMicromega.runsat; - InitialRing.same_gen; InitialRing.same_genN; InitialRing.same_genZ; - ConstructiveCauchyReals.scale; ConstructiveCauchyReals.seq; - ConstructiveRcomplete.seq_cv; BinInt.Z.sgn; - ClassicalDedekindReals.sig_forall_dec; ConstructiveLUB.sig_forall_dec_T; - sig_ind; ConstructiveLUB.sig_lub; ClassicalDedekindReals.sig_not_dec; - ConstructiveLUB.sig_not_dec_T; sig_rec; sig_rect; Ring_theory.sign_spec; - Rlimit.single_limit; BinPos.Pos.size_nat; BinPos.Pos.size_nat_monotone; - snd; OrderedRing.sor_setoid; OrderedRing.sor_setoid_Reflexive; - OrderedRing.sor_setoid_Symmetric; OrderedRing.sor_setoid_Transitive; - Field_theory.split; Field_theory.split_aux; Field_theory.split_aux_ok; - Field_theory.split_aux_ok1; Field_theory.split_nz_l; - Field_theory.split_nz_r; Field_theory.split_ok_l; - Field_theory.split_ok_r; BinInt.Z.strong_left_induction; - BinNat.N.strong_right_induction; PeanoNat.Nat.strong_right_induction; - BinInt.Z.strong_right_induction; BinNat.N.sub; BinPos.Pos.sub; - BinInt.Z.sub; BinInt.Z.sub_0_l; BinNat.N.sub_0_r; BinInt.Z.sub_0_r; - BinInt.Z.sub_1_r; BinNat.N.sub_add; BinPos.Pos.sub_add; - BinPos.Pos.sub_add_distr; BinInt.Z.sub_cancel_r; BinPos.Pos.sub_decr; - BinNat.N.sub_diag; BinInt.Z.sub_diag; BinNat.N.sub_gt; - BinInt.Z.sub_le_mono_r; BinInt.Z.sub_lt_mono_r; BinPos.Pos.sub_mask; - BinPos.Pos.sub_mask_add; BinPos.Pos.sub_mask_add_diag_l; - BinPos.Pos.sub_mask_add_diag_r; BinPos.Pos.sub_mask_carry; - BinPos.Pos.sub_mask_carry_spec; BinPos.Pos.sub_mask_diag; - BinPos.Pos.sub_mask_neg_iff; BinPos.Pos.sub_mask_nul_iff; - BinPos.Pos.sub_mask_pos; BinPos.Pos.sub_mask_pos'; - BinPos.Pos.sub_mask_pos_iff; BinPos.Pos.sub_mask_spec; - BinPos.Pos.sub_mask_succ_r; BinInt.Z.sub_move_0_r; BinInt.Z.sub_move_r; - BinInt.Z.sub_opp_r; BinInt.Z.sub_simpl_r; BinPos.Pos.sub_sub_distr; - BinInt.Z.sub_sub_distr; BinNat.N.sub_succ; BinInt.Z.sub_succ_l; - BinNat.N.sub_succ_r; BinInt.Z.sub_succ_r; BinNat.N.sub_wd; - BinInt.Z.sub_wd; BinPos.Pos.sub_xI_xI; BinPos.Pos.sub_xI_xO; - BinPos.Pos.sub_xO_xI; BinPos.Pos.sub_xO_xO; Rtopology.subfamily; - CRelationClasses.subrelation; RelationClasses.subrelation; - CMorphisms.subrelation_proper; Morphisms.subrelation_proper; - CMorphisms.subrelation_refl; Morphisms.subrelation_refl; - CMorphisms.subrelation_respectful; Morphisms.subrelation_respectful; - BinNat.N.succ; BinPos.Pos.succ; BinInt.Z.succ; RIneq.succ_IPR; - BinNat.N.succ_double; BinInt.Z.succ_double; BinNat.N.succ_double_add; - BinPos.Pos.succ_double_mask; BinNat.N.succ_double_mul; - BinInt.Z.succ_double_spec; BinNat.N.succ_inj; PeanoNat.Nat.succ_inj; - BinPos.Pos.succ_inj; BinInt.Z.succ_inj; BinNat.N.succ_inj_wd; - PeanoNat.Nat.succ_inj_wd; BinInt.Z.succ_inj_wd; - PeanoNat.Nat.succ_le_mono; BinInt.Z.succ_le_mono; - PeanoNat.Nat.succ_lt_mono; BinPos.Pos.succ_lt_mono; - BinInt.Z.succ_lt_mono; BinPos.Pos.succ_not_1; BinInt.Z.succ_pred; - BinPos.Pos.succ_pred_double; BinPos.Pos.succ_pred_or; BinNat.N.succ_wd; - PeanoNat.Nat.succ_wd; BinInt.Z.succ_wd; - PeanoNat.Nat.succ_wd_obligation_1; sumbool_rec; sumbool_rect; - RMicromega.sumboolb; BinPos.Pos.switch_Eq; CRelationClasses.symmetry; - RelationClasses.symmetry; Env.tail; Tauto.tauto_checker; - Tauto.tauto_checker_sound; List.tl; BinInt.Z.to_N; BinNat.N.to_nat; - BinPos.Pos.to_nat; BinInt.Z.to_nat; BinInt.Z.to_pos; - Rdefinitions.total_order_T; PeanoNat.Nat.Private_Tac.trans; - BinPos.Pos.Private_Tac.trans; Qminmax.Q.Private_Tac.trans; - BinInt.Z.Private_Tac.trans; BinNat.N.Private_OrderTac.Tac.trans; - PeanoNat.Nat.Private_OrderTac.Tac.trans; - BinInt.Z.Private_OrderTac.Tac.trans; - Morphisms.trans_co_eq_inv_impl_morphism; - Morphisms.trans_co_eq_inv_impl_morphism_obligation_1; - Morphisms.trans_co_impl_morphism; - Morphisms.trans_co_impl_morphism_obligation_1; - CMorphisms.trans_contra_inv_impl_type_morphism; - CMorphisms.trans_contra_inv_impl_type_morphism_obligation_1; - OrdersTac.trans_ord; Morphisms.trans_sym_co_inv_impl_morphism; - Morphisms.trans_sym_co_inv_impl_morphism_obligation_1; - CRelationClasses.transitivity; RelationClasses.transitivity; - InitialRing.triv_div; InitialRing.triv_div_th; BinInt.Z.two_succ; - Ranalysis1.uniqueness_limite; Ranalysis1.uniqueness_step1; - Ranalysis1.uniqueness_step2; Ranalysis1.uniqueness_step3; - ZMicromega.valid_cut_sign; well_founded; well_founded_ind; - well_founded_induction; well_founded_induction_type; - Wf_nat.well_founded_ltof; BinPos.Pos.xI_succ_xO; Tauto.xcnf; - Tauto.xcnf_correct; Tauto.xcnf_iff; Tauto.xcnf_impl; - RingMicromega.xnegate; ZMicromega.xnegate; - RingMicromega.xnegate_correct; ZMicromega.xnegate_correct; - ZMicromega.xnnormalise; ZMicromega.xnnormalise_correct; - RingMicromega.xnormalise; ZMicromega.xnormalise; - RingMicromega.xnormalise_correct; ZMicromega.xnormalise_correct; - Tauto.xor_clause_cnf; RMicromega.z_of_exp; Ring_polynom.zmon_pred; - Ring_polynom.zmon_pred_ok; Acc; BoolSpec; ConstructiveCauchyReals.CReal; - CompareSpec; CompareSpecT; ConstructiveReals.ConstructiveReals; - ConstructiveLUB.DedekindDecCut; SetoidTactics.DefaultRelation; - CRelationClasses.Equivalence; RelationClasses.Equivalence; - Field_theory.FExpr; False; RingMicromega.Formula; Tauto.GFormula; - ZifyClasses.InjTyp; Rlimit.Metric_Space; Ring_polynom.Mon; BinNums.N; - RingMicromega.Op1; RingMicromega.Op2; RelationClasses.PER; - EnvRing.PExpr; Ring_polynom.PExpr; EnvRing.Pol; Ring_polynom.Pol; - RelationClasses.PreOrder; RingMicromega.Psatz; QArith_base.Q; - RMicromega.Rcst; RelationClasses.RewriteRelation; OrderedRing.SOR; - RingMicromega.SORaddon; RelationClasses.StrictOrder; - BinPos.Pos.SubMaskSpec; True; BinNums.Z; ZMicromega.ZArithProof; - ZMicromega.Zdivide_pol; Znumtheory.Zis_gcd; - Field_theory.almost_field_theory; Ring_theory.almost_ring_theory; and; - ConstructiveEpsilon.before_witness; bool; comparison; - Ring_theory.div_theory; eq; ex; Rtopology.family; - Field_theory.field_theory; Tauto.kind; le; Field_theory.linear; list; - BinPos.Pos.mask; nat; RIneq.negreal; option; or; OrdersTac.ord; - BinNums.positive; RIneq.posreal; Ring_theory.power_theory; prod; - Bool.reflect; ConstructiveEpsilon.rel_ls; Ring_theory.ring_eq_ext; - Ring_theory.ring_morph; Ring_theory.ring_theory; Field_theory.rsplit; - Ring_theory.semi_morph; Ring_theory.semi_ring_theory; sig; sigT; - Ring_theory.sign_theory; Ring_theory.sring_eq_ext; sum; sumbool; sumor; - VarMap.t; unit; Acc_intro; BoolSpecT; ConstructiveCauchyReals.mkCReal; - CompEq; CompEqT; ConstructiveReals.Build_ConstructiveReals; - ConstructiveLUB.Build_DedekindDecCut; - SetoidTactics.Build_DefaultRelation; CRelationClasses.Build_Equivalence; - RelationClasses.Build_Equivalence; Field_theory.FEO; - RingMicromega.Build_Formula; Tauto.TT; ZifyClasses.mkinj; - Rlimit.Build_Metric_Space; Ring_polynom.mon0; BinNums.N0; - RingMicromega.Equal; RingMicromega.OpEq; RelationClasses.Build_PER; - EnvRing.PEc; Ring_polynom.PEO; EnvRing.Pc; Ring_polynom.Pc; - RelationClasses.Build_PreOrder; RingMicromega.PsatzLet; - QArith_base.Qmake; RMicromega.C0; RelationClasses.Build_RewriteRelation; - OrderedRing.mk_SOR_theory; RingMicromega.mk_SOR_addon; - RelationClasses.Build_StrictOrder; BinPos.Pos.SubIsNul; I; BinNums.Z0; - ZMicromega.DoneProof; ZMicromega.Zdiv_Pc; Znumtheory.Zis_gcd_intro; - Field_theory.mk_afield; Ring_theory.mk_art; conj; - ConstructiveEpsilon.stop; true; Eq; Ring_theory.mkdiv_th; eq_refl; - ex_intro; Rtopology.mkfamily; Field_theory.mk_field; Tauto.isProp; le_n; - Field_theory.mk_linear; nil; BinPos.Pos.IsNul; O; RIneq.mknegreal; Some; - or_introl; OrdersTac.OEQ; BinNums.xI; RIneq.mkposreal; - Ring_theory.mkpow_th; pair; Bool.ReflectT; ConstructiveEpsilon.Rstop; - Ring_theory.mk_reqe; Ring_theory.mkmorph; Ring_theory.mk_rt; - Field_theory.mk_rsplit; Ring_theory.mkRmorph; Ring_theory.mk_srt; exist; - existT; Ring_theory.mksign_th; Ring_theory.mk_seqe; inl; left; inleft; - VarMap.Empty; tt; BoolSpecF; CompLt; CompLtT; Field_theory.FEI; - Tauto.FF; Ring_polynom.zmon; BinNums.Npos; RingMicromega.NonEqual; - RingMicromega.OpNEq; EnvRing.PEX; Ring_polynom.PEI; EnvRing.Pinj; - Ring_polynom.Pinj; RingMicromega.PsatzIn; RMicromega.C1; - BinPos.Pos.SubIsPos; BinNums.Zpos; ZMicromega.RatProof; - ZMicromega.Zdiv_Pinj; ConstructiveEpsilon.next; false; Lt; Tauto.isBool; - le_S; cons; BinPos.Pos.IsPos; S; None; or_intror; OrdersTac.OLT; - BinNums.xO; Bool.ReflectF; ConstructiveEpsilon.Rnext; inr; right; - inright; VarMap.Elt; CompGt; CompGtT; Field_theory.FEc; Tauto.X; - Ring_polynom.vmon; RingMicromega.Strict; RingMicromega.OpLe; - EnvRing.PEadd; Ring_polynom.PEc; EnvRing.PX; Ring_polynom.PX; - RingMicromega.PsatzSquare; RMicromega.CQ; BinPos.Pos.SubIsNeg; - BinNums.Zneg; ZMicromega.CutProof; ZMicromega.Zdiv_PX; Gt; - BinPos.Pos.IsNeg; OrdersTac.OLE; BinNums.xH; VarMap.Branch; - Field_theory.FEX; Tauto.A; RingMicromega.NonStrict; RingMicromega.OpGe; - EnvRing.PEsub; Ring_polynom.PEX; RingMicromega.PsatzMulC; RMicromega.CZ; - ZMicromega.SplitProof; Field_theory.FEadd; Tauto.AND; - RingMicromega.OpLt; EnvRing.PEmul; Ring_polynom.PEadd; - RingMicromega.PsatzMulE; RMicromega.CPlus; ZMicromega.EnumProof; - Field_theory.FEsub; Tauto.OR; RingMicromega.OpGt; EnvRing.PEopp; - Ring_polynom.PEsub; RingMicromega.PsatzAdd; RMicromega.CMinus; - ZMicromega.ExProof; Field_theory.FEmul; Tauto.NOT; EnvRing.PEpow; - Ring_polynom.PEmul; RingMicromega.PsatzC; RMicromega.CMult; - Field_theory.FEopp; Tauto.IMPL; Ring_polynom.PEopp; - RingMicromega.PsatzZ; RMicromega.CPow; Field_theory.FEinv; Tauto.IFF; - Ring_polynom.PEpow; RMicromega.CInv; Field_theory.FEdiv; Tauto.EQ; - RMicromega.COpp; Field_theory.FEpow; }} - T = 1.735606 -Query assignments: - %arg1 = 4 - S = {{ Nat.add; eq; nat; O; }} - T = prod `x` (global (indt «nat»)) c0 \ - app - [global (indt «eq»), X0 c0, - app [global (const «Nat.add»), c0, global (indc «O»)], c0] - X10_ = c0 \ -X0 c0 -Syntactic constraints: - {c0} : decl c0 `x` (global (indt «nat»)) ?- evar (X0 c0) (X1 c0) (X0 c0) /* suspended on X0 */ - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X2 c0) (sort (typ «elpi_tests_stdlib.test_API_env.30»)) (X1 c0) /* suspended on X2, X1 */ -Universe constraints: -UNIVERSES: - {elpi_tests_stdlib.test_API_env.30} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α13 -WEAK CONSTRAINTS: - - -Query assignments: - Decl = record Rec (sort (typ «elpi_tests_stdlib.test_API_env.31»)) BuildRec - (field [] f (sort (typ «elpi_tests_stdlib.test_API_env.32»)) c0 \ - end-record) - X11_ = «elpi_tests_stdlib.test_API_env.31» - X12_ = «elpi_tests_stdlib.test_API_env.32» -Universe constraints: -UNIVERSES: - {elpi_tests_stdlib.test_API_env.32 elpi_tests_stdlib.test_API_env.31} |= -ALGEBRAIC UNIVERSES: - {elpi_tests_stdlib.test_API_env.32 elpi_tests_stdlib.test_API_env.31} -FLEXIBLE UNIVERSES: - elpi_tests_stdlib.test_API_env.32 - elpi_tests_stdlib.test_API_env.31 -SORTS: - -WEAK CONSTRAINTS: - - -Module -Test -:= Struct - Record Rec@{u u0} : Type@{u} := BuildRec - { f : Type@{u0} }. - (* u u0 |= u0 < u *) - Definition f : Rec@{u u0} -> Type@{u0}. - (* u u0 |= u0 < u *) - End -Test.f@{elpi_tests_stdlib.test_API_env.33 -elpi_tests_stdlib.test_API_env.34} - : Test.Rec@{elpi_tests_stdlib.test_API_env.33 - elpi_tests_stdlib.test_API_env.34} -> - Type@{elpi_tests_stdlib.test_API_env.34} -(* {elpi_tests_stdlib.test_API_env.34 elpi_tests_stdlib.test_API_env.33} |= - elpi_tests_stdlib.test_API_env.34 < elpi_tests_stdlib.test_API_env.33 *) -Query assignments: - LP = «Coq.ZArith.Znat» - MP = «Coq.ZArith.Znat.N2Z» -File "./tests-stdlib/test_API_env.v", line 26, characters 24-26: -Warning: -File "./tests-stdlib/test_API_env.v", line 26, characters 24-26 -TY is linear: name it _TY (discard) or TY_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 82, characters 23-25: -Warning: -File "./tests-stdlib/test_API_env.v", line 82, characters 23-25 -GR is linear: name it _GR (discard) or GR_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 215, characters 71-72: -Warning: -File "./tests-stdlib/test_API_env.v", line 215, characters 71-72 -U is linear: name it _U (discard) or U_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 209, characters 39-41: -Warning: -File "./tests-stdlib/test_API_env.v", line 209, characters 39-41 -UA is linear: name it _UA (discard) or UA_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 212, characters 45-48: -Warning: -File "./tests-stdlib/test_API_env.v", line 212, characters 45-48 -UB1 is linear: name it _UB1 (discard) or UB1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 218, characters 40-43: -Warning: -File "./tests-stdlib/test_API_env.v", line 218, characters 40-43 -UB2 is linear: name it _UB2 (discard) or UB2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 225, characters 40-43: -Warning: -File "./tests-stdlib/test_API_env.v", line 225, characters 40-43 -UB3 is linear: name it _UB3 (discard) or UB3_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 215, characters 34-36: -Warning: -File "./tests-stdlib/test_API_env.v", line 215, characters 34-36 -UC is linear: name it _UC (discard) or UC_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 246, characters 71-72: -Warning: -File "./tests-stdlib/test_API_env.v", line 246, characters 71-72 -U is linear: name it _U (discard) or U_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 240, characters 39-41: -Warning: -File "./tests-stdlib/test_API_env.v", line 240, characters 39-41 -UA is linear: name it _UA (discard) or UA_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 243, characters 45-48: -Warning: -File "./tests-stdlib/test_API_env.v", line 243, characters 45-48 -UB1 is linear: name it _UB1 (discard) or UB1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 249, characters 40-43: -Warning: -File "./tests-stdlib/test_API_env.v", line 249, characters 40-43 -UB2 is linear: name it _UB2 (discard) or UB2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 256, characters 40-43: -Warning: -File "./tests-stdlib/test_API_env.v", line 256, characters 40-43 -UB3 is linear: name it _UB3 (discard) or UB3_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 246, characters 34-36: -Warning: -File "./tests-stdlib/test_API_env.v", line 246, characters 34-36 -UC is linear: name it _UC (discard) or UC_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 273, characters 39-41: -Warning: -File "./tests-stdlib/test_API_env.v", line 273, characters 39-41 -UP is linear: name it _UP (discard) or UP_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 275, characters 30-32: -Warning: -File "./tests-stdlib/test_API_env.v", line 275, characters 30-32 -UR is linear: name it _UR (discard) or UR_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 291, characters 39-41: -Warning: -File "./tests-stdlib/test_API_env.v", line 291, characters 39-41 -UP is linear: name it _UP (discard) or UP_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests-stdlib/test_API_env.v", line 293, characters 30-32: -Warning: -File "./tests-stdlib/test_API_env.v", line 293, characters 30-32 -UR is linear: name it _UR (discard) or UR_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -d1 - : nat -d2 - : nat -i1 - : Prop -i2 - : Prop -k1 - : i1 -k2 - : i2 -r1 - : Set -r2 - : Type -f1 - : r1 -> nat -f2 - : r2 -> nat -z - : nat -it = elpi_subproof - : True -it : True - -it is not universe polymorphic -it is transparent -Expands to: Constant elpi.tests.test_ltac.it -elpi_subproof = I - : True -elpi_subproof : True - -elpi_subproof is not universe polymorphic -elpi_subproof is opaque -Expands to: Constant elpi.tests.test_ltac.elpi_subproof -Closed under the global context -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «map»), - fun `x` (global (indt «nat»)) c1 \ - app - [global (const «Nat.add»), c1, - app [global (indc «S»), global (indc «O»)]]], c0] -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «map»), - fun `x` (global (indt «nat»)) c1 \ - app - [global (const «Nat.add»), c1, - app [global (indc «S»), global (indc «O»)]]], c0] -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «map»), - fun `x0` (global (indt «nat»)) c1 \ - app - [global (const «Nat.add»), c1, - app [global (indc «S»), global (indc «O»)]]], c0] -Query assignments: - B = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - GR = «Nat.add» - RB = fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]] - T = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -Syntactic constraints: - {c0 c1 c2 c3} : - decl c3 `n` (global (indt «nat»)), decl c2 `m` (global (indt «nat»)), - decl c1 `n` (global (indt «nat»)), - decl c0 `add` - (prod `n` (global (indt «nat»)) c1 \ - prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) - ?- evar (X0 c0 c1 c2 c3) (sort (typ «elpi.tests.test_elaborator.17»)) - (X1 c0 c1 c2 c3) /* suspended on X0, X1 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.23 elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.21 elpi.tests.test_elaborator.20 - elpi.tests.test_elaborator.19 elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.17 elpi.tests.test_elaborator.16 - elpi.tests.test_elaborator.15 elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.13 elpi.tests.test_elaborator.12 - elpi.tests.test_elaborator.11 elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.9 elpi.tests.test_elaborator.8 - elpi.tests.test_elaborator.7 elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.5 elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.3 elpi.tests.test_elaborator.2 - elpi.tests.test_elaborator.1} |= - Set <= elpi.tests.test_elaborator.1 - Set <= elpi.tests.test_elaborator.2 - Set <= elpi.tests.test_elaborator.3 - Set <= elpi.tests.test_elaborator.8 - Set <= elpi.tests.test_elaborator.12 - Set <= elpi.tests.test_elaborator.16 - Set <= elpi.tests.test_elaborator.20 - elpi.tests.test_elaborator.1 <= elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.2 <= elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.3 <= elpi.tests.test_elaborator.4 - elpi.tests.test_elaborator.4 <= elpi.tests.test_elaborator.5 - elpi.tests.test_elaborator.5 <= elpi.tests.test_elaborator.6 - elpi.tests.test_elaborator.6 <= elpi.tests.test_elaborator.7 - elpi.tests.test_elaborator.8 <= elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.9 <= elpi.tests.test_elaborator.10 - elpi.tests.test_elaborator.10 <= elpi.tests.test_elaborator.11 - elpi.tests.test_elaborator.12 <= elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.13 <= elpi.tests.test_elaborator.14 - elpi.tests.test_elaborator.14 <= elpi.tests.test_elaborator.15 - elpi.tests.test_elaborator.16 <= elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.17 <= elpi.tests.test_elaborator.18 - elpi.tests.test_elaborator.18 <= elpi.tests.test_elaborator.19 - elpi.tests.test_elaborator.20 <= elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.21 <= elpi.tests.test_elaborator.22 - elpi.tests.test_elaborator.22 <= elpi.tests.test_elaborator.23 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - B = fun `n` (global (indt «nat»)) c0 \ - app - [global (const «nat_ind»), - fun `n` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]], - let `_` - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app - [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) - (app - [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) - c1 \ c1, - fun `n` (global (indt «nat»)) c1 \ - fun `IHn` - (app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ - let `_` - (app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), c1], - app - [global (const «Nat.add»), app [global (indc «S»), c1], - global (indc «O»)]]) - (app - [global (const «f_equal_nat»), global (indt «nat»), - global (indc «S»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ - c3, c0] - GR = «plus_n_O» - RB = fun `n` (global (indt «nat»)) c0 \ - app - [global (const «nat_ind»), - fun `n` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]], - let `_` - (app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - app - [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) - (app - [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) - c1 \ c1, - fun `n` (global (indt «nat»)) c1 \ - fun `IHn` - (app - [global (indt «eq»), global (indt «nat»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ - let `_` - (app - [global (indt «eq»), global (indt «nat»), - app [global (indc «S»), c1], - app - [global (const «Nat.add»), app [global (indc «S»), c1], - global (indc «O»)]]) - (app - [global (const «f_equal_nat»), global (indt «nat»), - global (indc «S»), c1, - app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ - c3, c0] - TY = prod `n` (global (indt «nat»)) c0 \ - app - [global (indt «eq»), global (indt «nat»), c0, - app [global (const «Nat.add»), c0, global (indc «O»)]] -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.38 elpi.tests.test_elaborator.37 - elpi.tests.test_elaborator.36 elpi.tests.test_elaborator.35 - elpi.tests.test_elaborator.34 elpi.tests.test_elaborator.33 - elpi.tests.test_elaborator.32 elpi.tests.test_elaborator.31 - elpi.tests.test_elaborator.30 elpi.tests.test_elaborator.29 - elpi.tests.test_elaborator.28 elpi.tests.test_elaborator.27 - elpi.tests.test_elaborator.26 elpi.tests.test_elaborator.25 - elpi.tests.test_elaborator.24} |= - Set <= eq.u0 - Set <= Coq.Init.Logic.11 - Set <= elpi.tests.test_elaborator.24 - Set <= elpi.tests.test_elaborator.28 - Set <= elpi.tests.test_elaborator.32 - elpi.tests.test_elaborator.24 <= elpi.tests.test_elaborator.26 - elpi.tests.test_elaborator.25 <= elpi.tests.test_elaborator.26 - elpi.tests.test_elaborator.26 <= elpi.tests.test_elaborator.27 - elpi.tests.test_elaborator.28 <= elpi.tests.test_elaborator.30 - elpi.tests.test_elaborator.29 <= elpi.tests.test_elaborator.30 - elpi.tests.test_elaborator.30 <= elpi.tests.test_elaborator.31 - elpi.tests.test_elaborator.32 <= elpi.tests.test_elaborator.34 - elpi.tests.test_elaborator.33 <= elpi.tests.test_elaborator.34 - elpi.tests.test_elaborator.34 <= elpi.tests.test_elaborator.35 - elpi.tests.test_elaborator.36 <= elpi.tests.test_elaborator.37 - elpi.tests.test_elaborator.37 <= elpi.tests.test_elaborator.38 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -CHR: Uniqueness of typing of frozen--911 + [] <-> [] -[c0] |> [decl c0 `x` (uvar frozen--911 [])] |- frozen--911 [] : -sort (typ «elpi.tests.test_elaborator.40») -[] |> [] |- frozen--911 [] : sort (typ «elpi.tests.test_elaborator.39») -[] |> [] |- -unify-eq (sort (typ «elpi.tests.test_elaborator.40»)) - (sort (typ «elpi.tests.test_elaborator.39»)) - -Query assignments: - R = fun `x` X0 c0 \ c0 - T = prod `x` X0 c0 \ X0 - X1_ = X1 -Syntactic constraints: - {c0} : decl c0 `x` X0 - ?- evar X2 (sort (typ «elpi.tests.test_elaborator.40»)) X0 /* suspended on X2, X0 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.42 elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.40 elpi.tests.test_elaborator.39} |= - elpi.tests.test_elaborator.39 <= elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.39 - elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.41 - elpi.tests.test_elaborator.41 <= elpi.tests.test_elaborator.42 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - R = fun `x` (global (indt «nat»)) c0 \ - app [global (const «Nat.add»), c0, global (indc «O»)] - T = prod `x` (global (indt «nat»)) c0 \ global (indt «nat») - X2_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.46 elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.44 elpi.tests.test_elaborator.43} |= - elpi.tests.test_elaborator.43 <= elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.44 <= elpi.tests.test_elaborator.45 - elpi.tests.test_elaborator.45 <= elpi.tests.test_elaborator.46 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -sort (typ X0) -Query assignments: - X3_ = X0 -Query assignments: - S = sort (typ «elpi.tests.test_elaborator.48») - T = sort (typ «elpi.tests.test_elaborator.47») - X4_ = «elpi.tests.test_elaborator.47» -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.48 elpi.tests.test_elaborator.47} |= - elpi.tests.test_elaborator.47 < elpi.tests.test_elaborator.48 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.47} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.47 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - S = sort (typ «elpi.tests.test_elaborator.50») - T = sort (typ «elpi.tests.test_elaborator.49») - TW = sort (typ «elpi.tests.test_elaborator.49») - W = sort (typ «elpi.tests.test_elaborator.51») - X5_ = «elpi.tests.test_elaborator.49» - X6_ = «elpi.tests.test_elaborator.51» -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.50 - elpi.tests.test_elaborator.49} |= - elpi.tests.test_elaborator.49 < elpi.tests.test_elaborator.50 - elpi.tests.test_elaborator.51 < elpi.tests.test_elaborator.49 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.49} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.51 - elpi.tests.test_elaborator.49 -SORTS: - -WEAK CONSTRAINTS: - - -Debug: Cannot enforce elpi.tests.test_elaborator.52 < -elpi.tests.test_elaborator.52 because elpi.tests.test_elaborator.52 -= elpi.tests.test_elaborator.52 -Query assignments: - X = sort (typ X0) - X7_ = X0 -Query assignments: - X = sort (typ «elpi.tests.test_elaborator.53») - Y = sort (typ «elpi.tests.test_elaborator.54») -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} |= - elpi.tests.test_elaborator.53 < elpi.tests.test_elaborator.54 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} -FLEXIBLE UNIVERSES: - elpi.tests.test_elaborator.54 - elpi.tests.test_elaborator.53 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - D = X0 - R = app - [global (indc «ex_intro»), X0, - fun `hd_beta_auto` X0 c0 \ - app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - global (indc «O»)], X1, global (const «p»)] - TY = app - [global (indt «ex»), X0, - fun `hd_beta_auto` X0 c0 \ - app - [global (indt «eq»), global (indt «nat»), global (indc «O»), - global (indc «O»)]] - X10_ = X2 - X11_ = X3 - X9_ = X4 -Syntactic constraints: - evar (X4) (sort (typ «ex.u0»)) X0 /* suspended on X4, X0 */ - evar (X3) X0 (X1) /* suspended on X3, X1 */ - evar (X1) X0 X5 /* suspended on X1, X5 */ -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, c0], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, c0]] - X12_ = X0 - X13_ = X1 -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `hd_beta_auto` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] - X14_ = X0 - X15_ = c0 \ -X1 c0 - X16_ = X2 - X17_ = X3 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.58 elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.56 elpi.tests.test_elaborator.55} |= - Set <= elpi.tests.test_elaborator.55 - elpi.tests.test_elaborator.55 <= elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.56 <= elpi.tests.test_elaborator.57 - elpi.tests.test_elaborator.57 <= elpi.tests.test_elaborator.58 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - R = app - [global (indc «ex_intro»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], - global (indc «O»), global (const «p»)] - TY = app - [global (indt «ex»), global (indt «nat»), - fun `n` (global (indt «nat»)) c0 \ - app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] - X18_ = X0 - X19_ = c0 \ -X1 c0 - X20_ = X2 - X21_ = X3 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.62 elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.60 elpi.tests.test_elaborator.59} |= - Set <= elpi.tests.test_elaborator.59 - elpi.tests.test_elaborator.59 <= elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.60 <= elpi.tests.test_elaborator.61 - elpi.tests.test_elaborator.61 <= elpi.tests.test_elaborator.62 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - A = tt - B = 0 - C = 0 - D = sort (typ «Set») - E = [«true», «false»] - F = [global (indt «bool»), global (indt «bool»)] - GR = «bool» -Query assignments: - F = app [global (const «nat_of_bool»), global (indc «true»)] -c0 \ app [global (const «nat_of_bool»), c0] -Query assignments: - Res = app - [global (const «map»), global (indt «bool»), global (indt «nat»), - fun `x` (global (indt «bool»)) c0 \ - app [global (const «nat_of_bool»), c0], - app - [global (indc «cons»), global (indt «bool»), global (indc «true»), - app [global (indc «nil»), global (indt «bool»)]]] - X22_ = X0 - X23_ = X1 -Query assignments: - Res = app - [global (const «Z_of_nat»), - app [global (const «nat_of_bool»), global (indc «true»)]] -c0 \ -app [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]] -Query assignments: - Res = app - [global (const «map»), global (indt «bool»), global (const «Z»), - fun `x` (global (indt «bool»)) c0 \ - app - [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]], - app - [global (indc «cons»), global (indt «bool»), global (indc «true»), - app [global (indc «nil»), global (indt «bool»)]]] - X24_ = X0 - X25_ = X1 -Query assignments: - R = prod `r` (global (const «ring»)) c0 \ - prod `x` (app [global (const «carr»), c0]) c1 \ - app [global (indt «eq»), app [global (const «carr»), c0], c1, c1] - T = sort (typ «elpi.tests.test_elaborator.75») - X26_ = c0 \ c1 \ -X0 c0 c1 -Universe constraints: -UNIVERSES: - {elpi.tests.test_elaborator.75 elpi.tests.test_elaborator.74 - elpi.tests.test_elaborator.73 elpi.tests.test_elaborator.72 - elpi.tests.test_elaborator.70} |= - ring.u0 <= elpi.tests.test_elaborator.70 - elpi.tests.test_elaborator.70 <= elpi.tests.test_elaborator.75 - elpi.tests.test_elaborator.73 <= elpi.tests.test_elaborator.74 - elpi.tests.test_elaborator.74 <= elpi.tests.test_elaborator.75 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - T = global (const «int») - X = primitive (uint63 99) -Query assignments: - T = global (const «float») - X = primitive (float64 993000) -Query assignments: - X27_ = X0 -File "./tests/test_elaborator.v", line 18, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 18, characters 10-12 -RB is linear: name it _RB (discard) or RB_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 17, characters 58-59: -Warning: -File "./tests/test_elaborator.v", line 17, characters 58-59 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 18, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 18, characters 7-9 -TY is linear: name it _TY (discard) or TY_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 23, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 23, characters 10-12 -RB is linear: name it _RB (discard) or RB_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 23, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 23, characters 7-9 -TY is linear: name it _TY (discard) or TY_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 29, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 29, characters 41-42 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 29, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 29, characters 39-40 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 31, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 31, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 31, characters 43-44: -Warning: -File "./tests/test_elaborator.v", line 31, characters 43-44 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 38, characters 29-30: -Warning: -File "./tests/test_elaborator.v", line 38, characters 29-30 -S is linear: name it _S (discard) or S_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 38, characters 31-32: -Warning: -File "./tests/test_elaborator.v", line 38, characters 31-32 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 41, characters 15-16: -Warning: -File "./tests/test_elaborator.v", line 41, characters 15-16 -S is linear: name it _S (discard) or S_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 42, characters 29-31: -Warning: -File "./tests/test_elaborator.v", line 42, characters 29-31 -TW is linear: name it _TW (discard) or TW_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 64, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 64, characters 32-33 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 71, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 71, characters 32-33 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 78, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 78, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 90, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 90, characters 45-46 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 62-63: -Warning: -File "./tests/test_elaborator.v", line 97, characters 62-63 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 64-65: -Warning: -File "./tests/test_elaborator.v", line 97, characters 64-65 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 97, characters 66-67 -C is linear: name it _C (discard) or C_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 68-69: -Warning: -File "./tests/test_elaborator.v", line 97, characters 68-69 -D is linear: name it _D (discard) or D_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 70-71: -Warning: -File "./tests/test_elaborator.v", line 97, characters 70-71 -E is linear: name it _E (discard) or E_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 97, characters 72-73: -Warning: -File "./tests/test_elaborator.v", line 97, characters 72-73 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 108, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 108, characters 66-67 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 121, characters 35-38: -Warning: -File "./tests/test_elaborator.v", line 121, characters 35-38 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 135, characters 64-67: -Warning: -File "./tests/test_elaborator.v", line 135, characters 64-67 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 138, characters 33-36: -Warning: -File "./tests/test_elaborator.v", line 138, characters 33-36 -Res is linear: name it _Res (discard) or Res_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 151, characters 49-50: -Warning: -File "./tests/test_elaborator.v", line 151, characters 49-50 -R is linear: name it _R (discard) or R_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 151, characters 47-48: -Warning: -File "./tests/test_elaborator.v", line 151, characters 47-48 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 156, characters 36-37: -Warning: -File "./tests/test_elaborator.v", line 156, characters 36-37 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 156, characters 38-39: -Warning: -File "./tests/test_elaborator.v", line 156, characters 38-39 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 157, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 157, characters 39-40 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_elaborator.v", line 157, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 157, characters 41-42 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -Query assignments: - P = /build/reproducible-path/coq-elpi-2.5.0/_build/default/elpi/elpi_elaborator.elpi -File "./tests/test_query_extra_dep.v", line 7, characters 44-45: -Warning: -File "./tests/test_query_extra_dep.v", line 7, characters 44-45 -P is linear: name it _P (discard) or P_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] Debug: ----<<---- enter: coq.say raw: @@ -13942,169 +11378,2088 @@ If you instead put X1 explicitly in Prop, set Dependent Proposition Eliminators around the declaration for full backwards compatibility. [automatic-prop-lowering,deprecated-since-8.20,deprecated,default] -(true && false)%bool - : bool -natmul R n : ringType_sort R - : ringType_sort R -natmul R n : ringType_sort R - : ringType_sort R -test2 -test1 -str hello -test1 -too many arguments -test1 -str hello my -str Dear -test1 -too many arguments -[attribute elpi.loc - (leaf-loc - File "./tests/test_vernacular1.v", line 47, column 5, characters 953-961:), - attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar)] -[get-option elpi.loc - File "./tests/test_vernacular1.v", line 47, column 5, characters 953-961:, - get-option elpi.phase interp, get-option foo bar] -[attribute elpi.loc - (leaf-loc - File "./tests/test_vernacular1.v", line 51, column 0, characters 987-1014:), - attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar), - attribute poly (leaf-str )] -[get-option elpi.loc - File "./tests/test_vernacular1.v", line 51, column 0, characters 987-1014:, - get-option elpi.phase interp, get-option foo bar, get-option poly tt] -[attribute elpi.loc - (leaf-loc - File "./tests/test_vernacular1.v", line 52, column 0, characters 1015-1055:), - attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar), - attribute poly (leaf-str ), - attribute suppa (node [attribute duppa (leaf-str )])] -[get-option elpi.loc - File "./tests/test_vernacular1.v", line 52, column 0, characters 1015-1055:, - get-option elpi.phase interp, get-option foo bar, get-option poly tt] +z + : nat +it = elpi_subproof + : True +it : True + +it is not universe polymorphic +it is transparent +Expands to: Constant elpi.tests.test_ltac.it +elpi_subproof = I + : True +elpi_subproof : True + +elpi_subproof is not universe polymorphic +elpi_subproof is opaque +Expands to: Constant elpi.tests.test_ltac.elpi_subproof +Closed under the global context +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «map»), + fun `x` (global (indt «nat»)) c1 \ + app + [global (const «Nat.add»), c1, + app [global (indc «S»), global (indc «O»)]]], c0] +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «map»), + fun `x` (global (indt «nat»)) c1 \ + app + [global (const «Nat.add»), c1, + app [global (indc «S»), global (indc «O»)]]], c0] +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «map»), + fun `x0` (global (indt «nat»)) c1 \ + app + [global (const «Nat.add»), c1, + app [global (indc «S»), global (indc «O»)]]], c0] Query assignments: - X = 3 -app [global (const «Nat.mul»), X0, X1] type -File "./tests/test_vernacular1.v", line 5, characters 0-61: -Warning: -Undeclared globals: -- File "./tests/test_vernacular1.v", line 6, column 29, characters 112-117: foo. -Please add the following text to your program: -type foo list argument -> prop. -[elpi.missing-types,elpi.typecheck,elpi,default] -File "./tests/test_vernacular1.v", line 46, characters 2-11: -Warning: This command does not support this attribute: foo. -[unsupported-attributes,parsing,default] -File "./tests/test_vernacular1.v", line 65, characters 26-27: + P = /build/reproducible-path/coq-elpi-2.5.0/_build/default/elpi/elpi_elaborator.elpi +File "./tests/test_query_extra_dep.v", line 7, characters 44-45: Warning: -File "./tests/test_vernacular1.v", line 65, characters 26-27 -X is linear: name it _X (discard) or X_ (fresh variable) +File "./tests/test_query_extra_dep.v", line 7, characters 44-45 +P is linear: name it _P (discard) or P_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -Foo.x = 3 - : nat -Foo.x = 3 - : nat -Foo.x2 = 4 - : nat -eq_refl : Foo.x = 5 - : Foo.x = 5 -A.B.c : nat +Query assignments: + BO = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + GR = «Nat.add» + GRNat = indt «nat» + GRSucc = indc «S» + Nat = global (indt «nat») + Succ = global (indc «S») + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +Query assignments: + GR = «empty_nat» + TY = global (indt «nat») +Query assignments: + GR1 = indc «Vector.nil» + GR2 = indt «nat» + GR3 = const «A» +add_equal +Query assignments: + %arg1 = add_equal + %arg2 = add_equal + BO = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + GR = «Nat.add» + NGR = «add_equal» + Name = add_equal + S = add + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +add_equal : nat -> nat -> nat -A.B.c is not universe polymorphic -A.B.c is transparent -Expands to: Constant elpi.apps.NES.tests.test_NES.A_aux_4.A.B.c -A1.B1.d : nat +add_equal is not universe polymorphic +Arguments add_equal (n m)%nat_scope +add_equal is opaque +Expands to: Constant elpi_tests_stdlib.test_API_env.add_equal +«myfalse» +Query assignments: + F = indt «False» + GR = «myfalse» +myfalse + : False +parameter T X0 (sort (typ X1)) c0 \ + record eq_class (sort (typ X2)) mk_eq_class + (field [canonical ff, coercion regular] eq_f (global (indt «bool»)) c1 \ + field X3 eq_proof + (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ + end-record) +Query assignments: + DECL = parameter T X0 (sort (typ «eq_class.u0»)) c0 \ + record eq_class (sort (typ «eq_class.u1»)) mk_eq_class + (field [canonical ff, coercion regular] eq_f (global (indt «bool»)) c1 \ + field X3 eq_proof + (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ + end-record) + GR = «eq_class» + X1_ = «eq_class.u0» + X2_ = «eq_class.u1» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {eq_class.u1 eq_class.u0} +FLEXIBLE UNIVERSES: + eq_class.u1 + eq_class.u0 +SORTS: + +WEAK CONSTRAINTS: + -A1.B1.d is not universe polymorphic -A1.B1.d is transparent -Expands to: Constant elpi.apps.NES.tests.test_NES.A1_aux_6.A1.B1.d -A1.B1.c : nat +Record eq_class (T : Type@{eq_class.u0}) : Type@{eq_class.u1} := mk_eq_class + { eq_f : bool; eq_proof : eq_f = eq_f }. -A1.B1.c is not universe polymorphic -A1.B1.c is transparent -Expands to: Constant elpi.apps.NES.tests.test_NES.A1_aux_5.A1.B1.c -x = 5 - : nat -x2 = 4 - : nat -B1.c = 1 - : nat -B1.d = 1 - : nat -d = 1 - : nat -A2.B2.f = 2 - : nat -Cats.And.Dogs.x = 42 - : nat -synterp [str X] -interp [str X] -synterp [int 1] -interp [int 1] -synterp [trm _] -interp [trm (app [global (indc «S»), global (indc «O»)])] -synterp -[const-decl x (some _) - (parameter P explicit _ c0 \ parameter Q explicit _ c1 \ arity _)] -interp -[const-decl x - (some - (fun `P` (global (indt «bool»)) c0 \ - fun `Q` (global (indt «bool»)) c1 \ global (indc «O»))) - (parameter P explicit (global (indt «bool»)) c0 \ - parameter Q explicit (global (indt «bool»)) c1 \ - arity (global (indt «nat»)))] -synterp -[const-decl x none - (parameter P explicit _ c0 \ parameter Q explicit _ c1 \ arity _)] -interp -[const-decl x none - (parameter P explicit (global (indt «bool»)) c0 \ - parameter Q explicit (global (indt «bool»)) c1 \ - arity (global (indt «nat»)))] -synterp -[indt-decl - (parameter P explicit _ c0 \ - parameter Q explicit _ c1 \ - record x _ K - (field [coercion off, canonical tt] f1 _ c2 \ - field [coercion off, canonical tt] f2 _ c3 \ end-record))] -interp -[indt-decl - (parameter P explicit (global (indt «bool»)) c0 \ - parameter Q explicit (global (indt «bool»)) c1 \ - record x (sort (typ «Set»)) K - (field [coercion off, canonical tt] f1 (global (indt «nat»)) c2 \ - field [coercion off, canonical tt] f2 - (app [global (indt «eq»), global (indt «nat»), c2, c2]) c3 \ - end-record))] -synterp -[indt-decl - (parameter P explicit _ c0 \ - inductive x tt (parameter Q explicit _ c1 \ arity _) c1 \ - [constructor K (parameter Q explicit _ c2 \ arity _), - constructor R (parameter Q explicit _ c2 \ arity _)])] -interp -[indt-decl - (parameter P explicit (global (indt «bool»)) c0 \ - inductive x tt - (parameter Q explicit (global (indt «bool»)) c1 \ - arity (prod `_` (global (indt «nat»)) c2 \ sort (typ «Set»))) c1 \ - [constructor K - (parameter Q explicit (global (indt «bool»)) c2 \ - arity - (prod `_` (global (indt «nat»)) c3 \ - app - [c1, c2, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]])), - constructor R - (parameter Q explicit (global (indt «bool»)) c2 \ - arity - (prod `w` (global (indt «bool»)) c3 \ +Arguments eq_class T%type_scope +Arguments mk_eq_class T%type_scope eq_f%bool_scope eq_proof +Arguments eq_f T%type_scope record +Arguments eq_proof T%type_scope record +fun x : eq_class nat => x : bool + : eq_class nat -> bool +p <- eq_proof ( xxx ) +Query assignments: + DECL = parameter T X0 (sort (typ «prim_eq_class.u0»)) c0 \ + record prim_eq_class (sort (typ «prim_eq_class.u1»)) mk_prim_eq_class + (field [canonical ff, coercion reversible] prim_eq_f + (global (indt «bool»)) c1 \ + field X1 prim_eq_proof + (app [global (indt «eq»), global (indt «bool»), c1, c1]) c2 \ + end-record) + GR = «prim_eq_class» + X3_ = «prim_eq_class.u0» + X4_ = «prim_eq_class.u1» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {prim_eq_class.u1 prim_eq_class.u0} +FLEXIBLE UNIVERSES: + prim_eq_class.u1 + prim_eq_class.u0 +SORTS: + +WEAK CONSTRAINTS: + + +fun r : prim_eq_class nat => +eq_refl : r = {| prim_eq_f := r; prim_eq_proof := prim_eq_proof _ r |} + : forall r : prim_eq_class nat, + r = {| prim_eq_f := r; prim_eq_proof := prim_eq_proof _ r |} +(* {} |= prim_eq_class.u1 <= eq.u0 *) +fun `r` (app [global (indt «prim_eq_class»), global (indt «nat»)]) c0 \ + app [primitive (proj elpi_tests_stdlib.test_API_env.prim_eq_f 1), c0] +Query assignments: + C = «pc» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {myind.u0} +FLEXIBLE UNIVERSES: + myind.u0 +SORTS: + +WEAK CONSTRAINTS: + + +myind true false : Prop + : Prop +K2 true : myind true true + : myind true true +myind1 true false : Prop + : Prop +K21 true : myind1 true true + : myind1 true true +Query assignments: + X6_ = «nuind.u0» + X7_ = «nuind.u1» +Universe constraints: +UNIVERSES: + +ALGEBRAIC UNIVERSES: + {nuind.u1 nuind.u0} +FLEXIBLE UNIVERSES: + nuind.u1 + nuind.u0 +SORTS: + +WEAK CONSTRAINTS: + + +fun x : nuind nat 3 false => +match x in (nuind _ _ b) return (b = b) with +| k1 _ _ => eq_refl : true = true +| k2 _ _ x0 => (fun _ : nuind nat 1 false => eq_refl : false = false) x0 +end + : nuind nat 3 false -> false = false +c0 global (indt «nat») +Query assignments: + T = global (indt «nat») +Query assignments: + D = parameter A X0 (sort (typ «tx.u0»)) c0 \ + inductive tx X1 + (parameter y X2 (global (indt «nat»)) c1 \ + arity (prod `_` (global (indt «bool»)) c2 \ sort (typ «tx.u1»))) c1 \ + [constructor K1x + (parameter y X3 (global (indt «nat»)) c2 \ + arity + (prod `x` c0 c3 \ + prod `n` (global (indt «nat»)) c4 \ + prod `p` + (app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), c4], c2]) c5 \ + prod `e` (app [c1, c4, global (indc «true»)]) c6 \ + app [c1, c2, global (indc «true»)])), + constructor K2x + (parameter y X4 (global (indt «nat»)) c2 \ + arity (app [c1, c2, global (indc «false»)]))] + X8_ = «tx.u0» + X9_ = «tx.u1» +Universe constraints: +UNIVERSES: + {elpi_tests_stdlib.test_API_env.18 elpi_tests_stdlib.test_API_env.17 + elpi_tests_stdlib.test_API_env.16 elpi_tests_stdlib.test_API_env.15 + elpi_tests_stdlib.test_API_env.14 elpi_tests_stdlib.test_API_env.13 + elpi_tests_stdlib.test_API_env.11} |= + tx.u0 < elpi_tests_stdlib.test_API_env.11 + tx.u1 < elpi_tests_stdlib.test_API_env.13 + Set <= elpi_tests_stdlib.test_API_env.13 + Set <= elpi_tests_stdlib.test_API_env.14 + Set <= elpi_tests_stdlib.test_API_env.15 + Set <= elpi_tests_stdlib.test_API_env.16 + Set <= elpi_tests_stdlib.test_API_env.17 + Set <= elpi_tests_stdlib.test_API_env.18 + tx.u0 <= elpi_tests_stdlib.test_API_env.14 + tx.u1 <= elpi_tests_stdlib.test_API_env.14 + elpi_tests_stdlib.test_API_env.14 <= tx.u1 +ALGEBRAIC UNIVERSES: + {tx.u1 tx.u0} +FLEXIBLE UNIVERSES: + tx.u1 + tx.u0 +SORTS: + α2 := Type + α3 := Type + α4 := Type + α5 := Type +WEAK CONSTRAINTS: + + +Query assignments: + D = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ + parameter a explicit c0 c1 \ + inductive ind1 tt + (parameter B explicit (sort (typ «ind1.u0»)) c2 \ + parameter b explicit c2 c3 \ + arity + (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.26»))) + c2 \ + [constructor k1 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (prod `bb` (app [global (indt «prod»), c3, c3]) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c5, + global (indt «bool»), global (indc «true»)]) c6 \ + app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), + constructor k2 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (app + [c2, c3, c4, global (indt «nat»), + app [global (indc «S»), global (indc «O»)]]))] + D1 = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ + parameter a explicit c0 c1 \ + inductive ind1 tt + (parameter B explicit (sort (typ «ind1.u0»)) c2 \ + parameter b explicit c2 c3 \ + arity + (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.26»))) + c2 \ + [constructor k1 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (prod `bb` (app [global (indt «prod»), c3, c3]) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c5, + global (indt «bool»), global (indc «true»)]) c6 \ + app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), + constructor k2 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (app + [c2, c3, c4, global (indt «nat»), + app [global (indc «S»), global (indc «O»)]]))] + I = «ind1» + U = «elpi_tests_stdlib.test_API_env.26» + UA = «elpi_tests_stdlib.test_API_env.20» + UB1 = «ind1.u0» + UB2 = «ind1.u0» + UB3 = «ind1.u0» + UC = «elpi_tests_stdlib.test_API_env.22» +Universe constraints: +UNIVERSES: + {elpi_tests_stdlib.test_API_env.26} |= + Set <= elpi_tests_stdlib.test_API_env.26 + ind1.u0 <= elpi_tests_stdlib.test_API_env.26 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + D = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ + parameter a explicit c0 c1 \ + inductive ind1 tt + (parameter B explicit (sort (typ «ind1.u0»)) c2 \ + parameter b explicit c2 c3 \ + arity + (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.27»))) + c2 \ + [constructor k1 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + parameter bb implicit (app [global (indt «prod»), c3, c3]) c5 \ + arity + (prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c5, + global (indt «bool»), global (indc «true»)]) c6 \ + app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), + constructor k2 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (app + [c2, c3, c4, global (indt «nat»), + app [global (indc «S»), global (indc «O»)]]))] + D1 = parameter A explicit (sort (typ «elpi_tests_stdlib.test_API_env.20»)) c0 \ + parameter a explicit c0 c1 \ + inductive ind1 tt + (parameter B explicit (sort (typ «ind1.u0»)) c2 \ + parameter b explicit c2 c3 \ + arity + (prod `C` (sort (typ «elpi_tests_stdlib.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi_tests_stdlib.test_API_env.27»))) + c2 \ + [constructor k1 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + parameter bb implicit (app [global (indt «prod»), c3, c3]) c5 \ + arity + (prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c5, + global (indt «bool»), global (indc «true»)]) c6 \ + app [c2, c3, c4, global (indt «unit»), global (indc «tt»)])), + constructor k2 + (parameter B explicit (sort (typ «ind1.u0»)) c3 \ + parameter b explicit c3 c4 \ + arity + (app + [c2, c3, c4, global (indt «nat»), + app [global (indc «S»), global (indc «O»)]]))] + I = «ind1» + U = «elpi_tests_stdlib.test_API_env.27» + UA = «elpi_tests_stdlib.test_API_env.20» + UB1 = «ind1.u0» + UB2 = «ind1.u0» + UB3 = «ind1.u0» + UC = «elpi_tests_stdlib.test_API_env.22» +Universe constraints: +UNIVERSES: + {elpi_tests_stdlib.test_API_env.27} |= + Set <= elpi_tests_stdlib.test_API_env.27 + ind1.u0 <= elpi_tests_stdlib.test_API_env.27 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + D = parameter P explicit (sort (typ «r1.u0»)) c0 \ + parameter p explicit c0 c1 \ + record r1 (sort (typ «r1.u0»)) mk_r1 + (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ + field [coercion off, canonical ff] f2 + (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) + D1 = parameter P explicit (sort (typ «r1.u0»)) c0 \ + parameter p explicit c0 c1 \ + record r1 (sort (typ «r1.u0»)) mk_r1 + (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ + field [coercion off, canonical ff] f2 + (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) + I = «r1» + UP = «r1.u0» + UR = «r1.u0» +Query assignments: + D = parameter P explicit (sort (typ «r1.u0»)) c0 \ + parameter p explicit c0 c1 \ + record r1 (sort (typ «r1.u0»)) mk_r1 + (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ + field [coercion regular, canonical ff] f2 + (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) + D1 = parameter P explicit (sort (typ «r1.u0»)) c0 \ + parameter p explicit c0 c1 \ + record r1 (sort (typ «r1.u0»)) mk_r1 + (field [coercion reversible, canonical tt] f1 (prod `_` c0 c2 \ c0) c2 \ + field [coercion regular, canonical ff] f2 + (app [global (indt «eq»), c0, c1, app [c2, c1]]) c3 \ end-record) + I = «r1» + UP = «r1.u0» + UR = «r1.u0» +{{ nat; S; }} +{{ nat; S; }} +Query assignments: + GR = const «Nat.add» + L = {{ nat; S; }} + S = {{ nat; S; }} +{{ X.a; }} {{ X.a; Nat.add; nat; }} +{{ X.a; }} {{ X.a; Nat.add; nat; O; S; }} +Query assignments: + %arg1 = const «X.a» + AllL = {{ X.a; Nat.add; nat; }} + AllS = {{ X.a; Nat.add; nat; O; S; }} + GR = const «X.b» + L = {{ X.a; }} + M = «elpi_tests_stdlib.test_API_env.HOAS.X» + S = {{ X.a; }} +Query assignments: + %arg1 = 3372 + GR = const «Ranalysis5.derivable_pt_lim_CVU» + S = {{ Field_theory.AF_1_neq_0; Field_theory.AF_AR; Field_theory.AFdiv_def; + Field_theory.AFinv_l; Ring_theory.ARadd_0_l; Ring_theory.ARadd_0_r; + Ring_theory.ARadd_assoc; Ring_theory.ARadd_assoc1; + Ring_theory.ARadd_assoc2; Ring_theory.ARadd_comm; Ring_theory.ARdistr_l; + Ring_theory.ARdistr_r; InitialRing.ARgen_phiPOS_Psucc; + InitialRing.ARgen_phiPOS_add; InitialRing.ARgen_phiPOS_mult; + Ring_theory.ARmul_0_l; Ring_theory.ARmul_0_r; Ring_theory.ARmul_1_l; + Ring_theory.ARmul_1_r; Ring_theory.ARmul_assoc; + Ring_theory.ARmul_assoc1; Ring_theory.ARmul_assoc2; + Ring_theory.ARmul_comm; Ring_theory.ARopp_add; Ring_theory.ARopp_mul_l; + Ring_theory.ARopp_mul_r; Ring_theory.ARopp_zero; Ring_theory.ARsub_def; + Ring_theory.ARsub_ext; Ring_theory.ARth_SRth; RList.AbsList; + RList.AbsList_P1; RList.AbsList_P2; Acc_inv; + Morphisms_Prop.Acc_pt_morphism; Acc_rect; Tauto.BFormula; + PSeries_reg.Ball_in_inter; Rlimit.Base; PSeries_reg.Boule; + PSeries_reg.Boule_center; Setoid.Build_Setoid_Theory; + Ring_polynom.CFactor; RMicromega.CInvR0; RMicromega.CPowR0; + ConstructiveReals.CR_Q_dense; ConstructiveReals.CR_archimedean; + ConstructiveReals.CR_cauchy; ConstructiveReals.CR_complete; + ConstructiveReals.CR_cv; ConstructiveLimits.CR_cv_bound_down; + ConstructiveLimits.CR_cv_le; ConstructiveLimits.CR_cv_open_above; + ConstructiveLimits.CR_cv_open_below; ConstructiveLimits.CR_cv_opp; + ConstructiveLimits.CR_cv_plus; ConstructiveLimits.CR_cv_proper; + ConstructiveReals.CR_of_Q; ConstructiveReals.CR_of_Q_le; + ConstructiveReals.CR_of_Q_lt; ConstructiveReals.CR_of_Q_morph; + ConstructiveReals.CR_of_Q_morph_Proper; + ConstructiveReals.CR_of_Q_morph_T; ConstructiveReals.CR_of_Q_mult; + ConstructiveReals.CR_of_Q_opp; ConstructiveReals.CR_of_Q_plus; + ConstructiveReals.CR_of_Q_pos; ConstructiveLUB.CR_sig_lub; + ConstructiveReals.CRabs; ConstructiveReals.CRabs_def; + ConstructiveAbs.CRabs_le; ConstructiveAbs.CRabs_lt; + ConstructiveAbs.CRabs_morph; ConstructiveAbs.CRabs_morph_prop_Proper; + ConstructiveAbs.CRabs_opp; ConstructiveAbs.CRabs_right; + ConstructiveAbs.CRabs_triang; ConstructiveReals.CRapart; + ConstructiveReals.CRcarrier; ConstructiveRcomplete.CRealAbsLUB; + ConstructiveCauchyRealsMult.CRealArchimedean; + ConstructiveRcomplete.CRealComplete; + ConstructiveRcomplete.CRealConstructive; + ConstructiveCauchyReals.CRealEq; ConstructiveCauchyReals.CRealEq_diff; + ConstructiveCauchyReals.CRealEq_refl; + ConstructiveCauchyReals.CRealEq_rel; + ConstructiveCauchyReals.CRealEq_relT; + ConstructiveCauchyReals.CRealEq_rel_Reflexive; + ConstructiveCauchyReals.CRealEq_rel_Symmetric; + ConstructiveCauchyReals.CRealEq_rel_Transitive; + ConstructiveCauchyReals.CRealEq_sym; + ConstructiveCauchyReals.CRealEq_trans; ConstructiveCauchyReals.CRealGe; + ConstructiveCauchyReals.CRealLe; + ConstructiveCauchyAbs.CRealLe_0R_to_single_dist; + ConstructiveCauchyReals.CRealLe_morph_Proper; + ConstructiveCauchyReals.CRealLe_not_lt; + ConstructiveCauchyReals.CRealLe_refl; + ConstructiveCauchyRealsMult.CRealLowerBound; + ConstructiveCauchyRealsMult.CRealLowerBoundSpec; + ConstructiveCauchyRealsMult.CRealLowerBound_lt_scale; + ConstructiveCauchyReals.CRealLt; + ConstructiveRcomplete.CRealLtDisjunctEpsilon; + ConstructiveCauchyReals.CRealLtEpsilon; + ConstructiveCauchyReals.CRealLtForget; + ConstructiveRcomplete.CRealLtIsLinear; + ConstructiveCauchyReals.CRealLtProp; + ConstructiveCauchyReals.CRealLtProp_morph_Proper; + ConstructiveCauchyReals.CRealLt_0_1; + ConstructiveCauchyAbs.CRealLt_RQ_from_single_dist; + ConstructiveCauchyReals.CRealLt_above; + ConstructiveCauchyReals.CRealLt_aboveSig; + ConstructiveCauchyReals.CRealLt_aboveSig'; + ConstructiveCauchyReals.CRealLt_above_same; + ConstructiveCauchyReals.CRealLt_asym; + ConstructiveCauchyReals.CRealLt_dec; + ConstructiveCauchyReals.CRealLt_irrefl; + ConstructiveCauchyReals.CRealLt_lpo_dec; + ConstructiveCauchyReals.CRealLt_morph; + ConstructiveCauchyRealsMult.CRealQ_dense; + ConstructiveCauchyRealsMult.CRealRing_ring_lemma1; + ConstructiveCauchyRealsMult.CRealRing_ring_lemma2; + ConstructiveCauchyAbs.CReal_abs; + ConstructiveCauchyAbs.CReal_abs_appart_0; + ConstructiveCauchyAbs.CReal_abs_bound; + ConstructiveCauchyAbs.CReal_abs_cauchy; + ConstructiveCauchyAbs.CReal_abs_def2; + ConstructiveCauchyAbs.CReal_abs_le; + ConstructiveCauchyAbs.CReal_abs_left; + ConstructiveCauchyAbs.CReal_abs_minus_sym; + ConstructiveCauchyAbs.CReal_abs_morph; + ConstructiveCauchyAbs.CReal_abs_morph_Proper; + ConstructiveCauchyAbs.CReal_abs_opp; + ConstructiveCauchyAbs.CReal_abs_pos; + ConstructiveCauchyAbs.CReal_abs_right; + ConstructiveCauchyAbs.CReal_abs_scale; + ConstructiveCauchyAbs.CReal_abs_seq; + ConstructiveCauchyAbs.CReal_abs_triang; + ConstructiveCauchyReals.CReal_appart; + ConstructiveRcomplete.CReal_cv_self'; + ConstructiveRcomplete.CReal_from_cauchy; + ConstructiveRcomplete.CReal_from_cauchy_bound; + ConstructiveRcomplete.CReal_from_cauchy_cauchy; + ConstructiveRcomplete.CReal_from_cauchy_cm; + ConstructiveRcomplete.CReal_from_cauchy_cm_mono; + ConstructiveRcomplete.CReal_from_cauchy_scale; + ConstructiveRcomplete.CReal_from_cauchy_seq; + ConstructiveRcomplete.CReal_from_cauchy_seq_bound; + ConstructiveCauchyRealsMult.CReal_inv; + ConstructiveCauchyRealsMult.CReal_inv_0_lt_compat; + ConstructiveCauchyRealsMult.CReal_inv_l; + ConstructiveCauchyRealsMult.CReal_inv_l_pos; + ConstructiveCauchyRealsMult.CReal_inv_pos; + ConstructiveCauchyRealsMult.CReal_inv_pos_bound; + ConstructiveCauchyRealsMult.CReal_inv_pos_cauchy; + ConstructiveCauchyRealsMult.CReal_inv_pos_cm; + ConstructiveCauchyRealsMult.CReal_inv_pos_scale; + ConstructiveCauchyRealsMult.CReal_inv_pos_seq; + ConstructiveCauchyRealsMult.CReal_isRing; + ConstructiveCauchyRealsMult.CReal_isRingExt; + ConstructiveCauchyAbs.CReal_le_abs; + ConstructiveCauchyReals.CReal_le_lt_trans; + ConstructiveCauchyReals.CReal_le_trans; + ConstructiveCauchyReals.CReal_lt_le_trans; + ConstructiveCauchyReals.CReal_lt_trans; + ConstructiveCauchyReals.CReal_minus; + ConstructiveCauchyRealsMult.CReal_mult; + ConstructiveCauchyRealsMult.CReal_mult_1_l; + ConstructiveCauchyRealsMult.CReal_mult_assoc; + ConstructiveCauchyRealsMult.CReal_mult_bound; + ConstructiveCauchyRealsMult.CReal_mult_cauchy; + ConstructiveCauchyRealsMult.CReal_mult_comm; + ConstructiveCauchyRealsMult.CReal_mult_lt_0_compat; + ConstructiveCauchyRealsMult.CReal_mult_lt_0_compat_correct; + ConstructiveCauchyRealsMult.CReal_mult_lt_compat_l; + ConstructiveCauchyRealsMult.CReal_mult_morph_Proper; + ConstructiveCauchyRealsMult.CReal_mult_plus_distr_l; + ConstructiveCauchyRealsMult.CReal_mult_proper_0_l; + ConstructiveCauchyRealsMult.CReal_mult_proper_l; + ConstructiveCauchyRealsMult.CReal_mult_scale; + ConstructiveCauchyRealsMult.CReal_mult_seq; + ConstructiveCauchyRealsMult.CReal_neg_lt_pos; + ConstructiveCauchyRealsMult.CReal_neg_lt_pos_subproof; + ConstructiveCauchyReals.CReal_opp; ConstructiveCauchyReals.CReal_opp_0; + ConstructiveCauchyReals.CReal_opp_bound; + ConstructiveCauchyReals.CReal_opp_cauchy; + ConstructiveCauchyReals.CReal_opp_ge_le_contravar; + ConstructiveCauchyReals.CReal_opp_involutive; + ConstructiveCauchyRealsMult.CReal_opp_morph_Proper; + ConstructiveCauchyRealsMult.CReal_opp_morph_T; + ConstructiveCauchyRealsMult.CReal_opp_mult_distr_l; + ConstructiveCauchyRealsMult.CReal_opp_mult_distr_r; + ConstructiveCauchyReals.CReal_opp_scale; + ConstructiveCauchyReals.CReal_opp_seq; + ConstructiveCauchyReals.CReal_plus; + ConstructiveCauchyReals.CReal_plus_0_l; + ConstructiveCauchyReals.CReal_plus_0_r; + ConstructiveCauchyReals.CReal_plus_assoc; + ConstructiveCauchyReals.CReal_plus_bound; + ConstructiveCauchyReals.CReal_plus_cauchy; + ConstructiveCauchyReals.CReal_plus_comm; + ConstructiveCauchyReals.CReal_plus_eq_reg_l; + ConstructiveCauchyReals.CReal_plus_le_compat; + ConstructiveCauchyReals.CReal_plus_le_compat_l; + ConstructiveCauchyReals.CReal_plus_le_lt_compat; + ConstructiveCauchyReals.CReal_plus_le_reg_r; + ConstructiveCauchyReals.CReal_plus_lt_compat_l; + ConstructiveCauchyReals.CReal_plus_lt_compat_r; + ConstructiveCauchyReals.CReal_plus_lt_reg_l; + ConstructiveCauchyReals.CReal_plus_lt_reg_r; + ConstructiveCauchyReals.CReal_plus_morph; + ConstructiveCauchyReals.CReal_plus_morph_Proper; + ConstructiveCauchyReals.CReal_plus_morph_T; + ConstructiveCauchyReals.CReal_plus_opp_l; + ConstructiveCauchyReals.CReal_plus_opp_r; + ConstructiveCauchyReals.CReal_plus_proper_l; + ConstructiveCauchyReals.CReal_plus_proper_r; + ConstructiveCauchyReals.CReal_plus_scale; + ConstructiveCauchyReals.CReal_plus_seq; + ConstructiveCauchyRealsMult.CReal_red_scale; + ConstructiveCauchyReals.CReal_red_seq; + ConstructiveCauchyRealsMult.CReal_scale_sep0_limit; + ConstructiveReals.CReq; ConstructiveReals.CReq_refl; + ConstructiveReals.CReq_rel; ConstructiveReals.CReq_relT; + ConstructiveReals.CReq_rel_Reflexive; + ConstructiveReals.CReq_rel_Symmetric; + ConstructiveReals.CReq_rel_Transitive; ConstructiveReals.CReq_sym; + ConstructiveReals.CReq_trans; ConstructiveReals.CRinv; + ConstructiveReals.CRinv_0_lt_compat; ConstructiveReals.CRinv_l; + ConstructiveReals.CRinv_r; ConstructiveReals.CRisRing; + ConstructiveReals.CRisRingExt; ConstructiveLUB.CRis_upper_bound; + ConstructiveReals.CRle; ConstructiveAbs.CRle_abs; + ConstructiveReals.CRle_lt_trans; ConstructiveReals.CRle_morph_Proper; + ConstructiveReals.CRle_refl; ConstructiveReals.CRle_trans; + ConstructiveReals.CRlt; ConstructiveReals.CRltEpsilon; + ConstructiveReals.CRltForget; ConstructiveReals.CRltLinear; + ConstructiveReals.CRltProp; ConstructiveReals.CRlt_asym; + ConstructiveReals.CRlt_le_trans; ConstructiveLUB.CRlt_lpo_dec; + ConstructiveReals.CRlt_minus; ConstructiveReals.CRlt_morph; + ConstructiveReals.CRlt_proper; ConstructiveReals.CRlt_trans; + ConstructiveReals.CRminus; ConstructiveReals.CRmult; + ConstructiveReals.CRmult_0_r; ConstructiveReals.CRmult_1_l; + ConstructiveReals.CRmult_1_r; ConstructiveReals.CRmult_assoc; + ConstructiveReals.CRmult_comm; ConstructiveReals.CRmult_lt_0_compat; + ConstructiveReals.CRmult_lt_compat_l; + ConstructiveReals.CRmult_lt_compat_r; ConstructiveReals.CRmult_lt_reg_l; + ConstructiveReals.CRmult_lt_reg_r; ConstructiveReals.CRmult_morph; + ConstructiveReals.CRmult_morph_Proper; ConstructiveReals.CRmult_morph_T; + ConstructiveReals.CRmult_plus_distr_l; + ConstructiveReals.CRmult_plus_distr_r; ConstructiveReals.CRopp; + ConstructiveReals.CRopp_0; ConstructiveReals.CRopp_ge_le_contravar; + ConstructiveReals.CRopp_gt_lt_contravar; + ConstructiveReals.CRopp_involutive; ConstructiveReals.CRopp_lt_cancel; + ConstructiveReals.CRopp_morph_Proper; + ConstructiveReals.CRopp_mult_distr_l; + ConstructiveReals.CRopp_mult_distr_r; + ConstructiveReals.CRopp_plus_distr; ConstructiveReals.CRplus; + ConstructiveReals.CRplus_0_l; ConstructiveReals.CRplus_0_r; + ConstructiveReals.CRplus_assoc; ConstructiveReals.CRplus_comm; + ConstructiveReals.CRplus_eq_reg_l; ConstructiveReals.CRplus_le_compat; + ConstructiveReals.CRplus_le_compat_l; + ConstructiveReals.CRplus_le_compat_r; ConstructiveReals.CRplus_le_reg_l; + ConstructiveReals.CRplus_le_reg_r; ConstructiveReals.CRplus_lt_compat_l; + ConstructiveReals.CRplus_lt_compat_r; ConstructiveReals.CRplus_lt_reg_l; + ConstructiveReals.CRplus_lt_reg_r; ConstructiveReals.CRplus_morph; + ConstructiveReals.CRplus_morph_Proper; ConstructiveReals.CRplus_morph_T; + ConstructiveReals.CRplus_opp_l; ConstructiveReals.CRplus_opp_r; + ConstructiveReals.CRup_nat; ConstructiveReals.CRzero_double; + PSeries_reg.CVU; CompOpp; CompOpp_iff; CompOpp_inj; CompOpp_involutive; + CompSpec; CompSpec2Type; CompSpecT; CompareSpec2Type; + ConstructiveLUB.DDcut_limit; ConstructiveLUB.DDcut_limit_fix; + ConstructiveLUB.DDdec; ConstructiveLUB.DDhigh; + ConstructiveLUB.DDhighProp; ConstructiveLUB.DDinterval; + ConstructiveLUB.DDlow; ConstructiveLUB.DDlowProp; + ConstructiveLUB.DDlow_below_up; ConstructiveLUB.DDproper; + ConstructiveLUB.DDupcut; Rderiv.D_in; Rderiv.D_x; Rderiv.Dmult; Env.Env; + Ring_theory.Eq_ext; Ring_theory.Eqsth; RelationClasses.Equivalence_PER; + CRelationClasses.Equivalence_Reflexive; + RelationClasses.Equivalence_Reflexive; + CRelationClasses.Equivalence_Symmetric; + RelationClasses.Equivalence_Symmetric; + RelationClasses.Equivalence_Transitive; ZMicromega.F; Field_theory.F2AF; + Field_theory.FEeval; Field_theory.FExpr_ind; Field_theory.F_1_neq_0; + Field_theory.F_R; False_ind; False_rec; False_rect; Field_theory.Fapp; + Field_theory.Fcons0; Field_theory.Fcons1; Field_theory.Fcons2; + Field_theory.Fdiv_def; Field_theory.Field_correct; + Field_theory.Field_rw_pow_correct; + Field_theory.Field_simplify_eq_pow_correct; Field_theory.Finv_l; + Field_theory.Fnorm; Field_theory.Fnorm_FEeval_PEeval; + Field_theory.Fnorm_crossproduct; Tauto.GFormula_ind; ID; + Ring_theory.IDmorph; Ring_theory.IDphi; Rdefinitions.IPR; + Rdefinitions.IPR_2; RIneq.IPR_2_xH; RIneq.IPR_2_xI; RIneq.IPR_2_xO; + RIneq.IPR_IPR_2; RIneq.IPR_ge_1; RIneq.IPR_gt_0; RIneq.IPR_xH; + RIneq.IPR_xI; RIneq.IPR_xO; Rdefinitions.IZR; RIneq.IZR_ge; + RIneq.IZR_le; RIneq.IZR_lt; Qreals.IZR_nz; List.In; ZifyInst.Inj_Z_Z; + ZifyInst.Inj_pos_Z; RelationClasses.Irreflexive; Ring_polynom.MFactor; + Ring_polynom.MPcond; MVT.MVT; RList.MaxRlist; RList.MaxRlist_P1; + Ring_polynom.Mcphi_ok; RList.MinRlist; RList.MinRlist_P1; + RList.MinRlist_P2; Ring_polynom.Mphi; Ring_polynom.Mphi_ok; + RingMicromega.NFormula; Classical_Prop.NNPP; Field_theory.NPEadd; + Field_theory.NPEadd_ok; Field_theory.NPEequiv; Field_theory.NPEequiv_eq; + Field_theory.NPEeval_ext; Field_theory.NPEmul; Field_theory.NPEmul_ok; + Field_theory.NPEopp; Field_theory.NPEopp_ok; Field_theory.NPEpow; + Field_theory.NPEpow_ok; Field_theory.NPEsub; Field_theory.NPEsub_ok; + InitialRing.Nopp; InitialRing.Nsub; Field_theory.NtoZ; + InitialRing.Ntriv_div_th; O_S; ConstructiveEpsilon.O_witness; + RingMicromega.OpAdd; RingMicromega.OpAdd_sound; RingMicromega.OpMult; + RingMicromega.OpMult_sound; ConstructiveEpsilon.P'; + ConstructiveEpsilon.P'_decidable; EnvRing.P0; Ring_polynom.P0; + EnvRing.P1; Ring_polynom.P1; Field_theory.PCond; Field_theory.PCond_app; + Field_theory.PCond_cons; RelationClasses.PER_Symmetric; + RelationClasses.PER_Transitive; Morphisms.PER_morphism; + Morphisms.PER_morphism_obligation_1; Field_theory.PE_1_l; + Field_theory.PE_1_r; Field_theory.PEadd_ext; EnvRing.PEeval; + Ring_polynom.PEeval; Field_theory.PEmul_ext; Field_theory.PEopp_ext; + Field_theory.PEpow_0_r; Field_theory.PEpow_1_l; Field_theory.PEpow_1_r; + Field_theory.PEpow_add_r; Field_theory.PEpow_ext; + Field_theory.PEpow_mul_l; Field_theory.PEpow_mul_r; + Field_theory.PEpow_nz; Field_theory.PEsimp; Field_theory.PEsimp_ok; + Field_theory.PEsub_ext; Field_theory.PExpr_eq; + Field_theory.PExpr_eq_semi_ok; Field_theory.PExpr_eq_spec; + EnvRing.PExpr_ind; Ring_polynom.PExpr_ind; + Field_theory.PFcons0_fcons_inv; Field_theory.PFcons1_fcons_inv; + Field_theory.PFcons2_fcons_inv; Ring_polynom.PNSubst; + Ring_polynom.PNSubst1; Ring_polynom.PNSubst1_ok; Ring_polynom.PNSubstL; + Ring_polynom.PNSubstL_ok; Ring_polynom.PNSubst_ok; + Ring_polynom.POneSubst; Ring_polynom.POneSubst_ok; Ring_polynom.PSubstL; + Ring_polynom.PSubstL1; Ring_polynom.PSubstL1_ok; + Ring_polynom.PSubstL_ok; Ring_polynom.PX_ext; EnvRing.Padd; + Ring_polynom.Padd; EnvRing.PaddC; Ring_polynom.PaddC; EnvRing.PaddC_ok; + Ring_polynom.PaddC_ok; EnvRing.PaddI; Ring_polynom.PaddI; EnvRing.PaddX; + Ring_polynom.PaddX; EnvRing.PaddX_ok; Ring_polynom.PaddX_ok; + EnvRing.Padd_ok; Ring_polynom.Padd_ok; Field_theory.Pcond_Fnorm; + Field_theory.Pcond_simpl_complete; EnvRing.Peq; Ring_polynom.Peq; + EnvRing.Peq_ok; Ring_polynom.Peq_ok; EnvRing.Peq_spec; + Ring_polynom.Peq_spec; Ring_polynom.Pequiv; Ring_polynom.Pequiv_eq; + EnvRing.Pjump_add; EnvRing.Pjump_pred_double; EnvRing.Pjump_xO_tail; + EnvRing.Pmul; Ring_polynom.Pmul; EnvRing.PmulC; Ring_polynom.PmulC; + EnvRing.PmulC_aux; Ring_polynom.PmulC_aux; EnvRing.PmulC_aux_ok; + Ring_polynom.PmulC_aux_ok; EnvRing.PmulC_ok; Ring_polynom.PmulC_ok; + EnvRing.PmulI; Ring_polynom.PmulI; EnvRing.PmulI_ok; + Ring_polynom.PmulI_ok; EnvRing.Pmul_ok; Ring_polynom.Pmul_ok; + RingMicromega.PolC; RingMicromega.PolEnv; EnvRing.Pol_ind; + Ring_polynom.Pol_ind; EnvRing.Popp; Ring_polynom.Popp; EnvRing.Popp_ok; + Ring_polynom.Popp_ok; ConstructiveRcomplete.Pos2Z_pos_is_pos; + QExtra.Pos_log2floor_plus1; QExtra.Pos_log2floor_plus1_spec; + PosExtra.Pos_pow_1_r; PosExtra.Pos_pow_le_mono_r; + ConstructiveExtra.Pos_pred_double_inj; + ConstructiveRcomplete.Pospow_lin_le_2pow; EnvRing.Pphi; + Ring_polynom.Pphi; EnvRing.Pphi0; Ring_polynom.Pphi0; EnvRing.Pphi1; + Ring_polynom.Pphi1; Ring_polynom.Pphi_avoid; Ring_polynom.Pphi_avoid_ok; + Ring_polynom.Pphi_dev; Ring_polynom.Pphi_dev_ok; Ring_polynom.Pphi_ext; + Ring_polynom.Pphi_pow; Ring_polynom.Pphi_pow_ok; + BinPos.Pplus_one_succ_l; BinPos.Pplus_one_succ_r; EnvRing.Ppow_N; + Ring_polynom.Ppow_N; EnvRing.Ppow_N_ok; Ring_polynom.Ppow_N_ok; + EnvRing.Ppow_pos; Ring_polynom.Ppow_pos; EnvRing.Ppow_pos_ok; + Ring_polynom.Ppow_pos_ok; RelationClasses.PreOrder_Reflexive; + RelationClasses.PreOrder_Transitive; RIneq.Private_sumbool_to_or; + CMorphisms.Proper; Morphisms.Proper; CMorphisms.ProperProxy; + Morphisms.ProperProxy; Qminmax.Q.Proper_instance_0; + BinInt.Z.Proper_instance_0; RingMicromega.Psatz_ind; EnvRing.Psquare; + EnvRing.Psquare_ok; EnvRing.Psub; Ring_polynom.Psub; EnvRing.PsubC; + Ring_polynom.PsubC; EnvRing.PsubC_ok; RingMicromega.PsubC_ok; + Ring_polynom.PsubC_ok; EnvRing.PsubI; Ring_polynom.PsubI; EnvRing.PsubX; + Ring_polynom.PsubX; EnvRing.PsubX_ok; EnvRing.Psub_ok; + Ring_polynom.Psub_ok; Ring_polynom.Psub_opp; Rdefinitions.Q2R; + RMicromega.Q2R_0; RMicromega.Q2R_1; Qreals.Q2R_inv; + RMicromega.Q2R_inv_ext; RMicromega.Q2R_m_Proper; Qreals.Q2R_minus; + Qreals.Q2R_mult; Qreals.Q2R_opp; Qreals.Q2R_plus; RMicromega.Q2R_pow_N; + RMicromega.Q2R_pow_pos; RMicromega.Q2RpowerRZ; + ConstructiveCauchyReals.QBound; ConstructiveCauchyReals.QCauchySeq; + QMicromega.QNpower; RMicromega.QReval_expr; RMicromega.QReval_formula; + RMicromega.QReval_formula'; RMicromega.QReval_formula_compat; + QMicromega.QSORaddon; RMicromega.QSORaddon; QMicromega.QTautoChecker; + QMicromega.QTautoChecker_sound; QMicromega.QWeakChecker; + QMicromega.QWeakChecker_sound; QMicromega.QWitness; + QArith_base.Q_Setoid; QArith_base.Q_dec; RMicromega.Q_of_Rcst; + RMicromega.Q_of_RcstR; Qabs.Qabs; + ConstructiveRcomplete.Qabs_Qgt_condition; Qabs.Qabs_Qinv; + Qabs.Qabs_Qle_condition; Qabs.Qabs_Qlt_condition; Qabs.Qabs_Qmult; + ConstructiveRcomplete.Qabs_Rabs; Qabs.Qabs_case; + Qabs.Qabs_case_subproof; Qabs.Qabs_case_subproof0; + Qabs.Qabs_case_subproof1; Qabs.Qabs_gt; + ConstructiveCauchyAbs.Qabs_involutive; Qabs.Qabs_neg; Qabs.Qabs_nonneg; + Qabs.Qabs_opp; Qabs.Qabs_pos; Qabs.Qabs_triangle; + Qabs.Qabs_triangle_reverse; Qabs.Qabs_wd; Qabs.Qabs_wd_Proper; + QArith_base.Qarchimedean; QExtra.QarchimedeanExp2_Z; + QExtra.QarchimedeanLowExp2_Z; QExtra.Qbound_lt_ZExp2; + QExtra.Qbound_lt_ZExp2_spec; QExtra.Qbound_ltabs_ZExp2; + QExtra.Qbound_ltabs_ZExp2_spec; QArith_base.Qcompare; + QArith_base.Qcompare_comp; QArith_base.Qden; QArith_base.Qdiv; + QArith_base.Qdiv_comp; QArith_base.Qdiv_mult_l; QArith_base.Qeq; + QArith_base.Qeq_alt; QArith_base.Qeq_bool; QArith_base.Qeq_bool_eq; + QArith_base.Qeq_bool_iff; QArith_base.Qeq_bool_neq; QArith_base.Qeq_dec; + Qreals.Qeq_eqR; QArith_base.Qeq_eq_bool; RMicromega.Qeq_false; + QArith_base.Qeq_refl; QArith_base.Qeq_sym; QArith_base.Qeq_trans; + RMicromega.Qeq_true; QMicromega.Qeval_bop2; QMicromega.Qeval_expr; + QMicromega.Qeval_expr'; QMicromega.Qeval_expr_compat; + QMicromega.Qeval_formula; QMicromega.Qeval_formula'; + QMicromega.Qeval_formula_compat; QMicromega.Qeval_nformula; + RMicromega.Qeval_nformula; QMicromega.Qeval_nformula_dec; + QMicromega.Qeval_op2; QMicromega.Qeval_op2_hold; QMicromega.Qeval_pop2; + Qfield.Qfield_field_lemma1; Qfield.Qfield_field_lemma2; + Qfield.Qfield_lemma5; Qfield.Qfield_ring_lemma1; + Qfield.Qfield_ring_lemma2; Qround.Qfloor; Qround.Qfloor_le; + QArith_base.Qinv; QArith_base.Qinv_comp; QArith_base.Qinv_involutive; + QArith_base.Qinv_le_0_compat; QArith_base.Qinv_lt_0_compat; + QArith_base.Qinv_lt_contravar; QArith_base.Qinv_mult_distr; + QArith_base.Qinv_plus_distr; QArith_base.Qinv_pos; Qpower.Qinv_power; + Qpower.Qinv_power_positive; QArith_base.Qle; Qabs.Qle_Qabs; + Qreals.Qle_Rle; QArith_base.Qle_alt; QArith_base.Qle_antisym; + QArith_base.Qle_bool; QArith_base.Qle_bool_iff; + QArith_base.Qle_bool_imp_le; QArith_base.Qle_comp; + QArith_base.Qle_lt_trans; QArith_base.Qle_minus_iff; + QArith_base.Qle_not_lt; QArith_base.Qle_refl; + QArith_base.Qle_shift_div_l; QArith_base.Qle_shift_div_r; + QArith_base.Qle_trans; RMicromega.Qle_true; + QExtra.Qlowbound_lt_ZExp2_spec; QExtra.Qlowbound_ltabs_ZExp2; + QExtra.Qlowbound_ltabs_ZExp2_inv; QArith_base.Qlt; QArith_base.Qlt_alt; + QMicromega.Qlt_bool; QMicromega.Qlt_bool_iff; QArith_base.Qlt_compat; + Qround.Qlt_floor; QArith_base.Qlt_irrefl; QArith_base.Qlt_le_dec; + QArith_base.Qlt_le_trans; QArith_base.Qlt_le_weak; + QArith_base.Qlt_leneq; QArith_base.Qlt_minus_iff; + QArith_base.Qlt_not_eq; QArith_base.Qlt_not_le; + QArith_base.Qlt_shift_div_l; QArith_base.Qlt_shift_div_r; + QArith_base.Qlt_shift_inv_l; QArith_base.Qlt_trans; + ConstructiveRcomplete.Qlt_trans_swap_hyp; QArith_base.Qminus; + QArith_base.Qminus_comp; QArith_base.Qmult; QArith_base.Qmult_0_l; + QArith_base.Qmult_0_r; QArith_base.Qmult_1_l; QArith_base.Qmult_1_r; + QArith_base.Qmult_assoc; QArith_base.Qmult_comm; QArith_base.Qmult_comp; + QArith_base.Qmult_div_r; QArith_base.Qmult_frac_l; + QArith_base.Qmult_integral; RMicromega.Qmult_integral; + QArith_base.Qmult_integral_l; QArith_base.Qmult_inv_r; + QArith_base.Qmult_le_0_compat; QArith_base.Qmult_le_1_compat; + QArith_base.Qmult_le_compat_nonneg; QArith_base.Qmult_le_compat_r; + QArith_base.Qmult_le_l; QArith_base.Qmult_le_lt_compat_pos; + QArith_base.Qmult_le_r; QArith_base.Qmult_lt_0_le_reg_r; + QArith_base.Qmult_lt_compat_nonneg; QArith_base.Qmult_lt_compat_r; + QArith_base.Qmult_lt_l; QArith_base.Qmult_lt_r; + QArith_base.Qmult_plus_distr_l; QMicromega.Qnegate; + QMicromega.Qnormalise; QArith_base.Qnot_eq_sym; QArith_base.Qnot_le_lt; + QArith_base.Qnot_lt_le; QArith_base.Qnum; QArith_base.Qopp; + QArith_base.Qopp_comp; QArith_base.Qopp_le_compat; + QArith_base.Qopp_lt_compat; ConstructiveCauchyAbs.Qopp_mult_mone; + Qfield.Qopp_opp; QArith_base.Qplus; QArith_base.Qplus_0_l; + QArith_base.Qplus_0_r; QArith_base.Qplus_assoc; QArith_base.Qplus_comm; + QArith_base.Qplus_comp; QArith_base.Qplus_le_compat; + QArith_base.Qplus_le_l; QArith_base.Qplus_le_r; QArith_base.Qplus_lt_l; + QArith_base.Qplus_lt_le_compat; QArith_base.Qplus_lt_r; + QArith_base.Qplus_opp_r; QArith_base.Qpower; RMicromega.Qpower0; + Qpower.Qpower_0_le; Qpower.Qpower_0_lt; Qpower.Qpower_0_r; + Qpower.Qpower_1_le; Qpower.Qpower_1_le_pos; + ConstructiveRcomplete.Qpower_2powneg_le_inv; QArith_base.Qpower_comp; + Qpower.Qpower_decomp_pos; Qpower.Qpower_decomp_positive; + Qpower.Qpower_le_compat_l; Qpower.Qpower_lt_compat_l_inv; + Qpower.Qpower_minus; Qpower.Qpower_minus_pos; + Qpower.Qpower_minus_positive; Qpower.Qpower_not_0; + Qpower.Qpower_not_0_positive; Qpower.Qpower_opp; Qpower.Qpower_plus; + Qpower.Qpower_plus_positive; Qpower.Qpower_pos_positive; + QArith_base.Qpower_positive; Qpower.Qpower_positive_0; + QArith_base.Qpower_positive_comp; RMicromega.Qpower_positive_eq_zero; + RMicromega.Qpower_positive_zero; Qfield.Qpower_theory; Qreduction.Qred; + Qreduction.Qred_correct; Qfield.Qsft; QMicromega.Qsor; Qfield.Qsrt; + Rdefinitions.RbaseSymbolsImpl.R; Rdefinitions.RbaseSymbolsImpl.R0; + Rdefinitions.RbaseSymbolsImpl.R0_def; Rdefinitions.RbaseSymbolsImpl.R1; + Rdefinitions.RbaseSymbolsImpl.R1_def; Raxioms.R1_neq_R0; + RIneq.RField_field_lemma1; RIneq.RField_field_lemma3; + RIneq.RField_lemma5; RIneq.RField_ring_lemma1; Rbasic_fun.RRle_abs; + RMicromega.RTautoChecker; RMicromega.RTautoChecker_sound; + RealField.RTheory; RMicromega.RWeakChecker; + RMicromega.RWeakChecker_sound; RMicromega.RWitness; Rlimit.R_met; + RMicromega.R_of_Rcst; RealField.R_power_theory; RIneq.R_rm; + InitialRing.R_set1; InitialRing.R_set1_Reflexive; + InitialRing.R_set1_Transitive; InitialRing.R_setoid3; + InitialRing.R_setoid3_Reflexive; InitialRing.R_setoid3_Symmetric; + InitialRing.R_setoid3_Transitive; InitialRing.R_setoid4; + InitialRing.R_setoid4_Reflexive; InitialRing.R_setoid4_Transitive; + Rbasic_fun.Rabs; Rbasic_fun.Rabs_R0; Rbasic_fun.Rabs_Ropp; + Rbasic_fun.Rabs_def1; Rbasic_fun.Rabs_def2; Rbasic_fun.Rabs_inv; + Rbasic_fun.Rabs_minus_sym; Rbasic_fun.Rabs_mult; Rbasic_fun.Rabs_no_R0; + Rbasic_fun.Rabs_pos; Rbasic_fun.Rabs_pos_eq; Rbasic_fun.Rabs_pos_lt; + Rbasic_fun.Rabs_right; Rbasic_fun.Rabs_triang; + Rbasic_fun.Rabs_triang_inv; Rdefinitions.RbaseSymbolsImpl.Rabst; + Ring_theory.Radd_0_l; Ring_theory.Radd_assoc; Ring_theory.Radd_comm; + Ring_theory.Radd_ext; Rbasic_fun.Rcase_abs; + ConstructiveRcomplete.Rcauchy_complete; RMicromega.Rcst_ind; + RealField.Rdef_pow_add; Rfunctions.Rdist; Rfunctions.Rdist_plus; + Rfunctions.Rdist_pos; Rfunctions.Rdist_refl; Rfunctions.Rdist_sym; + Rfunctions.Rdist_tri; Ring_theory.Rdistr_l; Rdefinitions.Rdiv; + RIneq.Rdiv_plus_distr; CRelationClasses.Reflexive; + RelationClasses.Reflexive; Morphisms.ReflexiveProxy; + CMorphisms.Reflexive_partial_app_morphism; + Morphisms.Reflexive_partial_app_morphism; Rdefinitions.Req_appart_dec; + RIneq.Req_dec; RIneq.Req_dec_T; OrderedRing.Req_dne; OrderedRing.Req_em; + RIneq.Req_le; RIneq.Req_le_sym; RMicromega.Reval_bop2; + RMicromega.Reval_expr; RMicromega.Reval_formula; + RMicromega.Reval_formula'; RMicromega.Reval_formula_compat; + RMicromega.Reval_nformula_dec; RMicromega.Reval_op2; + RMicromega.Reval_op2_hold; RMicromega.Reval_pop2; + RMicromega.Reval_pop2_eval_op2; RealField.Rfield; Rdefinitions.Rge; + RIneq.Rge_antisym; RIneq.Rge_gt_dec; RIneq.Rge_gt_trans; RIneq.Rge_le; + RIneq.Rge_minus; RIneq.Rge_not_lt; RIneq.Rge_trans; Rdefinitions.Rgt; + RIneq.Rgt_dec; RIneq.Rgt_ge_trans; RIneq.Rgt_lt; RIneq.Rgt_minus; + RIneq.Rgt_not_eq; RIneq.Rgt_not_ge; RIneq.Rgt_not_le; RIneq.Rgt_trans; + BinInt.Z.Rgt_wd; Rdefinitions.RinvImpl.Rinv; RIneq.Rinv_0; + RIneq.Rinv_0_lt_compat; RIneq.Rinv_1; RMicromega.Rinv_1; + Rdefinitions.RinvImpl.Rinv_def; Raxioms.Rinv_l; RIneq.Rinv_lt_0_compat; + RIneq.Rinv_mult; RIneq.Rinv_neq_0_compat; RIneq.Rinv_opp; RIneq.Rinv_r; + Rdefinitions.Rle; RIneq.Rle_0_1; RIneq.Rle_0_sqr; RIneq.Rle_Reflexive; + RIneq.Rle_Transitive; Rbasic_fun.Rle_abs; RIneq.Rle_antisym; + OrderedRing.Rle_antisymm; RIneq.Rle_dec; RIneq.Rle_ge; + OrderedRing.Rle_gt_cases; RIneq.Rle_le_eq; OrderedRing.Rle_le_minus; + RIneq.Rle_lt_dec; OrderedRing.Rle_lt_eq; OrderedRing.Rle_lt_trans; + RIneq.Rle_lt_trans; OrderedRing.Rle_ngt; RIneq.Rle_not_lt; + OrderedRing.Rle_refl; RIneq.Rle_refl; OrderedRing.Rle_trans; + RIneq.Rle_trans; Rdefinitions.RbaseSymbolsImpl.Rlt; RIneq.Rlt_0_1; + RIneq.Rlt_0_2; RIneq.Rlt_0_minus; RIneq.Rlt_0_sqr; Raxioms.Rlt_asym; + RIneq.Rlt_dec; Rdefinitions.RbaseSymbolsImpl.Rlt_def; + RIneq.Rlt_dichotomy_converse; RIneq.Rlt_gt; RIneq.Rlt_irrefl; + RIneq.Rlt_le; RIneq.Rlt_le_dec; OrderedRing.Rlt_le_neq; + OrderedRing.Rlt_le_trans; RIneq.Rlt_le_trans; OrderedRing.Rlt_lt_minus; + OrderedRing.Rlt_neq; OrderedRing.Rlt_nge; RIneq.Rlt_not_eq; + RIneq.Rlt_not_ge; RIneq.Rlt_not_le; RIneq.Rlt_or_le; + OrderedRing.Rlt_trans; Raxioms.Rlt_trans; OrderedRing.Rlt_trichotomy; + BinNat.N.Rlt_wd; PeanoNat.Nat.Rlt_wd; BinInt.Z.Rlt_wd; Rbasic_fun.Rmax; + Rbasic_fun.Rmax_Rlt; Rbasic_fun.Rmax_case_strong; Rbasic_fun.Rmax_l; + Rbasic_fun.Rmax_left; Rbasic_fun.Rmax_lub_lt; Rbasic_fun.Rmax_r; + Rbasic_fun.Rmax_right; Rbasic_fun.Rmax_stable_in_negreal; + Rbasic_fun.Rmin; Rbasic_fun.Rmin_Rgt; Rbasic_fun.Rmin_Rgt_l; + Rbasic_fun.Rmin_Rgt_r; Rbasic_fun.Rmin_case_strong; + Rbasic_fun.Rmin_glb_lt; Rbasic_fun.Rmin_l; Rbasic_fun.Rmin_r; + Rbasic_fun.Rmin_stable_in_posreal; Rdefinitions.Rminus; + RIneq.Rminus_0_r; RIneq.Rminus_diag_eq; RIneq.Rminus_diag_uniq; + RIneq.Rminus_diag_uniq_sym; OrderedRing.Rminus_eq_0; + RIneq.Rminus_eq_contra; RIneq.Rminus_ge; RIneq.Rminus_gt; + RIneq.Rminus_le; RIneq.Rminus_lt; RIneq.Rminus_not_eq; + RIneq.Rminus_plus_distr; RIneq.Rminus_plus_l_l; RIneq.Rminus_plus_r_l; + RIneq.Rminus_plus_r_r; Ring_theory.Rmul_0_l; Ring_theory.Rmul_1_l; + Ring_theory.Rmul_assoc; Ring_theory.Rmul_comm; Ring_theory.Rmul_ext; + Rdefinitions.RbaseSymbolsImpl.Rmult; RIneq.Rmult_0_l; RIneq.Rmult_0_r; + Raxioms.Rmult_1_l; RIneq.Rmult_1_r; Raxioms.Rmult_assoc; + Raxioms.Rmult_comm; Rdefinitions.RbaseSymbolsImpl.Rmult_def; + RIneq.Rmult_div_l; RIneq.Rmult_div_r; RIneq.Rmult_eq_compat_l; + RIneq.Rmult_eq_reg_l; RIneq.Rmult_ge_0_gt_0_lt_compat; + RIneq.Rmult_gt_0_compat; RIneq.Rmult_integral; + RIneq.Rmult_integral_contrapositive; + RIneq.Rmult_integral_contrapositive_currified; RIneq.Rmult_inv_r_id_l; + RIneq.Rmult_inv_r_id_m; RIneq.Rmult_inv_r_uniq; + RIneq.Rmult_le_0_lt_compat; RIneq.Rmult_le_compat; + RIneq.Rmult_le_compat_l; RIneq.Rmult_le_compat_neg_l; + RIneq.Rmult_le_compat_r; RIneq.Rmult_le_pos; RIneq.Rmult_lt_0_compat; + Raxioms.Rmult_lt_compat_l; RIneq.Rmult_lt_compat_r; + RIneq.Rmult_lt_gt_compat_neg_l; RIneq.Rmult_lt_reg_l; RIneq.Rmult_ne; + RIneq.Rmult_opp_opp; Raxioms.Rmult_plus_distr_l; + RIneq.Rmult_plus_distr_r; RMicromega.Rnegate; OrderedRing.Rneq_symm; + RMicromega.Rnormalise; RIneq.Rnot_gt_ge; RIneq.Rnot_le_gt; + RIneq.Rnot_le_lt; RIneq.Rnot_lt_ge; RIneq.Rnot_lt_le; + Rdefinitions.RbaseSymbolsImpl.Ropp; RIneq.Ropp_0; Rbasic_fun.Ropp_Rmin; + RIneq.Ropp_Ropp_IZR; Ring_theory.Ropp_add; Ring_theory.Ropp_def; + Rdefinitions.RbaseSymbolsImpl.Ropp_def; RIneq.Ropp_eq_0_compat; + RIneq.Ropp_eq_compat; RIneq.Ropp_eq_reg; Ring_theory.Ropp_ext; + RIneq.Ropp_ge_cancel; RIneq.Ropp_ge_le_contravar; + RIneq.Ropp_gt_lt_0_contravar; RIneq.Ropp_gt_lt_contravar; + RIneq.Ropp_involutive; RIneq.Ropp_le_cancel; RIneq.Ropp_le_contravar; + RIneq.Ropp_le_ge_contravar; RIneq.Ropp_lt_cancel; + RIneq.Ropp_lt_contravar; RIneq.Ropp_lt_gt_0_contravar; + RIneq.Ropp_lt_gt_contravar; OrderedRing.Ropp_lt_mono; + RIneq.Ropp_minus_distr; Ring_theory.Ropp_mul_l; RIneq.Ropp_mult_distr_l; + RIneq.Ropp_mult_distr_l_reverse; RIneq.Ropp_mult_distr_r; + RIneq.Ropp_neq_0_compat; Ring_theory.Ropp_opp; RIneq.Ropp_plus_distr; + OrderedRing.Ropp_pos_neg; RingMicromega.Rops_wd; + Rdefinitions.RbaseSymbolsImpl.Rplus; OrderedRing.Rplus_0_l; + Raxioms.Rplus_0_l; OrderedRing.Rplus_0_r; RIneq.Rplus_0_r; + RIneq.Rplus_0_r_uniq; Raxioms.Rplus_assoc; OrderedRing.Rplus_cancel_l; + OrderedRing.Rplus_comm; Raxioms.Rplus_comm; + Rdefinitions.RbaseSymbolsImpl.Rplus_def; RIneq.Rplus_diag; + RIneq.Rplus_eq_compat_l; RIneq.Rplus_eq_compat_r; RIneq.Rplus_eq_reg_l; + RIneq.Rplus_ge_compat_l; RIneq.Rplus_ge_compat_r; RIneq.Rplus_ge_reg_r; + RIneq.Rplus_half_diag; RIneq.Rplus_le_compat; RIneq.Rplus_le_compat_l; + RIneq.Rplus_le_compat_r; RIneq.Rplus_le_lt_0_compat; + RIneq.Rplus_le_lt_0_neq_0; RIneq.Rplus_le_lt_compat; + OrderedRing.Rplus_le_lt_mono; OrderedRing.Rplus_le_mono; + OrderedRing.Rplus_le_mono_l; OrderedRing.Rplus_le_mono_r; + RIneq.Rplus_le_reg_l; RIneq.Rplus_le_reg_r; RIneq.Rplus_lt_0_compat; + RIneq.Rplus_lt_compat; Raxioms.Rplus_lt_compat_l; + RIneq.Rplus_lt_compat_r; RIneq.Rplus_lt_le_0_compat; + RIneq.Rplus_lt_le_compat; OrderedRing.Rplus_lt_le_mono; + OrderedRing.Rplus_lt_mono; OrderedRing.Rplus_lt_mono_l; + OrderedRing.Rplus_lt_mono_r; RIneq.Rplus_lt_reg_l; RIneq.Rplus_lt_reg_r; + RIneq.Rplus_minus_assoc; RIneq.Rplus_minus_l; RIneq.Rplus_minus_r; + RIneq.Rplus_ne; OrderedRing.Rplus_nonneg_nonneg; + OrderedRing.Rplus_nonneg_pos; RIneq.Rplus_opp_l; Raxioms.Rplus_opp_r; + RIneq.Rplus_opp_r_uniq; OrderedRing.Rplus_pos_nonneg; + OrderedRing.Rplus_pos_pos; Rdefinitions.RbaseSymbolsImpl.Rquot1; + Rdefinitions.RbaseSymbolsImpl.Rquot2; + Rdefinitions.RbaseSymbolsImpl.Rrepr; Raxioms.Rrepr_0; Raxioms.Rrepr_1; + Rdefinitions.Rrepr_appart_0; Raxioms.Rrepr_le; Raxioms.Rrepr_mult; + Raxioms.Rrepr_opp; Raxioms.Rrepr_plus; Field_theory.Rring_ring_lemma1; + RMicromega.Rsor; RIneq.Rsqr; RIneq.Rsqr_0_uniq; RIneq.Rsqr_def; + RMicromega.Rsrt; Ring_theory.Rsub_def; Ring_theory.Rth_ARth; + OrderedRing.Rtimes_0_l; OrderedRing.Rtimes_0_r; OrderedRing.Rtimes_comm; + OrderedRing.Rtimes_neg_neg; OrderedRing.Rtimes_neq_0; + OrderedRing.Rtimes_nonneg_nonneg; OrderedRing.Rtimes_pos_neg; + OrderedRing.Rtimes_pos_pos; OrderedRing.Rtimes_square_nonneg; + RIneq.Rtotal_order; ConstructiveRcomplete.Rup_pos; + RingMicromega.SORRing_ring_lemma1; OrderedRing.SOR_ring_lemma1; + RingMicromega.SORcleb_morph; RingMicromega.SORcneqb_morph; + OrderedRing.SORle_antisymm; OrderedRing.SORle_refl; + OrderedRing.SORle_trans; OrderedRing.SORle_wd; OrderedRing.SORlt_le_neq; + OrderedRing.SORlt_trichotomy; OrderedRing.SORlt_wd; + OrderedRing.SORopp_wd; OrderedRing.SORplus_le_mono_l; + OrderedRing.SORplus_wd; RingMicromega.SORpower; RingMicromega.SORrm; + OrderedRing.SORrt; OrderedRing.SORsetoid; OrderedRing.SORtimes_pos_pos; + OrderedRing.SORtimes_wd; Ring_theory.SRadd_0_l; Ring_theory.SRadd_assoc; + Ring_theory.SRadd_comm; Ring_theory.SRadd_ext; Ring_theory.SRdistr_l; + Ring_theory.SReqe_Reqe; Ring_theory.SRmul_0_l; Ring_theory.SRmul_1_l; + Ring_theory.SRmul_assoc; Ring_theory.SRmul_comm; Ring_theory.SRmul_ext; + Ring_theory.SRopp; Ring_theory.SRopp_add; Ring_theory.SRopp_ext; + Ring_theory.SRopp_mul_l; Ring_theory.SRsub; Ring_theory.SRsub_def; + Ring_theory.SRth_ARth; Setoid.Seq_refl; Setoid.Seq_sym; + Setoid.Seq_trans; Setoid.Setoid_Theory; Ring_theory.Smorph0; + Ring_theory.Smorph1; Ring_theory.Smorph_add; Ring_theory.Smorph_eq; + Ring_theory.Smorph_morph; Ring_theory.Smorph_mul; + Ring_theory.Smorph_opp; Ring_theory.Smorph_sub; + RelationClasses.StrictOrder_Irreflexive; + RelationClasses.StrictOrder_Transitive; CRelationClasses.Symmetric; + RelationClasses.Symmetric; Tauto.TFormula; CRelationClasses.Transitive; + RelationClasses.Transitive; ConstructiveRcomplete.Un_cauchy_mod; + Rseries.Un_cv; ConstructiveLimits.Un_cv_nat_real; Init.Unconvertible; + ConstructiveCauchyRealsMult.Weaken_Qle_QpowerAddExp; + ConstructiveCauchyRealsMult.Weaken_Qle_QpowerFac; + ConstructiveCauchyRealsMult.Weaken_Qle_QpowerRemSubExp; + ZMicromega.ZChecker; ZMicromega.ZChecker_sound; ZMicromega.ZNpower; + ZMicromega.ZSORaddon; ZMicromega.ZTautoChecker; + ZMicromega.ZTautoChecker_sound; ZMicromega.ZWitness; Znat.Z_N_nat; + RIneq.Z_R_minus; ZArith_dec.Z_dec'; Zdiv.Z_div_mod; + Zdiv.Z_div_mod_eq_full; ConstructiveExtra.Z_inj_nat; +...TRUNCATED BY DUNE... + Tauto.add_term; Tauto.add_term_correct; BinNat.N.add_wd; + PeanoNat.Nat.add_wd; BinInt.Z.add_wd; PeanoNat.Nat.add_wd_obligation_1; + BinPos.Pos.add_xI_pred_double; BinPos.Pos.add_xO; Rlimit.adhDa; + Rtopology.adherence; Rtopology.adherence_P1; Rtopology.adherence_P2; + Rtopology.adherence_P3; ZMicromega.agree_env; + ZMicromega.agree_env_eval_nformula; ZMicromega.agree_env_eval_nformulae; + ZMicromega.agree_env_jump; ZMicromega.agree_env_subset; + ZMicromega.agree_env_tail; all; Morphisms_Prop.all_iff_morphism; + Morphisms_Prop.all_iff_morphism_obligation_1; and_assoc; Tauto.and_cnf; + Tauto.and_cnf_opt; Tauto.and_cnf_opt_cnf_ff_r; Tauto.and_cnf_opt_cnf_tt; + and_comm; and_iff_compat_l; Morphisms_Prop.and_iff_morphism; + Morphisms_Prop.and_iff_morphism_obligation_1; and_ind; + ZifyClasses.and_morph; and_rec; and_rect; andb; Bool.andb_false_iff; + andb_prop; Bool.andb_true_iff; app; CRelationClasses.arrow; + CRelationClasses.arrow_Transitive; + CRelationClasses.arrow_Transitive_obligation_1; ZMicromega.bdepth; + BinNat.N.bi_induction; PeanoNat.Nat.bi_induction; BinInt.Z.bi_induction; + ConstructiveCauchyReals.bound; Raxioms.bound; ZMicromega.bound_var; + Rtopology.bounded; BinNat.N.case_analysis; PeanoNat.Nat.case_analysis; + ConstructiveCauchyReals.cauchy; ZMicromega.ceiling; + BinNat.N.central_induction; PeanoNat.Nat.central_induction; + BinInt.Z.central_induction; EnvRing.ceqb_spec; Field_theory.ceqb_spec; + Ring_polynom.ceqb_spec; Field_theory.ceqb_spec'; + RingMicromega.check_inconsistent; + RingMicromega.check_inconsistent_sound; + RingMicromega.check_normalised_formulas; RingMicromega.checker_nf_sound; + Classical_Prop.classic; Tauto.clause; RingMicromega.cleb_sound; + Rtopology.closed_set; Rtopology.closed_set_P1; RingMicromega.cltb; + RingMicromega.cltb_sound; RingMicromega.cneqb; + RingMicromega.cneqb_sound; Tauto.cnf; Tauto.cnf_checker; + Tauto.cnf_checker_sound; Tauto.cnf_ff; RingMicromega.cnf_negate; + RingMicromega.cnf_negate_correct; RingMicromega.cnf_normalise; + RingMicromega.cnf_normalise_correct; RingMicromega.cnf_of_list; + ZMicromega.cnf_of_list; RingMicromega.cnf_of_list_correct; + ZMicromega.cnf_of_list_correct; Tauto.cnf_tt; Rtopology.compact; + Rtopology.compact_EMP; Rtopology.compact_P1; Rtopology.compact_P2; + Rtopology.compact_P3; Rtopology.compact_eqDom; PeanoNat.Nat.compare; + BinNat.N.compare; BinPos.Pos.compare; BinInt.Z.compare; + BinNat.N.compare_antisym; PeanoNat.Nat.compare_antisym; + BinPos.Pos.compare_antisym; BinInt.Z.compare_antisym; + BinPos.Pos.compare_cont; BinPos.Pos.compare_cont_antisym; + BinPos.Pos.compare_cont_spec; BinNat.N.compare_eq_iff; + PeanoNat.Nat.compare_eq_iff; BinPos.Pos.compare_eq_iff; + BinInt.Z.compare_eq_iff; PeanoNat.Nat.compare_ge_iff; + PeanoNat.Nat.compare_gt_iff; BinInt.Z.compare_gt_iff; + BinNat.N.compare_le_iff; PeanoNat.Nat.compare_le_iff; + BinPos.Pos.compare_le_iff; BinInt.Z.compare_le_iff; + BinNat.N.compare_lt_iff; PeanoNat.Nat.compare_lt_iff; + BinPos.Pos.compare_lt_iff; BinInt.Z.compare_lt_iff; + BinNat.N.compare_nge_iff; BinInt.Z.compare_nge_iff; + BinInt.Z.compare_ngt_iff; BinNat.N.compare_nle_iff; + BinInt.Z.compare_nle_iff; BinNat.N.compare_refl; + PeanoNat.Nat.compare_refl; BinPos.Pos.compare_refl; + BinInt.Z.compare_refl; BinNat.N.compare_spec; PeanoNat.Nat.compare_spec; + BinPos.Pos.compare_spec; Qminmax.Q.OT.compare_spec; + BinInt.Z.compare_spec; BinInt.Z.compare_sub; + BinPos.Pos.compare_sub_mask; PeanoNat.Nat.compare_succ; + BinPos.Pos.compare_succ_l; BinPos.Pos.compare_succ_r; + BinPos.Pos.compare_succ_succ; BinPos.Pos.compare_xI_xI; + BinPos.Pos.compare_xI_xO; BinPos.Pos.compare_xO_xI; + BinPos.Pos.compare_xO_xO; RelationClasses.complement; + Rtopology.complementary; Raxioms.completeness; Rtopology.cond_fam; + RIneq.cond_neg; RIneq.cond_pos; Field_theory.condition; + ConstructiveEpsilon.constructive_indefinite_ground_description; + ConstructiveExtra.constructive_indefinite_ground_description_Z; + ConstructiveEpsilon.constructive_indefinite_ground_description_nat; + Rderiv.cont_deriv; Rderiv.continue_in; Ranalysis1.continuity; + Rtopology.continuity_P1; Rtopology.continuity_P2; + Rtopology.continuity_ab_maj; Rtopology.continuity_ab_min; + Rtopology.continuity_compact; Ranalysis1.continuity_pt; + Ranalysis1.continuity_pt_minus; Ranalysis1.continuity_pt_mult; + Ranalysis1.continuity_pt_opp; Rtopology.covering; + Rtopology.covering_finite; Rtopology.covering_open_set; + CRelationClasses.crelation; Field_theory.cross_product_eq; + ZMicromega.cutting_plane_sound; Decidable.decidable; + Field_theory.default_isIn; Field_theory.default_isIn_ok; + SetoidTactics.default_relation; Field_theory.denum; + Ranalysis1.deriv_constant2; Ranalysis1.deriv_maximum; + Ranalysis1.deriv_minimum; Ranalysis1.derivable; + Ranalysis1.derivable_const; Ranalysis1.derivable_continuous; + Ranalysis1.derivable_continuous_pt; Ranalysis1.derivable_derive; + Ranalysis1.derivable_id; Ranalysis1.derivable_pt; + Ranalysis1.derivable_pt_abs; Ranalysis1.derivable_pt_const; + Ranalysis1.derivable_pt_id; Ranalysis1.derivable_pt_lim; + Ranalysis1.derivable_pt_lim_D_in; Ranalysis1.derivable_pt_lim_const; + Ranalysis1.derivable_pt_lim_id; Ranalysis1.derivable_pt_lim_minus; + Ranalysis1.derivable_pt_lim_mult; Ranalysis1.derivable_pt_lim_opp; + Ranalysis1.derivable_pt_lim_opp_fwd; Ranalysis1.derivable_pt_minus; + Ranalysis1.derivable_pt_mult; Ranalysis1.derivable_pt_opp; + Ranalysis1.derive_pt; Ranalysis1.derive_pt_D_in; + Ranalysis1.derive_pt_const; Ranalysis1.derive_pt_eq; + Ranalysis1.derive_pt_eq_0; Ranalysis1.derive_pt_eq_1; + Ranalysis1.derive_pt_id; Ranalysis1.derive_pt_minus; + Ranalysis1.derive_pt_mult; Ranalysis1.derive_pt_opp; + Bool.diff_false_true; Rtopology.disc; Rtopology.disc_P1; + Field_theory.display_pow_linear; Rlimit.dist; BinInt.Z.div; + BinNat.N.div_eucl; BinInt.Z.div_eucl; BinInt.Z.div_eucl_eq; + BinNat.N.div_eucl_spec; Ring_theory.div_eucl_th; BinInt.Z.div_mod; + BinInt.Z.Private_NZDiv.div_mod_unique; BinInt.Z.div_mod_unique; + BinInt.Z.div_mul; BinInt.Z.div_unique; BinInt.Z.div_unique_exact; + BinInt.Z.div_wd; BinPos.Pos.divide; BinInt.Z.divide; + BinInt.Z.divide_Zpos; BinInt.Z.divide_Zpos_Zneg_l; + BinInt.Z.divide_Zpos_Zneg_r; BinInt.Z.divide_abs_l; + BinInt.Z.divide_abs_r; BinPos.Pos.divide_add_cancel_l; + BinInt.Z.divide_antisym; BinInt.Z.divide_antisym_abs; + BinInt.Z.divide_antisym_nonneg; BinPos.Pos.divide_mul_l; + BinPos.Pos.divide_mul_r; BinInt.Z.divide_opp_l; BinInt.Z.divide_opp_r; + BinInt.Z.divide_refl; BinInt.Z.divide_trans; BinInt.Z.divide_wd; + BinPos.Pos.divide_xO_xI; BinPos.Pos.divide_xO_xO; + Rtopology.domain_finite; BinNat.N.double; BinInt.Z.double; + BinNat.N.double_add; BinPos.Pos.double_mask; BinNat.N.double_mul; + BinPos.Pos.double_pred_mask; Tauto.eAND; Tauto.eAnd_morph_Proper; + Tauto.eFF; Tauto.eIFF; Tauto.eIFF_morph_Proper; Tauto.eIMPL; + Tauto.eIMPL_morph_Proper; Tauto.eKind; Tauto.eNOT; + Tauto.eNOT_morph_Proper; Tauto.eOR; Tauto.eOR_morph_Proper; Tauto.eTT; + Tauto.e_rtyp; Tauto.eiff; Tauto.eiff_eq; Tauto.eiff_refl; + Tauto.eiff_sym; Tauto.eiff_trans; Ztac.elim_concl_le; EnvRing.env_morph; + Rlimit.eps2; Rlimit.eps2_Rgt_R0; BinNat.N.eq; BinInt.Z.eq; + RingMicromega.eq0_cnf; Qreals.eqR_Qeq; Rtopology.eq_Dom; RIneq.eq_IZR; + RIneq.eq_IZR_R0; RIneq.eq_IZR_contrapositive; + RelationClasses.eq_Reflexive; RelationClasses.eq_Symmetric; + RelationClasses.eq_Transitive; eq_add_S; ZMicromega.eq_cnf; + BinPos.Pos.eq_dec; BinInt.Z.eq_dec; BinInt.Z.eq_decidable; + BinNat.N.Private_OrderTac.IsTotal.eq_equiv; + PeanoNat.Nat.Private_OrderTac.IsTotal.eq_equiv; + BinInt.Z.Private_OrderTac.IsTotal.eq_equiv; BinNat.N.eq_equiv; + PeanoNat.Nat.eq_equiv; BinPos.Pos.eq_equiv; Qminmax.Q.OT.eq_equiv; + BinInt.Z.eq_equiv; RelationClasses.eq_equivalence; Ztac.eq_incl; eq_ind; + eq_ind_r; BinPos.Pos.Private_Tac.eq_le; Qminmax.Q.Private_Tac.eq_le; + BinInt.Z.Private_Tac.eq_le; BinInt.Z.Private_OrderTac.Tac.eq_le; + ZMicromega.eq_le_iff; BinNat.N.eq_le_incl; PeanoNat.Nat.eq_le_incl; + BinInt.Z.eq_le_incl; PeanoNat.Nat.Private_Tac.eq_lt; + BinPos.Pos.Private_Tac.eq_lt; Qminmax.Q.Private_Tac.eq_lt; + BinInt.Z.Private_Tac.eq_lt; BinInt.Z.Private_OrderTac.Tac.eq_lt; + BinInt.Z.eq_mul_0; BinInt.Z.eq_mul_1_nonneg; BinInt.Z.eq_mul_1_nonneg'; + BinPos.Pos.Private_Tac.eq_neq; BinInt.Z.Private_OrderTac.Tac.eq_neq; + BinInt.Z.eq_opp_l; ZifyInst.eq_pos_inj; Morphisms.eq_proper_proxy; + eq_rec; eq_rec_r; eq_rect; BinPos.Pos.Private_Tac.eq_refl; + BinInt.Z.Private_OrderTac.Tac.eq_refl; BinInt.Z.eq_refl; eq_sym; + PeanoNat.Nat.Private_Tac.eq_sym; BinPos.Pos.Private_Tac.eq_sym; + Qminmax.Q.Private_Tac.eq_sym; BinInt.Z.Private_Tac.eq_sym; + BinInt.Z.Private_OrderTac.Tac.eq_sym; BinInt.Z.eq_sym_iff; eq_trans; + BinPos.Pos.Private_Tac.eq_trans; BinInt.Z.Private_OrderTac.Tac.eq_trans; + Bool.eqb; BinNat.N.eqb; BinPos.Pos.eqb; BinInt.Z.eqb; BinNat.N.eqb_eq; + BinPos.Pos.eqb_eq; BinInt.Z.eqb_eq; BinPos.Pos.eqb_neq; + BinPos.Pos.eqb_refl; BinNat.N.eqb_spec; BinPos.Pos.eqb_spec; + Bool.eqb_true_iff; SetoidTactics.equivalence_default; + RelationClasses.equivalence_rewrite_relation; RingMicromega.eval_Psatz; + ZMicromega.eval_Psatz; RingMicromega.eval_Psatz_Sound; + ZMicromega.eval_Psatz_sound; Tauto.eval_bf; Tauto.eval_bf_map; + Tauto.eval_clause; Tauto.eval_cnf; Tauto.eval_cnf_and_opt; + Tauto.eval_cnf_app; Tauto.eval_cnf_cons_iff; Tauto.eval_cnf_ff; + Tauto.eval_cnf_tt; ZMicromega.eval_expr; Tauto.eval_f; + Tauto.eval_f_morph; RingMicromega.eval_formula; + RingMicromega.eval_formulaSC; RingMicromega.eval_nformula; + ZMicromega.eval_nformula; ZMicromega.eval_nformula_bound_var; + RingMicromega.eval_nformula_dec; ZMicromega.eval_nformula_mk_eq_pos; + ZMicromega.eval_nformula_split; RingMicromega.eval_op1; + RingMicromega.eval_op2; Tauto.eval_opt_clause; RingMicromega.eval_pexpr; + RingMicromega.eval_pexprSC; RingMicromega.eval_pol; ZMicromega.eval_pol; + ZMicromega.eval_pol_Pc; RingMicromega.eval_pol_add; + ZMicromega.eval_pol_add; RingMicromega.eval_pol_norm; + ZMicromega.eval_pol_norm; RingMicromega.eval_pol_opp; + RingMicromega.eval_pol_sub; ZMicromega.eval_pol_sub; + RingMicromega.eval_sexpr; RingMicromega.eval_sformula; Tauto.eval_tt; + Morphisms_Prop.ex_iff_morphism; + Morphisms_Prop.ex_iff_morphism_obligation_1; ex_ind; Rtopology.f; + f_equal; f_equal_nat; Rtopology.family_finite; + Rtopology.family_open_set; Field_theory.fcons_ok; Ranalysis1.fct_cte; + Field_theory.field_is_integral_domain; VarMap.find; Basics.flip; + CRelationClasses.flip; RelationClasses.flip_Reflexive; List.fold_left; + List.fold_right; fst; BinPos.Pos.gcd; BinInt.Z.gcd; + BinInt.Z.gcd_divide_l; BinInt.Z.gcd_divide_r; BinPos.Pos.gcd_greatest; + BinInt.Z.gcd_greatest; BinInt.Z.gcd_nonneg; BinPos.Pos.gcdn; + BinPos.Pos.gcdn_greatest; ge; BinPos.Pos.ge; BinInt.Z.ge; + BinInt.Z.ge_le; BinPos.Pos.ge_le_iff; BinInt.Z.ge_le_iff; BinInt.Z.geb; + BinInt.Z.geb_le; BinInt.Z.geb_leb; ZMicromega.genCuttingPlane; + ZMicromega.genCuttingPlaneNone; InitialRing.gen_Zeqb_ok; + InitialRing.gen_phiN; InitialRing.gen_phiN1; InitialRing.gen_phiN_add; + InitialRing.gen_phiN_morph; InitialRing.gen_phiN_mult; + InitialRing.gen_phiN_sub; InitialRing.gen_phiPOS; + InitialRing.gen_phiPOS1; InitialRing.gen_phiZ; InitialRing.gen_phiZ1; + InitialRing.gen_phiZ1_pos_sub; InitialRing.gen_phiZ_add; + InitialRing.gen_phiZ_ext; InitialRing.gen_phiZ_morph; + InitialRing.gen_phiZ_mul; EnvRing.get_PEopp; Ring_polynom.get_PEopp; + InitialRing.get_signZ; InitialRing.get_signZ_th; + Ring_theory.get_sign_None; Ring_theory.get_sign_None_th; + BinPos.Pos.ggcd; BinInt.Z.ggcd; BinPos.Pos.ggcd_correct_divisors; + BinInt.Z.ggcd_correct_divisors; BinPos.Pos.ggcd_gcd; BinInt.Z.ggcd_gcd; + BinPos.Pos.ggcdn; BinPos.Pos.ggcdn_correct_divisors; + BinPos.Pos.ggcdn_gcdn; ConstructiveLUB.glb_dec_Q; BinPos.Pos.gt; + BinInt.Z.gt; BinPos.Pos.gt_lt; BinInt.Z.gt_lt; BinPos.Pos.gt_lt_iff; + BinInt.Z.gt_lt_iff; BinInt.Z.gt_wf; BinInt.Z.gtb; BinInt.Z.gtb_ltb; + BinInt.Z.gtb_spec; Env.hd; List.hd; Tauto.hold; Tauto.hold_eAND; + Tauto.hold_eEQ; Tauto.hold_eFF; Tauto.hold_eIFF; Tauto.hold_eIFF_IMPL; + Tauto.hold_eIMPL; Tauto.hold_eNOT; Tauto.hold_eOR; Tauto.hold_eTT; + Tauto.hold_eiff; id; Ranalysis1.id; Nnat.N2Nat.id; Znat.N2Z.id; + Nnat.Nat2N.id; Pnat.Nat2Pos.id; Znat.Nat2Z.id; Pnat.Pos2Nat.id; + Znat.Z2N.id; Znat.Z2Nat.id; BinInt.Z2Pos.id; Ring_theory.id_phi_N; + Pnat.SuccNat2Pos.id_succ; Tauto.if_cnf_tt; Field_theory.if_true; iff; + CRelationClasses.iffT; CMorphisms.iffT_arrow_subrelation; + CMorphisms.iffT_flip_arrow_subrelation; RelationClasses.iff_Reflexive; + RelationClasses.iff_Symmetric; RelationClasses.iff_Transitive; + RelationClasses.iff_equivalence; Morphisms.iff_flip_impl_subrelation; + Morphisms_Prop.iff_iff_iff_impl_morphism; + Morphisms_Prop.iff_iff_iff_impl_morphism_obligation_1; + Morphisms.iff_impl_subrelation; iff_refl; Bool.iff_reflect; iff_stepl; + iff_sym; iff_trans; Rtopology.image_dir; Rtopology.image_rec; + Basics.impl; RelationClasses.impl_Reflexive; + RelationClasses.impl_Reflexive_obligation_1; implb; + Classical_Prop.imply_to_and; ZMicromega.in_bdepth; Rtopology.included; + Rtopology.included_trans; Rtopology.ind; BinNat.N.induction; + PeanoNat.Nat.induction; ZifyClasses.inj; Nnat.N2Nat.inj; Znat.Nat2Z.inj; + Pnat.Pos2Nat.inj; BinInt.Pos2Z.inj; Pnat.Pos2Nat.inj_1; + Nnat.N2Nat.inj_add; Znat.N2Z.inj_add; Nnat.Nat2N.inj_add; + Znat.Nat2Z.inj_add; Pnat.Pos2Nat.inj_add; BinInt.Pos2Z.inj_add; + Nnat.N2Nat.inj_compare; Znat.N2Z.inj_compare; Nnat.Nat2N.inj_compare; + Znat.Nat2Z.inj_compare; Pnat.Pos2Nat.inj_compare; + Znat.Z2Nat.inj_compare; Znat.Nat2Z.inj_ge; Znat.Nat2Z.inj_iff; + BinInt.Pos2Z.inj_iff; Znat.Nat2Z.inj_le; Pnat.Pos2Nat.inj_le; + Znat.Z2Nat.inj_le; Znat.Nat2Z.inj_lt; Nnat.N2Nat.inj_max; + Znat.N2Z.inj_max; Nnat.Nat2N.inj_max; Znat.Nat2Z.inj_max; + Pnat.Pos2Nat.inj_mul; BinInt.Pos2Z.inj_mul; Znat.N2Z.inj_pos; + BinInt.Pos2Z.inj_pow; BinInt.Pos2Z.inj_pow_pos; Znat.Nat2Z.inj_succ; + Pnat.Pos2Nat.inj_succ; BinInt.Pos2Z.inj_succ; Pnat.Pos2Nat.inj_xI; + Pnat.Pos2Nat.inj_xO; ConstructiveCauchyReals.inject_Q; + ConstructiveCauchyReals.inject_Q_cauchy; + ConstructiveCauchyReals.inject_Q_compare; + ConstructiveCauchyReals.inject_Q_le; + ConstructiveCauchyReals.inject_Q_lt; + ConstructiveCauchyReals.inject_Q_morph; + ConstructiveCauchyReals.inject_Q_morph_Proper; + ConstructiveCauchyRealsMult.inject_Q_mult; + ConstructiveCauchyReals.inject_Q_plus; ConstructiveCauchyReals.inject_Z; + QArith_base.inject_Z; Rtopology.interior; Rtopology.interior_P1; + Rtopology.interior_P2; Ring_polynom.interp_PElist; + Ring_polynom.interp_PElist_ok; PeanoNat.Nat.Private_Tac.interp_ord; + BinPos.Pos.Private_Tac.interp_ord; Qminmax.Q.Private_Tac.interp_ord; + BinInt.Z.Private_Tac.interp_ord; + BinNat.N.Private_OrderTac.Tac.interp_ord; + PeanoNat.Nat.Private_OrderTac.Tac.interp_ord; + BinInt.Z.Private_OrderTac.Tac.interp_ord; Rtopology.intersection_domain; + Pnat.SuccNat2Pos.inv; ConstructiveEpsilon.inv_before_witness; + Field_theory.isIn; Field_theory.isIn_ok; + ConstructiveReals.isLinearOrder; Tauto.is_bool; Tauto.is_bool_inv; + Tauto.is_cnf_ff; Tauto.is_cnf_ff_cnf_ff; Tauto.is_cnf_ff_inv; + Tauto.is_cnf_tt; Tauto.is_cnf_tt_cnf_ff; Tauto.is_cnf_tt_inv; + ConstructiveLUB.is_lub; Raxioms.is_lub; Znat.Nat2Z.is_nonneg; + BinInt.Pos2Z.is_nonneg; ZMicromega.is_pol_Z0; + ZMicromega.is_pol_Z0_eval_pol; Pnat.Pos2Nat.is_pos; BinInt.Pos2Z.is_pos; + Pnat.Pos2Nat.is_succ; is_true; ConstructiveLUB.is_upper_bound; + Raxioms.is_upper_bound; ConstructiveLUB.is_upper_bound_closed; + ConstructiveLUB.is_upper_bound_dec; + ConstructiveLUB.is_upper_bound_epsilon; + ConstructiveLUB.is_upper_bound_glb; + ConstructiveLUB.is_upper_bound_not_epsilon; BinPos.Pos.iter; + BinPos.Pos.iter_add; BinPos.Pos.iter_ind; BinPos.Pos.iter_invariant; + BinPos.Pos.iter_op; BinPos.Pos.iter_op_succ; BinPos.Pos.iter_succ; + BinPos.Pos.iter_swap; BinPos.Pos.iter_swap_gen; BinList.jump; Env.jump; + BinList.jump_add; Env.jump_add; Ring_polynom.jump_add'; + BinList.jump_pred_double; Env.jump_pred_double; Env.jump_simpl; + BinList.jump_succ; BinList.jump_tl; BinNat.N.le; BinPos.Pos.le; + BinInt.Z.le; ZMicromega.le_0_iff; BinNat.N.le_0_l; PeanoNat.Nat.le_0_l; + le_0_n; BinInt.Z.le_0_sub; BinPos.Pos.le_1_l; le_S_n; + BinInt.Z.le_add_le_sub_l; BinInt.Z.le_add_le_sub_r; + BinPos.Pos.le_antisym; BinPos.Pos.Private_Tac.le_antisym; + BinInt.Z.Private_OrderTac.Tac.le_antisym; BinInt.Z.le_antisymm; + Qminmax.Q.Private_Tac.le_eq; BinInt.Z.Private_Tac.le_eq; + BinInt.Z.Private_OrderTac.Tac.le_eq; BinInt.Z.le_exists_sub; + BinInt.Z.le_ge; BinInt.Z.le_ge_cases; BinNat.N.le_gt_cases; + PeanoNat.Nat.le_gt_cases; BinInt.Z.le_gt_cases; le_ind; BinInt.Z.le_ind; + BinNat.N.le_le_succ_r; PeanoNat.Nat.le_le_succ_r; BinInt.Z.le_le_succ_r; + BinInt.Z.le_lt_add_lt; Compare_dec.le_lt_dec; + PeanoNat.Nat.Private_Tac.le_lt_trans; + BinPos.Pos.Private_Tac.le_lt_trans; Qminmax.Q.Private_Tac.le_lt_trans; + BinInt.Z.Private_Tac.le_lt_trans; + BinNat.N.Private_OrderTac.Tac.le_lt_trans; + PeanoNat.Nat.Private_OrderTac.Tac.le_lt_trans; + BinInt.Z.Private_OrderTac.Tac.le_lt_trans; BinInt.Z.le_lt_trans; + BinNat.N.Private_OrderTac.IsTotal.le_lteq; + PeanoNat.Nat.Private_OrderTac.IsTotal.le_lteq; + BinInt.Z.Private_OrderTac.IsTotal.le_lteq; BinNat.N.le_lteq; + PeanoNat.Nat.le_lteq; BinPos.Pos.le_lteq; Qminmax.Q.OT.le_lteq; + BinInt.Z.le_lteq; PeanoNat.Nat.le_max_l; BinPos.Pos.le_max_l; + PeanoNat.Nat.le_max_r; BinPos.Pos.le_max_r; BinInt.Z.le_min_l; le_n_S; + ZMicromega.le_neg; BinInt.Z.le_neq; BinPos.Pos.Private_Tac.le_neq_lt; + BinInt.Z.Private_OrderTac.Tac.le_neq_lt; PeanoNat.Nat.le_ngt; + BinInt.Z.le_ngt; BinPos.Pos.le_nlt; le_pred; BinNat.N.le_preorder; + PeanoNat.Nat.le_preorder; BinInt.Z.le_preorder; BinNat.N.le_refl; + PeanoNat.Nat.le_refl; BinPos.Pos.le_refl; + BinInt.Z.Private_OrderTac.Tac.le_refl; BinInt.Z.le_refl; + BinInt.Z.le_sub_le_add_l; BinInt.Z.le_sub_le_add_r; BinNat.N.le_succ_l; + PeanoNat.Nat.le_succ_l; BinPos.Pos.le_succ_l; BinInt.Z.le_succ_l; + BinNat.N.le_succ_r; PeanoNat.Nat.le_succ_r; BinInt.Z.le_succ_r; + BinNat.N.le_trans; PeanoNat.Nat.le_trans; BinPos.Pos.le_trans; + BinInt.Z.le_trans; BinNat.N.le_wd; PeanoNat.Nat.le_wd; BinInt.Z.le_wd; + BinNat.N.leb; BinPos.Pos.leb; BinInt.Z.leb; BinInt.Z.leb_gt; + BinNat.N.leb_le; BinPos.Pos.leb_le; BinInt.Z.leb_le; BinInt.Z.leb_nle; + BinNat.N.leb_spec; BinInt.Z.leb_spec; BinNat.N.leb_spec0; + BinInt.Z.leb_spec0; BinInt.Z.left_induction; Rlimit.limit1_in; + Rlimit.limit_Ropp; Rlimit.limit_in; Rlimit.limit_minus; + Rlimit.limit_mul; Rlimit.limit_plus; + ConstructiveCauchyReals.linear_order_T; + ConstructiveEpsilon.linear_search_conform; + ConstructiveEpsilon.linear_search_from_0_conform; list_ind; list_rec; + list_rect; Ring_polynom.local_mkpow_ok; lt; BinNat.N.lt; BinPos.Pos.lt; + BinInt.Z.lt; BinInt.Z.lt_0_1; RIneq.lt_0_IZR; BinInt.Z.lt_0_sub; + PeanoNat.Nat.lt_0_succ; BinInt.Z.lt_1_2; BinInt.Z.lt_1_l; + BinInt.Z.lt_1_mul_pos; BinPos.Pos.lt_1_succ; + ConstructiveReals.lt_CR_of_Q; RIneq.lt_IZR; BinInt.Z.lt_add_lt_sub_r; + BinInt.Z.lt_add_pos_l; BinInt.Z.lt_add_pos_r; BinPos.Pos.lt_add_r; + BinNat.N.lt_asymm; PeanoNat.Nat.lt_asymm; BinInt.Z.lt_asymm; + BinNat.N.Private_OrderTac.IsTotal.lt_compat; + PeanoNat.Nat.Private_OrderTac.IsTotal.lt_compat; + BinInt.Z.Private_OrderTac.IsTotal.lt_compat; BinNat.N.lt_compat; + PeanoNat.Nat.lt_compat; BinPos.Pos.lt_compat; Qminmax.Q.OT.lt_compat; + BinInt.Z.lt_compat; BinPos.Pos.Private_Tac.lt_eq; + Qminmax.Q.Private_Tac.lt_eq; BinInt.Z.Private_Tac.lt_eq; + BinNat.N.Private_OrderTac.Tac.lt_eq; + PeanoNat.Nat.Private_OrderTac.Tac.lt_eq; + BinInt.Z.Private_OrderTac.Tac.lt_eq; BinNat.N.lt_eq_cases; + PeanoNat.Nat.lt_eq_cases; BinPos.Pos.lt_eq_cases; BinInt.Z.lt_eq_cases; + BinNat.N.lt_exists_pred; PeanoNat.Nat.lt_exists_pred; + BinInt.Z.lt_exists_pred; BinInt.Z.lt_ge_cases; BinPos.Pos.lt_gt; + BinInt.Z.lt_gt; BinInt.Z.lt_gt_cases; BinPos.Pos.lt_iff_add; + BinNat.N.lt_ind; BinInt.Z.lt_ind; BinNat.N.lt_ind_rel; + ConstructiveCauchyReals.lt_inject_Q; BinNat.N.lt_irrefl; + PeanoNat.Nat.lt_irrefl; BinPos.Pos.lt_irrefl; + PeanoNat.Nat.Private_Tac.lt_irrefl; BinPos.Pos.Private_Tac.lt_irrefl; + Qminmax.Q.Private_Tac.lt_irrefl; BinInt.Z.Private_Tac.lt_irrefl; + BinNat.N.Private_OrderTac.Tac.lt_irrefl; + PeanoNat.Nat.Private_OrderTac.Tac.lt_irrefl; + BinInt.Z.Private_OrderTac.Tac.lt_irrefl; BinInt.Z.lt_irrefl; + ZMicromega.lt_le_iff; BinNat.N.lt_le_incl; PeanoNat.Nat.lt_le_incl; + BinInt.Z.lt_le_incl; BinInt.Z.lt_le_pred; PeanoNat.Nat.lt_le_trans; + BinPos.Pos.lt_le_trans; BinInt.Z.lt_le_trans; BinNat.N.lt_lt_succ_r; + PeanoNat.Nat.lt_lt_succ_r; BinInt.Z.lt_lt_succ_r; BinInt.Z.lt_neq; + BinInt.Z.lt_nge; BinPos.Pos.lt_nle; + BinNat.N.Private_OrderTac.IsTotal.lt_strorder; + PeanoNat.Nat.Private_OrderTac.IsTotal.lt_strorder; + BinInt.Z.Private_OrderTac.IsTotal.lt_strorder; BinNat.N.lt_strorder; + PeanoNat.Nat.lt_strorder; BinPos.Pos.lt_strorder; + Qminmax.Q.OT.lt_strorder; BinInt.Z.lt_strorder; + BinInt.Z.lt_sub_lt_add_r; BinNat.N.lt_succ_diag_r; + PeanoNat.Nat.lt_succ_diag_r; BinPos.Pos.lt_succ_diag_r; + BinInt.Z.lt_succ_diag_r; BinNat.N.lt_succ_l; BinInt.Z.lt_succ_l; + BinNat.N.lt_succ_r; PeanoNat.Nat.lt_succ_r; BinPos.Pos.lt_succ_r; + BinInt.Z.lt_succ_r; BinNat.N.Private_OrderTac.IsTotal.lt_total; + PeanoNat.Nat.Private_OrderTac.IsTotal.lt_total; + BinInt.Z.Private_OrderTac.IsTotal.lt_total; BinNat.N.lt_total; + PeanoNat.Nat.lt_total; Qminmax.Q.OT.lt_total; BinPos.Pos.lt_total; + BinInt.Z.lt_total; BinNat.N.lt_trans; PeanoNat.Nat.lt_trans; + BinPos.Pos.lt_trans; PeanoNat.Nat.Private_Tac.lt_trans; + BinPos.Pos.Private_Tac.lt_trans; BinInt.Z.Private_Tac.lt_trans; + BinNat.N.Private_OrderTac.Tac.lt_trans; + PeanoNat.Nat.Private_OrderTac.Tac.lt_trans; + BinInt.Z.Private_OrderTac.Tac.lt_trans; BinInt.Z.lt_trans; + BinNat.N.lt_trichotomy; PeanoNat.Nat.lt_trichotomy; + BinInt.Z.lt_trichotomy; BinNat.N.lt_wd; PeanoNat.Nat.lt_wd; + BinInt.Z.lt_wd; PeanoNat.Nat.lt_wd_obligation_1; BinNat.N.lt_wf; + PeanoNat.Nat.lt_wf; BinInt.Z.lt_wf; BinInt.Z.ltb; BinInt.Z.ltb_ge; + BinInt.Z.ltb_lt; BinInt.Z.ltb_nlt; BinInt.Z.ltb_spec; + BinInt.Z.ltb_spec0; Wf_nat.ltof; ZMicromega.ltof_bdepth_split_l; + ZMicromega.ltof_bdepth_split_r; ZMicromega.makeCuttingPlane; + ZMicromega.makeCuttingPlane_ns_sound; Refl.make_conj; + Refl.make_conj_app; Refl.make_conj_cons; Refl.make_conj_impl; + Refl.make_conj_in; Refl.make_conj_rapp; Refl.make_impl; + Refl.make_impl_map; List.map; RingMicromega.map_Formula; + RingMicromega.map_PExpr; Tauto.map_bformula; RingMicromega.map_option; + RingMicromega.map_option2; BinPos.Pos.mask2cmp; PeanoNat.Nat.max; + BinNat.N.max; BinPos.Pos.max; BinInt.Z.max; BinPos.Pos.max_1_l; + BinInt.Z.max_case; BinPos.Pos.max_case_strong; + BinPos.Pos.Private_Dec.max_case_strong; + BinInt.Z.Private_Dec.max_case_strong; BinInt.Z.max_case_strong; + BinInt.Z.max_comm; max_l; PeanoNat.Nat.max_l; BinPos.Pos.max_l; + BinInt.Z.max_l; BinPos.Pos.max_le_compat_r; BinPos.Pos.max_lub_iff; + BinPos.Pos.max_mono; BinPos.Pos.max_monotone; max_r; PeanoNat.Nat.max_r; + BinPos.Pos.max_r; BinInt.Z.max_r; PeanoNat.Nat.max_spec; + BinPos.Pos.max_spec; BinInt.Z.max_spec; ZMicromega.max_var; + ZMicromega.max_var_acc; ZMicromega.max_var_nformulae; + ZMicromega.max_var_nformulae_mono_aux; + ZMicromega.max_var_nformulae_mono_aux'; + RingMicromega.micomega_sor_setoid; + RingMicromega.micomega_sor_setoid_Reflexive; + RingMicromega.micomega_sor_setoid_Symmetric; + RingMicromega.micomega_sor_setoid_Transitive; BinInt.Z.min; + BinInt.Z.Private_Dec.min_case; BinInt.Z.Private_Dec.min_case_strong; + BinInt.Z.Private_Dec.min_dec; BinInt.Z.min_dec; BinInt.Z.min_l; + BinInt.Z.min_r; BinInt.Z.min_spec; RIneq.minus_IPR; RIneq.minus_IZR; + Ranalysis1.minus_fct; EnvRing.mkPX; Ring_polynom.mkPX; + Ring_polynom.mkPX_ext; EnvRing.mkPX_ok; Ring_polynom.mkPX_ok; + EnvRing.mkPinj; Ring_polynom.mkPinj; Ring_polynom.mkPinj_ext; + EnvRing.mkPinj_ok; Ring_polynom.mkPinj_ok; EnvRing.mkPinj_pred; + Ring_polynom.mkPinj_pred; Ring_polynom.mkVmon; Ring_polynom.mkVmon_ok; + EnvRing.mkX; Ring_polynom.mkX; EnvRing.mkX_ok; Ring_polynom.mkX_ok; + EnvRing.mkXi; Ring_polynom.mkXi; Ring_polynom.mkZmon; + Ring_polynom.mkZmon_ok; EnvRing.mk_X; Ring_polynom.mk_X; Tauto.mk_and; + ZMicromega.mk_eq_pos; Tauto.mk_iff; Tauto.mk_iff_is_bool; Tauto.mk_impl; + Ring_polynom.mk_monpol_list; Tauto.mk_or; Ring_polynom.mkadd_mult; + Ring_polynom.mkadd_mult_ok; ZifyClasses.mkapp; ZifyClasses.mkapp2; + Ring_polynom.mkmult1; Ring_polynom.mkmult1_ok; Ring_polynom.mkmult_c; + Ring_polynom.mkmult_c_ok; Ring_polynom.mkmult_c_pos; + Ring_polynom.mkmult_c_pos_ok; Ring_polynom.mkmult_pow; + Ring_polynom.mkmult_pow_ok; Ring_polynom.mkmult_rec; + Ring_polynom.mkmult_rec_ok; Ring_polynom.mkmultm1; + Ring_polynom.mkmultm1_ok; Ring_polynom.mkopp_pow; + Ring_polynom.mkopp_pow_ok; Ring_polynom.mkpow; Ring_polynom.mkpow_ok; + ZifyClasses.mkrel; BinInt.Z.mod_eq; BinInt.Z.mod_mul; + BinInt.Z.mod_neg_bound; BinInt.Z.mod_pos_bound; BinInt.Z.modulo; + Ring_polynom.mon_of_pol; Ring_polynom.mon_of_pol_ok; Ring_theory.morph0; + Ring_theory.morph1; Ring_theory.morph_add; Ring_theory.morph_eq; + Ring_theory.morph_mul; Ring_theory.morph_opp; Ring_theory.morph_sub; + Nat.mul; BinNat.N.mul; BinPos.Pos.mul; BinInt.Z.mul; BinNat.N.mul_0_l; + BinInt.Z.mul_0_l; BinNat.N.mul_0_r; BinInt.Z.Private_BootStrap.mul_0_r; + BinInt.Z.mul_0_r; BinPos.Pos.mul_1_l; + BinInt.Z.Private_BootStrap.mul_1_l; BinInt.Z.mul_1_l; + BinPos.Pos.mul_1_r; BinInt.Z.mul_1_r; BinPos.Pos.mul_add_distr_l; + BinInt.Z.mul_add_distr_l; BinInt.Z.Private_BootStrap.mul_add_distr_pos; + BinPos.Pos.mul_add_distr_r; BinInt.Z.Private_BootStrap.mul_add_distr_r; + BinInt.Z.mul_add_distr_r; BinPos.Pos.mul_assoc; BinInt.Z.mul_assoc; + BinInt.Z.mul_cancel_l; BinInt.Z.mul_cancel_r; BinNat.N.mul_comm; + BinPos.Pos.mul_comm; BinInt.Z.mul_comm; BinPos.Pos.mul_compare_mono_l; + BinPos.Pos.mul_compare_mono_r; BinInt.Z.mul_div_le; Rlimit.mul_factor; + Rlimit.mul_factor_gt; Rlimit.mul_factor_gt_f; Rlimit.mul_factor_wd; + BinInt.Z.mul_id_l; BinPos.Pos.mul_le_mono_l; + BinInt.Z.mul_le_mono_nonneg; BinInt.Z.mul_le_mono_nonneg_l; + BinInt.Z.mul_le_mono_nonneg_r; BinInt.Z.mul_le_mono_nonpos_l; + BinInt.Z.mul_le_mono_nonpos_r; BinInt.Z.mul_le_mono_pos_l; + BinInt.Z.mul_le_mono_pos_r; BinPos.Pos.mul_lt_mono_l; + BinInt.Z.mul_lt_mono_neg_l; BinInt.Z.mul_lt_mono_neg_r; + BinInt.Z.mul_lt_mono_nonneg; BinInt.Z.mul_lt_mono_pos_l; + BinInt.Z.mul_lt_mono_pos_r; BinPos.Pos.mul_lt_mono_r; + BinInt.Z.mul_lt_pred; BinInt.Z.mul_neg_neg; BinInt.Z.mul_neg_pos; + BinInt.Z.mul_nonneg_nonneg; BinInt.Z.mul_nonneg_nonpos; + BinInt.Z.mul_opp_comm; BinInt.Z.mul_opp_l; BinInt.Z.mul_opp_opp; + BinInt.Z.Private_BootStrap.mul_opp_r; BinInt.Z.mul_opp_r; + BinInt.Z.mul_pos_cancel_l; BinInt.Z.mul_pos_neg; BinInt.Z.mul_pos_pos; + BinInt.Z.mul_reg_r; BinInt.Z.mul_shuffle0; BinInt.Z.mul_shuffle1; + BinPos.Pos.mul_sub_distr_l; BinPos.Pos.mul_sub_distr_r; + BinNat.N.mul_succ_l; BinPos.Pos.mul_succ_l; BinInt.Z.mul_succ_l; + BinNat.N.mul_succ_r; BinPos.Pos.mul_succ_r; BinInt.Z.mul_succ_r; + BinNat.N.mul_wd; BinInt.Z.mul_wd; BinPos.Pos.mul_xI_r; + BinPos.Pos.mul_xO_r; RIneq.mult_IPR; RIneq.mult_IZR; + Ring_polynom.mult_dev; Ring_polynom.mult_dev_ok; Ranalysis1.mult_fct; + ZMicromega.narrow_interval_lower_bound; Znat.nat_N_Z; + Compare_dec.nat_compare_ge; Compare_dec.nat_compare_le; + Compare_dec.nat_compare_lt; nat_ind; nat_rec; nat_rect; RIneq.neg; + BinInt.Pos2Z.neg_is_neg; ZMicromega.negate; ZMicromega.negate_correct; + negb; Bool.negb_false_iff; Bool.negb_true_iff; Rtopology.neighbourhood; + PeanoNat.Nat.neq_0_lt_0; RelationClasses.neq_Symmetric; + BinPos.Pos.Private_Tac.neq_eq; BinInt.Z.Private_OrderTac.Tac.neq_eq; + BinNat.N.neq_succ_0; PeanoNat.Nat.neq_succ_0; BinNat.N.neq_succ_diag_l; + PeanoNat.Nat.neq_succ_diag_l; BinInt.Z.neq_succ_diag_l; + BinInt.Z.Private_OrderTac.Tac.neq_sym; BinInt.Z.neq_sym; + ZMicromega.nformula_of_cutting_plane; + RingMicromega.nformula_plus_nformula; + RingMicromega.nformula_plus_nformula_correct; + RingMicromega.nformula_times_nformula; + RingMicromega.nformula_times_nformula_correct; BinInt.Z.nle_gt; + BinNat.N.nle_succ_diag_l; PeanoNat.Nat.nle_succ_diag_l; + BinInt.Z.nle_succ_diag_l; PeanoNat.Nat.nlt_0_r; BinPos.Pos.nlt_1_r; + BinInt.Z.nlt_ge; BinNat.N.nlt_succ_diag_l; PeanoNat.Nat.nlt_succ_diag_l; + BinInt.Z.nlt_succ_diag_l; Ranalysis1.no_cond; RingMicromega.norm; + ZMicromega.normZ; EnvRing.norm_aux; Ring_polynom.norm_aux; + EnvRing.norm_aux_PEadd; Ring_polynom.norm_aux_PEadd; + EnvRing.norm_aux_PEopp; Ring_polynom.norm_aux_PEopp; + EnvRing.norm_aux_spec; Ring_polynom.norm_aux_spec; + Ring_polynom.norm_subst; Ring_polynom.norm_subst_ok; + Ring_polynom.norm_subst_spec; RingMicromega.normalise; + ZMicromega.normalise; ZMicromega.normalise_correct; + RingMicromega.normalise_sound; not; RIneq.not_0_IZR; + ZArith_dec.not_Zeq_inf; Classical_Pred_Type.not_all_ex_not; + Classical_Pred_Type.not_all_not_ex; Classical_Prop.not_and_or; + not_eq_sym; Classical_Pred_Type.not_ex_all_not; + BinPos.Pos.Private_Tac.not_ge_lt; + BinNat.N.Private_OrderTac.Tac.not_ge_lt; + PeanoNat.Nat.Private_OrderTac.Tac.not_ge_lt; + BinInt.Z.Private_OrderTac.Tac.not_ge_lt; + PeanoNat.Nat.Private_Tac.not_gt_le; BinPos.Pos.Private_Tac.not_gt_le; + Qminmax.Q.Private_Tac.not_gt_le; BinInt.Z.Private_Tac.not_gt_le; + BinNat.N.Private_OrderTac.Tac.not_gt_le; + PeanoNat.Nat.Private_OrderTac.Tac.not_gt_le; + BinInt.Z.Private_OrderTac.Tac.not_gt_le; + Morphisms_Prop.not_iff_morphism; + Morphisms_Prop.not_iff_morphism_obligation_1; + Classical_Prop.not_imply_elim; Classical_Prop.not_imply_elim2; + BinPos.Pos.Private_Tac.not_neq_eq; + BinInt.Z.Private_OrderTac.Tac.not_neq_eq; Bool.not_true_iff_false; + BinList.nth; Env.nth; List.nth; List.nth_in_or_default; + BinList.nth_jump; Env.nth_jump; BinList.nth_pred_double; + Env.nth_pred_double; Env.nth_spec; Field_theory.num; BinInt.Z.of_N; + BinNat.N.of_nat; BinPos.Pos.of_nat; BinInt.Z.of_nat; + BinPos.Pos.of_nat_succ; BinPos.Pos.of_succ_nat; BinInt.Z.one_succ; + Rtopology.open_set; Rtopology.open_set_P1; Rtopology.open_set_P4; + Rtopology.open_set_P6; BinInt.Z.opp; BinInt.Z.opp_0; RIneq.opp_IZR; + BinInt.Z.Private_BootStrap.opp_add_distr; BinInt.Z.opp_add_distr; + Ranalysis1.opp_fct; BinInt.Z.Private_BootStrap.opp_inj; + BinInt.Z.opp_inj; BinInt.Z.opp_inj_wd; + ConstructiveCauchyReals.opp_inject_Q; BinInt.Z.opp_involutive; + BinInt.Z.opp_le_mono; BinInt.Z.opp_lt_mono; BinInt.Z.opp_nonneg_nonpos; + BinInt.Z.opp_nonpos_nonneg; BinInt.Pos2Z.opp_pos; BinInt.Z.opp_pred; + BinInt.Z.opp_sub_distr; BinInt.Z.opp_succ; BinInt.Z.opp_wd; or_cancel_r; + Tauto.or_clause; Tauto.or_clause_cnf; Tauto.or_clause_cnf_correct; + Tauto.or_clause_correct; Tauto.or_cnf; Tauto.or_cnf_correct; + Tauto.or_cnf_opt; Tauto.or_cnf_opt_cnf_ff; Tauto.or_cnf_opt_cnf_ff_r; + Tauto.or_cnf_opt_correct; or_comm; or_iff_compat_r; + Morphisms_Prop.or_iff_morphism; + Morphisms_Prop.or_iff_morphism_obligation_1; or_ind; orb; Bool.orb_comm; + Bool.orb_true_iff; BinInt.Z.order_induction; BinInt.Z.order_induction_0; + RingMicromega.padd; ZMicromega.padd; BinPos.Pos.peano_ind; + BinInt.Z.peano_ind; BinNat.N.peano_rect; BinPos.Pos.peano_rect; + Morphisms.per_partial_app_morphism; + Morphisms.per_partial_app_morphism_obligation_1; + RingMicromega.pexpr_times_nformula; + RingMicromega.pexpr_times_nformula_correct; Ring_theory.phi_ext1_Proper; + RIneq.plus_IPR; RIneq.plus_IZR; RIneq.plus_IZR_NEG_POS; plus_Sn_m; + plus_n_O; plus_n_Sm; Rtopology.point_adherent; + Morphisms.pointwise_relation; QMicromega.pop2_bop2; + RMicromega.pop2_bop2; ZMicromega.pop2_bop2; RingMicromega.popp; + ZMicromega.popp; RIneq.pos; BinNat.N.pos_div_eucl; + BinInt.Z.pos_div_eucl; BinInt.Z.pos_div_eucl_bound; + BinInt.Z.pos_div_eucl_eq; BinNat.N.pos_div_eucl_spec; + BinInt.Pos2Z.pos_is_pos; BinInt.Pos2Z.pos_le_pos; BinInt.Z.pos_sub; + BinInt.Z.Private_BootStrap.pos_sub_add; BinInt.Z.pos_sub_diag; + BinInt.Z.pos_sub_discr; BinInt.Z.pos_sub_gt; BinInt.Z.pos_sub_lt; + BinInt.Z.pos_sub_opp; BinInt.Z.pos_sub_spec; Znat.positive_N_nat; + BinNums.positive_ind; Znat.positive_nat_Z; BinNums.positive_rec; + BinNums.positive_rect; Rpow_def.pow; BinPos.Pos.pow; BinInt.Z.pow; + BinInt.Z.pow_0_r; BinInt.Z.pow_1_l; BinPos.Pos.pow_1_r; + BinInt.Z.pow_1_r; Ring_theory.pow_N; Field_theory.pow_N_ext; + Ring_theory.pow_N_pow_N; Ring_theory.pow_N_th; BinInt.Z.pow_add_r; + Field_theory.pow_ext; BinInt.Z.pow_gt_1; BinInt.Z.pow_le_mono_r; + BinInt.Z.pow_lt_mono_l; BinInt.Z.pow_lt_mono_r; BinInt.Z.pow_neg_r; + BinInt.Z.pow_nonneg; Ring_theory.pow_pos; BinInt.Z.pow_pos; + Field_theory.pow_pos_0; Field_theory.pow_pos_1; EnvRing.pow_pos_add; + Ring_polynom.pow_pos_add; Ring_theory.pow_pos_add; + Field_theory.pow_pos_add_r; Field_theory.pow_pos_cst; + Field_theory.pow_pos_div; Field_theory.pow_pos_mul_l; + Field_theory.pow_pos_mul_r; BinInt.Z.pow_pos_nonneg; + Field_theory.pow_pos_nz; Ring_theory.pow_pos_succ; + Ring_theory.pow_pos_swap; BinPos.Pos.pow_succ_r; BinInt.Z.pow_succ_r; + BinInt.Z.pow_twice_r; BinInt.Z.pow_wd; Rfunctions.powerRZ; + Ranalysis1.pr_nu; Ranalysis4.pr_nu_var; PeanoNat.Nat.pred; + BinNat.N.pred; BinPos.Pos.pred; BinInt.Z.pred; BinNat.N.pred_0; + PeanoNat.Nat.pred_0; BinPos.Pos.pred_N; BinPos.Pos.pred_N_succ; + BinPos.Pos.pred_double; BinInt.Z.pred_double; + BinPos.Pos.pred_double_succ; BinInt.Z.pred_inj; BinInt.Z.pred_inj_wd; + BinPos.Pos.pred_mask; BinNat.N.pred_succ; PeanoNat.Nat.pred_succ; + BinInt.Z.pred_succ; BinNat.N.pred_wd; PeanoNat.Nat.pred_wd; + BinInt.Z.pred_wd; PeanoNat.Nat.pred_wd_obligation_1; prod_ind; + prod_rect; proj1; proj1_sig; proj2; proj2_sig; + Rtopology.prolongement_C0; Rlimit.prop_eps; Morphisms.proper_prf; + Morphisms.proper_sym_impl_iff; RingMicromega.psub; ZMicromega.psub; + RingMicromega.psubC; QMicromega.qdeduce; QMicromega.qunsat; + BinInt.Z.quotrem; BinInt.Z.quotrem_eq; Ring_polynom.r_list_pow; + Ring_polynom.r_list_pow_rev; Field_theory.radd_ext; + Ring_theory.radd_ext2_Proper; InitialRing.radd_ext3_Proper; + InitialRing.radd_ext4_Proper; EnvRing.radd_ext_Proper; + Field_theory.radd_ext_Proper; InitialRing.radd_ext_Proper; + Ring_polynom.radd_ext_Proper; RMicromega.rdeduce; Field_theory.rdiv1; + Field_theory.rdiv2b; Field_theory.rdiv3b; Field_theory.rdiv4; + Field_theory.rdiv4b; Field_theory.rdiv5; Field_theory.rdiv6; + Field_theory.rdiv7; Field_theory.rdiv7b; Field_theory.rdiv_ext; + Field_theory.rdiv_r_r; Field_theory.rdiv_simpl; + Morphisms.reflexive_eq_dom_reflexive; Morphisms.reflexive_proper; + CMorphisms.reflexive_proper_proxy; Morphisms.reflexive_proper_proxy; + Morphisms.reflexive_reflexive_proxy; RelationClasses.reflexivity; + ConstructiveEpsilon.rel_ls_ind; ConstructiveEpsilon.rel_ls_post; + Relation_Definitions.relation; CMorphisms.respectful; + Morphisms.respectful; Rtopology.restriction_family; List.rev'; + List.rev_append; ZifyClasses.rew_iff; ZifyClasses.rew_iff_rev; + Morphisms.rewrite_relation_eq_dom; BinNat.N.right_induction; + PeanoNat.Nat.right_induction; BinInt.Z.right_induction; + Ring_polynom.ring_correct; Ring_polynom.ring_rw_correct; + Ring_polynom.ring_rw_pow_correct; Ring_tac.ring_subst_niter; + Field_theory.rinv_ext_Proper; OrderedRing.rle_morph_Proper; + RingMicromega.rle_morph_Proper; OrderedRing.rlt_morph_Proper; + RingMicromega.rlt_morph_Proper; OrderedRing.rminus_morph; + OrderedRing.rminus_morph_Proper; RingMicromega.rminus_morph_Proper; + Field_theory.rmul_ext; Ring_theory.rmul_ext2_Proper; + InitialRing.rmul_ext3_Proper; InitialRing.rmul_ext4_Proper; + EnvRing.rmul_ext_Proper; Field_theory.rmul_ext_Proper; + InitialRing.rmul_ext_Proper; Ring_polynom.rmul_ext_Proper; + Field_theory.rmul_reg_l; Ring_theory.ropp_ext2_Proper; + InitialRing.ropp_ext3_Proper; EnvRing.ropp_ext_Proper; + Field_theory.ropp_ext_Proper; Ring_polynom.ropp_ext_Proper; + OrderedRing.ropp_morph_Proper; RingMicromega.ropp_morph_Proper; + Field_theory.ropp_neq_0; OrderedRing.rplus_morph_Proper; + RingMicromega.rplus_morph_Proper; Ring_theory.rpow_pow_N; + Field_theory.rsplit_common; Field_theory.rsplit_left; + Field_theory.rsplit_right; Field_theory.rsub_0_l; Field_theory.rsub_0_r; + EnvRing.rsub_ext_Proper; Field_theory.rsub_ext_Proper; + Ring_polynom.rsub_ext_Proper; OrderedRing.rtimes_morph_Proper; + RingMicromega.rtimes_morph_Proper; Tauto.rtyp; RMicromega.runsat; + InitialRing.same_gen; InitialRing.same_genN; InitialRing.same_genZ; + ConstructiveCauchyReals.scale; ConstructiveCauchyReals.seq; + ConstructiveRcomplete.seq_cv; BinInt.Z.sgn; + ClassicalDedekindReals.sig_forall_dec; ConstructiveLUB.sig_forall_dec_T; + sig_ind; ConstructiveLUB.sig_lub; ClassicalDedekindReals.sig_not_dec; + ConstructiveLUB.sig_not_dec_T; sig_rec; sig_rect; Ring_theory.sign_spec; + Rlimit.single_limit; BinPos.Pos.size_nat; BinPos.Pos.size_nat_monotone; + snd; OrderedRing.sor_setoid; OrderedRing.sor_setoid_Reflexive; + OrderedRing.sor_setoid_Symmetric; OrderedRing.sor_setoid_Transitive; + Field_theory.split; Field_theory.split_aux; Field_theory.split_aux_ok; + Field_theory.split_aux_ok1; Field_theory.split_nz_l; + Field_theory.split_nz_r; Field_theory.split_ok_l; + Field_theory.split_ok_r; BinInt.Z.strong_left_induction; + BinNat.N.strong_right_induction; PeanoNat.Nat.strong_right_induction; + BinInt.Z.strong_right_induction; BinNat.N.sub; BinPos.Pos.sub; + BinInt.Z.sub; BinInt.Z.sub_0_l; BinNat.N.sub_0_r; BinInt.Z.sub_0_r; + BinInt.Z.sub_1_r; BinNat.N.sub_add; BinPos.Pos.sub_add; + BinPos.Pos.sub_add_distr; BinInt.Z.sub_cancel_r; BinPos.Pos.sub_decr; + BinNat.N.sub_diag; BinInt.Z.sub_diag; BinNat.N.sub_gt; + BinInt.Z.sub_le_mono_r; BinInt.Z.sub_lt_mono_r; BinPos.Pos.sub_mask; + BinPos.Pos.sub_mask_add; BinPos.Pos.sub_mask_add_diag_l; + BinPos.Pos.sub_mask_add_diag_r; BinPos.Pos.sub_mask_carry; + BinPos.Pos.sub_mask_carry_spec; BinPos.Pos.sub_mask_diag; + BinPos.Pos.sub_mask_neg_iff; BinPos.Pos.sub_mask_nul_iff; + BinPos.Pos.sub_mask_pos; BinPos.Pos.sub_mask_pos'; + BinPos.Pos.sub_mask_pos_iff; BinPos.Pos.sub_mask_spec; + BinPos.Pos.sub_mask_succ_r; BinInt.Z.sub_move_0_r; BinInt.Z.sub_move_r; + BinInt.Z.sub_opp_r; BinInt.Z.sub_simpl_r; BinPos.Pos.sub_sub_distr; + BinInt.Z.sub_sub_distr; BinNat.N.sub_succ; BinInt.Z.sub_succ_l; + BinNat.N.sub_succ_r; BinInt.Z.sub_succ_r; BinNat.N.sub_wd; + BinInt.Z.sub_wd; BinPos.Pos.sub_xI_xI; BinPos.Pos.sub_xI_xO; + BinPos.Pos.sub_xO_xI; BinPos.Pos.sub_xO_xO; Rtopology.subfamily; + CRelationClasses.subrelation; RelationClasses.subrelation; + CMorphisms.subrelation_proper; Morphisms.subrelation_proper; + CMorphisms.subrelation_refl; Morphisms.subrelation_refl; + CMorphisms.subrelation_respectful; Morphisms.subrelation_respectful; + BinNat.N.succ; BinPos.Pos.succ; BinInt.Z.succ; RIneq.succ_IPR; + BinNat.N.succ_double; BinInt.Z.succ_double; BinNat.N.succ_double_add; + BinPos.Pos.succ_double_mask; BinNat.N.succ_double_mul; + BinInt.Z.succ_double_spec; BinNat.N.succ_inj; PeanoNat.Nat.succ_inj; + BinPos.Pos.succ_inj; BinInt.Z.succ_inj; BinNat.N.succ_inj_wd; + PeanoNat.Nat.succ_inj_wd; BinInt.Z.succ_inj_wd; + PeanoNat.Nat.succ_le_mono; BinInt.Z.succ_le_mono; + PeanoNat.Nat.succ_lt_mono; BinPos.Pos.succ_lt_mono; + BinInt.Z.succ_lt_mono; BinPos.Pos.succ_not_1; BinInt.Z.succ_pred; + BinPos.Pos.succ_pred_double; BinPos.Pos.succ_pred_or; BinNat.N.succ_wd; + PeanoNat.Nat.succ_wd; BinInt.Z.succ_wd; + PeanoNat.Nat.succ_wd_obligation_1; sumbool_rec; sumbool_rect; + RMicromega.sumboolb; BinPos.Pos.switch_Eq; CRelationClasses.symmetry; + RelationClasses.symmetry; Env.tail; Tauto.tauto_checker; + Tauto.tauto_checker_sound; List.tl; BinInt.Z.to_N; BinNat.N.to_nat; + BinPos.Pos.to_nat; BinInt.Z.to_nat; BinInt.Z.to_pos; + Rdefinitions.total_order_T; PeanoNat.Nat.Private_Tac.trans; + BinPos.Pos.Private_Tac.trans; Qminmax.Q.Private_Tac.trans; + BinInt.Z.Private_Tac.trans; BinNat.N.Private_OrderTac.Tac.trans; + PeanoNat.Nat.Private_OrderTac.Tac.trans; + BinInt.Z.Private_OrderTac.Tac.trans; + Morphisms.trans_co_eq_inv_impl_morphism; + Morphisms.trans_co_eq_inv_impl_morphism_obligation_1; + Morphisms.trans_co_impl_morphism; + Morphisms.trans_co_impl_morphism_obligation_1; + CMorphisms.trans_contra_inv_impl_type_morphism; + CMorphisms.trans_contra_inv_impl_type_morphism_obligation_1; + OrdersTac.trans_ord; Morphisms.trans_sym_co_inv_impl_morphism; + Morphisms.trans_sym_co_inv_impl_morphism_obligation_1; + CRelationClasses.transitivity; RelationClasses.transitivity; + InitialRing.triv_div; InitialRing.triv_div_th; BinInt.Z.two_succ; + Ranalysis1.uniqueness_limite; Ranalysis1.uniqueness_step1; + Ranalysis1.uniqueness_step2; Ranalysis1.uniqueness_step3; + ZMicromega.valid_cut_sign; well_founded; well_founded_ind; + well_founded_induction; well_founded_induction_type; + Wf_nat.well_founded_ltof; BinPos.Pos.xI_succ_xO; Tauto.xcnf; + Tauto.xcnf_correct; Tauto.xcnf_iff; Tauto.xcnf_impl; + RingMicromega.xnegate; ZMicromega.xnegate; + RingMicromega.xnegate_correct; ZMicromega.xnegate_correct; + ZMicromega.xnnormalise; ZMicromega.xnnormalise_correct; + RingMicromega.xnormalise; ZMicromega.xnormalise; + RingMicromega.xnormalise_correct; ZMicromega.xnormalise_correct; + Tauto.xor_clause_cnf; RMicromega.z_of_exp; Ring_polynom.zmon_pred; + Ring_polynom.zmon_pred_ok; Acc; BoolSpec; ConstructiveCauchyReals.CReal; + CompareSpec; CompareSpecT; ConstructiveReals.ConstructiveReals; + ConstructiveLUB.DedekindDecCut; SetoidTactics.DefaultRelation; + CRelationClasses.Equivalence; RelationClasses.Equivalence; + Field_theory.FExpr; False; RingMicromega.Formula; Tauto.GFormula; + ZifyClasses.InjTyp; Rlimit.Metric_Space; Ring_polynom.Mon; BinNums.N; + RingMicromega.Op1; RingMicromega.Op2; RelationClasses.PER; + EnvRing.PExpr; Ring_polynom.PExpr; EnvRing.Pol; Ring_polynom.Pol; + RelationClasses.PreOrder; RingMicromega.Psatz; QArith_base.Q; + RMicromega.Rcst; RelationClasses.RewriteRelation; OrderedRing.SOR; + RingMicromega.SORaddon; RelationClasses.StrictOrder; + BinPos.Pos.SubMaskSpec; True; BinNums.Z; ZMicromega.ZArithProof; + ZMicromega.Zdivide_pol; Znumtheory.Zis_gcd; + Field_theory.almost_field_theory; Ring_theory.almost_ring_theory; and; + ConstructiveEpsilon.before_witness; bool; comparison; + Ring_theory.div_theory; eq; ex; Rtopology.family; + Field_theory.field_theory; Tauto.kind; le; Field_theory.linear; list; + BinPos.Pos.mask; nat; RIneq.negreal; option; or; OrdersTac.ord; + BinNums.positive; RIneq.posreal; Ring_theory.power_theory; prod; + Bool.reflect; ConstructiveEpsilon.rel_ls; Ring_theory.ring_eq_ext; + Ring_theory.ring_morph; Ring_theory.ring_theory; Field_theory.rsplit; + Ring_theory.semi_morph; Ring_theory.semi_ring_theory; sig; sigT; + Ring_theory.sign_theory; Ring_theory.sring_eq_ext; sum; sumbool; sumor; + VarMap.t; unit; Acc_intro; BoolSpecT; ConstructiveCauchyReals.mkCReal; + CompEq; CompEqT; ConstructiveReals.Build_ConstructiveReals; + ConstructiveLUB.Build_DedekindDecCut; + SetoidTactics.Build_DefaultRelation; CRelationClasses.Build_Equivalence; + RelationClasses.Build_Equivalence; Field_theory.FEO; + RingMicromega.Build_Formula; Tauto.TT; ZifyClasses.mkinj; + Rlimit.Build_Metric_Space; Ring_polynom.mon0; BinNums.N0; + RingMicromega.Equal; RingMicromega.OpEq; RelationClasses.Build_PER; + EnvRing.PEc; Ring_polynom.PEO; EnvRing.Pc; Ring_polynom.Pc; + RelationClasses.Build_PreOrder; RingMicromega.PsatzLet; + QArith_base.Qmake; RMicromega.C0; RelationClasses.Build_RewriteRelation; + OrderedRing.mk_SOR_theory; RingMicromega.mk_SOR_addon; + RelationClasses.Build_StrictOrder; BinPos.Pos.SubIsNul; I; BinNums.Z0; + ZMicromega.DoneProof; ZMicromega.Zdiv_Pc; Znumtheory.Zis_gcd_intro; + Field_theory.mk_afield; Ring_theory.mk_art; conj; + ConstructiveEpsilon.stop; true; Eq; Ring_theory.mkdiv_th; eq_refl; + ex_intro; Rtopology.mkfamily; Field_theory.mk_field; Tauto.isProp; le_n; + Field_theory.mk_linear; nil; BinPos.Pos.IsNul; O; RIneq.mknegreal; Some; + or_introl; OrdersTac.OEQ; BinNums.xI; RIneq.mkposreal; + Ring_theory.mkpow_th; pair; Bool.ReflectT; ConstructiveEpsilon.Rstop; + Ring_theory.mk_reqe; Ring_theory.mkmorph; Ring_theory.mk_rt; + Field_theory.mk_rsplit; Ring_theory.mkRmorph; Ring_theory.mk_srt; exist; + existT; Ring_theory.mksign_th; Ring_theory.mk_seqe; inl; left; inleft; + VarMap.Empty; tt; BoolSpecF; CompLt; CompLtT; Field_theory.FEI; + Tauto.FF; Ring_polynom.zmon; BinNums.Npos; RingMicromega.NonEqual; + RingMicromega.OpNEq; EnvRing.PEX; Ring_polynom.PEI; EnvRing.Pinj; + Ring_polynom.Pinj; RingMicromega.PsatzIn; RMicromega.C1; + BinPos.Pos.SubIsPos; BinNums.Zpos; ZMicromega.RatProof; + ZMicromega.Zdiv_Pinj; ConstructiveEpsilon.next; false; Lt; Tauto.isBool; + le_S; cons; BinPos.Pos.IsPos; S; None; or_intror; OrdersTac.OLT; + BinNums.xO; Bool.ReflectF; ConstructiveEpsilon.Rnext; inr; right; + inright; VarMap.Elt; CompGt; CompGtT; Field_theory.FEc; Tauto.X; + Ring_polynom.vmon; RingMicromega.Strict; RingMicromega.OpLe; + EnvRing.PEadd; Ring_polynom.PEc; EnvRing.PX; Ring_polynom.PX; + RingMicromega.PsatzSquare; RMicromega.CQ; BinPos.Pos.SubIsNeg; + BinNums.Zneg; ZMicromega.CutProof; ZMicromega.Zdiv_PX; Gt; + BinPos.Pos.IsNeg; OrdersTac.OLE; BinNums.xH; VarMap.Branch; + Field_theory.FEX; Tauto.A; RingMicromega.NonStrict; RingMicromega.OpGe; + EnvRing.PEsub; Ring_polynom.PEX; RingMicromega.PsatzMulC; RMicromega.CZ; + ZMicromega.SplitProof; Field_theory.FEadd; Tauto.AND; + RingMicromega.OpLt; EnvRing.PEmul; Ring_polynom.PEadd; + RingMicromega.PsatzMulE; RMicromega.CPlus; ZMicromega.EnumProof; + Field_theory.FEsub; Tauto.OR; RingMicromega.OpGt; EnvRing.PEopp; + Ring_polynom.PEsub; RingMicromega.PsatzAdd; RMicromega.CMinus; + ZMicromega.ExProof; Field_theory.FEmul; Tauto.NOT; EnvRing.PEpow; + Ring_polynom.PEmul; RingMicromega.PsatzC; RMicromega.CMult; + Field_theory.FEopp; Tauto.IMPL; Ring_polynom.PEopp; + RingMicromega.PsatzZ; RMicromega.CPow; Field_theory.FEinv; Tauto.IFF; + Ring_polynom.PEpow; RMicromega.CInv; Field_theory.FEdiv; Tauto.EQ; + RMicromega.COpp; Field_theory.FEpow; }} + T = 2.330513 +Query assignments: + %arg1 = 4 + S = {{ Nat.add; eq; nat; O; }} + T = prod `x` (global (indt «nat»)) c0 \ + app + [global (indt «eq»), X0 c0, + app [global (const «Nat.add»), c0, global (indc «O»)], c0] + X10_ = c0 \ +X0 c0 +Syntactic constraints: + {c0} : decl c0 `x` (global (indt «nat»)) ?- evar (X0 c0) (X1 c0) (X0 c0) /* suspended on X0 */ + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X2 c0) (sort (typ «elpi_tests_stdlib.test_API_env.30»)) (X1 c0) /* suspended on X2, X1 */ +Universe constraints: +UNIVERSES: + {elpi_tests_stdlib.test_API_env.30} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α13 +WEAK CONSTRAINTS: + + +Query assignments: + Decl = record Rec (sort (typ «elpi_tests_stdlib.test_API_env.31»)) BuildRec + (field [] f (sort (typ «elpi_tests_stdlib.test_API_env.32»)) c0 \ + end-record) + X11_ = «elpi_tests_stdlib.test_API_env.31» + X12_ = «elpi_tests_stdlib.test_API_env.32» +Universe constraints: +UNIVERSES: + {elpi_tests_stdlib.test_API_env.32 elpi_tests_stdlib.test_API_env.31} |= +ALGEBRAIC UNIVERSES: + {elpi_tests_stdlib.test_API_env.32 elpi_tests_stdlib.test_API_env.31} +FLEXIBLE UNIVERSES: + elpi_tests_stdlib.test_API_env.32 + elpi_tests_stdlib.test_API_env.31 +SORTS: + +WEAK CONSTRAINTS: + + +Module +Test +:= Struct + Record Rec@{u u0} : Type@{u} := BuildRec + { f : Type@{u0} }. + (* u u0 |= u0 < u *) + Definition f : Rec@{u u0} -> Type@{u0}. + (* u u0 |= u0 < u *) + End +Test.f@{elpi_tests_stdlib.test_API_env.33 +elpi_tests_stdlib.test_API_env.34} + : Test.Rec@{elpi_tests_stdlib.test_API_env.33 + elpi_tests_stdlib.test_API_env.34} -> + Type@{elpi_tests_stdlib.test_API_env.34} +(* {elpi_tests_stdlib.test_API_env.34 elpi_tests_stdlib.test_API_env.33} |= + elpi_tests_stdlib.test_API_env.34 < elpi_tests_stdlib.test_API_env.33 *) +Query assignments: + LP = «Coq.ZArith.Znat» + MP = «Coq.ZArith.Znat.N2Z» +File "./tests-stdlib/test_API_env.v", line 26, characters 24-26: +Warning: +File "./tests-stdlib/test_API_env.v", line 26, characters 24-26 +TY is linear: name it _TY (discard) or TY_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 82, characters 23-25: +Warning: +File "./tests-stdlib/test_API_env.v", line 82, characters 23-25 +GR is linear: name it _GR (discard) or GR_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 215, characters 71-72: +Warning: +File "./tests-stdlib/test_API_env.v", line 215, characters 71-72 +U is linear: name it _U (discard) or U_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 209, characters 39-41: +Warning: +File "./tests-stdlib/test_API_env.v", line 209, characters 39-41 +UA is linear: name it _UA (discard) or UA_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 212, characters 45-48: +Warning: +File "./tests-stdlib/test_API_env.v", line 212, characters 45-48 +UB1 is linear: name it _UB1 (discard) or UB1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 218, characters 40-43: +Warning: +File "./tests-stdlib/test_API_env.v", line 218, characters 40-43 +UB2 is linear: name it _UB2 (discard) or UB2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 225, characters 40-43: +Warning: +File "./tests-stdlib/test_API_env.v", line 225, characters 40-43 +UB3 is linear: name it _UB3 (discard) or UB3_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 215, characters 34-36: +Warning: +File "./tests-stdlib/test_API_env.v", line 215, characters 34-36 +UC is linear: name it _UC (discard) or UC_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 246, characters 71-72: +Warning: +File "./tests-stdlib/test_API_env.v", line 246, characters 71-72 +U is linear: name it _U (discard) or U_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 240, characters 39-41: +Warning: +File "./tests-stdlib/test_API_env.v", line 240, characters 39-41 +UA is linear: name it _UA (discard) or UA_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 243, characters 45-48: +Warning: +File "./tests-stdlib/test_API_env.v", line 243, characters 45-48 +UB1 is linear: name it _UB1 (discard) or UB1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 249, characters 40-43: +Warning: +File "./tests-stdlib/test_API_env.v", line 249, characters 40-43 +UB2 is linear: name it _UB2 (discard) or UB2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 256, characters 40-43: +Warning: +File "./tests-stdlib/test_API_env.v", line 256, characters 40-43 +UB3 is linear: name it _UB3 (discard) or UB3_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 246, characters 34-36: +Warning: +File "./tests-stdlib/test_API_env.v", line 246, characters 34-36 +UC is linear: name it _UC (discard) or UC_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 273, characters 39-41: +Warning: +File "./tests-stdlib/test_API_env.v", line 273, characters 39-41 +UP is linear: name it _UP (discard) or UP_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 275, characters 30-32: +Warning: +File "./tests-stdlib/test_API_env.v", line 275, characters 30-32 +UR is linear: name it _UR (discard) or UR_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 291, characters 39-41: +Warning: +File "./tests-stdlib/test_API_env.v", line 291, characters 39-41 +UP is linear: name it _UP (discard) or UP_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests-stdlib/test_API_env.v", line 293, characters 30-32: +Warning: +File "./tests-stdlib/test_API_env.v", line 293, characters 30-32 +UR is linear: name it _UR (discard) or UR_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +test2 +test1 +str hello +test1 +too many arguments +test1 +str hello my +str Dear +test1 +too many arguments +[attribute elpi.loc + (leaf-loc + File "./tests/test_vernacular1.v", line 47, column 5, characters 953-961:), + attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar)] +[get-option elpi.loc + File "./tests/test_vernacular1.v", line 47, column 5, characters 953-961:, + get-option elpi.phase interp, get-option foo bar] +[attribute elpi.loc + (leaf-loc + File "./tests/test_vernacular1.v", line 51, column 0, characters 987-1014:), + attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar), + attribute poly (leaf-str )] +[get-option elpi.loc + File "./tests/test_vernacular1.v", line 51, column 0, characters 987-1014:, + get-option elpi.phase interp, get-option foo bar, get-option poly tt] +[attribute elpi.loc + (leaf-loc + File "./tests/test_vernacular1.v", line 52, column 0, characters 1015-1055:), + attribute elpi.phase (leaf-str interp), attribute foo (leaf-str bar), + attribute poly (leaf-str ), + attribute suppa (node [attribute duppa (leaf-str )])] +[get-option elpi.loc + File "./tests/test_vernacular1.v", line 52, column 0, characters 1015-1055:, + get-option elpi.phase interp, get-option foo bar, get-option poly tt] +Query assignments: + X = 3 +app [global (const «Nat.mul»), X0, X1] type +File "./tests/test_vernacular1.v", line 5, characters 0-61: +Warning: +Undeclared globals: +- File "./tests/test_vernacular1.v", line 6, column 29, characters 112-117: foo. +Please add the following text to your program: +type foo list argument -> prop. +[elpi.missing-types,elpi.typecheck,elpi,default] +File "./tests/test_vernacular1.v", line 46, characters 2-11: +Warning: This command does not support this attribute: foo. +[unsupported-attributes,parsing,default] +File "./tests/test_vernacular1.v", line 65, characters 26-27: +Warning: +File "./tests/test_vernacular1.v", line 65, characters 26-27 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +synterp [str X] +interp [str X] +synterp [int 1] +interp [int 1] +synterp [trm _] +interp [trm (app [global (indc «S»), global (indc «O»)])] +synterp +[const-decl x (some _) + (parameter P explicit _ c0 \ parameter Q explicit _ c1 \ arity _)] +interp +[const-decl x + (some + (fun `P` (global (indt «bool»)) c0 \ + fun `Q` (global (indt «bool»)) c1 \ global (indc «O»))) + (parameter P explicit (global (indt «bool»)) c0 \ + parameter Q explicit (global (indt «bool»)) c1 \ + arity (global (indt «nat»)))] +synterp +[const-decl x none + (parameter P explicit _ c0 \ parameter Q explicit _ c1 \ arity _)] +interp +[const-decl x none + (parameter P explicit (global (indt «bool»)) c0 \ + parameter Q explicit (global (indt «bool»)) c1 \ + arity (global (indt «nat»)))] +synterp +[indt-decl + (parameter P explicit _ c0 \ + parameter Q explicit _ c1 \ + record x _ K + (field [coercion off, canonical tt] f1 _ c2 \ + field [coercion off, canonical tt] f2 _ c3 \ end-record))] +interp +[indt-decl + (parameter P explicit (global (indt «bool»)) c0 \ + parameter Q explicit (global (indt «bool»)) c1 \ + record x (sort (typ «Set»)) K + (field [coercion off, canonical tt] f1 (global (indt «nat»)) c2 \ + field [coercion off, canonical tt] f2 + (app [global (indt «eq»), global (indt «nat»), c2, c2]) c3 \ + end-record))] +synterp +[indt-decl + (parameter P explicit _ c0 \ + inductive x tt (parameter Q explicit _ c1 \ arity _) c1 \ + [constructor K (parameter Q explicit _ c2 \ arity _), + constructor R (parameter Q explicit _ c2 \ arity _)])] +interp +[indt-decl + (parameter P explicit (global (indt «bool»)) c0 \ + inductive x tt + (parameter Q explicit (global (indt «bool»)) c1 \ + arity (prod `_` (global (indt «nat»)) c2 \ sort (typ «Set»))) c1 \ + [constructor K + (parameter Q explicit (global (indt «bool»)) c2 \ + arity + (prod `_` (global (indt «nat»)) c3 \ + app + [c1, c2, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]])), + constructor R + (parameter Q explicit (global (indt «bool»)) c2 \ + arity + (prod `w` (global (indt «bool»)) c3 \ app [c1, c2, app [global (indc «S»), global (indc «O»)]]))])] synterp [ctx-decl @@ -14211,6 +13566,1647 @@ File "./tests/test_synterp.v", line 41, characters 12-13 X is linear: name it _X (discard) or X_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: + B = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + GR = «Nat.add» + RB = fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]] + T = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +Syntactic constraints: + {c0 c1 c2 c3} : + decl c3 `n` (global (indt «nat»)), decl c2 `m` (global (indt «nat»)), + decl c1 `n` (global (indt «nat»)), + decl c0 `add` + (prod `n` (global (indt «nat»)) c1 \ + prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) + ?- evar (X0 c0 c1 c2 c3) (sort (typ «elpi.tests.test_elaborator.17»)) + (X1 c0 c1 c2 c3) /* suspended on X0, X1 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.23 elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.21 elpi.tests.test_elaborator.20 + elpi.tests.test_elaborator.19 elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.17 elpi.tests.test_elaborator.16 + elpi.tests.test_elaborator.15 elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.13 elpi.tests.test_elaborator.12 + elpi.tests.test_elaborator.11 elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.9 elpi.tests.test_elaborator.8 + elpi.tests.test_elaborator.7 elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.5 elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.3 elpi.tests.test_elaborator.2 + elpi.tests.test_elaborator.1} |= + Set <= elpi.tests.test_elaborator.1 + Set <= elpi.tests.test_elaborator.2 + Set <= elpi.tests.test_elaborator.3 + Set <= elpi.tests.test_elaborator.8 + Set <= elpi.tests.test_elaborator.12 + Set <= elpi.tests.test_elaborator.16 + Set <= elpi.tests.test_elaborator.20 + elpi.tests.test_elaborator.1 <= elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.2 <= elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.3 <= elpi.tests.test_elaborator.4 + elpi.tests.test_elaborator.4 <= elpi.tests.test_elaborator.5 + elpi.tests.test_elaborator.5 <= elpi.tests.test_elaborator.6 + elpi.tests.test_elaborator.6 <= elpi.tests.test_elaborator.7 + elpi.tests.test_elaborator.8 <= elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.9 <= elpi.tests.test_elaborator.10 + elpi.tests.test_elaborator.10 <= elpi.tests.test_elaborator.11 + elpi.tests.test_elaborator.12 <= elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.13 <= elpi.tests.test_elaborator.14 + elpi.tests.test_elaborator.14 <= elpi.tests.test_elaborator.15 + elpi.tests.test_elaborator.16 <= elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.17 <= elpi.tests.test_elaborator.18 + elpi.tests.test_elaborator.18 <= elpi.tests.test_elaborator.19 + elpi.tests.test_elaborator.20 <= elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.21 <= elpi.tests.test_elaborator.22 + elpi.tests.test_elaborator.22 <= elpi.tests.test_elaborator.23 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + B = fun `n` (global (indt «nat»)) c0 \ + app + [global (const «nat_ind»), + fun `n` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]], + let `_` + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) + (app + [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) + c1 \ c1, + fun `n` (global (indt «nat»)) c1 \ + fun `IHn` + (app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ + let `_` + (app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), c1], + app + [global (const «Nat.add»), app [global (indc «S»), c1], + global (indc «O»)]]) + (app + [global (const «f_equal_nat»), global (indt «nat»), + global (indc «S»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ + c3, c0] + GR = «plus_n_O» + RB = fun `n` (global (indt «nat»)) c0 \ + app + [global (const «nat_ind»), + fun `n` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]], + let `_` + (app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + app + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) + (app + [global (indc «eq_refl»), global (indt «nat»), global (indc «O»)]) + c1 \ c1, + fun `n` (global (indt «nat»)) c1 \ + fun `IHn` + (app + [global (indt «eq»), global (indt «nat»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)]]) c2 \ + let `_` + (app + [global (indt «eq»), global (indt «nat»), + app [global (indc «S»), c1], + app + [global (const «Nat.add»), app [global (indc «S»), c1], + global (indc «O»)]]) + (app + [global (const «f_equal_nat»), global (indt «nat»), + global (indc «S»), c1, + app [global (const «Nat.add»), c1, global (indc «O»)], c2]) c3 \ + c3, c0] + TY = prod `n` (global (indt «nat»)) c0 \ + app + [global (indt «eq»), global (indt «nat»), c0, + app [global (const «Nat.add»), c0, global (indc «O»)]] +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.38 elpi.tests.test_elaborator.37 + elpi.tests.test_elaborator.36 elpi.tests.test_elaborator.35 + elpi.tests.test_elaborator.34 elpi.tests.test_elaborator.33 + elpi.tests.test_elaborator.32 elpi.tests.test_elaborator.31 + elpi.tests.test_elaborator.30 elpi.tests.test_elaborator.29 + elpi.tests.test_elaborator.28 elpi.tests.test_elaborator.27 + elpi.tests.test_elaborator.26 elpi.tests.test_elaborator.25 + elpi.tests.test_elaborator.24} |= + Set <= eq.u0 + Set <= Coq.Init.Logic.11 + Set <= elpi.tests.test_elaborator.24 + Set <= elpi.tests.test_elaborator.28 + Set <= elpi.tests.test_elaborator.32 + elpi.tests.test_elaborator.24 <= elpi.tests.test_elaborator.26 + elpi.tests.test_elaborator.25 <= elpi.tests.test_elaborator.26 + elpi.tests.test_elaborator.26 <= elpi.tests.test_elaborator.27 + elpi.tests.test_elaborator.28 <= elpi.tests.test_elaborator.30 + elpi.tests.test_elaborator.29 <= elpi.tests.test_elaborator.30 + elpi.tests.test_elaborator.30 <= elpi.tests.test_elaborator.31 + elpi.tests.test_elaborator.32 <= elpi.tests.test_elaborator.34 + elpi.tests.test_elaborator.33 <= elpi.tests.test_elaborator.34 + elpi.tests.test_elaborator.34 <= elpi.tests.test_elaborator.35 + elpi.tests.test_elaborator.36 <= elpi.tests.test_elaborator.37 + elpi.tests.test_elaborator.37 <= elpi.tests.test_elaborator.38 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +CHR: Uniqueness of typing of frozen--911 + [] <-> [] +[c0] |> [decl c0 `x` (uvar frozen--911 [])] |- frozen--911 [] : +sort (typ «elpi.tests.test_elaborator.40») +[] |> [] |- frozen--911 [] : sort (typ «elpi.tests.test_elaborator.39») +[] |> [] |- +unify-eq (sort (typ «elpi.tests.test_elaborator.40»)) + (sort (typ «elpi.tests.test_elaborator.39»)) + +Query assignments: + R = fun `x` X0 c0 \ c0 + T = prod `x` X0 c0 \ X0 + X1_ = X1 +Syntactic constraints: + {c0} : decl c0 `x` X0 + ?- evar X2 (sort (typ «elpi.tests.test_elaborator.40»)) X0 /* suspended on X2, X0 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.42 elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.40 elpi.tests.test_elaborator.39} |= + elpi.tests.test_elaborator.39 <= elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.39 + elpi.tests.test_elaborator.40 <= elpi.tests.test_elaborator.41 + elpi.tests.test_elaborator.41 <= elpi.tests.test_elaborator.42 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + R = fun `x` (global (indt «nat»)) c0 \ + app [global (const «Nat.add»), c0, global (indc «O»)] + T = prod `x` (global (indt «nat»)) c0 \ global (indt «nat») + X2_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.46 elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.44 elpi.tests.test_elaborator.43} |= + elpi.tests.test_elaborator.43 <= elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.44 <= elpi.tests.test_elaborator.45 + elpi.tests.test_elaborator.45 <= elpi.tests.test_elaborator.46 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +sort (typ X0) +Query assignments: + X3_ = X0 +Query assignments: + S = sort (typ «elpi.tests.test_elaborator.48») + T = sort (typ «elpi.tests.test_elaborator.47») + X4_ = «elpi.tests.test_elaborator.47» +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.48 elpi.tests.test_elaborator.47} |= + elpi.tests.test_elaborator.47 < elpi.tests.test_elaborator.48 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.47} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.47 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + S = sort (typ «elpi.tests.test_elaborator.50») + T = sort (typ «elpi.tests.test_elaborator.49») + TW = sort (typ «elpi.tests.test_elaborator.49») + W = sort (typ «elpi.tests.test_elaborator.51») + X5_ = «elpi.tests.test_elaborator.49» + X6_ = «elpi.tests.test_elaborator.51» +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.50 + elpi.tests.test_elaborator.49} |= + elpi.tests.test_elaborator.49 < elpi.tests.test_elaborator.50 + elpi.tests.test_elaborator.51 < elpi.tests.test_elaborator.49 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.51 elpi.tests.test_elaborator.49} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.51 + elpi.tests.test_elaborator.49 +SORTS: + +WEAK CONSTRAINTS: + + +Debug: Cannot enforce elpi.tests.test_elaborator.52 < +elpi.tests.test_elaborator.52 because elpi.tests.test_elaborator.52 += elpi.tests.test_elaborator.52 +Query assignments: + X = sort (typ X0) + X7_ = X0 +Query assignments: + X = sort (typ «elpi.tests.test_elaborator.53») + Y = sort (typ «elpi.tests.test_elaborator.54») +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} |= + elpi.tests.test_elaborator.53 < elpi.tests.test_elaborator.54 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_elaborator.54 elpi.tests.test_elaborator.53} +FLEXIBLE UNIVERSES: + elpi.tests.test_elaborator.54 + elpi.tests.test_elaborator.53 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + D = X0 + R = app + [global (indc «ex_intro»), X0, + fun `hd_beta_auto` X0 c0 \ + app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + global (indc «O»)], X1, global (const «p»)] + TY = app + [global (indt «ex»), X0, + fun `hd_beta_auto` X0 c0 \ + app + [global (indt «eq»), global (indt «nat»), global (indc «O»), + global (indc «O»)]] + X10_ = X2 + X11_ = X3 + X9_ = X4 +Syntactic constraints: + evar (X4) (sort (typ «ex.u0»)) X0 /* suspended on X4, X0 */ + evar (X3) X0 (X1) /* suspended on X3, X1 */ + evar (X1) X0 X5 /* suspended on X1, X5 */ +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, c0], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, c0]] + X12_ = X0 + X13_ = X1 +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `hd_beta_auto` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] + X14_ = X0 + X15_ = c0 \ +X1 c0 + X16_ = X2 + X17_ = X3 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.58 elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.56 elpi.tests.test_elaborator.55} |= + Set <= elpi.tests.test_elaborator.55 + elpi.tests.test_elaborator.55 <= elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.56 <= elpi.tests.test_elaborator.57 + elpi.tests.test_elaborator.57 <= elpi.tests.test_elaborator.58 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + R = app + [global (indc «ex_intro»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)], + global (indc «O»), global (const «p»)] + TY = app + [global (indt «ex»), global (indt «nat»), + fun `n` (global (indt «nat»)) c0 \ + app [global (indt «eq»), global (indt «nat»), c0, global (indc «O»)]] + X18_ = X0 + X19_ = c0 \ +X1 c0 + X20_ = X2 + X21_ = X3 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.62 elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.60 elpi.tests.test_elaborator.59} |= + Set <= elpi.tests.test_elaborator.59 + elpi.tests.test_elaborator.59 <= elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.60 <= elpi.tests.test_elaborator.61 + elpi.tests.test_elaborator.61 <= elpi.tests.test_elaborator.62 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + A = tt + B = 0 + C = 0 + D = sort (typ «Set») + E = [«true», «false»] + F = [global (indt «bool»), global (indt «bool»)] + GR = «bool» +Query assignments: + F = app [global (const «nat_of_bool»), global (indc «true»)] +c0 \ app [global (const «nat_of_bool»), c0] +Query assignments: + Res = app + [global (const «map»), global (indt «bool»), global (indt «nat»), + fun `x` (global (indt «bool»)) c0 \ + app [global (const «nat_of_bool»), c0], + app + [global (indc «cons»), global (indt «bool»), global (indc «true»), + app [global (indc «nil»), global (indt «bool»)]]] + X22_ = X0 + X23_ = X1 +Query assignments: + Res = app + [global (const «Z_of_nat»), + app [global (const «nat_of_bool»), global (indc «true»)]] +c0 \ +app [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]] +Query assignments: + Res = app + [global (const «map»), global (indt «bool»), global (const «Z»), + fun `x` (global (indt «bool»)) c0 \ + app + [global (const «Z_of_nat»), app [global (const «nat_of_bool»), c0]], + app + [global (indc «cons»), global (indt «bool»), global (indc «true»), + app [global (indc «nil»), global (indt «bool»)]]] + X24_ = X0 + X25_ = X1 +Query assignments: + R = prod `r` (global (const «ring»)) c0 \ + prod `x` (app [global (const «carr»), c0]) c1 \ + app [global (indt «eq»), app [global (const «carr»), c0], c1, c1] + T = sort (typ «elpi.tests.test_elaborator.75») + X26_ = c0 \ c1 \ +X0 c0 c1 +Universe constraints: +UNIVERSES: + {elpi.tests.test_elaborator.75 elpi.tests.test_elaborator.74 + elpi.tests.test_elaborator.73 elpi.tests.test_elaborator.72 + elpi.tests.test_elaborator.70} |= + ring.u0 <= elpi.tests.test_elaborator.70 + elpi.tests.test_elaborator.70 <= elpi.tests.test_elaborator.75 + elpi.tests.test_elaborator.73 <= elpi.tests.test_elaborator.74 + elpi.tests.test_elaborator.74 <= elpi.tests.test_elaborator.75 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + T = global (const «int») + X = primitive (uint63 99) +Query assignments: + T = global (const «float») + X = primitive (float64 993000) +Query assignments: + X27_ = X0 +File "./tests/test_elaborator.v", line 18, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 18, characters 10-12 +RB is linear: name it _RB (discard) or RB_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 17, characters 58-59: +Warning: +File "./tests/test_elaborator.v", line 17, characters 58-59 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 18, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 18, characters 7-9 +TY is linear: name it _TY (discard) or TY_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 23, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 23, characters 10-12 +RB is linear: name it _RB (discard) or RB_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 23, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 23, characters 7-9 +TY is linear: name it _TY (discard) or TY_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 29, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 29, characters 41-42 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 29, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 29, characters 39-40 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 31, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 31, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 31, characters 43-44: +Warning: +File "./tests/test_elaborator.v", line 31, characters 43-44 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 38, characters 29-30: +Warning: +File "./tests/test_elaborator.v", line 38, characters 29-30 +S is linear: name it _S (discard) or S_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 38, characters 31-32: +Warning: +File "./tests/test_elaborator.v", line 38, characters 31-32 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 41, characters 15-16: +Warning: +File "./tests/test_elaborator.v", line 41, characters 15-16 +S is linear: name it _S (discard) or S_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 42, characters 29-31: +Warning: +File "./tests/test_elaborator.v", line 42, characters 29-31 +TW is linear: name it _TW (discard) or TW_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 64, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 64, characters 32-33 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 71, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 71, characters 32-33 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 78, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 78, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 90, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 90, characters 45-46 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 62-63: +Warning: +File "./tests/test_elaborator.v", line 97, characters 62-63 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 64-65: +Warning: +File "./tests/test_elaborator.v", line 97, characters 64-65 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 97, characters 66-67 +C is linear: name it _C (discard) or C_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 68-69: +Warning: +File "./tests/test_elaborator.v", line 97, characters 68-69 +D is linear: name it _D (discard) or D_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 70-71: +Warning: +File "./tests/test_elaborator.v", line 97, characters 70-71 +E is linear: name it _E (discard) or E_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 97, characters 72-73: +Warning: +File "./tests/test_elaborator.v", line 97, characters 72-73 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 108, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 108, characters 66-67 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 121, characters 35-38: +Warning: +File "./tests/test_elaborator.v", line 121, characters 35-38 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 135, characters 64-67: +Warning: +File "./tests/test_elaborator.v", line 135, characters 64-67 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 138, characters 33-36: +Warning: +File "./tests/test_elaborator.v", line 138, characters 33-36 +Res is linear: name it _Res (discard) or Res_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 151, characters 49-50: +Warning: +File "./tests/test_elaborator.v", line 151, characters 49-50 +R is linear: name it _R (discard) or R_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 151, characters 47-48: +Warning: +File "./tests/test_elaborator.v", line 151, characters 47-48 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 156, characters 36-37: +Warning: +File "./tests/test_elaborator.v", line 156, characters 36-37 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 156, characters 38-39: +Warning: +File "./tests/test_elaborator.v", line 156, characters 38-39 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 157, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 157, characters 39-40 +T is linear: name it _T (discard) or T_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_elaborator.v", line 157, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 157, characters 41-42 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +(true && false)%bool + : bool +natmul R n : ringType_sort R + : ringType_sort R +natmul R n : ringType_sort R + : ringType_sort R +1 + : nat +Cats.And.Dogs.x = 42 + : nat +Foo.x = 3 + : nat +Foo.x = 3 + : nat +Foo.x2 = 4 + : nat +eq_refl : Foo.x = 5 + : Foo.x = 5 +A.B.c : nat + +A.B.c is not universe polymorphic +A.B.c is transparent +Expands to: Constant elpi.apps.NES.tests.test_NES.A_aux_4.A.B.c +A1.B1.d : nat + +A1.B1.d is not universe polymorphic +A1.B1.d is transparent +Expands to: Constant elpi.apps.NES.tests.test_NES.A1_aux_6.A1.B1.d +A1.B1.c : nat + +A1.B1.c is not universe polymorphic +A1.B1.c is transparent +Expands to: Constant elpi.apps.NES.tests.test_NES.A1_aux_5.A1.B1.c +x = 5 + : nat +x2 = 4 + : nat +B1.c = 1 + : nat +B1.d = 1 + : nat +d = 1 + : nat +A2.B2.f = 2 + : nat + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X0 c0) + (prod `_` (global (indt «bool»)) c1 \ global (indt «True»)) + (X1 c0) /* suspended on X0, X1 */ +EVARS: + ?X2==[x |- bool -> True] (goal evar) {?Goal} + ?X1==[ |- => fun x : nat => ?Goal] (goal evar) + +SHELF:|| +FUTURE GOALS STACK: + || + +Rocq-Elpi mapping: +RAW: +?X2 <-> c0 \ X0 c0 +ELAB: +?X2 <-> X1 + +Debug: + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X0 c0) + (prod `_` (global (indt «bool»)) c1 \ global (indt «True»)) + (X1 c0) /* suspended on X0, X1 */ +H +[nabla c1 \ + seal + (goal + [decl c1 `H` + (prod `b` + (prod `b` (global (indt «bool»)) c2 \ + app [global (indt «eq»), global (indt «bool»), c2, c2]) c2 \ + global (indt «True»))] (X0 c1) + (prod `b` (global (indt «bool»)) c2 \ + app [global (indt «eq»), global (indt «bool»), c2, c2]) (X1 c1) [])] +[str fun, str in, str as, int 4, str end, str match, str return, str =>, + str :, str :=, str {, str }, str ;, str ,, str |, str x, int 1, str H, + trm + (fun `x` (global (indt «False»)) c0 \ + match c0 (fun `y` (global (indt «False»)) c1 \ global (indt «nat»)) + [])] +Query assignments: + T = sort (typ «elpi.tests.test_HOAS.3») + U = «elpi.tests.test_HOAS.3» +Query assignments: + U = «elpi.tests.test_HOAS.4» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.4} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + U = «foo» +Query assignments: + X = c0 \ c1 \ c2 \ +X0 c0 c1 c2 + X3_ = global (indt «nat») +Syntactic constraints: + {c0 c1 c2 c3 c4 c5 c6} : + decl c6 `z` (app [global (const «N»), c5]), + decl c5 `x` (global (indt «nat»)), + decl c4 `a` (global (indt «bool»)) + ?- evar (X0 c4 c5 c6) (X1 c4 c5 c6) (X0 c4 c5 c6) /* suspended on X0 */ + {c0 c1 c2 c3 c4 c5 c6} : + decl c6 `z` (app [global (const «N»), c5]), + decl c5 `x` (global (indt «nat»)), + decl c4 `a` (global (indt «bool»)) + ?- evar (X2 c4 c5 c6) (sort (typ «elpi.tests.test_HOAS.9»)) + (X1 c4 c5 c6) /* suspended on X2, X1 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.9 elpi.tests.test_HOAS.8} |= + Set <= elpi.tests.test_HOAS.8 + elpi.tests.test_HOAS.8 <= elpi.tests.test_HOAS.8 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α3 := Type + α4 +WEAK CONSTRAINTS: + + +---------------------------------- + {c0 c1} : decl c1 `a` (global (indt «bool»)) + ?- evar X0 (sort (typ «elpi.tests.test_HOAS.10»)) X1 /* suspended on X0, X1 */ + {c0 c1} : decl c1 `a` (global (indt «bool»)) ?- evar (X2 c1) X1 (X2 c1) /* suspended on X2 */ +EVARS: + ?X10==[ |- Type] (internal placeholder) {?elpi_evar} + ?X9==[a |- ?elpi_evar] (internal placeholder) {?e0} + ?X8==[a |- => ?elpi_evar] (internal placeholder) + +SHELF: +FUTURE GOALS STACK:?X10 +?X9 + +Rocq-Elpi mapping: +RAW: +?X9 <-> c0 \ X2 c0 +?X10 <-> X0 +ELAB: +?X9 <-> X2 +?X10 <-> X1 + +X2 c0 : X1 +Query assignments: + TY = X1 + X = c0 \ c1 \ +X2 c0 +Syntactic constraints: + {c0 c1} : decl c1 `a` (global (indt «bool»)) + ?- evar X0 (sort (typ «elpi.tests.test_HOAS.10»)) X1 /* suspended on X0, X1 */ + {c0 c1} : decl c1 `a` (global (indt «bool»)) ?- evar (X2 c1) X1 (X2 c1) /* suspended on X2 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.10} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α5 +WEAK CONSTRAINTS: + + +Raw term: +app + [global (const «add»), primitive (uint63 2000000003333002), + primitive (uint63 1)] +Nice term: (2000000003333002 + 1)%uint63 +Red: +2000000003333003%uint63 +Raw term: +app + [global (const «add»), primitive (float64 24000000000000), + primitive (float64 1)] +Nice term: 24000000000000 + 1 +Red: 24000000000001 +Query assignments: + C = «Nat.add» + F = TODO + T = app + [fix `add` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]], + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T1 = app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T2 = app + [fix `plus` 0 + (prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ + fun `n` (global (indt «nat»)) c1 \ + fun `m` (global (indt «nat»)) c2 \ + match c1 + (fun `_elpi_renamed_n_3` (global (indt «nat»)) c3 \ + global (indt «nat»)) + [c2, + fun `p` (global (indt «nat»)) c3 \ + app [global (indc «S»), app [c0, c3, c2]]], + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + X10_ = c0 \ c1 \ c2 \ +global (indt «nat») + X4_ = global (indt «nat») + X5_ = c0 \ +global (indt «nat») + X6_ = c0 \ c1 \ +global (indt «nat») + X7_ = c0 \ +global (indt «nat») + X8_ = c0 \ c1 \ +global (indt «nat») + X9_ = c0 \ c1 \ c2 \ c3 \ +global (indt «nat») +Query assignments: + C = «Nat.add» + F = TODO + T = app + [fun `n` (global (indt «nat»)) c0 \ + fun `m` (global (indt «nat»)) c1 \ + match c0 (fun `n` (global (indt «nat»)) c2 \ global (indt «nat»)) + [c1, + fun `p` (global (indt «nat»)) c2 \ + app + [global (indc «S»), + app + [fix `add` 0 + (prod `n` (global (indt «nat»)) c3 \ + prod `m` (global (indt «nat»)) c4 \ global (indt «nat»)) + c3 \ + fun `n` (global (indt «nat»)) c4 \ + fun `m` (global (indt «nat»)) c5 \ + match c4 + (fun `n` (global (indt «nat»)) c6 \ global (indt «nat»)) + [c5, + fun `p` (global (indt «nat»)) c6 \ + app [global (indc «S»), app [c3, c6, c5]]], c2, c1]]], + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T1 = app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T2 = app + [fun `n` (global (indt «nat»)) c0 \ + fun `m` (global (indt «nat»)) c1 \ + match c0 + (fun `_elpi_renamed_n_2` (global (indt «nat»)) c2 \ + global (indt «nat»)) + [c1, + fun `p` (global (indt «nat»)) c2 \ + app + [global (indc «S»), + app + [fix `plus` 0 + (prod `_elpi_renamed_n_3` (global (indt «nat»)) c3 \ + prod `_elpi_renamed_m_4` (global (indt «nat»)) c4 \ + global (indt «nat»)) c3 \ + fun `_elpi_renamed_n_4` (global (indt «nat»)) c4 \ + fun `_elpi_renamed_m_5` (global (indt «nat»)) c5 \ + match c4 + (fun `_elpi_renamed_n_6` (global (indt «nat»)) c6 \ + global (indt «nat»)) + [c5, + fun `_elpi_renamed_p_6` (global (indt «nat»)) c6 \ + app [global (indc «S»), app [c3, c6, c5]]], c2, c1]]], + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + X11_ = global (indt «nat») + X12_ = c0 \ +global (indt «nat») + X13_ = c0 \ c1 \ c2 \ +global (indt «nat») + X14_ = c0 \ c1 \ +global (indt «nat») + X15_ = c0 \ c1 \ c2 \ +global (indt «nat») + X16_ = c0 \ c1 \ c2 \ c3 \ +global (indt «nat») + X17_ = c0 \ c1 \ c2 \ c3 \ c4 \ +global (indt «nat») + X18_ = c0 \ c1 \ c2 \ c3 \ +global (indt «nat») + X19_ = c0 \ c1 \ c2 \ c3 \ c4 \ +global (indt «nat») + X20_ = c0 \ c1 \ c2 \ c3 \ c4 \ c5 \ c6 \ +global (indt «nat») + X21_ = c0 \ c1 \ c2 \ c3 \ c4 \ c5 \ +global (indt «nat») +Query assignments: + C = «Nat.add» + F = TODO + T = match (app [global (indc «S»), global (indc «O»)]) + (fun `n` (global (indt «nat»)) c0 \ global (indt «nat»)) + [app [global (indc «S»), app [global (indc «S»), global (indc «O»)]], + fun `p` (global (indt «nat»)) c0 \ + app + [global (indc «S»), + app + [fix `add` 0 + (prod `n` (global (indt «nat»)) c1 \ + prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) c1 \ + fun `n` (global (indt «nat»)) c2 \ + fun `m` (global (indt «nat»)) c3 \ + match c2 + (fun `n` (global (indt «nat»)) c4 \ global (indt «nat»)) + [c3, + fun `p` (global (indt «nat»)) c4 \ + app [global (indc «S»), app [c1, c4, c3]]], c0, + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]]] + T1 = app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T2 = match (app [global (indc «S»), global (indc «O»)]) + (fun `_` (global (indt «nat»)) c0 \ global (indt «nat»)) + [app [global (indc «S»), app [global (indc «S»), global (indc «O»)]], + fun `p` (global (indt «nat»)) c0 \ + app + [global (indc «S»), + app + [fix `plus` 0 + (prod `n` (global (indt «nat»)) c1 \ + prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) c1 \ + fun `n` (global (indt «nat»)) c2 \ + fun `m` (global (indt «nat»)) c3 \ + match c2 + (fun `_elpi_renamed_n_4` (global (indt «nat»)) c4 \ + global (indt «nat»)) + [c3, + fun `_elpi_renamed_p_4` (global (indt «nat»)) c4 \ + app [global (indc «S»), app [c1, c4, c3]]], c0, + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]]] + X22_ = global (indt «nat») + X23_ = global (indt «nat») + X24_ = c0 \ +global (indt «nat») + X25_ = c0 \ c1 \ +global (indt «nat») + X26_ = c0 \ c1 \ c2 \ +global (indt «nat») + X27_ = c0 \ c1 \ +global (indt «nat») + X28_ = c0 \ c1 \ c2 \ +global (indt «nat») + X29_ = c0 \ c1 \ c2 \ c3 \ c4 \ +global (indt «nat») + X30_ = c0 \ c1 \ c2 \ c3 \ +global (indt «nat») +Query assignments: + C = «Nat.add» + F = TODO + T = app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T1 = app + [global (const «Nat.add»), + app [global (indc «S»), global (indc «O»)], + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] + T2 = app + [global (indc «S»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] +Query assignments: + C = «proj1» +Query assignments: + C = «proj1» + P = elpi.tests.test_HOAS.P''.proj1 +elpi.tests.test_HOAS.P.p1 1 global (const «P.x») +@P.p1 +X0 global (const «P.x») +P.p1 P.x +some + (fun `A` (sort (typ «P.foo.u0»)) c0 \ + fun `f` (app [global (indt «P.foo»), c0]) c1 \ + app [primitive (proj elpi.tests.test_HOAS.P.p1 1), c1]) +elpi.tests.test_HOAS.P.p2 2 global (const «P.x») +@P.p2 +X0 global (const «P.x») +P.p2 P.x +some + (fun `A` (sort (typ «P.foo.u0»)) c0 \ + fun `f` (app [global (indt «P.foo»), c0]) c1 \ + app [primitive (proj elpi.tests.test_HOAS.P.p1 1), c1]) +some + (pglobal (const «toto») + «elpi.tests.test_HOAS.23 elpi.tests.test_HOAS.24») +prod `T1` (sort (typ «elpi.tests.test_HOAS.23»)) c0 \ + prod `T2` (sort (typ «elpi.tests.test_HOAS.24»)) c1 \ prod `x` c0 c2 \ c0 +Query assignments: + Body = some + (pglobal (const «toto») + «elpi.tests.test_HOAS.23 elpi.tests.test_HOAS.24») + C = «titi» + Term = prod `T1` (sort (typ «elpi.tests.test_HOAS.23»)) c0 \ + prod `T2` (sort (typ «elpi.tests.test_HOAS.24»)) c1 \ prod `x` c0 c2 \ c0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.24 elpi.tests.test_HOAS.23} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.24 + elpi.tests.test_HOAS.23 +SORTS: + +WEAK CONSTRAINTS: + + +pglobal (const «toto») X0 +pglobal (const «toto») «u1 u2» +toto +Query assignments: + %arg1 = toto + X31_ = X0 + X32_ = «elpi.tests.test_HOAS.27 elpi.tests.test_HOAS.28» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.28 elpi.tests.test_HOAS.27} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.28 elpi.tests.test_HOAS.27} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.28 + elpi.tests.test_HOAS.27 +SORTS: + +WEAK CONSTRAINTS: + + +app + [pglobal (const «t») X0, global (indt «nat»), + pglobal (const «fnat») X1] +app + [pglobal (const «t») «elpi.tests.test_HOAS.33», global (indt «nat»), + pglobal (const «fnat») «»] +Query assignments: + T = app + [pglobal (const «t») «elpi.tests.test_HOAS.33», global (indt «nat»), + pglobal (const «fnat») «»] + Ty = global (indt «nat») + X33_ = «elpi.tests.test_HOAS.33» + X34_ = «» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.33} |= + Set <= elpi.tests.test_HOAS.33 + Set = elpi.tests.test_HOAS.33 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.33} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.33 := Set +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + Arity = prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ + sort (typ «elpi.tests.test_HOAS.34») + GRF = indt «F» + I = «elpi.tests.test_HOAS.34» + Ind = «F» + K = [«Build_F»] + KTys = [prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ + prod `t` c0 c1 \ app [pglobal (indt «F») «elpi.tests.test_HOAS.34», c0]] + TyF = prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ + sort (typ «elpi.tests.test_HOAS.34») +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.34} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.34} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.34 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + Decl = parameter T explicit (sort (typ «elpi.tests.test_HOAS.35»)) c0 \ + record F (sort (typ «elpi.tests.test_HOAS.35»)) Build_F + (field [coercion off, canonical tt] t c0 c1 \ end-record) + GRF = indt «F» + I = «elpi.tests.test_HOAS.35» + Ind = «F» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.35} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.35} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.35 +SORTS: + +WEAK CONSTRAINTS: + + +«elpi.tests.test_HOAS.36» «elpi.tests.test_HOAS.37» +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.37 + elpi.tests.test_HOAS.36 + SORTS: + + WEAK CONSTRAINTS: + + +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= + elpi.tests.test_HOAS.36 = elpi.tests.test_HOAS.37 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.37 + elpi.tests.test_HOAS.36 := elpi.tests.test_HOAS.37 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + GRF = indt «F» + I1 = «elpi.tests.test_HOAS.36» + I2 = «elpi.tests.test_HOAS.37» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= + elpi.tests.test_HOAS.36 = elpi.tests.test_HOAS.37 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.37 + elpi.tests.test_HOAS.36 := elpi.tests.test_HOAS.37 +SORTS: + +WEAK CONSTRAINTS: + + +«elpi.tests.test_HOAS.38» «» +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.38} |= + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.38} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.38 + SORTS: + + WEAK CONSTRAINTS: + + +different universe instance lengths +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.38} |= + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.38} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.38 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + E = different universe instance lengths + GRF = indt «F» + GRfnat = const «fnat» + I1 = «elpi.tests.test_HOAS.38» + I2 = «» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.38} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.38} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.38 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + GRF = indt «F» + I1 = «elpi.tests.test_HOAS.39» + I2 = «elpi.tests.test_HOAS.39» + U = «elpi.tests.test_HOAS.39» + UL1 = [«elpi.tests.test_HOAS.39»] +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.39} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.39} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.39 +SORTS: + +WEAK CONSTRAINTS: + + +Cannot enforce elpi.tests.test_HOAS.40 = elpi.tests.test_HOAS.41 because +elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 +Query assignments: + E = Cannot enforce elpi.tests.test_HOAS.40 = elpi.tests.test_HOAS.41 because +elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 + GRF = indt «F» + I1 = «elpi.tests.test_HOAS.40» + I2 = «elpi.tests.test_HOAS.41» + L1 = «elpi.tests.test_HOAS.40» + L2 = «elpi.tests.test_HOAS.41» + U1 = «elpi.tests.test_HOAS.40» + U2 = «elpi.tests.test_HOAS.41» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.41 elpi.tests.test_HOAS.40} |= + elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.41 elpi.tests.test_HOAS.40} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.41 + elpi.tests.test_HOAS.40 +SORTS: + +WEAK CONSTRAINTS: + + +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} |= + elpi.tests.test_HOAS.44 < elpi.tests.test_HOAS.45 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.45 + elpi.tests.test_HOAS.44 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + GRF = indt «F2» + I1 = «elpi.tests.test_HOAS.44» + I2 = «elpi.tests.test_HOAS.45» + L1 = «elpi.tests.test_HOAS.44» + L2 = «elpi.tests.test_HOAS.45» + U1 = «elpi.tests.test_HOAS.44» + U2 = «elpi.tests.test_HOAS.45» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} |= + elpi.tests.test_HOAS.44 < elpi.tests.test_HOAS.45 + elpi.tests.test_HOAS.44 <= elpi.tests.test_HOAS.45 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.45 + elpi.tests.test_HOAS.44 +SORTS: + +WEAK CONSTRAINTS: + + +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.47 elpi.tests.test_HOAS.46} |= + elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.47} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.47 + elpi.tests.test_HOAS.46 + SORTS: + + WEAK CONSTRAINTS: + + +Cannot enforce elpi.tests.test_HOAS.47 = elpi.tests.test_HOAS.46 because +elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 +Query assignments: + E = Cannot enforce elpi.tests.test_HOAS.47 = elpi.tests.test_HOAS.46 because +elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 + GRF = indt «F» + I1 = «elpi.tests.test_HOAS.46» + I2 = «elpi.tests.test_HOAS.47» + L1 = «elpi.tests.test_HOAS.46» + L2 = «elpi.tests.test_HOAS.47» + U1 = «elpi.tests.test_HOAS.46» + U2 = «elpi.tests.test_HOAS.47» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.47 elpi.tests.test_HOAS.46} |= + elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.47} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.47 + elpi.tests.test_HOAS.46 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + GR = indt «nat» +Query assignments: + GR = indt «F» + I = «elpi.tests.test_HOAS.48» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.48} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.48 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + GR = indt «F» +pglobal (indt «F») «elpi.tests.test_HOAS.50» +Query assignments: + %arg1 = pglobal (indt «F») «elpi.tests.test_HOAS.50» + GR = indt «F» + I = «elpi.tests.test_HOAS.50» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.50} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.50 +SORTS: + +WEAK CONSTRAINTS: + + +«elpi.tests.test_HOAS.51 elpi.tests.test_HOAS.51» +Query assignments: + I = «elpi.tests.test_HOAS.51 elpi.tests.test_HOAS.51» + U = «elpi.tests.test_HOAS.51» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.51} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Universe constraints: +------------------ +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= + elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.53 + elpi.tests.test_HOAS.52 + SORTS: + + WEAK CONSTRAINTS: + + +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= + elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.53 + elpi.tests.test_HOAS.52 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + Body = sort (typ «elpi.tests.test_HOAS.52») + LX = «elpi.tests.test_HOAS.52» + LY = «elpi.tests.test_HOAS.53» + Type = sort (typ «elpi.tests.test_HOAS.53») + UX = «elpi.tests.test_HOAS.52» + UY = «elpi.tests.test_HOAS.53» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= + elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.53 + elpi.tests.test_HOAS.52 +SORTS: + +WEAK CONSTRAINTS: + + +poly@{u u0} : Type@{u0} +(* u u0 |= u < u0 *) + +poly is universe polymorphic +poly is transparent +Expands to: Constant elpi.tests.test_HOAS.poly +poly@{Set +elpi.tests.test_HOAS.54} + : Type@{elpi.tests.test_HOAS.54} +(* {elpi.tests.test_HOAS.54} |= Set < elpi.tests.test_HOAS.54 *) +Box not a defined object. +sort (typ «Set») +Query assignments: + U = «elpi.tests.test_HOAS.55» +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.55} |= Set = elpi.tests.test_HOAS.55 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.55} +FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.55 := Set +SORTS: + +WEAK CONSTRAINTS: + + +Inductive tree@{u} (A : Type@{u}) : Type@{max(Set,u)} := + leaf : A -> tree@{u} A | node : A -> list (tree@{u} A) -> tree@{u} A. +(* u |= Set <= list.u0 + u <= list.u0 *) + +Arguments tree A%type_scope +Arguments leaf A%type_scope _ +Arguments node A%type_scope _ _%list_scope +parameter A explicit (sort (typ «elpi.tests.test_HOAS.64»)) c0 \ + inductive tree tt (arity (sort (typ «elpi.tests.test_HOAS.65»))) c1 \ + [constructor leaf (arity (prod `_` c0 c2 \ c1)), + constructor node + (arity + (prod `_` c0 c2 \ prod `_` (app [global (indt «list»), c1]) c3 \ c1))] +Universe constraints: UNIVERSES: + {elpi.tests.test_HOAS.69 elpi.tests.test_HOAS.68 + elpi.tests.test_HOAS.67 elpi.tests.test_HOAS.66 + elpi.tests.test_HOAS.65 elpi.tests.test_HOAS.64} |= + elpi.tests.test_HOAS.64 < elpi.tests.test_HOAS.66 + elpi.tests.test_HOAS.65 < elpi.tests.test_HOAS.67 + Set <= list.u0 + Set <= elpi.tests.test_HOAS.65 + Set <= elpi.tests.test_HOAS.69 + elpi.tests.test_HOAS.64 <= list.u0 + elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.65 + elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.68 + elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.69 + elpi.tests.test_HOAS.65 <= list.u0 + elpi.tests.test_HOAS.65 <= elpi.tests.test_HOAS.68 + elpi.tests.test_HOAS.65 <= elpi.tests.test_HOAS.69 + elpi.tests.test_HOAS.68 <= elpi.tests.test_HOAS.65 + elpi.tests.test_HOAS.69 <= elpi.tests.test_HOAS.65 + ALGEBRAIC UNIVERSES: + {elpi.tests.test_HOAS.64} + FLEXIBLE UNIVERSES: + elpi.tests.test_HOAS.64 + SORTS: + + WEAK CONSTRAINTS: + + +Query assignments: + D = parameter A explicit (sort (typ «M.tree.u0»)) c0 \ + inductive tree tt (arity (sort (typ «M.tree.u1»))) c1 \ + [constructor leaf (arity (prod `_` c0 c2 \ c1)), + constructor node + (arity + (prod `_` c0 c2 \ prod `_` (app [global (indt «list»), c1]) c3 \ c1))] + I = «tree» + X35_ = X0 +Universe constraints: +UNIVERSES: + {elpi.tests.test_HOAS.69 elpi.tests.test_HOAS.68 elpi.tests.test_HOAS.67 + elpi.tests.test_HOAS.66} |= + M.tree.u0 < elpi.tests.test_HOAS.66 + M.tree.u1 < elpi.tests.test_HOAS.67 + Set <= elpi.tests.test_HOAS.69 + M.tree.u0 <= elpi.tests.test_HOAS.68 + M.tree.u0 <= elpi.tests.test_HOAS.69 + M.tree.u1 <= elpi.tests.test_HOAS.68 + M.tree.u1 <= elpi.tests.test_HOAS.69 + elpi.tests.test_HOAS.68 <= M.tree.u1 + elpi.tests.test_HOAS.69 <= M.tree.u1 +ALGEBRAIC UNIVERSES: + {M.tree.u0} +FLEXIBLE UNIVERSES: + M.tree.u0 +SORTS: + +WEAK CONSTRAINTS: + + +File "./tests/test_HOAS.v", line 94, characters 46-61: +Warning: +File "./tests/test_HOAS.v", line 94, characters 46-61 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 101, characters 19-24: +Warning: +File "./tests/test_HOAS.v", line 101, characters 19-24 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 127, characters 0-40: +Warning: Use of “Require” inside a module is fragile. It is not recommended +to use this functionality in finished proof scripts. +[require-in-module,fragile,default] +File "./tests/test_HOAS.v", line 130, characters 0-40: +Warning: Use of “Require” inside a module is fragile. It is not recommended +to use this functionality in finished proof scripts. +[require-in-module,fragile,default] +File "./tests/test_HOAS.v", line 306, characters 18-20: +Warning: +File "./tests/test_HOAS.v", line 306, characters 18-20 +Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 320, characters 43-48: +Warning: +File "./tests/test_HOAS.v", line 320, characters 43-48 +Arity is linear: name it _Arity (discard) or Arity_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 320, characters 49-50: +Warning: +File "./tests/test_HOAS.v", line 320, characters 49-50 +K is linear: name it _K (discard) or K_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 320, characters 51-55: +Warning: +File "./tests/test_HOAS.v", line 320, characters 51-55 +KTys is linear: name it _KTys (discard) or KTys_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 316, characters 32-35: +Warning: +File "./tests/test_HOAS.v", line 316, characters 32-35 +TyF is linear: name it _TyF (discard) or TyF_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 467, characters 42-46: +Warning: +File "./tests/test_HOAS.v", line 467, characters 42-46 +Decl is linear: name it _Decl (discard) or Decl_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "coq-builtin.elpi", line 461, characters 50-51: +Warning: +File "coq-builtin.elpi", line 461, characters 50-51 +I is linear: name it _I (discard) or I_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 506, characters 20-22: +Warning: +File "./tests/test_HOAS.v", line 506, characters 20-22 +I2 is linear: name it _I2 (discard) or I2_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 504, characters 23-26: +Warning: +File "./tests/test_HOAS.v", line 504, characters 23-26 +UL1 is linear: name it _UL1 (discard) or UL1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 558, characters 32-33: +Warning: +File "./tests/test_HOAS.v", line 558, characters 32-33 +I is linear: name it _I (discard) or I_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "coq-builtin.elpi", line 461, characters 50-51: +Warning: +File "coq-builtin.elpi", line 461, characters 50-51 +I is linear: name it _I (discard) or I_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_HOAS.v", line 629, characters 36-37: +Warning: +File "./tests/test_HOAS.v", line 629, characters 36-37 +U is linear: name it _U (discard) or U_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] nabla c1 \ seal (goal [decl c1 `P` (sort prop)] (app [global (const «id»), X0, X1]) @@ -15059,7 +16055,7 @@ Debug: rid:0 step:4 gid:8 user:rule:backchain:candidates = File "coq-builtin.elpi", line 270, column 0, characters 10866-10986: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.008s) Debug: select 5 {{{ Debug: @@ -15432,7 +16428,7 @@ Debug: rid:4 step:103 gid:241 user:rule:backchain = success -Debug: }}} -> (0.005s) +Debug: }}} -> (0.001s) Debug: run 104 {{{ Debug: @@ -15850,7 +16846,7 @@ Debug: rid:4 step:109 gid:246 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.009s) Debug: run 110 {{{ Debug: @@ -16290,966 +17286,6 @@ File "./tests/test_tactic.v", line 5, characters 28-32 Type is linear: name it _Type (discard) or Type_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -1 - : nat - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X0 c0) - (prod `_` (global (indt «bool»)) c1 \ global (indt «True»)) - (X1 c0) /* suspended on X0, X1 */ -EVARS: - ?X2==[x |- bool -> True] (goal evar) {?Goal} - ?X1==[ |- => fun x : nat => ?Goal] (goal evar) - -SHELF:|| -FUTURE GOALS STACK: - || - -Rocq-Elpi mapping: -RAW: -?X2 <-> c0 \ X0 c0 -ELAB: -?X2 <-> X1 - -Debug: - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X0 c0) - (prod `_` (global (indt «bool»)) c1 \ global (indt «True»)) - (X1 c0) /* suspended on X0, X1 */ -H -[nabla c1 \ - seal - (goal - [decl c1 `H` - (prod `b` - (prod `b` (global (indt «bool»)) c2 \ - app [global (indt «eq»), global (indt «bool»), c2, c2]) c2 \ - global (indt «True»))] (X0 c1) - (prod `b` (global (indt «bool»)) c2 \ - app [global (indt «eq»), global (indt «bool»), c2, c2]) (X1 c1) [])] -[str fun, str in, str as, int 4, str end, str match, str return, str =>, - str :, str :=, str {, str }, str ;, str ,, str |, str x, int 1, str H, - trm - (fun `x` (global (indt «False»)) c0 \ - match c0 (fun `y` (global (indt «False»)) c1 \ global (indt «nat»)) - [])] -Query assignments: - T = sort (typ «elpi.tests.test_HOAS.3») - U = «elpi.tests.test_HOAS.3» -Query assignments: - U = «elpi.tests.test_HOAS.4» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.4} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - U = «foo» -Query assignments: - X = c0 \ c1 \ c2 \ -X0 c0 c1 c2 - X3_ = global (indt «nat») -Syntactic constraints: - {c0 c1 c2 c3 c4 c5 c6} : - decl c6 `z` (app [global (const «N»), c5]), - decl c5 `x` (global (indt «nat»)), - decl c4 `a` (global (indt «bool»)) - ?- evar (X0 c4 c5 c6) (X1 c4 c5 c6) (X0 c4 c5 c6) /* suspended on X0 */ - {c0 c1 c2 c3 c4 c5 c6} : - decl c6 `z` (app [global (const «N»), c5]), - decl c5 `x` (global (indt «nat»)), - decl c4 `a` (global (indt «bool»)) - ?- evar (X2 c4 c5 c6) (sort (typ «elpi.tests.test_HOAS.9»)) - (X1 c4 c5 c6) /* suspended on X2, X1 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.9 elpi.tests.test_HOAS.8} |= - Set <= elpi.tests.test_HOAS.8 - elpi.tests.test_HOAS.8 <= elpi.tests.test_HOAS.8 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α3 := Type - α4 -WEAK CONSTRAINTS: - - ----------------------------------- - {c0 c1} : decl c1 `a` (global (indt «bool»)) - ?- evar X0 (sort (typ «elpi.tests.test_HOAS.10»)) X1 /* suspended on X0, X1 */ - {c0 c1} : decl c1 `a` (global (indt «bool»)) ?- evar (X2 c1) X1 (X2 c1) /* suspended on X2 */ -EVARS: - ?X10==[ |- Type] (internal placeholder) {?elpi_evar} - ?X9==[a |- ?elpi_evar] (internal placeholder) {?e0} - ?X8==[a |- => ?elpi_evar] (internal placeholder) - -SHELF: -FUTURE GOALS STACK:?X10 -?X9 - -Rocq-Elpi mapping: -RAW: -?X9 <-> c0 \ X2 c0 -?X10 <-> X0 -ELAB: -?X9 <-> X2 -?X10 <-> X1 - -X2 c0 : X1 -Query assignments: - TY = X1 - X = c0 \ c1 \ -X2 c0 -Syntactic constraints: - {c0 c1} : decl c1 `a` (global (indt «bool»)) - ?- evar X0 (sort (typ «elpi.tests.test_HOAS.10»)) X1 /* suspended on X0, X1 */ - {c0 c1} : decl c1 `a` (global (indt «bool»)) ?- evar (X2 c1) X1 (X2 c1) /* suspended on X2 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.10} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α5 -WEAK CONSTRAINTS: - - -Raw term: -app - [global (const «add»), primitive (uint63 2000000003333002), - primitive (uint63 1)] -Nice term: (2000000003333002 + 1)%uint63 -Red: -2000000003333003%uint63 -Raw term: -app - [global (const «add»), primitive (float64 24000000000000), - primitive (float64 1)] -Nice term: 24000000000000 + 1 -Red: 24000000000001 -Query assignments: - C = «Nat.add» - F = TODO - T = app - [fix `add` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 (fun `n` (global (indt «nat»)) c3 \ global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]], - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T1 = app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T2 = app - [fix `plus` 0 - (prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat»)) c0 \ - fun `n` (global (indt «nat»)) c1 \ - fun `m` (global (indt «nat»)) c2 \ - match c1 - (fun `_elpi_renamed_n_3` (global (indt «nat»)) c3 \ - global (indt «nat»)) - [c2, - fun `p` (global (indt «nat»)) c3 \ - app [global (indc «S»), app [c0, c3, c2]]], - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - X10_ = c0 \ c1 \ c2 \ -global (indt «nat») - X4_ = global (indt «nat») - X5_ = c0 \ -global (indt «nat») - X6_ = c0 \ c1 \ -global (indt «nat») - X7_ = c0 \ -global (indt «nat») - X8_ = c0 \ c1 \ -global (indt «nat») - X9_ = c0 \ c1 \ c2 \ c3 \ -global (indt «nat») -Query assignments: - C = «Nat.add» - F = TODO - T = app - [fun `n` (global (indt «nat»)) c0 \ - fun `m` (global (indt «nat»)) c1 \ - match c0 (fun `n` (global (indt «nat»)) c2 \ global (indt «nat»)) - [c1, - fun `p` (global (indt «nat»)) c2 \ - app - [global (indc «S»), - app - [fix `add` 0 - (prod `n` (global (indt «nat»)) c3 \ - prod `m` (global (indt «nat»)) c4 \ global (indt «nat»)) - c3 \ - fun `n` (global (indt «nat»)) c4 \ - fun `m` (global (indt «nat»)) c5 \ - match c4 - (fun `n` (global (indt «nat»)) c6 \ global (indt «nat»)) - [c5, - fun `p` (global (indt «nat»)) c6 \ - app [global (indc «S»), app [c3, c6, c5]]], c2, c1]]], - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T1 = app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T2 = app - [fun `n` (global (indt «nat»)) c0 \ - fun `m` (global (indt «nat»)) c1 \ - match c0 - (fun `_elpi_renamed_n_2` (global (indt «nat»)) c2 \ - global (indt «nat»)) - [c1, - fun `p` (global (indt «nat»)) c2 \ - app - [global (indc «S»), - app - [fix `plus` 0 - (prod `_elpi_renamed_n_3` (global (indt «nat»)) c3 \ - prod `_elpi_renamed_m_4` (global (indt «nat»)) c4 \ - global (indt «nat»)) c3 \ - fun `_elpi_renamed_n_4` (global (indt «nat»)) c4 \ - fun `_elpi_renamed_m_5` (global (indt «nat»)) c5 \ - match c4 - (fun `_elpi_renamed_n_6` (global (indt «nat»)) c6 \ - global (indt «nat»)) - [c5, - fun `_elpi_renamed_p_6` (global (indt «nat»)) c6 \ - app [global (indc «S»), app [c3, c6, c5]]], c2, c1]]], - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - X11_ = global (indt «nat») - X12_ = c0 \ -global (indt «nat») - X13_ = c0 \ c1 \ c2 \ -global (indt «nat») - X14_ = c0 \ c1 \ -global (indt «nat») - X15_ = c0 \ c1 \ c2 \ -global (indt «nat») - X16_ = c0 \ c1 \ c2 \ c3 \ -global (indt «nat») - X17_ = c0 \ c1 \ c2 \ c3 \ c4 \ -global (indt «nat») - X18_ = c0 \ c1 \ c2 \ c3 \ -global (indt «nat») - X19_ = c0 \ c1 \ c2 \ c3 \ c4 \ -global (indt «nat») - X20_ = c0 \ c1 \ c2 \ c3 \ c4 \ c5 \ c6 \ -global (indt «nat») - X21_ = c0 \ c1 \ c2 \ c3 \ c4 \ c5 \ -global (indt «nat») -Query assignments: - C = «Nat.add» - F = TODO - T = match (app [global (indc «S»), global (indc «O»)]) - (fun `n` (global (indt «nat»)) c0 \ global (indt «nat»)) - [app [global (indc «S»), app [global (indc «S»), global (indc «O»)]], - fun `p` (global (indt «nat»)) c0 \ - app - [global (indc «S»), - app - [fix `add` 0 - (prod `n` (global (indt «nat»)) c1 \ - prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) c1 \ - fun `n` (global (indt «nat»)) c2 \ - fun `m` (global (indt «nat»)) c3 \ - match c2 - (fun `n` (global (indt «nat»)) c4 \ global (indt «nat»)) - [c3, - fun `p` (global (indt «nat»)) c4 \ - app [global (indc «S»), app [c1, c4, c3]]], c0, - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]]] - T1 = app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T2 = match (app [global (indc «S»), global (indc «O»)]) - (fun `_` (global (indt «nat»)) c0 \ global (indt «nat»)) - [app [global (indc «S»), app [global (indc «S»), global (indc «O»)]], - fun `p` (global (indt «nat»)) c0 \ - app - [global (indc «S»), - app - [fix `plus` 0 - (prod `n` (global (indt «nat»)) c1 \ - prod `m` (global (indt «nat»)) c2 \ global (indt «nat»)) c1 \ - fun `n` (global (indt «nat»)) c2 \ - fun `m` (global (indt «nat»)) c3 \ - match c2 - (fun `_elpi_renamed_n_4` (global (indt «nat»)) c4 \ - global (indt «nat»)) - [c3, - fun `_elpi_renamed_p_4` (global (indt «nat»)) c4 \ - app [global (indc «S»), app [c1, c4, c3]]], c0, - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]]] - X22_ = global (indt «nat») - X23_ = global (indt «nat») - X24_ = c0 \ -global (indt «nat») - X25_ = c0 \ c1 \ -global (indt «nat») - X26_ = c0 \ c1 \ c2 \ -global (indt «nat») - X27_ = c0 \ c1 \ -global (indt «nat») - X28_ = c0 \ c1 \ c2 \ -global (indt «nat») - X29_ = c0 \ c1 \ c2 \ c3 \ c4 \ -global (indt «nat») - X30_ = c0 \ c1 \ c2 \ c3 \ -global (indt «nat») -Query assignments: - C = «Nat.add» - F = TODO - T = app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T1 = app - [global (const «Nat.add»), - app [global (indc «S»), global (indc «O»)], - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] - T2 = app - [global (indc «S»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] -Query assignments: - C = «proj1» -Query assignments: - C = «proj1» - P = elpi.tests.test_HOAS.P''.proj1 -elpi.tests.test_HOAS.P.p1 1 global (const «P.x») -@P.p1 -X0 global (const «P.x») -P.p1 P.x -some - (fun `A` (sort (typ «P.foo.u0»)) c0 \ - fun `f` (app [global (indt «P.foo»), c0]) c1 \ - app [primitive (proj elpi.tests.test_HOAS.P.p1 1), c1]) -elpi.tests.test_HOAS.P.p2 2 global (const «P.x») -@P.p2 -X0 global (const «P.x») -P.p2 P.x -some - (fun `A` (sort (typ «P.foo.u0»)) c0 \ - fun `f` (app [global (indt «P.foo»), c0]) c1 \ - app [primitive (proj elpi.tests.test_HOAS.P.p1 1), c1]) -some - (pglobal (const «toto») - «elpi.tests.test_HOAS.23 elpi.tests.test_HOAS.24») -prod `T1` (sort (typ «elpi.tests.test_HOAS.23»)) c0 \ - prod `T2` (sort (typ «elpi.tests.test_HOAS.24»)) c1 \ prod `x` c0 c2 \ c0 -Query assignments: - Body = some - (pglobal (const «toto») - «elpi.tests.test_HOAS.23 elpi.tests.test_HOAS.24») - C = «titi» - Term = prod `T1` (sort (typ «elpi.tests.test_HOAS.23»)) c0 \ - prod `T2` (sort (typ «elpi.tests.test_HOAS.24»)) c1 \ prod `x` c0 c2 \ c0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.24 elpi.tests.test_HOAS.23} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.24 - elpi.tests.test_HOAS.23 -SORTS: - -WEAK CONSTRAINTS: - - -pglobal (const «toto») X0 -pglobal (const «toto») «u1 u2» -toto -Query assignments: - %arg1 = toto - X31_ = X0 - X32_ = «elpi.tests.test_HOAS.27 elpi.tests.test_HOAS.28» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.28 elpi.tests.test_HOAS.27} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.28 elpi.tests.test_HOAS.27} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.28 - elpi.tests.test_HOAS.27 -SORTS: - -WEAK CONSTRAINTS: - - -app - [pglobal (const «t») X0, global (indt «nat»), - pglobal (const «fnat») X1] -app - [pglobal (const «t») «elpi.tests.test_HOAS.33», global (indt «nat»), - pglobal (const «fnat») «»] -Query assignments: - T = app - [pglobal (const «t») «elpi.tests.test_HOAS.33», global (indt «nat»), - pglobal (const «fnat») «»] - Ty = global (indt «nat») - X33_ = «elpi.tests.test_HOAS.33» - X34_ = «» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.33} |= - Set <= elpi.tests.test_HOAS.33 - Set = elpi.tests.test_HOAS.33 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.33} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.33 := Set -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - Arity = prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ - sort (typ «elpi.tests.test_HOAS.34») - GRF = indt «F» - I = «elpi.tests.test_HOAS.34» - Ind = «F» - K = [«Build_F»] - KTys = [prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ - prod `t` c0 c1 \ app [pglobal (indt «F») «elpi.tests.test_HOAS.34», c0]] - TyF = prod `T` (sort (typ «elpi.tests.test_HOAS.34»)) c0 \ - sort (typ «elpi.tests.test_HOAS.34») -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.34} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.34} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.34 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - Decl = parameter T explicit (sort (typ «elpi.tests.test_HOAS.35»)) c0 \ - record F (sort (typ «elpi.tests.test_HOAS.35»)) Build_F - (field [coercion off, canonical tt] t c0 c1 \ end-record) - GRF = indt «F» - I = «elpi.tests.test_HOAS.35» - Ind = «F» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.35} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.35} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.35 -SORTS: - -WEAK CONSTRAINTS: - - -«elpi.tests.test_HOAS.36» «elpi.tests.test_HOAS.37» -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.37 - elpi.tests.test_HOAS.36 - SORTS: - - WEAK CONSTRAINTS: - - -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= - elpi.tests.test_HOAS.36 = elpi.tests.test_HOAS.37 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.37 - elpi.tests.test_HOAS.36 := elpi.tests.test_HOAS.37 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - GRF = indt «F» - I1 = «elpi.tests.test_HOAS.36» - I2 = «elpi.tests.test_HOAS.37» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} |= - elpi.tests.test_HOAS.36 = elpi.tests.test_HOAS.37 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.37 elpi.tests.test_HOAS.36} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.37 - elpi.tests.test_HOAS.36 := elpi.tests.test_HOAS.37 -SORTS: - -WEAK CONSTRAINTS: - - -«elpi.tests.test_HOAS.38» «» -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.38} |= - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.38} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.38 - SORTS: - - WEAK CONSTRAINTS: - - -different universe instance lengths -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.38} |= - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.38} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.38 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - E = different universe instance lengths - GRF = indt «F» - GRfnat = const «fnat» - I1 = «elpi.tests.test_HOAS.38» - I2 = «» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.38} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.38} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.38 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - GRF = indt «F» - I1 = «elpi.tests.test_HOAS.39» - I2 = «elpi.tests.test_HOAS.39» - U = «elpi.tests.test_HOAS.39» - UL1 = [«elpi.tests.test_HOAS.39»] -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.39} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.39} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.39 -SORTS: - -WEAK CONSTRAINTS: - - -Cannot enforce elpi.tests.test_HOAS.40 = elpi.tests.test_HOAS.41 because -elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 -Query assignments: - E = Cannot enforce elpi.tests.test_HOAS.40 = elpi.tests.test_HOAS.41 because -elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 - GRF = indt «F» - I1 = «elpi.tests.test_HOAS.40» - I2 = «elpi.tests.test_HOAS.41» - L1 = «elpi.tests.test_HOAS.40» - L2 = «elpi.tests.test_HOAS.41» - U1 = «elpi.tests.test_HOAS.40» - U2 = «elpi.tests.test_HOAS.41» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.41 elpi.tests.test_HOAS.40} |= - elpi.tests.test_HOAS.40 < elpi.tests.test_HOAS.41 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.41 elpi.tests.test_HOAS.40} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.41 - elpi.tests.test_HOAS.40 -SORTS: - -WEAK CONSTRAINTS: - - -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} |= - elpi.tests.test_HOAS.44 < elpi.tests.test_HOAS.45 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.45 - elpi.tests.test_HOAS.44 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - GRF = indt «F2» - I1 = «elpi.tests.test_HOAS.44» - I2 = «elpi.tests.test_HOAS.45» - L1 = «elpi.tests.test_HOAS.44» - L2 = «elpi.tests.test_HOAS.45» - U1 = «elpi.tests.test_HOAS.44» - U2 = «elpi.tests.test_HOAS.45» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} |= - elpi.tests.test_HOAS.44 < elpi.tests.test_HOAS.45 - elpi.tests.test_HOAS.44 <= elpi.tests.test_HOAS.45 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.45 elpi.tests.test_HOAS.44} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.45 - elpi.tests.test_HOAS.44 -SORTS: - -WEAK CONSTRAINTS: - - -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.47 elpi.tests.test_HOAS.46} |= - elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.47} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.47 - elpi.tests.test_HOAS.46 - SORTS: - - WEAK CONSTRAINTS: - - -Cannot enforce elpi.tests.test_HOAS.47 = elpi.tests.test_HOAS.46 because -elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 -Query assignments: - E = Cannot enforce elpi.tests.test_HOAS.47 = elpi.tests.test_HOAS.46 because -elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 - GRF = indt «F» - I1 = «elpi.tests.test_HOAS.46» - I2 = «elpi.tests.test_HOAS.47» - L1 = «elpi.tests.test_HOAS.46» - L2 = «elpi.tests.test_HOAS.47» - U1 = «elpi.tests.test_HOAS.46» - U2 = «elpi.tests.test_HOAS.47» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.47 elpi.tests.test_HOAS.46} |= - elpi.tests.test_HOAS.46 < elpi.tests.test_HOAS.47 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.47} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.47 - elpi.tests.test_HOAS.46 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - GR = indt «nat» -Query assignments: - GR = indt «F» - I = «elpi.tests.test_HOAS.48» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.48} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.48 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - GR = indt «F» -pglobal (indt «F») «elpi.tests.test_HOAS.50» -Query assignments: - %arg1 = pglobal (indt «F») «elpi.tests.test_HOAS.50» - GR = indt «F» - I = «elpi.tests.test_HOAS.50» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.50} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.50 -SORTS: - -WEAK CONSTRAINTS: - - -«elpi.tests.test_HOAS.51 elpi.tests.test_HOAS.51» -Query assignments: - I = «elpi.tests.test_HOAS.51 elpi.tests.test_HOAS.51» - U = «elpi.tests.test_HOAS.51» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.51} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Universe constraints: ------------------- -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= - elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.53 - elpi.tests.test_HOAS.52 - SORTS: - - WEAK CONSTRAINTS: - - -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= - elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.53 - elpi.tests.test_HOAS.52 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - Body = sort (typ «elpi.tests.test_HOAS.52») - LX = «elpi.tests.test_HOAS.52» - LY = «elpi.tests.test_HOAS.53» - Type = sort (typ «elpi.tests.test_HOAS.53») - UX = «elpi.tests.test_HOAS.52» - UY = «elpi.tests.test_HOAS.53» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} |= - elpi.tests.test_HOAS.52 < elpi.tests.test_HOAS.53 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.53 elpi.tests.test_HOAS.52} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.53 - elpi.tests.test_HOAS.52 -SORTS: - -WEAK CONSTRAINTS: - - -poly@{u u0} : Type@{u0} -(* u u0 |= u < u0 *) - -poly is universe polymorphic -poly is transparent -Expands to: Constant elpi.tests.test_HOAS.poly -poly@{Set -elpi.tests.test_HOAS.54} - : Type@{elpi.tests.test_HOAS.54} -(* {elpi.tests.test_HOAS.54} |= Set < elpi.tests.test_HOAS.54 *) -Box not a defined object. -sort (typ «Set») -Query assignments: - U = «elpi.tests.test_HOAS.55» -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.55} |= Set = elpi.tests.test_HOAS.55 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.55} -FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.55 := Set -SORTS: - -WEAK CONSTRAINTS: - - -Inductive tree@{u} (A : Type@{u}) : Type@{max(Set,u)} := - leaf : A -> tree@{u} A | node : A -> list (tree@{u} A) -> tree@{u} A. -(* u |= Set <= list.u0 - u <= list.u0 *) - -Arguments tree A%type_scope -Arguments leaf A%type_scope _ -Arguments node A%type_scope _ _%list_scope -parameter A explicit (sort (typ «elpi.tests.test_HOAS.64»)) c0 \ - inductive tree tt (arity (sort (typ «elpi.tests.test_HOAS.65»))) c1 \ - [constructor leaf (arity (prod `_` c0 c2 \ c1)), - constructor node - (arity - (prod `_` c0 c2 \ prod `_` (app [global (indt «list»), c1]) c3 \ c1))] -Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.69 elpi.tests.test_HOAS.68 - elpi.tests.test_HOAS.67 elpi.tests.test_HOAS.66 - elpi.tests.test_HOAS.65 elpi.tests.test_HOAS.64} |= - elpi.tests.test_HOAS.64 < elpi.tests.test_HOAS.66 - elpi.tests.test_HOAS.65 < elpi.tests.test_HOAS.67 - Set <= list.u0 - Set <= elpi.tests.test_HOAS.65 - Set <= elpi.tests.test_HOAS.69 - elpi.tests.test_HOAS.64 <= list.u0 - elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.65 - elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.68 - elpi.tests.test_HOAS.64 <= elpi.tests.test_HOAS.69 - elpi.tests.test_HOAS.65 <= list.u0 - elpi.tests.test_HOAS.65 <= elpi.tests.test_HOAS.68 - elpi.tests.test_HOAS.65 <= elpi.tests.test_HOAS.69 - elpi.tests.test_HOAS.68 <= elpi.tests.test_HOAS.65 - elpi.tests.test_HOAS.69 <= elpi.tests.test_HOAS.65 - ALGEBRAIC UNIVERSES: - {elpi.tests.test_HOAS.64} - FLEXIBLE UNIVERSES: - elpi.tests.test_HOAS.64 - SORTS: - - WEAK CONSTRAINTS: - - -Query assignments: - D = parameter A explicit (sort (typ «M.tree.u0»)) c0 \ - inductive tree tt (arity (sort (typ «M.tree.u1»))) c1 \ - [constructor leaf (arity (prod `_` c0 c2 \ c1)), - constructor node - (arity - (prod `_` c0 c2 \ prod `_` (app [global (indt «list»), c1]) c3 \ c1))] - I = «tree» - X35_ = X0 -Universe constraints: -UNIVERSES: - {elpi.tests.test_HOAS.69 elpi.tests.test_HOAS.68 elpi.tests.test_HOAS.67 - elpi.tests.test_HOAS.66} |= - M.tree.u0 < elpi.tests.test_HOAS.66 - M.tree.u1 < elpi.tests.test_HOAS.67 - Set <= elpi.tests.test_HOAS.69 - M.tree.u0 <= elpi.tests.test_HOAS.68 - M.tree.u0 <= elpi.tests.test_HOAS.69 - M.tree.u1 <= elpi.tests.test_HOAS.68 - M.tree.u1 <= elpi.tests.test_HOAS.69 - elpi.tests.test_HOAS.68 <= M.tree.u1 - elpi.tests.test_HOAS.69 <= M.tree.u1 -ALGEBRAIC UNIVERSES: - {M.tree.u0} -FLEXIBLE UNIVERSES: - M.tree.u0 -SORTS: - -WEAK CONSTRAINTS: - - -File "./tests/test_HOAS.v", line 94, characters 46-61: -Warning: -File "./tests/test_HOAS.v", line 94, characters 46-61 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 101, characters 19-24: -Warning: -File "./tests/test_HOAS.v", line 101, characters 19-24 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 127, characters 0-40: -Warning: Use of “Require” inside a module is fragile. It is not recommended -to use this functionality in finished proof scripts. -[require-in-module,fragile,default] -File "./tests/test_HOAS.v", line 130, characters 0-40: -Warning: Use of “Require” inside a module is fragile. It is not recommended -to use this functionality in finished proof scripts. -[require-in-module,fragile,default] -File "./tests/test_HOAS.v", line 306, characters 18-20: -Warning: -File "./tests/test_HOAS.v", line 306, characters 18-20 -Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 320, characters 43-48: -Warning: -File "./tests/test_HOAS.v", line 320, characters 43-48 -Arity is linear: name it _Arity (discard) or Arity_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 320, characters 49-50: -Warning: -File "./tests/test_HOAS.v", line 320, characters 49-50 -K is linear: name it _K (discard) or K_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 320, characters 51-55: -Warning: -File "./tests/test_HOAS.v", line 320, characters 51-55 -KTys is linear: name it _KTys (discard) or KTys_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 316, characters 32-35: -Warning: -File "./tests/test_HOAS.v", line 316, characters 32-35 -TyF is linear: name it _TyF (discard) or TyF_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 467, characters 42-46: -Warning: -File "./tests/test_HOAS.v", line 467, characters 42-46 -Decl is linear: name it _Decl (discard) or Decl_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "coq-builtin.elpi", line 461, characters 50-51: -Warning: -File "coq-builtin.elpi", line 461, characters 50-51 -I is linear: name it _I (discard) or I_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 506, characters 20-22: -Warning: -File "./tests/test_HOAS.v", line 506, characters 20-22 -I2 is linear: name it _I2 (discard) or I2_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 504, characters 23-26: -Warning: -File "./tests/test_HOAS.v", line 504, characters 23-26 -UL1 is linear: name it _UL1 (discard) or UL1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 558, characters 32-33: -Warning: -File "./tests/test_HOAS.v", line 558, characters 32-33 -I is linear: name it _I (discard) or I_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "coq-builtin.elpi", line 461, characters 50-51: -Warning: -File "coq-builtin.elpi", line 461, characters 50-51 -I is linear: name it _I (discard) or I_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_HOAS.v", line 629, characters 36-37: -Warning: -File "./tests/test_HOAS.v", line 629, characters 36-37 -U is linear: name it _U (discard) or U_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] This.Is.A.Long.Namespace.stuff = 1 : nat = 1 @@ -17268,6 +17304,96 @@ : nat default nat_def : nat : nat +Module +d3 + : d3_Locked +:= Struct Definition body : nat. Parameter unlock : d3 = 3. End +Module Type + d3_Locked = + Sig Parameter body : nat. Parameter unlock : body = 3. End +cons2 : forall {A : Type}, A -> list A -> list A + +cons2 is not universe polymorphic +Arguments cons2 {A}%type_scope x xs%list_scope +cons2 is transparent +Expands to: Constant +elpi.apps.locker.tests.test_locker.Bug_286.lock_container.cons2 +cons3 : forall [A : Type], EqDecision A -> A -> list A -> list A + +cons3 is not universe polymorphic +Arguments cons3 [A]%type_scope {H} x xs%list_scope +cons3 is transparent +Expands to: Constant +elpi.apps.locker.tests.test_locker.Bug_286.lock_container2.cons3 +id1@{u} : forall T : Type@{u}, T -> T +(* u |= u < locked_with.u0 *) + +id1 is universe polymorphic +Arguments id1 T%type_scope x +id1 is transparent +Expands to: Constant elpi.apps.locker.tests.test_locker.id1 +Query assignments: + GR = const «id1» +id2.body@{u} : forall T : Type@{u}, T -> T +(* u |= u < eq.u0 *) + +id2.body is universe polymorphic +Arguments id2.body T%type_scope x +Expands to: Constant elpi.apps.locker.tests.test_locker.id2.body +Query assignments: + GR = const «id2.body» +up1.body@{u} : forall T : Type@{u}, T -> T +(* u |= u < eq.u0 *) + +up1.body is universe polymorphic +Arguments up1.body T%type_scope x +Expands to: Constant elpi.apps.locker.tests.test_locker.up1.body +Query assignments: + GR = const «up1.body» +nup1.body : forall T : Type@{nup1.body.u0}, T -> T + +nup1.body is not universe polymorphic +Arguments nup1.body T%type_scope x +Expands to: Constant elpi.apps.locker.tests.test_locker.nup1.body +Query assignments: + GR = const «nup1.body» +up2.body@{u u0} : +forall T : Type@{u}, Type@{u0} -> T -> T +(* u u0 |= u < eq.u0 + u0 < eq.u0 *) + +up2.body is universe polymorphic +Arguments up2.body (T W)%type_scope x +Expands to: Constant elpi.apps.locker.tests.test_locker.up2.body +Query assignments: + GR = const «up2.body» +Debug: +elpi lets escape exception: Universe + elpi.apps.locker.tests.test_locker.161 (File "./apps/locker/tests/test_locker.v", line 113, characters 50-54) + is unbound. +Raised at UState.error_unbound_universes in file "engine/uState.ml", line 832, characters 41-74 +Called from UState.universe_context_inst in file "engine/uState.ml", line 845, characters 9-58 +Called from UState.check_poly_univ_decl in file "engine/uState.ml", line 901, characters 13-63 +Called from UState.check_univ_decl in file "engine/uState.ml", line 917, characters 35-67 +Called from Elpi_plugin__Rocq_elpi_builtins.add_axiom_or_variable in file "src/rocq_elpi_builtins.ml", line 913, characters 14-82 +Called from Elpi_plugin__Rocq_elpi_builtins.coq_rest_builtins.(fun) in file "src/rocq_elpi_builtins.ml", line 2068, characters 20-86 +Called from Elpi_plugin__Rocq_elpi_builtins.grab_global_env.(fun) in file "src/rocq_elpi_builtins.ml", line 141, characters 33-44 +Called from Elpi_runtime__Runtime_trace_off.FFI.wrap_type_err in file "src/runtime/runtime_trace_off.ml", line 2125, characters 6-9 +Called from Elpi_runtime__Runtime_trace_off.FFI.call.aux in file "src/runtime/runtime_trace_off.ml", line 2207, characters 32-92 +Called from Elpi_runtime__Runtime_trace_off.FFI.call in file "src/runtime/runtime_trace_off.ml", line 2299, characters 21-70 +Called from Elpi_runtime__Runtime_trace_off.Constraints.exect_builtin_predicate in file "src/runtime/runtime_trace_off.ml", line 3565, characters 20-83 +Called from Elpi_runtime__Runtime_trace_off.Mainloop.make_runtime.run in file "src/runtime/runtime_trace_off.ml", line 3983, characters 19-90 +Called from Elpi_util__Util.Fork.fork.ensure_runtime in file "src/utils/util.ml", line 523, characters 16-19 +Re-raised at Elpi_util__Util.Fork.fork.ensure_runtime in file "src/utils/util.ml", line 532, characters 7-14 +Called from Elpi_runtime__Runtime_trace_off.mk_outcome in file "src/runtime/runtime_trace_off.ml", line 4265, characters 14-23 +Called from Elpi_runtime__Runtime_trace_off.execute_once in file "src/runtime/runtime_trace_off.ml", line 4282, characters 20-242 +Re-raised at Elpi_runtime__Runtime_trace_off.execute_once in file "src/runtime/runtime_trace_off.ml", line 4287, characters 2-9 +Called from Elpi__API.Execute.once in file "src/API.ml", line 235, characters 40-91 +Called from Elpi_plugin__Rocq_elpi_vernacular.Compiler.run in file "src/rocq_elpi_vernacular.ml", line 145, characters 13-55 +Re-raised at Exninfo.iraise in file "clib/exninfo.ml", line 81, characters 4-38 +Called from Elpi_plugin__Rocq_elpi_vernacular.Compiler.run_and_print in file "src/rocq_elpi_vernacular.ml", line 166, characters 8-38 +Called from Elpi_plugin__Rocq_elpi_vernacular.Interp.run_program.(fun) in file "src/rocq_elpi_vernacular.ml", line 557, characters 34-90 + [p 1, p 2, p 3, p 4, p 5, p 6, p 7, p 8, p 9, p 10, p 11, p 12, p 13, p 14, p 15, p 16, p 17, p 18, p 19, p 20, p 21, p 22, p 23, p 24, p 25, p 26, p 27, p 28, p 29, p 30, p 31, p 32, p 33, p 34, p 35, p 36, p 37, @@ -17674,96 +17800,6 @@ trying elpi_ctx_entry_1_ = elpi_ctx_entry_1_ /\ p0 = p0 d : nat -Module -d3 - : d3_Locked -:= Struct Definition body : nat. Parameter unlock : d3 = 3. End -Module Type - d3_Locked = - Sig Parameter body : nat. Parameter unlock : body = 3. End -cons2 : forall {A : Type}, A -> list A -> list A - -cons2 is not universe polymorphic -Arguments cons2 {A}%type_scope x xs%list_scope -cons2 is transparent -Expands to: Constant -elpi.apps.locker.tests.test_locker.Bug_286.lock_container.cons2 -cons3 : forall [A : Type], EqDecision A -> A -> list A -> list A - -cons3 is not universe polymorphic -Arguments cons3 [A]%type_scope {H} x xs%list_scope -cons3 is transparent -Expands to: Constant -elpi.apps.locker.tests.test_locker.Bug_286.lock_container2.cons3 -id1@{u} : forall T : Type@{u}, T -> T -(* u |= u < locked_with.u0 *) - -id1 is universe polymorphic -Arguments id1 T%type_scope x -id1 is transparent -Expands to: Constant elpi.apps.locker.tests.test_locker.id1 -Query assignments: - GR = const «id1» -id2.body@{u} : forall T : Type@{u}, T -> T -(* u |= u < eq.u0 *) - -id2.body is universe polymorphic -Arguments id2.body T%type_scope x -Expands to: Constant elpi.apps.locker.tests.test_locker.id2.body -Query assignments: - GR = const «id2.body» -up1.body@{u} : forall T : Type@{u}, T -> T -(* u |= u < eq.u0 *) - -up1.body is universe polymorphic -Arguments up1.body T%type_scope x -Expands to: Constant elpi.apps.locker.tests.test_locker.up1.body -Query assignments: - GR = const «up1.body» -nup1.body : forall T : Type@{nup1.body.u0}, T -> T - -nup1.body is not universe polymorphic -Arguments nup1.body T%type_scope x -Expands to: Constant elpi.apps.locker.tests.test_locker.nup1.body -Query assignments: - GR = const «nup1.body» -up2.body@{u u0} : -forall T : Type@{u}, Type@{u0} -> T -> T -(* u u0 |= u < eq.u0 - u0 < eq.u0 *) - -up2.body is universe polymorphic -Arguments up2.body (T W)%type_scope x -Expands to: Constant elpi.apps.locker.tests.test_locker.up2.body -Query assignments: - GR = const «up2.body» -Debug: -elpi lets escape exception: Universe - elpi.apps.locker.tests.test_locker.161 (File "./apps/locker/tests/test_locker.v", line 113, characters 50-54) - is unbound. -Raised at UState.error_unbound_universes in file "engine/uState.ml", line 832, characters 41-74 -Called from UState.universe_context_inst in file "engine/uState.ml", line 845, characters 9-58 -Called from UState.check_poly_univ_decl in file "engine/uState.ml", line 901, characters 13-63 -Called from UState.check_univ_decl in file "engine/uState.ml", line 917, characters 35-67 -Called from Elpi_plugin__Rocq_elpi_builtins.add_axiom_or_variable in file "src/rocq_elpi_builtins.ml", line 913, characters 14-82 -Called from Elpi_plugin__Rocq_elpi_builtins.coq_rest_builtins.(fun) in file "src/rocq_elpi_builtins.ml", line 2068, characters 20-86 -Called from Elpi_plugin__Rocq_elpi_builtins.grab_global_env.(fun) in file "src/rocq_elpi_builtins.ml", line 141, characters 33-44 -Called from Elpi_runtime__Runtime_trace_off.FFI.wrap_type_err in file "src/runtime/runtime_trace_off.ml", line 2125, characters 6-9 -Called from Elpi_runtime__Runtime_trace_off.FFI.call.aux in file "src/runtime/runtime_trace_off.ml", line 2207, characters 32-92 -Called from Elpi_runtime__Runtime_trace_off.FFI.call in file "src/runtime/runtime_trace_off.ml", line 2299, characters 21-70 -Called from Elpi_runtime__Runtime_trace_off.Constraints.exect_builtin_predicate in file "src/runtime/runtime_trace_off.ml", line 3565, characters 20-83 -Called from Elpi_runtime__Runtime_trace_off.Mainloop.make_runtime.run in file "src/runtime/runtime_trace_off.ml", line 3983, characters 19-90 -Called from Elpi_util__Util.Fork.fork.ensure_runtime in file "src/utils/util.ml", line 523, characters 16-19 -Re-raised at Elpi_util__Util.Fork.fork.ensure_runtime in file "src/utils/util.ml", line 532, characters 7-14 -Called from Elpi_runtime__Runtime_trace_off.mk_outcome in file "src/runtime/runtime_trace_off.ml", line 4265, characters 14-23 -Called from Elpi_runtime__Runtime_trace_off.execute_once in file "src/runtime/runtime_trace_off.ml", line 4282, characters 20-242 -Re-raised at Elpi_runtime__Runtime_trace_off.execute_once in file "src/runtime/runtime_trace_off.ml", line 4287, characters 2-9 -Called from Elpi__API.Execute.once in file "src/API.ml", line 235, characters 40-91 -Called from Elpi_plugin__Rocq_elpi_vernacular.Compiler.run in file "src/rocq_elpi_vernacular.ml", line 145, characters 13-55 -Re-raised at Exninfo.iraise in file "clib/exninfo.ml", line 81, characters 4-38 -Called from Elpi_plugin__Rocq_elpi_vernacular.Compiler.run_and_print in file "src/rocq_elpi_vernacular.ml", line 166, characters 8-38 -Called from Elpi_plugin__Rocq_elpi_vernacular.Interp.run_program.(fun) in file "src/rocq_elpi_vernacular.ml", line 557, characters 34-90 - hello1 it = elpi_subproof : True @@ -17780,6 +17816,8 @@ elpi_subproof is opaque Expands to: Constant elpi.tests.test_ltac.elpi_subproof Closed under the global context +true : bool + : bool test1 str hello str x @@ -17810,8 +17848,6 @@ File "./tests/test_vernacular2.v", line 10, characters 2-17: Warning: This command does not support this attribute: fwd_compat_attr. [unsupported-attributes,parsing,default] -true : bool - : bool Inductive listR_inv (A : Type) (PA : A -> Type) (idx0 : list A) : Type := nilR_inv : idx0 = nil -> listR_inv A PA idx0 | consR_inv : forall a : A, @@ -17970,6 +18006,7 @@ Arguments pred_R (n1 n2)%nat_scope n_R File "./apps/derive/tests/test_param2.v", line 85, characters 0-30: Warning: Not a truly recursive fixpoint. [non-recursive,fixpoints,default] +ok program [p] Query assignments: @@ -18223,7 +18260,6 @@ app [global (indc «S»), app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] -ok In tc-A In tc-A In tc-B @@ -18266,6 +18302,29 @@ (indt «DecidableClass.Decidable») [], tc.instance [] (const «DecidableClass.Decidable_not») (indt «DecidableClass.Decidable») []] +((fun (A : Type) (f : Type -> Type) (H : forall x : Type, Y (f x)) => + ex_intro (fun g : Type -> Type => Ex g A /\ g nat = g bool) f + (conj (Inst2 A f H) ?Goal)) + : + goal) +2 focused goals (shelved: 1) + + A : Type + f : Type -> Type + H : forall x : Type, Y (f x) + ============================ + Ex ?g A + +goal 2 is: + ?g nat = ?g bool +1 focused goal (shelved: 1) + + A : Type + f : Type -> Type + H : forall x : Type, Y (f x) + ============================ + (fun H0 : Type => f ?e0@{T:=H0}) nat = + (fun H0 : Type => f ?e0@{T:=H0}) bool Debug: Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true Debug: 1: looking for (C ?i) with backtracking @@ -18298,29 +18357,6 @@ Solution for C 1 is i1 Goal is E 1 Solution for E 1 is e1 -((fun (A : Type) (f : Type -> Type) (H : forall x : Type, Y (f x)) => - ex_intro (fun g : Type -> Type => Ex g A /\ g nat = g bool) f - (conj (Inst2 A f H) ?Goal)) - : - goal) -2 focused goals (shelved: 1) - - A : Type - f : Type -> Type - H : forall x : Type, Y (f x) - ============================ - Ex ?g A - -goal 2 is: - ?g nat = ?g bool -1 focused goal (shelved: 1) - - A : Type - f : Type -> Type - H : forall x : Type, Y (f x) - ============================ - (fun H0 : Type => f ?e0@{T:=H0}) nat = - (fun H0 : Type => f ?e0@{T:=H0}) bool All the remaining goals are on the shelf. 1 goal @@ -18341,12 +18377,15 @@ ============================ C +Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] +Normalizing app [global (indt «nat2»), global (indc «S»)] +Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] +(fun x : tele => tele_fmap) Query assignments: S = app [global (const «IsAnimal»), global (indc «Fly»), global (const «dove»)] Query assignments: S = X0 -(fun x : tele => tele_fmap) Now click "Start watching" in the Elpi Trace Browser panel and then execute the Command/Tactic/Query you want to trace. Also try "F1 Elpi". (fun H : C Q => @@ -18374,9 +18413,6 @@ This command does not fully mirror the watned behavior if the class has methods with implicit arguments (those implicits will be neglected) [[TC] Warning,TC.Declare,elpi,default] -Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] -Normalizing app [global (indt «nat2»), global (indc «S»)] -Normalizing app [global (indt «nat2»), global (const «Nat.succ»)] (fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => partial_app T (p 0) x) eq_refl : @@ -18850,311 +18886,6 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -Query assignments: - T = c0 \ -prod `c` X0 c1 \ - prod `_` (prod `a` X1 c2 \ app [global X2, app [c0, c2], c1]) c2 \ - app [global X3, c0, c1] -Good padding from here -Query assignments: - ToCompile = prod `T` - (prod `_` (sort (typ X0)) c0 \ - prod `_` (sort (typ X1)) c1 \ prod `_` (sort (typ X2)) c2 \ sort (typ X3)) - c0 \ - prod `_` (prod `a` (sort (typ X4)) c1 \ app [global (indt «d»), c1, c0]) - c1 \ app [global (indt «c»), c0] - X1_ = X0 - X2_ = X1 - X3_ = X2 - X4_ = X3 - X5_ = X4 -Finished transaction in 0.031 secs (0.031u,0.s) (successful) -Query assignments: - A = c0 \ -c0 - A2 = X0 - X6_ = X1 - X7_ = X2 -Query assignments: - N = s (s z) - X10_ = X0 - X11_ = c0 \ -X1 c0 - X8_ = «elpi.apps.tc.tests.test.140» - X9_ = «elpi.apps.tc.tests.test.141» -Syntactic constraints: - {c0 c1} : decl c1 `elpi_ctx_entry_1_` X0 - ?- evar (X1 c1) (sort (typ «elpi.apps.tc.tests.test.143»)) (X1 c1) /* suspended on X1 */ - {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.142»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.143 elpi.apps.tc.tests.test.142 - elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} |= - -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.141 - elpi.apps.tc.tests.test.140 -SORTS: - α125 - α126 -WEAK CONSTRAINTS: - - -Query assignments: - N = s z - X12_ = X0 - X13_ = «elpi.apps.tc.tests.test.253» - X14_ = «elpi.apps.tc.tests.test.254» -Syntactic constraints: - {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.255»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.255 elpi.apps.tc.tests.test.254 - elpi.apps.tc.tests.test.253} |= -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.254 elpi.apps.tc.tests.test.253} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.254 - elpi.apps.tc.tests.test.253 -SORTS: - α191 -WEAK CONSTRAINTS: - - -Query assignments: - X15_ = X0 -Syntactic constraints: - evar (X1) (X2) (X1) /* suspended on X1 */ - evar X3 (sort (typ «elpi.apps.tc.tests.test.292»)) (X2) /* suspended on X3, X2 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.292} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α208 -WEAK CONSTRAINTS: - - -Query assignments: - N = s (s z) - X16_ = «elpi.apps.tc.tests.test.318» - X17_ = «elpi.apps.tc.tests.test.319» - X18_ = «elpi.apps.tc.tests.test.320» - X19_ = «elpi.apps.tc.tests.test.321» - X20_ = X0 -Syntactic constraints: - {c0 c1} : evar X0 (sort (typ «elpi.apps.tc.tests.test.322»)) X0 /* suspended on X0 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.322 elpi.apps.tc.tests.test.321 - elpi.apps.tc.tests.test.320 elpi.apps.tc.tests.test.319 - elpi.apps.tc.tests.test.318} |= -ALGEBRAIC UNIVERSES: - {elpi.apps.tc.tests.test.321 elpi.apps.tc.tests.test.320 - elpi.apps.tc.tests.test.319 elpi.apps.tc.tests.test.318} -FLEXIBLE UNIVERSES: - elpi.apps.tc.tests.test.321 - elpi.apps.tc.tests.test.320 - elpi.apps.tc.tests.test.319 - elpi.apps.tc.tests.test.318 -SORTS: - α224 -WEAK CONSTRAINTS: - - -fun `_` X0 c0 \ global (indc «O») -Query assignments: - P = c0 \ c1 \ -fun `_` X0 c2 \ global (indc «O») - X22_ = X0 - X23_ = X0 -app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] -Query assignments: - A = c0 \ -fun `y` (X1 c0) c1 \ app [X2, c1, c0] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] - F = X2 - Inn = c0 \ -tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0] - T = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X0) c0 \ - tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] - X24_ = X0 - X25_ = c0 \ -X1 c0 -Syntactic constraints: - evar (X2) (X3) (X2) /* suspended on X2 */ - {c0} : decl c0 `x` X0 - ?- evar (X1 c0) (sort (typ «elpi.apps.tc.tests.test.394»)) (X1 c0) /* suspended on X1 */ - evar (X0) (sort (typ «elpi.apps.tc.tests.test.393»)) (X0) /* suspended on X0 */ - evar X4 (sort (typ «elpi.apps.tc.tests.test.395»)) (X3) /* suspended on X4, X3 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.395 elpi.apps.tc.tests.test.394 - elpi.apps.tc.tests.test.393} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α283 - α284 - α285 -WEAK CONSTRAINTS: - - -Query assignments: - A = X0 - Body1 = c0 \ -tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) [ - c0] - Body2 = c0 \ c1 \ -tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1] - C = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` X3 c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) - [c0]) []] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` X3 c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) - [c0]) []] - X = X2 - X26_ = X3 - X27_ = c0 \ -X1 - Y = c0 \ c1 \ -app [X0, c0, c1] -Query assignments: - A = X0 - Body1 = c0 \ -tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) [ - c0] - Body2 = c0 \ c1 \ -tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0] - C = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X3) c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) - [c0]) []] - Expected = app - [global (indt «c1»), - tc.maybe-eta-tm - (fun `x` (X3) c0 \ - tc.maybe-eta-tm - (fun `y` X1 c1 \ - tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) - [c0]) []] - X = X2 - X28_ = X3 - X29_ = c0 \ -X1 - Y = c0 \ c1 \ -app [X0, c0, c1] -Syntactic constraints: - {c0} : decl c0 `x` X3 - ?- evar X1 (sort (typ «elpi.apps.tc.tests.test.506»)) X1 /* suspended on X1 */ - evar (X0) (X4) (X0) /* suspended on X0 */ - evar (X2) (X5) (X2) /* suspended on X2 */ - evar (X3) (sort (typ «elpi.apps.tc.tests.test.505»)) (X3) /* suspended on X3 */ - evar X6 (sort (typ «elpi.apps.tc.tests.test.508»)) (X4) /* suspended on X6, X4 */ - evar X7 (sort (typ «elpi.apps.tc.tests.test.507»)) (X5) /* suspended on X7, X5 */ -Universe constraints: -UNIVERSES: - {elpi.apps.tc.tests.test.508 elpi.apps.tc.tests.test.507 - elpi.apps.tc.tests.test.506 elpi.apps.tc.tests.test.505} |= - -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α335 - α336 - α337 - α338 -WEAK CONSTRAINTS: - - -File "./apps/tc/tests/test.v", line 121, characters 61-65: -Warning: -File "./apps/tc/tests/test.v", line 121, characters 61-65 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 131, characters 59-60: -Warning: -File "./apps/tc/tests/test.v", line 131, characters 59-60 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 249, characters 66-67: -Warning: -File "./apps/tc/tests/test.v", line 249, characters 66-67 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 340, characters 63-64: -Warning: -File "./apps/tc/tests/test.v", line 340, characters 63-64 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 461, characters 37-40: -Warning: -File "./apps/tc/tests/test.v", line 461, characters 37-40 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 456, characters 44-45: -Warning: -File "./apps/tc/tests/test.v", line 456, characters 44-45 -F is linear: name it _F (discard) or F_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 515, characters 46-47: -Warning: -File "./apps/tc/tests/test.v", line 515, characters 46-47 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 518, characters 51-56: -Warning: -File "./apps/tc/tests/test.v", line 518, characters 51-56 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 555, characters 50-51: -Warning: -File "./apps/tc/tests/test.v", line 555, characters 50-51 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./apps/tc/tests/test.v", line 558, characters 51-56: -Warning: -File "./apps/tc/tests/test.v", line 558, characters 51-56 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] File "./apps/tc/tests-stdlib/stdppInj.v", line 13, characters 0-24: Warning: There is an hint extern in the typeclass db: @@ -19477,19 +19208,347 @@ There is an hint extern in the typeclass db: (*external*) (reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] +Query assignments: + T = c0 \ +prod `c` X0 c1 \ + prod `_` (prod `a` X1 c2 \ app [global X2, app [c0, c2], c1]) c2 \ + app [global X3, c0, c1] +Good padding from here +Query assignments: + ToCompile = prod `T` + (prod `_` (sort (typ X0)) c0 \ + prod `_` (sort (typ X1)) c1 \ prod `_` (sort (typ X2)) c2 \ sort (typ X3)) + c0 \ + prod `_` (prod `a` (sort (typ X4)) c1 \ app [global (indt «d»), c1, c0]) + c1 \ app [global (indt «c»), c0] + X1_ = X0 + X2_ = X1 + X3_ = X2 + X4_ = X3 + X5_ = X4 +Finished transaction in 0.048 secs (0.033u,0.s) (successful) +Query assignments: + A = c0 \ +c0 + A2 = X0 + X6_ = X1 + X7_ = X2 +Query assignments: + N = s (s z) + X10_ = X0 + X11_ = c0 \ +X1 c0 + X8_ = «elpi.apps.tc.tests.test.140» + X9_ = «elpi.apps.tc.tests.test.141» +Syntactic constraints: + {c0 c1} : decl c1 `elpi_ctx_entry_1_` X0 + ?- evar (X1 c1) (sort (typ «elpi.apps.tc.tests.test.143»)) (X1 c1) /* suspended on X1 */ + {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.142»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.143 elpi.apps.tc.tests.test.142 + elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} |= + +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.141 elpi.apps.tc.tests.test.140} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.141 + elpi.apps.tc.tests.test.140 +SORTS: + α125 + α126 +WEAK CONSTRAINTS: + + +Query assignments: + N = s z + X12_ = X0 + X13_ = «elpi.apps.tc.tests.test.253» + X14_ = «elpi.apps.tc.tests.test.254» +Syntactic constraints: + {c0} : evar X0 (sort (typ «elpi.apps.tc.tests.test.255»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.255 elpi.apps.tc.tests.test.254 + elpi.apps.tc.tests.test.253} |= +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.254 elpi.apps.tc.tests.test.253} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.254 + elpi.apps.tc.tests.test.253 +SORTS: + α191 +WEAK CONSTRAINTS: + + +Query assignments: + X15_ = X0 +Syntactic constraints: + evar (X1) (X2) (X1) /* suspended on X1 */ + evar X3 (sort (typ «elpi.apps.tc.tests.test.292»)) (X2) /* suspended on X3, X2 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.292} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α208 +WEAK CONSTRAINTS: + + +Query assignments: + N = s (s z) + X16_ = «elpi.apps.tc.tests.test.318» + X17_ = «elpi.apps.tc.tests.test.319» + X18_ = «elpi.apps.tc.tests.test.320» + X19_ = «elpi.apps.tc.tests.test.321» + X20_ = X0 +Syntactic constraints: + {c0 c1} : evar X0 (sort (typ «elpi.apps.tc.tests.test.322»)) X0 /* suspended on X0 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.322 elpi.apps.tc.tests.test.321 + elpi.apps.tc.tests.test.320 elpi.apps.tc.tests.test.319 + elpi.apps.tc.tests.test.318} |= +ALGEBRAIC UNIVERSES: + {elpi.apps.tc.tests.test.321 elpi.apps.tc.tests.test.320 + elpi.apps.tc.tests.test.319 elpi.apps.tc.tests.test.318} +FLEXIBLE UNIVERSES: + elpi.apps.tc.tests.test.321 + elpi.apps.tc.tests.test.320 + elpi.apps.tc.tests.test.319 + elpi.apps.tc.tests.test.318 +SORTS: + α224 +WEAK CONSTRAINTS: + + +fun `_` X0 c0 \ global (indc «O») +Query assignments: + P = c0 \ c1 \ +fun `_` X0 c2 \ global (indc «O») + X22_ = X0 + X23_ = X0 +app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] +Query assignments: + A = c0 \ +fun `y` (X1 c0) c1 \ app [X2, c1, c0] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] + F = X2 + Inn = c0 \ +tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0] + T = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X0) c0 \ + tc.maybe-eta-tm (fun `y` (X1 c0) c1 \ app [X2, c1, c0]) [c0]) []] + X24_ = X0 + X25_ = c0 \ +X1 c0 +Syntactic constraints: + evar (X2) (X3) (X2) /* suspended on X2 */ + {c0} : decl c0 `x` X0 + ?- evar (X1 c0) (sort (typ «elpi.apps.tc.tests.test.394»)) (X1 c0) /* suspended on X1 */ + evar (X0) (sort (typ «elpi.apps.tc.tests.test.393»)) (X0) /* suspended on X0 */ + evar X4 (sort (typ «elpi.apps.tc.tests.test.395»)) (X3) /* suspended on X4, X3 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.395 elpi.apps.tc.tests.test.394 + elpi.apps.tc.tests.test.393} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α283 + α284 + α285 +WEAK CONSTRAINTS: + + +Query assignments: + A = X0 + Body1 = c0 \ +tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) [ + c0] + Body2 = c0 \ c1 \ +tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1] + C = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` X3 c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) + [c0]) []] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` X3 c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c0, c1]) + [c0]) []] + X = X2 + X26_ = X3 + X27_ = c0 \ +X1 + Y = c0 \ c1 \ +app [X0, c0, c1] +Query assignments: + A = X0 + Body1 = c0 \ +tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) [ + c0] + Body2 = c0 \ c1 \ +tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0] + C = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X3) c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) + [c0]) []] + Expected = app + [global (indt «c1»), + tc.maybe-eta-tm + (fun `x` (X3) c0 \ + tc.maybe-eta-tm + (fun `y` X1 c1 \ + tc.maybe-llam-tm (app [app [X2], app [X0, c0, c1], c1]) [c1, c0]) + [c0]) []] + X = X2 + X28_ = X3 + X29_ = c0 \ +X1 + Y = c0 \ c1 \ +app [X0, c0, c1] +Syntactic constraints: + {c0} : decl c0 `x` X3 + ?- evar X1 (sort (typ «elpi.apps.tc.tests.test.506»)) X1 /* suspended on X1 */ + evar (X0) (X4) (X0) /* suspended on X0 */ + evar (X2) (X5) (X2) /* suspended on X2 */ + evar (X3) (sort (typ «elpi.apps.tc.tests.test.505»)) (X3) /* suspended on X3 */ + evar X6 (sort (typ «elpi.apps.tc.tests.test.508»)) (X4) /* suspended on X6, X4 */ + evar X7 (sort (typ «elpi.apps.tc.tests.test.507»)) (X5) /* suspended on X7, X5 */ +Universe constraints: +UNIVERSES: + {elpi.apps.tc.tests.test.508 elpi.apps.tc.tests.test.507 + elpi.apps.tc.tests.test.506 elpi.apps.tc.tests.test.505} |= + +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α335 + α336 + α337 + α338 +WEAK CONSTRAINTS: + + +File "./apps/tc/tests/test.v", line 121, characters 61-65: +Warning: +File "./apps/tc/tests/test.v", line 121, characters 61-65 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 131, characters 59-60: +Warning: +File "./apps/tc/tests/test.v", line 131, characters 59-60 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 249, characters 66-67: +Warning: +File "./apps/tc/tests/test.v", line 249, characters 66-67 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 340, characters 63-64: +Warning: +File "./apps/tc/tests/test.v", line 340, characters 63-64 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 461, characters 37-40: +Warning: +File "./apps/tc/tests/test.v", line 461, characters 37-40 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 456, characters 44-45: +Warning: +File "./apps/tc/tests/test.v", line 456, characters 44-45 +F is linear: name it _F (discard) or F_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 515, characters 46-47: +Warning: +File "./apps/tc/tests/test.v", line 515, characters 46-47 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 518, characters 51-56: +Warning: +File "./apps/tc/tests/test.v", line 518, characters 51-56 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 555, characters 50-51: +Warning: +File "./apps/tc/tests/test.v", line 555, characters 50-51 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./apps/tc/tests/test.v", line 558, characters 51-56: +Warning: +File "./apps/tc/tests/test.v", line 558, characters 51-56 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] Received the following event [str new_instance, str I4, str A, str Export, int -1] Debug: [elpitime] Elpi: get_and_compile 0.0001 -Debug: [TC] - Time of instance search is 0.000085 -Debug: [TC] - Time of refine.typecheck is 0.000196 +Debug: [TC] - Time of instance search is 0.000089 +Debug: [TC] - Time of refine.typecheck is 0.000214 Debug: [elpitime] - Elpi: query-compilation:0.0001 static-check:0.0000 optimization:0.0001 runtime:0.0018 (with success) + Elpi: query-compilation:0.0001 static-check:0.0000 optimization:0.0001 runtime:0.0101 (with success) -Finished transaction in 0.002 secs (0.001u,0.s) (successful) +Finished transaction in 0.01 secs (0.002u,0.s) (successful) Inductive elpi.apps.derive.tests.test_param1.Coverage.is_unit Inductive elpi.apps.derive.tests.test_param1.OtherTests.is_unit (shorter name to refer to it in current context is OtherTests.is_unit) +Inductive peano : Set := Zero : peano | Succ : peano -> peano. + +Arguments peano.Succ p + = if pos_eq_dec (BinNums.xO BinNums.xH) BinNums.xH then true else false + : bool +peano.eqb_OK : forall x1 x2 : peano, reflect (x1 = x2) (peano.eqb x1 x2) + +peano.eqb_OK is not universe polymorphic +Arguments peano.eqb_OK x1 x2 +peano.eqb_OK is opaque +Expands to: Constant elpi.apps.derive.examples.readme.peano.eqb_OK +Derivation param1 on const «Nat.add» +Derivation param1 on const «Nat.add» took 0.002898 +Derivation param2 on const «Nat.add» +Derivation param2 on const «Nat.add» took 0.003627 +Derivation eqb-alias on const «Nat.add» +Derivation eqb-alias on const «Nat.add» failed, continuing +Derivation eqbcorrect-alias on const «Nat.add» +Derivation eqbcorrect-alias on const «Nat.add» failed, continuing +Derivation eqbOK-alias on const «Nat.add» +Derivation eqbOK-alias on const «Nat.add» failed, continuing +is_add + : forall n : nat, is_nat n -> forall m : nat, is_nat m -> is_nat (n + m) File "./apps/tc/tests-stdlib/bigTest.v", line 21, characters 0-19: Warning: There is an hint extern in the typeclass db: @@ -19902,29 +19961,6 @@ There is an hint extern in the typeclass db: (*external*) proper_reflexive [elpi.TC.hints,elpi,default] -Inductive peano : Set := Zero : peano | Succ : peano -> peano. - -Arguments peano.Succ p - = if pos_eq_dec (BinNums.xO BinNums.xH) BinNums.xH then true else false - : bool -peano.eqb_OK : forall x1 x2 : peano, reflect (x1 = x2) (peano.eqb x1 x2) - -peano.eqb_OK is not universe polymorphic -Arguments peano.eqb_OK x1 x2 -peano.eqb_OK is opaque -Expands to: Constant elpi.apps.derive.examples.readme.peano.eqb_OK -Derivation param1 on const «Nat.add» -Derivation param1 on const «Nat.add» took 0.002944 -Derivation param2 on const «Nat.add» -Derivation param2 on const «Nat.add» took 0.003684 -Derivation eqb-alias on const «Nat.add» -Derivation eqb-alias on const «Nat.add» failed, continuing -Derivation eqbcorrect-alias on const «Nat.add» -Derivation eqbcorrect-alias on const «Nat.add» failed, continuing -Derivation eqbOK-alias on const «Nat.add» -Derivation eqbOK-alias on const «Nat.add» failed, continuing -is_add - : forall n : nat, is_nat n -> forall m : nat, is_nat m -> is_nat (n + m) more : forall A : Type, A -> tickle A -> tickle A : forall A : Type, A -> tickle A -> tickle A tickle.eqb @@ -19956,37 +19992,37 @@ (arity (prod `l` (app [global (indt «tickle.tickle»), c1]) c2 \ c1))] Deriving Derivation map on indt «rtree» -Derivation map on indt «rtree» took 0.008099 +Derivation map on indt «rtree» took 0.001792 Derivation lens on indt «rtree» Derivation lens on indt «rtree» failed, continuing Derivation param1 on indt «rtree» -Derivation param1 on indt «rtree» took 0.005146 +Derivation param1 on indt «rtree» took 0.005255 Derivation param2 on indt «rtree» -Derivation param2 on indt «rtree» took 0.006448 +Derivation param2 on indt «rtree» took 0.006550 Derivation tag on indt «rtree» -Derivation tag on indt «rtree» took 0.001622 +Derivation tag on indt «rtree» took 0.001101 Derivation eqType_ast on indt «rtree» -Derivation eqType_ast on indt «rtree» took 0.000363 +Derivation eqType_ast on indt «rtree» took 0.000365 Derivation lens_laws on indt «rtree» Derivation lens_laws on indt «rtree» took 0.000048 Derivation param1_congr on indt «rtree» -Derivation param1_congr on indt «rtree» took 0.002191 +Derivation param1_congr on indt «rtree» took 0.002094 Derivation param1_inhab on indt «rtree» -Derivation param1_inhab on indt «rtree» took 0.001839 +Derivation param1_inhab on indt «rtree» took 0.001879 Derivation param1_functor on indt «rtree» -Derivation param1_functor on indt «rtree» took 0.001913 +Derivation param1_functor on indt «rtree» took 0.001945 Derivation fields on indt «rtree» -Derivation fields on indt «rtree» took 0.006679 +Derivation fields on indt «rtree» took 0.006886 Derivation param1_trivial on indt «rtree» -Derivation param1_trivial on indt «rtree» took 0.187433 +Derivation param1_trivial on indt «rtree» took 0.178050 Derivation induction on indt «rtree» -Derivation induction on indt «rtree» took 0.002203 +Derivation induction on indt «rtree» took 0.001946 Derivation eqb on indt «rtree» -Derivation eqb on indt «rtree» took 0.006205 +Derivation eqb on indt «rtree» took 0.006227 Derivation eqbcorrect on indt «rtree» -Derivation eqbcorrect on indt «rtree» took 0.023439 +Derivation eqbcorrect on indt «rtree» took 0.022557 Derivation eqbOK on indt «rtree» -Derivation eqbOK on indt «rtree» took 0.001450 +Derivation eqbOK on indt «rtree» took 0.001324 Done rtree.induction : @@ -20010,15 +20046,15 @@ Deriving Skipping derivation map on indt «Box» since the user did not select it Derivation lens on indt «Box» -Derivation lens on indt «Box» took 0.003312 +Derivation lens on indt «Box» took 0.003408 Skipping derivation param1 on indt «Box» since the user did not select it Skipping derivation param2 on indt «Box» since the user did not select it Derivation tag on indt «Box» -Derivation tag on indt «Box» took 0.001125 +Derivation tag on indt «Box» took 0.001216 Derivation eqType_ast on indt «Box» -Derivation eqType_ast on indt «Box» took 0.000267 +Derivation eqType_ast on indt «Box» took 0.000276 Derivation lens_laws on indt «Box» -Derivation lens_laws on indt «Box» took 0.012238 +Derivation lens_laws on indt «Box» took 0.012181 Skipping derivation param1_congr on indt «Box» since the user did not select it Skipping derivation param1_inhab on indt «Box» @@ -20026,13 +20062,13 @@ Skipping derivation param1_functor on indt «Box» since the user did not select it Derivation fields on indt «Box» -Derivation fields on indt «Box» took 0.004967 +Derivation fields on indt «Box» took 0.004903 Skipping derivation param1_trivial on indt «Box» since the user did not select it Skipping derivation induction on indt «Box» since the user did not select it Derivation eqb on indt «Box» -Derivation eqb on indt «Box» took 0.002947 +Derivation eqb on indt «Box» took 0.003000 Skipping derivation eqbcorrect on indt «Box» since the user did not select it Skipping derivation eqbOK on indt «Box» since the user did not select it @@ -20058,65 +20094,65 @@ nat_eqb_OK : forall x y : nat, reflect (x = y) (nat_eqb x y) : forall x y : nat, reflect (x = y) (nat_eqb x y) Derivation map on indt «a» -Derivation map on indt «a» took 0.000806 +Derivation map on indt «a» took 0.000803 Derivation lens on indt «a» Derivation lens on indt «a» failed, continuing Derivation param1 on indt «a» -Derivation param1 on indt «a» took 0.002087 +Derivation param1 on indt «a» took 0.001971 Derivation param2 on indt «a» -Derivation param2 on indt «a» took 0.002180 +Derivation param2 on indt «a» took 0.002261 Derivation tag on indt «a» -Derivation tag on indt «a» took 0.008981 +Derivation tag on indt «a» took 0.000665 Derivation eqType_ast on indt «a» -Derivation eqType_ast on indt «a» took 0.000169 +Derivation eqType_ast on indt «a» took 0.000158 Derivation lens_laws on indt «a» -Derivation lens_laws on indt «a» took 0.000047 +Derivation lens_laws on indt «a» took 0.000044 Derivation param1_congr on indt «a» -Derivation param1_congr on indt «a» took 0.000319 +Derivation param1_congr on indt «a» took 0.000277 Derivation param1_inhab on indt «a» -Derivation param1_inhab on indt «a» took 0.000717 +Derivation param1_inhab on indt «a» took 0.000739 Derivation param1_functor on indt «a» -Derivation param1_functor on indt «a» took 0.000625 +Derivation param1_functor on indt «a» took 0.000644 Derivation fields on indt «a» -Derivation fields on indt «a» took 0.002603 +Derivation fields on indt «a» took 0.002529 Derivation param1_trivial on indt «a» -Derivation param1_trivial on indt «a» took 0.001044 +Derivation param1_trivial on indt «a» took 0.001099 Derivation induction on indt «a» -Derivation induction on indt «a» took 0.005041 +Derivation induction on indt «a» took 0.000860 Derivation eqb on indt «a» -Derivation eqb on indt «a» took 0.001481 +Derivation eqb on indt «a» took 0.001392 Derivation eqbcorrect on indt «a» -Derivation eqbcorrect on indt «a» took 0.002869 +Derivation eqbcorrect on indt «a» took 0.002871 Derivation eqbOK on indt «a» -Derivation eqbOK on indt «a» took 0.000526 +Derivation eqbOK on indt «a» took 0.000534 Skipping derivation map on indt «b» since the user did not select it Skipping derivation lens on indt «b» since the user did not select it Derivation param1 on indt «b» -Derivation param1 on indt «b» took 0.010606 +Derivation param1 on indt «b» took 0.002317 Skipping derivation param2 on indt «b» since the user did not select it Derivation tag on indt «b» -Derivation tag on indt «b» took 0.000745 +Derivation tag on indt «b» took 0.000708 Derivation eqType_ast on indt «b» -Derivation eqType_ast on indt «b» took 0.000228 +Derivation eqType_ast on indt «b» took 0.000218 Skipping derivation lens_laws on indt «b» since the user did not select it Skipping derivation param1_congr on indt «b» since the user did not select it Derivation param1_inhab on indt «b» -Derivation param1_inhab on indt «b» took 0.000822 +Derivation param1_inhab on indt «b» took 0.000881 Derivation param1_functor on indt «b» -Derivation param1_functor on indt «b» took 0.000789 +Derivation param1_functor on indt «b» took 0.000735 Derivation fields on indt «b» -Derivation fields on indt «b» took 0.003058 +Derivation fields on indt «b» took 0.003128 Skipping derivation param1_trivial on indt «b» since the user did not select it Derivation induction on indt «b» -Derivation induction on indt «b» took 0.005396 +Derivation induction on indt «b» took 0.001098 Derivation eqb on indt «b» -Derivation eqb on indt «b» took 0.001963 +Derivation eqb on indt «b» took 0.001968 Derivation eqbcorrect on indt «b» -Derivation eqbcorrect on indt «b» took 0.008224 +Derivation eqbcorrect on indt «b» took 0.003904 Derivation eqbOK on indt «b» -Derivation eqbOK on indt «b» took 0.000662 +Derivation eqbOK on indt «b» took 0.000603 a_eqb : a -> a -> bool b_eqb @@ -20316,9 +20352,6 @@ : bool Peano.eqb_OK : forall x1 x2 : Peano.peano, reflect (x1 = x2) (Peano.eqb x1 x2) -Finished transaction in 1.457 secs (0.711u,0.062s) (successful) -Finished transaction in 33.821 secs (15.509u,0.047s) (successful) -Finished transaction in 0.247 secs (0.232u,0.003s) (successful) derive.param1_trivial: wrong shape is_nest . It does not look like a unary parametricity translation of an inductive with no indexes. derive.param1_trivial: wrong shape is_vect A PA @@ -20332,13 +20365,13 @@ Skipping derivation tag on indt «nat» since it has been already run Skipping derivation eqType_ast on indt «nat» since it has been already run Derivation projK on indt «nat» -Derivation projK on indt «nat» took 0.001186 +Derivation projK on indt «nat» took 0.001193 Derivation isK on indt «nat» -Derivation isK on indt «nat» took 0.001929 +Derivation isK on indt «nat» took 0.001744 Derivation eq on indt «nat» -Derivation eq on indt «nat» took 0.001434 +Derivation eq on indt «nat» took 0.001363 Derivation invert on indt «nat» -Derivation invert on indt «nat» took 0.001338 +Derivation invert on indt «nat» took 0.001253 Skipping derivation lens_laws on indt «nat» since it has been already run Skipping derivation param1_congr on indt «nat» since it has been already run @@ -20348,7 +20381,7 @@ since it has been already run Skipping derivation fields on indt «nat» since it has been already run Derivation bcongr on indt «nat» -Derivation bcongr on indt «nat» took 0.002530 +Derivation bcongr on indt «nat» took 0.010800 Derivation idx2inv on indt «nat» Derivation idx2inv on indt «nat» failed, continuing Skipping derivation param1_trivial on indt «nat» @@ -20356,13 +20389,13 @@ Skipping derivation induction on indt «nat» since it has been already run Skipping derivation eqb on indt «nat» since it has been already run Derivation eqK on indt «nat» -Derivation eqK on indt «nat» took 0.003146 +Derivation eqK on indt «nat» took 0.003097 Skipping derivation eqbcorrect on indt «nat» since it has been already run Derivation eqcorrect on indt «nat» -Derivation eqcorrect on indt «nat» took 0.000914 +Derivation eqcorrect on indt «nat» took 0.000883 Skipping derivation eqbOK on indt «nat» since it has been already run Derivation eqOK on indt «nat» -Derivation eqOK on indt «nat» took 0.000594 +Derivation eqOK on indt «nat» took 0.000542 Skipping derivation map on indt «nat» since the user did not select it Skipping derivation lens on indt «nat» since the user did not select it Skipping derivation param1 on indt «nat» since it has been already run @@ -20407,12 +20440,12 @@ Skipping derivation map on indt «foo» since the user did not select it Skipping derivation lens on indt «foo» since the user did not select it Derivation param1 on indt «foo» -Derivation param1 on indt «foo» took 0.007818 +Derivation param1 on indt «foo» took 0.003152 Skipping derivation param2 on indt «foo» since the user did not select it Derivation tag on indt «foo» -Derivation tag on indt «foo» took 0.001172 +Derivation tag on indt «foo» took 0.000945 Derivation eqType_ast on indt «foo» -Derivation eqType_ast on indt «foo» took 0.000325 +Derivation eqType_ast on indt «foo» took 0.000273 Skipping derivation projK on indt «foo» since the user did not select it Skipping derivation isK on indt «foo» since the user did not select it Skipping derivation eq on indt «foo» since the user did not select it @@ -20422,26 +20455,26 @@ Skipping derivation param1_congr on indt «foo» since the user did not select it Derivation param1_inhab on indt «foo» -Derivation param1_inhab on indt «foo» took 0.002850 +Derivation param1_inhab on indt «foo» took 0.001140 Derivation param1_functor on indt «foo» -Derivation param1_functor on indt «foo» took 0.001140 +Derivation param1_functor on indt «foo» took 0.000918 Derivation fields on indt «foo» -Derivation fields on indt «foo» took 0.005797 +Derivation fields on indt «foo» took 0.004056 Skipping derivation bcongr on indt «foo» since the user did not select it Skipping derivation idx2inv on indt «foo» since the user did not select it Skipping derivation param1_trivial on indt «foo» since the user did not select it Derivation induction on indt «foo» -Derivation induction on indt «foo» took 0.001281 +Derivation induction on indt «foo» took 0.001111 Derivation eqb on indt «foo» -Derivation eqb on indt «foo» took 0.002694 +Derivation eqb on indt «foo» took 0.002389 Skipping derivation eqK on indt «foo» since the user did not select it Derivation eqbcorrect on indt «foo» -Derivation eqbcorrect on indt «foo» took 0.005343 +Derivation eqbcorrect on indt «foo» took 0.004716 Skipping derivation eqcorrect on indt «foo» since the user did not select it Derivation eqbOK on indt «foo» -Derivation eqbOK on indt «foo» took 0.009247 +Derivation eqbOK on indt «foo» took 0.000835 Skipping derivation eqOK on indt «foo» since the user did not select it File "./apps/derive/tests-stdlib/test_derive.v", line 33, characters 2-9: Warning: This command does not support this attribute: verbose. @@ -20450,10 +20483,13 @@ Warning: Using Vector.t is known to be technically difficult, see . [warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] +Finished transaction in 1.466 secs (0.714u,0.044s) (successful) +Finished transaction in 30.971 secs (15.263u,0.032s) (successful) +Finished transaction in 0.232 secs (0.226u,0.s) (successful) dune build builtin-doc Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created make[2]: Leaving directory '/build/reproducible-path/coq-elpi-2.5.0' make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.5.0' @@ -20465,7 +20501,7 @@ dune install rocq-elpi --destdir=/build/reproducible-path/coq-elpi-2.5.0/debian/tmp --prefix=/usr --libdir=/usr/lib/aarch64-linux-gnu/ocaml/5.3.0 Warning: Cache directories could not be created: Permission denied; disabling cache -Hint: Make sure the directory /nonexistent/first-build/.cache/dune/db/temp +Hint: Make sure the directory /nonexistent/second-build/.cache/dune/db/temp can be created rm -fr /build/reproducible-path/coq-elpi-2.5.0/debian/tmp/usr/doc/coq-elpi rm -fr /build/reproducible-path/coq-elpi-2.5.0/debian/tmp/usr/doc/rocq-elpi @@ -20513,12 +20549,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/763159/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/2029390 and its subdirectories -I: Current time: Mon Jul 21 08:45:34 -12 2025 -I: pbuilder-time-stamp: 1753130734 +I: removing directory /srv/workspace/pbuilder/763159 and its subdirectories +I: Current time: Mon Aug 24 17:11:27 +14 2026 +I: pbuilder-time-stamp: 1787541087