Diff of the two buildlogs: -- --- b1/build.log 2025-02-18 00:17:02.778592767 +0000 +++ b2/build.log 2025-02-18 00:21:19.359059146 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sun Mar 22 18:37:22 -12 2026 -I: pbuilder-time-stamp: 1774247842 +I: Current time: Tue Feb 18 14:17:05 +14 2025 +I: pbuilder-time-stamp: 1739837825 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/2173995/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/800704/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-amd64. +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 Feb 18 00:17 /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/800704/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/800704/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='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + 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]="x86_64-pc-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=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='1c33f80f87dc40ef9677246c60560dbc' - 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='2173995' - PS1='# ' - PS2='> ' + INVOCATION_ID=74044e4962ae498b8ee75892a5ecabeb + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-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=800704 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.E1uTXiRE/pbuilderrc_70CZ --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.E1uTXiRE/b1 --logfile b1/build.log coq-elpi_2.4.0-1.dsc' - SUDO_GID='110' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152: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.E1uTXiRE/pbuilderrc_GQR3 --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.E1uTXiRE/b2 --logfile b2/build.log coq-elpi_2.4.0-1.dsc' + SUDO_GID=110 + SUDO_UID=105 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos5-amd64 6.12.9+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.9-1~bpo12+1 (2025-01-19) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/2173995/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/800704/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -284,7 +316,7 @@ Get: 87 http://deb.debian.org/debian unstable/main amd64 libstdio-ocaml-dev amd64 0.17.0-1+b1 [114 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 libppx-optcomp-ocaml-dev amd64 1:0.17.0-1+b6 [327 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 ocaml-dune amd64 3.17.2-1 [4834 kB] -Fetched 371 MB in 10s (37.0 MB/s) +Fetched 371 MB in 7s (55.9 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal:amd64. (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 ... 19798 files and directories currently installed.) @@ -583,8 +615,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Mon Mar 23 06:38:25 UTC 2026. -Universal Time is now: Mon Mar 23 06:38:25 UTC 2026. +Local time is now: Tue Feb 18 00:18:11 UTC 2025. +Universal Time is now: Tue Feb 18 00:18:11 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -667,7 +699,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/coq-elpi-2.4.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.4.0-1_source.changes +I: user script /srv/workspace/pbuilder/800704/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/800704/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/coq-elpi-2.4.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.4.0-1_source.changes dpkg-buildpackage: info: source package coq-elpi dpkg-buildpackage: info: source version 2.4.0-1 dpkg-buildpackage: info: source distribution unstable @@ -681,7 +717,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.4.0' dh_ocamlclean @@ -700,7 +736,7 @@ dune build -p coq-elpi 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 (cd _build/default && /usr/bin/ocamlopt.opt -w -40 -w -27 -g -I src/.elpi_plugin.objs/byte -I src/.elpi_plugin.objs/native -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -intf-suffix .ml -no-alias-deps -open Elpi_plugin -o src/.elpi_plugin.objs/native/elpi_plugin__Coq_elpi_HOAS.cmx -c -impl src/coq_elpi_HOAS.pp.ml) File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: @@ -714,42 +750,6 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^ Alert deprecated: Library.indirect_accessor Most commands should not be accessing opaque data. -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_generalize.v) -3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_curry_howard_tactics.v) -goal X0 c0 c1 c2 c3 is - -[decl c3 `H` (app [global (const «lt»), c0, c1]), - decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), - decl c0 `x` (global (indt «nat»))] -------- - -prod `_` (app [global (const «lt»), c1, c2]) c4 \ - app [global (const «lt»), c0, c2] -3 -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_data_base.v) -The Db contains [phone_prefix USA 1] -Phone prefix for USA is 1 -The Db contains -[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] -Phone prefix for France is 33 -sweet! -brr -yummy! -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_reduction_surgery.v) -(eq_refl : 2 = (let z := 1 in S z)) -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_to_sigma.v) -foo = -{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} - : Type -mk_foo = -fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => -existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 - (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) - : forall (f1 : Type) (f2 : f1 -> Type), - (forall t : f1, f2 t -> bool) -> foo - -Arguments mk_foo f1%type_scope (f2 f3)%function_scope (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_HOAS.v) Query assignments: GRnat = indt «nat» @@ -1184,6 +1184,10 @@ File "./examples/tutorial_coq_elpi_HOAS.v", line 754, characters 12-14 Ty is linear: name it _Ty (discard) or Ty_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_reduction_surgery.v) +(eq_refl : 2 = (let z := 1 in S z)) +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_generalize.v) +3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_import_projections.v) Notation p2 := (p2 nat 3 x) example_import_projections.p1 nat 3 x : nat @@ -1198,6 +1202,46 @@ (Build bool false 3 eq_refl eq_refl) = 3 example_import_projections.f1 _ x : bool +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_to_sigma.v) +foo = +{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} + : Type +mk_foo = +fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => +existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 + (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) + : forall (f1 : Type) (f2 : f1 -> Type), + (forall t : f1, f2 t -> bool) -> foo + +Arguments mk_foo f1%type_scope (f2 f3)%function_scope +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/NES/elpi elpi.apps.NES.elpi -R apps/NES/theories elpi.apps.NES apps/NES/theories/NES.v) +File "./apps/NES/theories/NES.v", line 39, characters 0-42: +Warning: +Undeclared globals: +- File "/build/reproducible-path/coq-elpi-2.4.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] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_curry_howard_tactics.v) +goal X0 c0 c1 c2 c3 is + +[decl c3 `H` (app [global (const «lt»), c0, c1]), + decl c2 `z` (global (indt «nat»)), decl c1 `y` (global (indt «nat»)), + decl c0 `x` (global (indt «nat»))] +------- + +prod `_` (app [global (const «lt»), c1, c2]) c4 \ + app [global (const «lt»), c0, c2] +3 +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_data_base.v) +The Db contains [phone_prefix USA 1] +Phone prefix for USA is 1 +The Db contains +[phone_prefix USA 1, phone_prefix France 33, phone_prefix Italy 39] +Phone prefix for France is 33 +sweet! +brr +yummy! (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_fuzzer.v) DEBUG: attempt at fuzzing binary op: global (indc «PLUS») DEBUG: attempt at fuzzing binary op: global (const «Nat.add») @@ -1232,11 +1276,6 @@ 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 _ _ -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_open_terms.v) -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 (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_command.v) Hello [str world!] Hello [int 46] @@ -1309,7 +1348,7 @@ interp x := some (app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]) -The module is «elpi_examples.tutorial_coq_elpi_command.Module71» +The module is «elpi_examples.tutorial_coq_elpi_command.Module60» Box.Box.Box.Box.foo = fun n : nat => n + 2 : nat -> nat @@ -1324,110 +1363,6 @@ 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] -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_tactic.v) -Goal: -[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] -|- X0 c0 c1 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], c1] -(I, 0) -conj : forall [A B : Prop], A -> B -> A /\ B - -conj is not universe polymorphic -Arguments conj [A B]%type_scope _ _ -Expands to: Constructor Coq.Init.Logic.conj -(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) -[int 1, str x, str a b, - trm - (app - [global (indt «eq»), X0, - app [global (indc «S»), global (indc «O»)], global (indc «O»)])] -Using H ?p of type Q -Using H ?p of type Q -Using p of type P -[trm c0, trm c3, trm (app [c2, c3])] -found P -found P /\ P -Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], global (indc «O»)] -Proof state: - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X1 c0) - (app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], - global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ -EVARS: - ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} - ?X56==[ |- => fun x : nat => ?Goal] (goal evar) - ?X55==[x |- => nat] (parameter A of eq) - ?X54==[ |- => nat] (type of x) - -SHELF:|| -FUTURE GOALS STACK: - || - -Coq-Elpi mapping: -RAW: -?X57 <-> c0 \ X1 c0 -ELAB: -?X57 <-> X0 - -#goals = 2 -[nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 - (X1 c0 c1) []), - nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 - (X3 c0 c1) [])] -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) -foo = 46 - : nat -bar = (false :: nil)%list - : list bool -baz = (46%nat :: nil)%list - : list nat -File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: -Warning: x is already taken, Elpi will make a name up [lib,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 -Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 -G1 is linear: name it _G1 (discard) or G1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: -Warning: -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] (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_elpi_lang.v) The age of alice is 20 Query assignments: @@ -1595,7 +1530,7 @@ Debug: rid:0 step:2 gid:7 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 3 {{{ Debug: @@ -1632,7 +1567,7 @@ Debug: rid:0 step:4 gid:9 user:rule:implication = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 5 {{{ Debug: @@ -1670,7 +1605,7 @@ Debug: rid:0 step:5 gid:10 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 6 {{{ Debug: @@ -1689,7 +1624,7 @@ Debug: rid:0 step:6 gid:11 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.006s) Debug: run 7 {{{ Debug: @@ -1751,7 +1686,7 @@ Debug: rid:0 step:9 gid:6 user:rule:builtin = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.000s) Query assignments: Ty = arr X4 (arr X3 X4) Debug: run 1 {{{ @@ -1778,7 +1713,7 @@ Debug: rid:1 step:1 gid:13 user:rule:and = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 2 {{{ Debug: @@ -1816,7 +1751,7 @@ Debug: rid:1 step:2 gid:16 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 3 {{{ Debug: @@ -1835,7 +1770,7 @@ Debug: rid:1 step:3 gid:17 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 4 {{{ Debug: @@ -1900,7 +1835,7 @@ Debug: rid:1 step:5 gid:19 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 6 {{{ Debug: @@ -1981,7 +1916,7 @@ Debug: rid:2 step:6 gid:28 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 7 {{{ Debug: @@ -2000,7 +1935,7 @@ Debug: rid:2 step:7 gid:29 user:rule:implication = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.000s) Debug: run 8 {{{ Debug: @@ -2304,14 +2239,115 @@ 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] -(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -Q apps/NES/elpi elpi.apps.NES.elpi -R apps/NES/theories elpi.apps.NES apps/NES/theories/NES.v) -File "./apps/NES/theories/NES.v", line 39, characters 0-42: +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/tutorial_coq_elpi_tactic.v) +Goal: +[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] +|- X0 c0 c1 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], c1] +(I, 0) +conj : forall [A B : Prop], A -> B -> A /\ B + +conj is not universe polymorphic +Arguments conj [A B]%type_scope _ _ +Expands to: Constructor Coq.Init.Logic.conj +(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) +[int 1, str x, str a b, + trm + (app + [global (indt «eq»), X0, + app [global (indc «S»), global (indc «O»)], global (indc «O»)])] +Using H ?p of type Q +Using H ?p of type Q +Using p of type P +[trm c0, trm c3, trm (app [c2, c3])] +found P +found P /\ P +Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], global (indc «O»)] +Proof state: + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X1 c0) + (app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], + global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ +EVARS: + ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} + ?X56==[ |- => fun x : nat => ?Goal] (goal evar) + ?X55==[x |- => nat] (parameter A of eq) + ?X54==[ |- => nat] (type of x) + +SHELF:|| +FUTURE GOALS STACK: + || + +Coq-Elpi mapping: +RAW: +?X57 <-> c0 \ X1 c0 +ELAB: +?X57 <-> X0 + +#goals = 2 +[nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 + (X1 c0 c1) []), + nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 + (X3 c0 c1) [])] +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) +foo = 46 + : nat +bar = (false :: nil)%list + : list bool +baz = (46%nat :: nil)%list + : list nat +File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: +Warning: x is already taken, Elpi will make a name up [lib,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: Warning: -Undeclared globals: -- File "/build/reproducible-path/coq-elpi-2.4.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] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 +Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 +G1 is linear: name it _G1 (discard) or G1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: +Warning: +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] +(cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_open_terms.v) +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 (cd _build/default && /usr/bin/coqc -q -w -deprecated-native-compiler-option -w -native-compiler-disabled -native-compiler ondemand -boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/engine -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/gramlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/interp -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/kernel -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/lib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/library -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/parsing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/perf -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/pretyping -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/printing -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/proofs -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/tactics -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vernac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/vm -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/dynlink -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/compiler -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/lexer_config -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/parser -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/trace/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/elpi/util -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/findlib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/menhirLib -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/ppx_deriving/runtime -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/re/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/seq -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/stdlib-shims -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/str -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/threads -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/unix -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/zarith -I src -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/btauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/cc -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/derive -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/extraction -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/firstorder -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/funind -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ltac2_ltac1 -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/micromega_core -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/nsatz -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/number_string_notation -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ring -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/rtauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssreflect -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/ssrmatching -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/tauto -I /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/../coq-core/plugins/zify -R /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq/theories Coq -Q elpi elpi_elpi -Q theories elpi -R examples elpi_examples examples/example_record_expansion.v) Debug: run 1 {{{ @@ -2340,7 +2376,7 @@ Debug: rid:0 step:1 gid:5 user:rule:implication = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.003s) Debug: run 2 {{{ Debug: @@ -2660,7 +2696,7 @@ Debug: rid:0 step:10 gid:18 user:rule:eq = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.004s) Debug: run 11 {{{ Debug: @@ -2726,7 +2762,7 @@ Debug: rid:0 step:12 gid:19 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 13 {{{ Debug: @@ -2862,7 +2898,7 @@ Debug: rid:0 step:18 gid:23 user:rule:eq = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.000s) Debug: run 19 {{{ Debug: @@ -3013,7 +3049,7 @@ Debug: rid:0 step:22 gid:26 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 23 {{{ Debug: @@ -3062,7 +3098,7 @@ Debug: rid:0 step:24 gid:27 user:rule:backchain:candidates = File "builtin_stdlib.elpi", line 279, column 0, characters 9290-9316: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.002s) Debug: select 13 {{{ Debug: @@ -3114,7 +3150,7 @@ Debug: rid:0 step:24 gid:28 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 25 {{{ Debug: @@ -3317,7 +3353,7 @@ c1, c6, c8], app [c3, c7, c9]]]]) -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 28 {{{ Debug: @@ -3821,7 +3857,7 @@ Debug: rid:1 step:363 gid:1045 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.003s) Debug: run 364 {{{ Debug: @@ -3878,7 +3914,7 @@ Debug: rid:1 step:364 gid:1048 user:newgoal = X8 = «expanded_g» -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 365 {{{ Debug: @@ -3897,7 +3933,7 @@ Debug: rid:1 step:365 gid:1048 user:rule:eq = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 366 {{{ Debug: @@ -3955,7 +3991,7 @@ Debug: rid:1 step:367 gid:1047 user:rule:backchain:candidates = File "builtin_stdlib.elpi", line 279, column 0, characters 9290-9316: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 271 {{{ Debug: @@ -4051,7 +4087,7 @@ Debug: rid:1 step:367 gid:1049 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 368 {{{ Debug: @@ -4130,7 +4166,7 @@ Debug: rid:1 step:368 gid:1049 user:rule:eq = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.003s) Debug: run 369 {{{ Debug: @@ -4304,7 +4340,7 @@ Debug: rid:1 step:371 gid:1052 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 372 {{{ Debug: @@ -4355,7 +4391,7 @@ Debug: rid:1 step:372 gid:1052 user:rule:builtin = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) expanded_g = fun T : Type => let X := T in @@ -4713,7 +4749,7 @@ [elpi.TC.hints,elpi,default] make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' dh_auto_test - make -j42 test + make -j20 test make[1]: Entering directory '/build/reproducible-path/coq-elpi-2.4.0' dune runtest File "src/coq_elpi_HOAS.ml", line 1675, characters 33-58: @@ -4736,6 +4772,7 @@ 2409 | type 'arg tactic_main = Solve of 'arg list | Custom of string ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 34 [unused-type-declaration]: unused type tactic_main. +(eq_refl : 2 = (let z := 1 in S z)) goal X0 c0 c1 c2 c3 is [decl c3 `H` (app [global (const «lt»), c0, c1]), @@ -4746,32 +4783,39 @@ prod `_` (app [global (const «lt»), c1, c2]) c4 \ app [global (const «lt»), c0, c2] 3 -Notation p2 := (p2 nat 3 x) -example_import_projections.p1 nat 3 x : nat - : nat -p1 : forall (T : Type) (t : T), r T t -> nat - : forall (T : Type) (t : T), r T t -> nat -eq_refl -: -example_import_projections.p1 bool false (Build bool false 3 eq_refl eq_refl) = -3 - : example_import_projections.p1 bool false - (Build bool false 3 eq_refl eq_refl) = 3 -example_import_projections.f1 _ x - : bool -foo = -{f1 : Type & {f2 : f1 -> Type & forall t : f1, f2 t -> bool}} - : Type -mk_foo = -fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => -existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 - (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) - : forall (f1 : Type) (f2 : f1 -> Type), - (forall t : f1, f2 t -> bool) -> foo +DEBUG: attempt at fuzzing binary op: global (indc «PLUS») +DEBUG: attempt at fuzzing binary op: global (const «Nat.add») +DEBUG: attempt at fuzzing binary op: global (indc «AND») +DEBUG: fuzzed! +DEBUG: attempt at fuzzing binary op: global (const «andb») +DEBUG: attempt at fuzzing binary op: global (indc «OR») +DEBUG: fuzzed! +DEBUG: attempt at fuzzing binary op: global (const «orb») +DEBUG: attempt at fuzzing binary op: global (indc «EQ») +DEBUG: attempt at fuzzing binary op: global (const «Nat.eqb») +Inductive eval1 : forall T : ty, Exp T -> Val T -> Prop := + E_Num1 : forall n : nat, eval1 N (NUM n) (iNv n) + | E_Bool1 : forall b : bool, eval1 B (BOOL b) (iBv b) + | E_Plus1 : forall (e1 e2 : Exp N) (n1 n2 : nat), + eval1 N e1 (iNv n1) -> + eval1 N e2 (iNv n2) -> eval1 N (PLUS e1 e2) (iNv (n1 + n2)) + | E_AND1 : forall (e1 e2 : Exp B) (b1 b2 : bool), + eval1 B e1 (iBv b1) -> + eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 && b2)) + | E_OR1 : forall (e1 e2 : Exp B) (b1 b2 : bool), + eval1 B e1 (iBv b1) -> + eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 || b2)) + | E_EQ1 : forall (e1 e2 : Exp N) (n1 n2 : nat), + eval1 N e1 (iNv n1) -> + eval1 N e2 (iNv n2) -> eval1 B (EQ e1 e2) (iBv (Nat.eqb n1 n2)). -Arguments mk_foo f1%type_scope (f2 f3)%function_scope -3 + 7 becomes fun (x : ?e) (x0 : ?e0) => S (S x0) + S (S (S (S (S (S x))))) -(eq_refl : 2 = (let z := 1 in S z)) +Arguments eval1 T _ _ +Arguments E_Num1 n%nat_scope +Arguments E_Bool1 b%bool_scope +Arguments E_Plus1 e1 e2 (n1 n2)%nat_scope _ _ +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 _ _ Query assignments: GRnat = indt «nat» GRplus = const «Nat.add» @@ -5213,6 +5257,92 @@ sweet! brr yummy! +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.Module23» +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: @@ -5220,6 +5350,134 @@ Please add the following text to your program: type ns list string -> modpath -> prop. [elpi.missing-types,elpi.typecheck,elpi,default] +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 +mk_foo = +fun (f1 : Type) (f2 : f1 -> Type) (f3 : forall t : f1, f2 t -> bool) => +existT (fun f4 : Type => {f5 : f4 -> Type & forall t : f4, f5 t -> bool}) f1 + (existT (fun f4 : f1 -> Type => forall t : f1, f4 t -> bool) f2 f3) + : forall (f1 : Type) (f2 : f1 -> Type), + (forall t : f1, f2 t -> bool) -> foo + +Arguments mk_foo f1%type_scope (f2 f3)%function_scope +Notation p2 := (p2 nat 3 x) +example_import_projections.p1 nat 3 x : nat + : nat +p1 : forall (T : Type) (t : T), r T t -> nat + : forall (T : Type) (t : T), r T t -> nat +eq_refl +: +example_import_projections.p1 bool false (Build bool false 3 eq_refl eq_refl) = +3 + : example_import_projections.p1 bool false + (Build bool false 3 eq_refl eq_refl) = 3 +example_import_projections.f1 _ x + : bool +Goal: +[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] +|- X0 c0 c1 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], c1] +(I, 0) +conj : forall [A B : Prop], A -> B -> A /\ B + +conj is not universe polymorphic +Arguments conj [A B]%type_scope _ _ +Expands to: Constructor Coq.Init.Logic.conj +(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) +[int 1, str x, str a b, + trm + (app + [global (indt «eq»), X0, + app [global (indc «S»), global (indc «O»)], global (indc «O»)])] +Using H ?p of type Q +Using H ?p of type Q +Using p of type P +[trm c0, trm c3, trm (app [c2, c3])] +found P +found P /\ P +Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : +app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], global (indc «O»)] +Proof state: + {c0} : decl c0 `x` (global (indt «nat»)) + ?- evar (X1 c0) + (app + [global (indt «eq»), global (indt «nat»), + app + [global (const «Nat.add»), c0, + app [global (indc «S»), global (indc «O»)]], + global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ +EVARS: + ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} + ?X56==[ |- => fun x : nat => ?Goal] (goal evar) + ?X55==[x |- => nat] (parameter A of eq) + ?X54==[ |- => nat] (type of x) + +SHELF:|| +FUTURE GOALS STACK: + || + +Coq-Elpi mapping: +RAW: +?X57 <-> c0 \ X1 c0 +ELAB: +?X57 <-> X0 + +#goals = 2 +[nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 + (X1 c0 c1) []), + nabla c0 \ + nabla c1 \ + seal + (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 + (X3 c0 c1) [])] +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) +(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) +foo = 46 + : nat +bar = (false :: nil)%list + : list bool +baz = (46%nat :: nil)%list + : list nat +File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: +Warning: x is already taken, Elpi will make a name up [lib,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 +B is linear: name it _B (discard) or B_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 +Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: +Warning: +File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 +G1 is linear: name it _G1 (discard) or G1_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: +Warning: +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 age of alice is 20 Query assignments: A = 20 @@ -5348,7 +5606,7 @@ Debug: rid:0 step:1 gid:4 user:rule:and = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 2 {{{ Debug: @@ -5386,7 +5644,7 @@ Debug: rid:0 step:2 gid:7 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 3 {{{ Debug: @@ -5404,7 +5662,7 @@ Debug: rid:0 step:3 gid:8 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.006s) Debug: run 4 {{{ Debug: @@ -5704,7 +5962,7 @@ Debug: rid:1 step:6 gid:19 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.006s) Debug: select 5 {{{ Debug: @@ -5724,7 +5982,7 @@ Debug: rid:1 step:6 gid:19 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 7 {{{ Debug: @@ -5747,7 +6005,7 @@ Debug: rid:1 step:7 gid:20 user:backchain:fail-to = unify X5 with arr X5 X2 -Debug: }}} -> (0.001s) +Debug: }}} -> (0.000s) Debug: select 7 {{{ Debug: @@ -5772,7 +6030,7 @@ Debug: rid:2 step:6 gid:28 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 7 {{{ Debug: @@ -5833,7 +6091,7 @@ Debug: rid:3 step:2 gid:31 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 3 {{{ Debug: @@ -5858,7 +6116,7 @@ Debug: rid:3 step:2 gid:33 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 5 {{{ Debug: @@ -5871,7 +6129,7 @@ Debug: rid:3 step:5 gid:35 user:rule:backchain:candidates = File "./examples/tutorial_elpi_lang.v", line 596, column 2, characters 15366-15421: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 4 {{{ Debug: @@ -5896,7 +6154,7 @@ Debug: rid:3 step:5 gid:36 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 8 {{{ Debug: @@ -5922,7 +6180,7 @@ Debug: rid:3 step:8 gid:38 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) arr X4 (arr X3 X4) Query assignments: Ty = arr X4 (arr X3 X4) @@ -5938,7 +6196,7 @@ Debug: rid:4 step:8 gid:47 user:rule:backchain:candidates = File "(context step_id:4)", line 1, column 0, characters 0-0: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 5 {{{ Debug: @@ -6068,228 +6326,6 @@ 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] -DEBUG: attempt at fuzzing binary op: global (indc «PLUS») -DEBUG: attempt at fuzzing binary op: global (const «Nat.add») -DEBUG: attempt at fuzzing binary op: global (indc «AND») -DEBUG: fuzzed! -DEBUG: attempt at fuzzing binary op: global (const «andb») -DEBUG: attempt at fuzzing binary op: global (indc «OR») -DEBUG: fuzzed! -DEBUG: attempt at fuzzing binary op: global (const «orb») -DEBUG: attempt at fuzzing binary op: global (indc «EQ») -DEBUG: attempt at fuzzing binary op: global (const «Nat.eqb») -Inductive eval1 : forall T : ty, Exp T -> Val T -> Prop := - E_Num1 : forall n : nat, eval1 N (NUM n) (iNv n) - | E_Bool1 : forall b : bool, eval1 B (BOOL b) (iBv b) - | E_Plus1 : forall (e1 e2 : Exp N) (n1 n2 : nat), - eval1 N e1 (iNv n1) -> - eval1 N e2 (iNv n2) -> eval1 N (PLUS e1 e2) (iNv (n1 + n2)) - | E_AND1 : forall (e1 e2 : Exp B) (b1 b2 : bool), - eval1 B e1 (iBv b1) -> - eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 && b2)) - | E_OR1 : forall (e1 e2 : Exp B) (b1 b2 : bool), - eval1 B e1 (iBv b1) -> - eval1 B e2 (iBv b2) -> eval1 B (AND e1 e2) (iBv (b1 || b2)) - | E_EQ1 : forall (e1 e2 : Exp N) (n1 n2 : nat), - eval1 N e1 (iNv n1) -> - eval1 N e2 (iNv n2) -> eval1 B (EQ e1 e2) (iBv (Nat.eqb n1 n2)). - -Arguments eval1 T _ _ -Arguments E_Num1 n%nat_scope -Arguments E_Bool1 b%bool_scope -Arguments E_Plus1 e1 e2 (n1 n2)%nat_scope _ _ -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 _ _ -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.Module5» -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] -Goal: -[decl c1 `y` (global (indt «nat»)), decl c0 `x` (global (indt «nat»))] -|- X0 c0 c1 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], c1] -(I, 0) -conj : forall [A B : Prop], A -> B -> A /\ B - -conj is not universe polymorphic -Arguments conj [A B]%type_scope _ _ -Expands to: Constructor Coq.Init.Logic.conj -(ex_intro (fun t : Prop => True /\ True /\ t) True (conj I (conj I I))) -[int 1, str x, str a b, - trm - (app - [global (indt «eq»), X0, - app [global (indc «S»), global (indc «O»)], global (indc «O»)])] -Using H ?p of type Q -Using H ?p of type Q -Using p of type P -[trm c0, trm c3, trm (app [c2, c3])] -found P -found P /\ P -Goal: [decl c0 `x` (global (indt «nat»))] |- X0 c0 : -app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], global (indc «O»)] -Proof state: - {c0} : decl c0 `x` (global (indt «nat»)) - ?- evar (X1 c0) - (app - [global (indt «eq»), global (indt «nat»), - app - [global (const «Nat.add»), c0, - app [global (indc «S»), global (indc «O»)]], - global (indc «O»)]) (X0 c0) /* suspended on X1, X0 */ -EVARS: - ?X57==[x |- x + 1 = 0] (goal evar) {?Goal} - ?X56==[ |- => fun x : nat => ?Goal] (goal evar) - ?X55==[x |- => nat] (parameter A of eq) - ?X54==[ |- => nat] (type of x) - -SHELF:|| -FUTURE GOALS STACK: - || - -Coq-Elpi mapping: -RAW: -?X57 <-> c0 \ X1 c0 -ELAB: -?X57 <-> X0 - -#goals = 2 -[nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X0 c0 c1) c0 - (X1 c0 c1) []), - nabla c0 \ - nabla c1 \ - seal - (goal [decl c1 `Q` (sort prop), decl c0 `P` (sort prop)] (X2 c0 c1) c1 - (X3 c0 c1) [])] -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal (conj ?Goal0 ?Goal1)) -(fun (P Q : Prop) (p : P) (q : Q) => conj ?Goal0 (conj ?Goal ?Goal0)) -foo = 46 - : nat -bar = (false :: nil)%list - : list bool -baz = (46%nat :: nil)%list - : list nat -File "./examples/tutorial_coq_elpi_tactic.v", line 632, characters 0-22: -Warning: x is already taken, Elpi will make a name up [lib,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 32-33 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 40-41 -B is linear: name it _B (discard) or B_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 742, characters 14-17 -Ctx is linear: name it _Ctx (discard) or Ctx_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46: -Warning: -File "./examples/tutorial_coq_elpi_tactic.v", line 843, characters 44-46 -G1 is linear: name it _G1 (discard) or G1_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./examples/tutorial_coq_elpi_tactic.v", line 844, characters 44-46: -Warning: -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 @@ -6321,7 +6357,7 @@ Debug: rid:0 step:1 gid:5 user:rule:implication = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 2 {{{ Debug: @@ -6387,7 +6423,7 @@ Debug: rid:0 step:4 gid:5 user:rule:backchain:candidates = File "elpi-builtin.elpi", line 36, column 0, characters 388-400: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.002s) Debug: select 5 {{{ Debug: @@ -6765,7 +6801,7 @@ Debug: rid:0 step:14 gid:22 user:newgoal = X1 = const «f» -Debug: }}} -> (0.000s) +Debug: }}} -> (0.002s) Debug: run 15 {{{ Debug: @@ -6843,7 +6879,7 @@ Debug: rid:0 step:18 gid:23 user:rule:eq = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.000s) Debug: run 19 {{{ Debug: @@ -7095,7 +7131,7 @@ Debug: rid:0 step:24 gid:28 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 25 {{{ Debug: @@ -7144,7 +7180,7 @@ Debug: rid:0 step:25 gid:31 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.003s) Debug: run 26 {{{ Debug: @@ -7180,7 +7216,7 @@ Debug: rid:0 step:26 gid:33 user:rule:backchain = success -Debug: }}} -> (0.003s) +Debug: }}} -> (0.000s) Debug: run 27 {{{ Debug: @@ -7298,7 +7334,7 @@ c1, c6, c8], app [c3, c7, c9]]]]) -Debug: }}} -> (0.001s) +Debug: }}} -> (0.004s) Debug: run 28 {{{ Debug: @@ -7634,7 +7670,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.001s) +Debug: }}} -> (0.002s) Debug: select 270 {{{ Debug: @@ -7802,7 +7838,7 @@ Debug: rid:1 step:363 gid:1045 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.006s) Debug: run 364 {{{ Debug: @@ -7859,7 +7895,7 @@ Debug: rid:1 step:364 gid:1048 user:newgoal = X8 = «expanded_g» -Debug: }}} -> (0.001s) +Debug: }}} -> (0.004s) Debug: run 365 {{{ Debug: @@ -7936,7 +7972,7 @@ Debug: rid:1 step:367 gid:1047 user:rule:backchain:candidates = File "builtin_stdlib.elpi", line 279, column 0, characters 9290-9316: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 271 {{{ Debug: @@ -8032,7 +8068,7 @@ Debug: rid:1 step:367 gid:1049 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 368 {{{ Debug: @@ -8111,7 +8147,7 @@ Debug: rid:1 step:368 gid:1049 user:rule:eq = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 369 {{{ Debug: @@ -8285,7 +8321,7 @@ Debug: rid:1 step:371 gid:1052 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 372 {{{ Debug: @@ -8336,7 +8372,7 @@ Debug: rid:1 step:372 gid:1052 user:rule:builtin = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.002s) expanded_g = fun T : Type => let X := T in @@ -8705,6 +8741,21 @@ (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] dune build tests +File "./tests/perf_calls.v", line 11, characters 2-3: +Warning: +File "./tests/perf_calls.v", line 11, characters 2-3 +N is linear: name it _N (discard) or N_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/perf_calls.v", line 13, characters 9-11: +Warning: +File "./tests/perf_calls.v", line 13, characters 9-11 +GR is linear: name it _GR (discard) or GR_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/perf_calls.v", line 13, characters 7-8: +Warning: +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] «elpi.tests.test_API_notations.abbr» Query assignments: A = «elpi.tests.test_API_notations.abbr» @@ -8783,439 +8834,6 @@ Query assignments: %arg1 = «elpi.tests.test_API_notations.abbr2» 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: - CA = «a» - CB = «b» - CC = «c» -d : nat - -d is not universe polymorphic -Expands to: Variable d -eq_refl : e2 = 3 - : e2 = 3 -Query assignments: - X = «x» -fx : nat -> nat - : nat -> nat -opaque_3 : nat - -opaque_3 is not universe polymorphic -opaque_3 is opaque -Expands to: Constant elpi.tests.test_API_section.opaque_3 -foo : nat - : nat -bar : bool -> nat - : bool -> 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» - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -c2 -global (indt «nat») -z -nat -Query assignments: - %arg1 = c0 \ c1 \ c2 \ -z - %arg2 = c0 \ c1 \ c2 \ -nat - T = global (indt «nat») -c2 -global (indt «nat») -z -nat -Query assignments: - %arg1 = c0 \ c1 \ c2 \ -z - %arg2 = c0 \ c1 \ c2 \ -nat - T = global (indt «nat») -Illegal application (Non-functional construction): -The expression "Prop" of type "Type" -cannot be applied to the term - "Prop" : "Type" -Query assignments: - E = Illegal application (Non-functional construction): -The expression "Prop" of type "Type" -cannot be applied to the term - "Prop" : "Type" -Unable to unify "bool" with "nat". -Query assignments: - Msg = Unable to unify "bool" with "nat". -Query assignments: - Cons = global (indc «cons») - GRCons = indc «cons» - GRList = indt «list» - GRNat = indt «nat» - GRNil = indc «nil» - GRZero = indc «O» - L = app - [global (indc «cons»), global (indt «nat»), global (indc «O»), - app [global (indc «nil»), global (indt «nat»)]] - LE = app - [global (indc «cons»), global (indt «nat»), global (indc «O»), - app [global (indc «nil»), global (indt «nat»)]] - List = global (indt «list») - Nat = global (indt «nat») - Nil = global (indc «nil») - Zero = global (indc «O») -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_typecheck.4 elpi.tests.test_API_typecheck.3 - elpi.tests.test_API_typecheck.2 elpi.tests.test_API_typecheck.1} |= - elpi.tests.test_API_typecheck.3 < elpi.tests.test_API_typecheck.2 - elpi.tests.test_API_typecheck.4 < elpi.tests.test_API_typecheck.1 - Set <= elpi.tests.test_API_typecheck.3 - Set <= elpi.tests.test_API_typecheck.4 - elpi.tests.test_API_typecheck.3 <= list.u0 - elpi.tests.test_API_typecheck.4 <= list.u0 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α1 := Type - α2 := Type -WEAK CONSTRAINTS: - - -global (indt «nat») -Query assignments: - T = global (indt «nat») - X1_ = global (indt «nat») - X2_ = global (indt «nat») -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_typecheck.9 elpi.tests.test_API_typecheck.8 - elpi.tests.test_API_typecheck.7 elpi.tests.test_API_typecheck.6 - elpi.tests.test_API_typecheck.5} |= - Set < elpi.tests.test_API_typecheck.7 - elpi.tests.test_API_typecheck.8 < elpi.tests.test_API_typecheck.6 - elpi.tests.test_API_typecheck.9 < elpi.tests.test_API_typecheck.5 - Set <= elpi.tests.test_API_typecheck.8 - Set <= elpi.tests.test_API_typecheck.9 - elpi.tests.test_API_typecheck.8 <= list.u0 - elpi.tests.test_API_typecheck.9 <= list.u0 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α3 := Type - α4 := Type - α5 := Type -WEAK CONSTRAINTS: - - -«elpi.tests.test_API_typecheck.10» -Query assignments: - U = «elpi.tests.test_API_typecheck.10» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_typecheck.10} |= - Set <= elpi.tests.test_API_typecheck.10 -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_typecheck.10} -FLEXIBLE UNIVERSES: - elpi.tests.test_API_typecheck.10 -SORTS: - -WEAK CONSTRAINTS: - - -Unable to unify "Set" with "Prop" (universe inconsistency: Cannot enforce Set -<= Prop). -Query assignments: - E = Unable to unify "Set" with "Prop" (universe inconsistency: Cannot enforce Set -<= Prop). -File "./tests/test_API_typecheck.v", line 59, characters 2-4: -Warning: -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] -File "./tests/perf_calls.v", line 11, characters 2-3: -Warning: -File "./tests/perf_calls.v", line 11, characters 2-3 -N is linear: name it _N (discard) or N_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/perf_calls.v", line 13, characters 9-11: -Warning: -File "./tests/perf_calls.v", line 13, characters 9-11 -GR is linear: name it _GR (discard) or GR_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/perf_calls.v", line 13, characters 7-8: -Warning: -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] -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» -File "./tests/test_File3.v", line 18, characters 2-16: -Warning: This command does not support this attribute: phase. -[unsupported-attributes,parsing,default] -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: - P = /build/reproducible-path/coq-elpi-2.4.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] -Query assignments: E = fun `n` (global (indt «nat»)) c0 \ fun `t` (app [global (const «T2»), c0]) c1 \ fun `x` @@ -9404,756 +9022,226 @@ Query q X0 Query r X0 Result r 1 -d1 - : nat -d2 - : nat -i1 - : Prop -i2 - : Prop -k1 - : i1 -k2 - : i2 -r1 - : Set -r2 - : Type -f1 - : r1 -> nat -f2 - : r2 -> nat -Query assignments: - GR = const «myi» Query assignments: - GR = const «myi» -myi : Reflexive R - : Reflexive R -Query assignments: - GR = const «myi» + CA = «a» + CB = «b» + CC = «c» +d : nat + +d is not universe polymorphic +Expands to: Variable d +eq_refl : e2 = 3 + : e2 = 3 Query assignments: - L = [tc-instance (const «relation_equivalence_rewrite_relation») 0, - tc-instance (const «iff_rewrite_relation») 2, - tc-instance (const «impl_rewrite_relation») 3, - tc-instance (const «inverse_impl_rewrite_relation») 3, - tc-instance (const «BinInt.Z.lt_strorder») 0, - tc-instance (const «BinNat.N.lt_strorder») 0, - tc-instance (const «BinPos.Pos.lt_strorder») 0, - tc-instance (const «PeanoNat.Nat.lt_strorder») 0, - tc-instance (const «CRelationClasses.RewriteRelation_instance_2») 0, - tc-instance (const «CRelationClasses.RewriteRelation_instance_1») 0, - tc-instance (const «CRelationClasses.RewriteRelation_instance_0») 0, - tc-instance (const «CRelationClasses.equivalence_rewrite_crelation») 1, - tc-instance (const «Equivalence_PER») 10, - tc-instance (const «BinInt.Z.eqf_equiv») 0, - tc-instance (const «BinNat.N.eqf_equiv») 0, - tc-instance (const «PeanoNat.Nat.eqf_equiv») 0, - tc-instance (const «relation_equivalence_equivalence») 0, - tc-instance (const «predicate_equivalence_equivalence») 0, - tc-instance (const «iff_equivalence») 0, - tc-instance (const «Equivalence.pointwise_equivalence») 9, - tc-instance (const «eq_equivalence») 10, - tc-instance (const «Morphisms.flip_pars») 0, - tc-instance (const «Morphisms.impl_pars») 0, - tc-instance (const «Morphisms.iff_pars») 0, - tc-instance (const «Morphisms.eq_pars») 0, - tc-instance (const «CRelationClasses.Equivalence_PER») 10, - tc-instance (const «BinInt.Z.le_preorder») 0, - tc-instance (const «BinNat.N.le_preorder») 0, - tc-instance (const «BinPos.Pos.le_preorder») 0, - tc-instance (const «PeanoNat.Nat.le_preorder») 0, - tc-instance (const «relation_implication_preorder») 0, - tc-instance (const «predicate_implication_preorder») 0, - tc-instance (const «Equivalence_PreOrder») 10, - tc-instance (const «BinInt.Z.Decidable_ge_Z») 0, - tc-instance (const «BinInt.Z.Decidable_gt_Z») 0, - tc-instance (const «BinInt.Z.Decidable_le_Z») 0, - tc-instance (const «BinInt.Z.Decidable_lt_Z») 0, - tc-instance (const «BinInt.Z.Decidable_eq_Z») 0, - tc-instance (const «PeanoNat.Nat.Decidable_le_nat») 0, - tc-instance (const «PeanoNat.Nat.Decidable_eq_nat») 0, - tc-instance (const «Bool.Decidable_eq_bool») 0, - tc-instance (const «DecidableClass.Decidable_not») 1, - tc-instance (const «CRelationClasses.relation_equivalence_equivalence») 0, - tc-instance (const «CRelationClasses.iff_equivalence») 0, - tc-instance (const «CRelationClasses.eq_equivalence») 10, - tc-instance (const «CRelationClasses.relation_implication_preorder») 0, - tc-instance (const «SetoidTactics.equivalence_default») 4, - tc-instance (const «CRelationClasses.partial_order_antisym») 2, - tc-instance (const «CRelationClasses.iffT_Symmetric») 0, - tc-instance (const «CRelationClasses.iff_Symmetric») 0, - tc-instance (const «CRelationClasses.eq_Symmetric») 0, - tc-instance (const «CRelationClasses.Equivalence_Symmetric») 1, - tc-instance (const «CRelationClasses.PER_Symmetric») 3, - tc-instance (const «BinInt.Z.le_partialorder») 0, - tc-instance (const «BinNat.N.le_partialorder») 0, - tc-instance (const «BinPos.Pos.le_partorder») 0, - tc-instance (const «PeanoNat.Nat.le_partialorder») 0, - tc-instance (const «subrelation_partial_order») 0, - tc-instance (const «Morphisms.iff_flip_impl_subrelation») 2, - tc-instance (const «Morphisms.iff_impl_subrelation») 2, - tc-instance (const «Morphisms.pointwise_subrelation») 4, - tc-instance (const «iff_Transitive») 0, - tc-instance (const «impl_Transitive») 0, - tc-instance (const «eq_Transitive») 0, - tc-instance (const «Equivalence.equiv_transitive») 1, - tc-instance (const «Equivalence_Transitive») 1, - tc-instance (const «StrictOrder_Transitive») 1, - tc-instance (const «PreOrder_Transitive») 2, - tc-instance (const «PER_Transitive») 3, - tc-instance (const «BinInt.Z.divide_transitive») 5, - tc-instance (const «BinNat.N.divide_transitive») 5, - tc-instance (const «BinNat.N.Private_NZGcdProp.divide_transitive») 5, - tc-instance (const «PeanoNat.Nat.divide_transitive») 5, - tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_transitive») 5, - tc-instance (const «Equivalence.pointwise_transitive») 9, - tc-instance (const «CMorphisms.iffT_flip_arrow_subrelation») 2, - tc-instance (const «CMorphisms.iffT_arrow_subrelation») 2, - tc-instance (const «CMorphisms.iff_flip_impl_subrelation») 2, - tc-instance (const «CMorphisms.iff_impl_subrelation») 2, - tc-instance (const «CMorphisms.pointwise_subrelation») 4, - tc-instance (const «CMorphisms.proper_proper») 0, - tc-instance (const «CMorphisms.respectful_morphism») 0, - tc-instance (const «CMorphisms.compose_proper») 0, - tc-instance (const «CMorphisms.proper_subrelation_proper_arrow») 0, - tc-instance (const «CMorphisms.PER_type_morphism») 1, - tc-instance (const «CMorphisms.trans_contra_co_type_morphism») 1, - tc-instance (const «CMorphisms.subrelation_id_proper») 1, - tc-instance (const «CMorphisms.trans_co_eq_inv_arrow_morphism») 2, - tc-instance (const «CMorphisms.per_partial_app_type_morphism») 2, - tc-instance (const «CMorphisms.PartialOrder_proper_type») 3, - tc-instance (const «CMorphisms.trans_sym_contra_arrow_morphism») 3, - tc-instance (const «CMorphisms.trans_sym_co_inv_impl_type_morphism») 3, - tc-instance (const «CMorphisms.trans_co_impl_type_morphism») 3, - tc-instance (const «CMorphisms.trans_contra_inv_impl_type_morphism») 3, - tc-instance (const «CRelationClasses.iffT_Transitive») 0, - tc-instance (const «CRelationClasses.arrow_Transitive») 0, - tc-instance (const «CRelationClasses.iff_Transitive») 0, - tc-instance (const «CRelationClasses.impl_Transitive») 0, - tc-instance (const «CRelationClasses.eq_Transitive») 0, - tc-instance (const «CRelationClasses.Equivalence_Transitive») 1, - tc-instance (const «CRelationClasses.StrictOrder_Transitive») 1, - tc-instance (const «CRelationClasses.PreOrder_Transitive») 2, - tc-instance (const «CRelationClasses.PER_Transitive») 3, - tc-instance (const «StrictOrder_Irreflexive») 1, - tc-instance (const «StrictOrder_Asymmetric») 1, - tc-instance (const «BinInt.Z.ones_wd») 0, - tc-instance (const «BinInt.Z.lnot_wd») 0, - tc-instance (const «BinInt.Z.clearbit_wd») 0, - tc-instance (const «BinInt.Z.setbit_wd») 0, - tc-instance (const «BinInt.Z.ldiff_wd») 0, - tc-instance (const «BinInt.Z.lor_wd») 0, - tc-instance (const «BinInt.Z.land_wd») 0, - tc-instance (const «BinInt.Z.lxor_wd») 0, - tc-instance (const «BinInt.Z.div2_wd») 0, - tc-instance (const «BinInt.Z.shiftl_wd») 0, - tc-instance (const «BinInt.Z.shiftr_wd») 0, - tc-instance (const «BinInt.Z.testbit_eqf») 0, - tc-instance (const «BinInt.Z.b2z_wd») 0, - tc-instance (const «BinInt.Z.eqb_compat») 0, - tc-instance (const «BinInt.Z.lcm_wd») 0, - tc-instance (const «BinInt.Z.Bezout_wd») 0, - tc-instance (const «BinInt.Z.gcd_wd») 0, - tc-instance (const «BinInt.Z.divide_wd») 0, - tc-instance (const «BinInt.Z.log2_up_wd») 0, - tc-instance (const «BinInt.Z.log2_wd») 0, - tc-instance (const «BinInt.Z.sqrt_up_wd») 0, - tc-instance (const «BinInt.Z.sqrt_wd») 0, - tc-instance (const «BinInt.Z.odd_wd») 0, - tc-instance (const «BinInt.Z.even_wd») 0, - tc-instance (const «BinInt.Z.Odd_wd») 0, - tc-instance (const «BinInt.Z.Even_wd») 0, - tc-instance (const «BinInt.Z.sgn_wd») 0, - tc-instance (const «BinInt.Z.abs_wd») 0, - tc-instance (const «BinInt.Z.min_compat») 0, - tc-instance (const «BinInt.Z.max_compat») 0, - tc-instance (const «BinInt.Z.Proper_instance_0») 0, - tc-instance (const «BinInt.Z.le_wd») 0, - tc-instance (const «BinNat.N.lnot_wd») 0, - tc-instance (const «BinNat.N.ones_wd») 0, - tc-instance (const «BinNat.N.clearbit_wd») 0, - tc-instance (const «BinNat.N.setbit_wd») 0, - tc-instance (const «BinNat.N.ldiff_wd») 0, - tc-instance (const «BinNat.N.lor_wd») 0, - tc-instance (const «BinNat.N.land_wd») 0, - tc-instance (const «BinNat.N.lxor_wd») 0, - tc-instance (const «BinNat.N.div2_wd») 0, - tc-instance (const «BinNat.N.shiftl_wd») 0, - tc-instance (const «BinNat.N.shiftr_wd») 0, - tc-instance (const «BinNat.N.testbit_eqf») 0, - tc-instance (const «BinNat.N.b2n_proper») 0, - tc-instance (const «BinNat.N.eqb_compat») 0, - tc-instance (const «BinNat.N.lcm_wd») 0, - tc-instance (const «BinNat.N.Private_NLcmProp.lcm_wd») 0, - tc-instance (const «BinNat.N.Bezout_wd») 0, - tc-instance (const «BinNat.N.gcd_wd») 0, - tc-instance (const «BinNat.N.divide_wd») 0, - tc-instance (const «BinNat.N.Private_NZGcdProp.gcd_wd») 0, - tc-instance (const «BinNat.N.Private_NZGcdProp.divide_wd») 0, - tc-instance (const «BinNat.N.log2_up_wd») 0, - tc-instance (const «BinNat.N.log2_wd») 0, - tc-instance (const «BinNat.N.sqrt_up_wd») 0, - tc-instance (const «BinNat.N.Private_NZSqrt.sqrt_wd») 0, - tc-instance (const «BinNat.N.odd_wd») 0, - tc-instance (const «BinNat.N.even_wd») 0, - tc-instance (const «BinNat.N.Odd_wd») 0, - tc-instance (const «BinNat.N.Even_wd») 0, - tc-instance (const «BinNat.N.min_compat») 0, - tc-instance (const «BinNat.N.max_compat») 0, - tc-instance (const «BinNat.N.Proper_instance_0») 0, - tc-instance (const «BinNat.N.lt_alt_wd») 0, - tc-instance (const «BinNat.N.le_alt_wd») 0, - tc-instance (const «BinNat.N.le_wd») 0, - tc-instance (const «BinNat.N.recursion_wd») 0, - tc-instance (const «BinPos.Pos.min_compat») 0, - tc-instance (const «BinPos.Pos.max_compat») 0, - tc-instance (const «BinPos.Pos.Proper_instance_0») 0, - tc-instance (const «BinPos.Pos.lt_compat») 0, - tc-instance (const «BinPos.Pos.eqb_compat») 0, - tc-instance (const «PeanoNat.Nat.lnot_wd») 0, - tc-instance (const «PeanoNat.Nat.ones_wd») 0, - tc-instance (const «PeanoNat.Nat.clearbit_wd») 0, - tc-instance (const «PeanoNat.Nat.setbit_wd») 0, - tc-instance (const «PeanoNat.Nat.ldiff_wd») 0, - tc-instance (const «PeanoNat.Nat.lor_wd») 0, - tc-instance (const «PeanoNat.Nat.land_wd») 0, - tc-instance (const «PeanoNat.Nat.lxor_wd») 0, - tc-instance (const «PeanoNat.Nat.div2_wd») 0, - tc-instance (const «PeanoNat.Nat.shiftl_wd») 0, - tc-instance (const «PeanoNat.Nat.shiftr_wd») 0, - tc-instance (const «PeanoNat.Nat.testbit_eqf») 0, - tc-instance (const «PeanoNat.Nat.b2n_proper») 0, - tc-instance (const «PeanoNat.Nat.eqb_compat») 0, - tc-instance (const «PeanoNat.Nat.lcm_wd») 0, - tc-instance (const «PeanoNat.Nat.Private_NLcmProp.lcm_wd») 0, - tc-instance (const «PeanoNat.Nat.Bezout_wd») 0, - tc-instance (const «PeanoNat.Nat.gcd_wd») 0, - tc-instance (const «PeanoNat.Nat.divide_wd») 0, - tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.gcd_wd») 0, - tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_wd») 0, - tc-instance (const «PeanoNat.Nat.log2_up_wd») 0, - tc-instance (const «PeanoNat.Nat.log2_wd») 0, - tc-instance (const «PeanoNat.Nat.sqrt_up_wd») 0, - tc-instance (const «PeanoNat.Nat.Private_NZSqrt.sqrt_wd») 0, - tc-instance (const «PeanoNat.Nat.odd_wd») 0, - tc-instance (const «PeanoNat.Nat.even_wd») 0, - tc-instance (const «PeanoNat.Nat.Odd_wd») 0, - tc-instance (const «PeanoNat.Nat.Even_wd») 0, - tc-instance (const «PeanoNat.Nat.min_compat») 0, - tc-instance (const «PeanoNat.Nat.max_compat») 0, - tc-instance (const «PeanoNat.Nat.Proper_instance_0») 0, - tc-instance (const «PeanoNat.Nat.lt_alt_wd») 0, - tc-instance (const «PeanoNat.Nat.le_alt_wd») 0, - tc-instance (const «PeanoNat.Nat.le_wd») 0, - tc-instance (const «PeanoNat.Nat.recursion_wd») 0, - tc-instance (const «PeanoNat.Nat.testbit_wd») 0, - tc-instance (const «PeanoNat.Nat.lt_wd») 0, - tc-instance (const «PeanoNat.Nat.mod_wd») 0, - tc-instance (const «PeanoNat.Nat.div_wd») 0, - tc-instance (const «PeanoNat.Nat.pow_wd») 0, - tc-instance (const «PeanoNat.Nat.mul_wd») 0, - tc-instance (const «PeanoNat.Nat.sub_wd») 0, - tc-instance (const «PeanoNat.Nat.add_wd») 0, - tc-instance (const «PeanoNat.Nat.pred_wd») 0, - tc-instance (const «PeanoNat.Nat.succ_wd») 0, - tc-instance (const «Morphisms_Prop.well_founded_morphism») 0, - tc-instance (const «Morphisms_Prop.Acc_rel_morphism») 0, - tc-instance (const «Morphisms_Prop.all_iff_morphism») 0, - tc-instance (const «Morphisms_Prop.ex_iff_morphism») 0, - tc-instance (const «Morphisms_Prop.iff_iff_iff_impl_morphism») 0, - tc-instance (const «Morphisms_Prop.or_iff_morphism») 0, - tc-instance (const «Morphisms_Prop.and_iff_morphism») 0, - tc-instance (const «Morphisms_Prop.not_iff_morphism») 0, - tc-instance (const «Morphisms.proper_proper») 0, - tc-instance (const «Morphisms.respectful_morphism») 0, - tc-instance (const «Morphisms.compose_proper») 0, - tc-instance (const «Morphisms.proper_subrelation_proper») 0, - tc-instance (const «Morphisms_Prop.all_flip_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.all_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.ex_flip_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.ex_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.or_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.and_impl_morphism») 1, - tc-instance (const «Morphisms_Prop.not_impl_morphism») 1, - tc-instance (const «Morphisms.PER_morphism») 1, - tc-instance (const «Morphisms.trans_contra_co_morphism») 1, - tc-instance (const «Morphisms.subrelation_id_proper») 1, - tc-instance (const «Morphisms_Prop.Acc_pt_morphism») 2, - tc-instance (const «Morphisms.trans_co_eq_inv_impl_morphism») 2, - tc-instance (const «Morphisms.per_partial_app_morphism») 2, - tc-instance (const «Morphisms.PartialOrder_proper») 3, - tc-instance (const «Morphisms.trans_sym_contra_impl_morphism») 3, - tc-instance (const «Morphisms.trans_sym_co_inv_impl_morphism») 3, - tc-instance (const «Morphisms.trans_co_impl_morphism») 3, - tc-instance (const «Morphisms.trans_contra_inv_impl_morphism») 3, - tc-instance (const «CRelationClasses.StrictOrder_Irreflexive») 1, - tc-instance (const «CRelationClasses.StrictOrder_Asymmetric») 1, - tc-instance (const «iff_Reflexive») 0, - tc-instance (const «impl_Reflexive») 0, - tc-instance (const «eq_Reflexive») 0, - tc-instance (const «Equivalence.equiv_reflexive») 1, - tc-instance (const «Morphisms.reflexive_eq_dom_reflexive») 1, - tc-instance (const «Equivalence_Reflexive») 1, - tc-instance (const «PreOrder_Reflexive») 2, - tc-instance (const «BinInt.Z.divide_reflexive») 5, - tc-instance (const «BinNat.N.divide_reflexive») 5, - tc-instance (const «BinNat.N.Private_NZGcdProp.divide_reflexive») 5, - tc-instance (const «PeanoNat.Nat.divide_reflexive») 5, - tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_reflexive») 5, - tc-instance (const «Equivalence.pointwise_reflexive») 9, - tc-instance (const «myi») 10, - tc-instance (const «ssrclasses.iff_Reflexive») 0, - tc-instance (const «ssrclasses.eq_Reflexive») 0, - tc-instance (const «ssrsetoid.compat_Reflexive») 12, - tc-instance (const «CRelationClasses.iffT_Reflexive») 0, - tc-instance (const «CRelationClasses.arrow_Reflexive») 0, - tc-instance (const «CRelationClasses.iff_Reflexive») 0, - tc-instance (const «CRelationClasses.impl_Reflexive») 0, - tc-instance (const «CRelationClasses.eq_Reflexive») 0, - tc-instance (const «CMorphisms.reflexive_eq_dom_reflexive») 1, - tc-instance (const «CRelationClasses.Equivalence_Reflexive») 1, - tc-instance (const «CRelationClasses.PreOrder_Reflexive») 2, - tc-instance (const «partial_order_antisym») 2, - tc-instance (const «iff_Symmetric») 0, - tc-instance (const «neq_Symmetric») 0, - tc-instance (const «eq_Symmetric») 0, - tc-instance (const «Equivalence.equiv_symmetric») 1, - tc-instance (const «Equivalence_Symmetric») 1, - tc-instance (const «PER_Symmetric») 3, - tc-instance (const «Equivalence.pointwise_symmetric») 9] + X = «x» +fx : nat -> nat + : nat -> nat +opaque_3 : nat + +opaque_3 is not universe polymorphic +opaque_3 is opaque +Expands to: Constant elpi.tests.test_API_section.opaque_3 +foo : nat + : nat +bar : bool -> nat + : bool -> nat Query assignments: - GR = indt «RewriteRelation» - L = [tc-instance (const «relation_equivalence_rewrite_relation») 0, - tc-instance (const «iff_rewrite_relation») 2, - tc-instance (const «impl_rewrite_relation») 3, - tc-instance (const «inverse_impl_rewrite_relation») 3] + 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: - GR = indt «RewriteRelation» + %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: - GR = indt «True» + I = «Y.i» + ID = j + J = «Y.j» + MP = «elpi.tests.test_API_module.Y» + P = [elpi, tests, test_API_module, Y] Query assignments: - Check = c0 \ -sigma c1 \ - c0 = expected c1 , - std.mem - [tc-instance (const «hint_c») 0, tc-instance (const «instance_c») 0, - tc-instance (const «instance_g») 4, tc-instance (const «hint_g») 5] - c1 - Exp = [expected (tc-instance (const «hint_c») 0), - expected (tc-instance (const «instance_c») 0), - expected (tc-instance (const «instance_g») 4), - expected (tc-instance (const «hint_g») 5)] - L = [tc-instance (const «hint_c») 0, tc-instance (const «instance_c») 0, - tc-instance (const «instance_g») 4, tc-instance (const «hint_g») 5] + Mp_ta = «elpi.tests.test_API_module.TA» Query assignments: - GR = const «myc» -eq_op myc t t - : bool + 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: - L = [cs-instance (const «carrier») (cs-gref (const «W»)) (const «myc»), - cs-instance (const «eq_op») (cs-gref (const «Z»)) (const «myc»)] + A = «elpi.tests.test_API_module.a» + MP_TA = «elpi.tests.test_API_module.TA» + TF = «elpi.tests.test_API_module.TF» Query assignments: - I = «eq» - P1 = «carrier» - P2 = «eq_op» + %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: - GR = const «myc1» -eq_op myc1 t1 t1 - : bool + MP_TA = «elpi.tests.test_API_module.TA» +Module Type TB = Funsig (A:TA) Sig End Query assignments: - P = const «eq_op» + A = «elpi.tests.test_API_module.A» Query assignments: - W = const «W» -[cs-instance (const «eq_op») (cs-gref (const «Z1»)) (const «myc1»)] + %arg1 = «elpi.tests.test_API_module.A» +Module IA := Struct Definition z : nat. Definition i : Type. End Query assignments: - L = [cs-instance (const «eq_op») (cs-gref (const «Z1»)) (const «myc1»)] - P = const «eq_op» - W = const «Z1» + %arg1 = «elpi.tests.test_API_module.IA» Query assignments: - P = const «eq_op» - W = indt «nat» + %arg1 = «elpi.tests.test_API_module.IA» +i + : Type Query assignments: - C1 = const «C1» - GR1 = const «c12» - GR2 = const «c1t» - GR3 = const «c1f» -fun x : C1 => x : C2 - : C1 -> C2 -fun (x : C1) (_ : x) => true - : forall x : C1, x -> bool -fun x : C1 => x 3 - : C1 -> nat + %arg1 = «elpi.tests.test_API_module.TA» Query assignments: - L = [coercion (const «c1t») 0 (const «C1») sortclass, - coercion (const «c1f») 0 (const «C1») funclass, - coercion (const «c12») 0 (const «C1») (grefclass (const «C2»)), - coercion (const «reverse_coercion») 3 (const «ReverseCoercionSource») - (grefclass (const «ReverseCoercionTarget»))] + %arg1 = «elpi.tests.test_API_module.TA» +Module Type ITA = Sig Parameter z : nat. Parameter i : Type. End Query assignments: - %arg1 = const «nuc» -nuc : forall x : nat, C1 -> C3 x - -nuc is not universe polymorphic -Arguments nuc x%nat_scope _ -nuc is a reversible coercion -Expands to: Constant elpi.tests.test_API_TC_CS.nuc -File "./tests/test_API_TC_CS.v", line 42, characters 26-27: + 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_TC_CS.v", line 42, characters 26-27 +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_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.eq_proper_proxy || - class_apply @Morphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @Morphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (Morphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (CMorphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @CMorphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.complement_proper) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @Morphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @irreflexivity) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply CRelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) unconvertible -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.eq_proper_proxy || - class_apply @CMorphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +File "./tests/test_API_module.v", line 50, characters 26-28: Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +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: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 66-67: +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_TC_CS.v", line 43, characters 66-67 +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_TC_CS.v", line 43, characters 0-70: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 0-70: -Warning: -There is an hint extern in the typeclass db: -(*external*) (equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +File "./tests/test_API_module.v", line 67, characters 27-32: Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./tests/test_API_TC_CS.v", line 102, characters 27-28: +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_TC_CS.v", line 102, characters 27-28 -L is linear: name it _L (discard) or L_ (fresh variable) +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_TC_CS.v", line 159, characters 32-33: +File "./tests/test_API_module.v", line 101, characters 27-32: Warning: -File "./tests/test_API_TC_CS.v", line 159, characters 32-33 -L is linear: name it _L (discard) or L_ (fresh variable) +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: I = const «imp» @@ -10195,54 +9283,766 @@ : bool * bool -> Prop = fun x : bool => x = x : bool -> Prop - {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: - || - -Coq-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» +----<<---- enter: +coq.say raw: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +raw: +parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] +Debug: +---->>---- exit: +coq.say raw: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) + c6 \ app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app + [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) + Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) + c6 \ app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app + [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) + Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +typed: +parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] +Debug: +---->>---- exit: +coq.say typed: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +Debug: +----<<---- enter: +coq.env.add-indt + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + X0 +Debug: +---->>---- exit: +coq.env.add-indt + (parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) + c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + «foo1» +foo1 ?A2 ?B1 ?B2 ?n : Type + : Type +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?n : [ |- nat] +a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 + : foo1 ?A2 ?B1 ?B2 3 +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] +Debug: +----<<---- enter: +coq.say raw: + (parameter A1 maximal X0 c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ X1)) c2 \ + parameter B2 explicit (sort (typ X2)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ X4)) c3 \ + parameter B2 explicit (sort (typ X5)) c4 \ + arity + (prod `x` (X6 c4) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ X7)) c3 \ + parameter B2 explicit (sort (typ X8)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +raw: +parameter A1 maximal X0 c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ X1)) c2 \ + parameter B2 explicit (sort (typ X2)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ X4)) c3 \ + parameter B2 explicit (sort (typ X5)) c4 \ + arity + (prod `x` (X6 c4) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ X7)) c3 \ + parameter B2 explicit (sort (typ X8)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] +Debug: +---->>---- exit: +coq.say raw: + (parameter A1 maximal X0 c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ X1)) c2 \ + parameter B2 explicit (sort (typ X2)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ X4)) c3 \ + parameter B2 explicit (sort (typ X5)) c4 \ + arity + (prod `x` (X6 c4) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ X7)) c3 \ + parameter B2 explicit (sort (typ X8)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +Debug: +----<<---- enter: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (parameter A1 maximal X0 c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ X1)) c2 \ + parameter B2 explicit (sort (typ X2)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ X4)) c3 \ + parameter B2 explicit (sort (typ X5)) c4 \ + arity + (prod `x` (X6 c4) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) + c6 \ app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ X7)) c3 \ + parameter B2 explicit (sort (typ X8)) c4 \ + arity + (prod `_` c0 c5 \ + app + [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + X9) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (parameter A1 maximal X0 c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.41»)) + c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.44»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.47»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.52»)) + c3 \ + parameter B2 explicit + (sort (typ «elpi.tests.test_arg_HOAS.54»)) c4 \ + arity + (prod `x` (X6 c4) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) + c6 \ app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.61»)) + c3 \ + parameter B2 explicit + (sort (typ «elpi.tests.test_arg_HOAS.63»)) c4 \ + arity + (prod `_` c0 c5 \ + app + [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) + c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) + c3 \ + parameter B2 explicit + (sort (typ «elpi.tests.test_arg_HOAS.55»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) + c6 \ app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) + c3 \ + parameter B2 explicit + (sort (typ «elpi.tests.test_arg_HOAS.64»)) c4 \ + arity + (prod `_` c0 c5 \ + app + [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) + Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +typed: +parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] +Debug: +---->>---- exit: +coq.say typed: + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) +Debug: +----<<---- enter: +coq.env.add-indt + (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) + c3 \ + arity + (prod `_` (global (indt «nat»)) c4 \ + sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + X10 +Debug: +---->>---- exit: +coq.env.add-indt + (parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) + c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) + c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) + c3 \ + parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) + c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) + «foo1» +foo1 ?A2 ?B1 ?B2 ?n : Type + : Type +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?n : [ |- nat] +a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 + : foo1 ?A2 ?B1 ?B2 3 +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] Query assignments: - U = «elpi.tests.test_HOAS.4» + D = parameter A explicit (sort (typ «t.u0»)) c0 \ + inductive t tt + (parameter y explicit (global (indt «nat»)) c1 \ + arity (sort (typ «elpi.tests.test_arg_HOAS.82»))) c1 \ + [constructor K + (parameter y explicit (global (indt «nat»)) c2 \ + parameter x explicit c0 c3 \ + parameter n maximal (global (indt «nat»)) c4 \ + arity (prod `_` (app [c1, c4]) c5 \ app [c1, c2]))] + I = «t» Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.4} |= + {elpi.tests.test_arg_HOAS.82} |= + Set <= elpi.tests.test_arg_HOAS.82 + t.u0 <= elpi.tests.test_arg_HOAS.82 ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: @@ -10252,144 +10052,2200 @@ WEAK CONSTRAINTS: +Debug: +----<<---- enter: +coq.say raw: + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +raw: +record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) +Debug: +---->>---- exit: +coq.say raw: + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ + end-record))) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ + end-record))) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +typed: +record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) +Debug: +---->>---- exit: +coq.say typed: + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +Debug: +----<<---- enter: +coq.env.add-indt + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) + X0 +Debug: +---->>---- exit: +coq.env.add-indt + (record foo (sort (typ «Set»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) + «foo» +Debug: +----<<---- enter: +coq.say raw: + (record foo (sort (typ X0)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], + global (indc «O»)]) c1 \ end-record)) +raw: +record foo (sort (typ X0)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], + global (indc «O»)]) c1 \ end-record) +Debug: +---->>---- exit: +coq.say raw: + (record foo (sort (typ X0)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], + global (indc «O»)]) c1 \ end-record)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (record foo (sort (typ X0)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], + global (indc «O»)]) c1 \ end-record)) X2) + Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (record foo (sort (typ «elpi.tests.test_arg_HOAS.85»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], + global (indc «O»)]) c1 \ end-record)) + (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ + end-record))) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +typed: +record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) +Debug: +---->>---- exit: +coq.say typed: + (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) +Debug: +----<<---- enter: +coq.env.add-indt + (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) + X3 +Debug: +---->>---- exit: +coq.env.add-indt + (record foo (sort (typ «foo.u0»)) Build_foo + (field [coercion off, canonical tt] f + (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ + field [coercion off, canonical tt] _ + (app + [global (indt «eq»), global (indt «nat»), + app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) + «foo» +Debug: +----<<---- enter: +coq.say raw: + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) +raw: +parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record) +Debug: +---->>---- exit: +coq.say raw: + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record))) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record))) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) +typed: +parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record) +Debug: +---->>---- exit: +coq.say typed: + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) +Debug: +----<<---- enter: +coq.env.add-indt + (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) X0 +Debug: +---->>---- exit: +coq.env.add-indt + (parameter A explicit (sort (typ «foo.u0»)) c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «foo.u0»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `a` c0 c3 \ + prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (global (indt «nat»)) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` c0 c5 \ + app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ + end-record)) «foo» Query assignments: - U = «foo» + I = «foo» +Debug: +----<<---- enter: +coq.say raw: + (parameter A explicit X0 c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ X1)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `_elpi_renamed_a_1` c0 c3 \ + prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) + c3 \ + field [coercion off, canonical ff] x + (let `w` (X3 c3) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` (X4 c3 c4) c5 \ + app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) + c4 \ end-record)) +raw: +parameter A explicit X0 c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ X1)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `_elpi_renamed_a_1` c0 c3 \ + prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) c3 \ + field [coercion off, canonical ff] x + (let `w` (X3 c3) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` (X4 c3 c4) c5 \ + app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) c4 \ + end-record) +Debug: +---->>---- exit: +coq.say raw: + (parameter A explicit X0 c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ X1)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `_elpi_renamed_a_1` c0 c3 \ + prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) + c3 \ + field [coercion off, canonical ff] x + (let `w` (X3 c3) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` (X4 c3 c4) c5 \ + app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) + c4 \ end-record)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (parameter A explicit X0 c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ X1)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `_elpi_renamed_a_1` c0 c3 \ + prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) + c3 \ + field [coercion off, canonical ff] x + (let `w` (X3 c3) + (app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]) c4 \ + prod `x` (X4 c3 c4) c5 \ + app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) + c4 \ end-record)) X6) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (parameter A explicit X0 c0 \ + parameter B explicit c0 c1 \ + record foo (sort (typ «elpi.tests.test_arg_HOAS.95»)) Build_foo + (field [coercion off, canonical tt] a + (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ + field [coercion reversible, canonical tt] z + (prod `_elpi_renamed_a_1` c0 c3 \ +...TRUNCATED BY DUNE... + app + [global (const «Nat.add»), c2, + app [global (indc «S»), global (indc «O»)]]) + (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ + prod `w` c0 c1 \ prod `n` (global (indt «nat»)) c2 \ X5 c0 c1 c2) X7) + illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-skeleton + (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.109»)) c0 \ + fun `w` c0 c1 \ + fun `n` (global (indt «nat»)) c2 \ + app + [global (const «Nat.add»), c2, + app [global (indc «S»), global (indc «O»)]]) + (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ + prod `w` c0 c1 \ + prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) + (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.110»)) c0 \ + fun `w` c0 c1 \ + fun `n` (global (indt «nat»)) c2 \ + app + [global (const «Nat.add»), c2, + app [global (indc «S»), global (indc «O»)]])) + illtyped definition +Debug: +----<<---- enter: +coq.env.add-const x1 + (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.110»)) c0 \ + fun `w` c0 c1 \ + fun `n` (global (indt «nat»)) c2 \ + app + [global (const «Nat.add»), c2, + app [global (indc «S»), global (indc «O»)]]) + (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ + prod `w` c0 c1 \ + prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) X8 X9 +Debug: +---->>---- exit: +coq.env.add-const x1 + (fun `P` (sort (typ «x1.u1»)) c0 \ + fun `w` c0 c1 \ + fun `n` (global (indt «nat»)) c2 \ + app + [global (const «Nat.add»), c2, + app [global (indc «S»), global (indc «O»)]]) + (prod `P` (sort (typ «x1.u0»)) c0 \ + prod `w` c0 c1 \ + prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) X8 «x1» +x1 : forall P : Type, P -> nat -> nat + : forall P : Type, P -> nat -> nat +eq_refl : x1 = (fun (P : Type) (_ : P) (n : nat) => n + 1) + : x1 = (fun (P : Type) (_ : P) (n : nat) => n + 1) +Debug: +----<<---- enter: +coq.arity->term + (parameter n explicit (global (indt «nat»)) c0 \ + arity (sort (typ «elpi.tests.test_arg_HOAS.113»))) X0 +Debug: +---->>---- exit: +coq.arity->term + (parameter n explicit (global (indt «nat»)) c0 \ + arity (sort (typ «elpi.tests.test_arg_HOAS.113»))) + (prod `n` (global (indt «nat»)) c0 \ + sort (typ «elpi.tests.test_arg_HOAS.113»)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-ty + (prod `n` (global (indt «nat»)) c0 \ + sort (typ «elpi.tests.test_arg_HOAS.113»)) X1) illtyped axiom +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-ty + (prod `n` (global (indt «nat»)) c0 \ + sort (typ «elpi.tests.test_arg_HOAS.113»)) + (typ «elpi.tests.test_arg_HOAS.114»)) illtyped axiom +Debug: +----<<---- enter: +coq.env.add-axiom y + (prod `n` (global (indt «nat»)) c0 \ + sort (typ «elpi.tests.test_arg_HOAS.113»)) X2 +Debug: +---->>---- exit: +coq.env.add-axiom y + (prod `n` (global (indt «nat»)) c0 \ sort (typ «y.u0»)) «y» +y : nat -> Type + : nat -> Type +Debug: +----<<---- enter: +coq.arity->term + (parameter n explicit (global (indt «nat»)) c0 \ + arity (global (indt «nat»))) X0 +Debug: +---->>---- exit: +coq.arity->term + (parameter n explicit (global (indt «nat»)) c0 \ + arity (global (indt «nat»))) + (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck + (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) + (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»))) + illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck + (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) + (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»))) + illtyped definition +Debug: +----<<---- enter: +coq.env.add-const x + (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) + (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) X1 X2 +Debug: +---->>---- exit: +coq.env.add-const x + (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) + (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) X1 «x» +parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) + c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] 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 */ + D = parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ + parameter A2 explicit c0 c1 \ + inductive foo1 tt + (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ + arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) + c2 \ + [constructor a_k1 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `x` (global (indt «nat»)) c5 \ + prod `_` + (app + [c2, app [global (indt «prod»), c3, c3], c4, + app + [global (indc «S»), + app + [global (indc «S»), + app [global (indc «S»), global (indc «O»)]]]]) c6 \ + app [c2, c3, c4, c5])), + constructor a_k2 + (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ + parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ + arity + (prod `_` c0 c5 \ + app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] + I = «inductive_nup.foo1» +foo1 ?A2 ?B1 ?B2 ?n : Type + : Type +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?n : [ |- nat] +a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 + : foo1 ?A2 ?B1 ?B2 3 +where +?A1 : [ |- Type] +?A2 : [ |- ?A1] +?B1 : [ |- Type] +?B2 : [ |- Type] +?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] +Query assignments: + I = «inductive_nup.r» + R = parameter A explicit (sort (typ «r.u0»)) c0 \ + parameter a explicit c0 c1 \ + record r (sort (typ «r.u0»)) R + (field [coercion reversible, canonical tt] f (prod `_` c0 c2 \ c0) c2 \ + field [coercion off, canonical tt] g c0 c3 \ + field [coercion off, canonical tt] p + (app [global (indt «eq»), c0, c1, c3]) c4 \ end-record) +Record r (A : Type) (a : A) : Type := R { f : A -> A; g : A; p : a = g }. + +Arguments r A%type_scope a +Arguments R A%type_scope a f%function_scope g p +Arguments f A%type_scope a record _ +Arguments g A%type_scope a record +Arguments p A%type_scope a record +Debug: +----<<---- enter: coq.say raw: (inductive X1 tt (arity (sort prop)) c0 \ []) +raw: inductive X1 tt (arity (sort prop)) c0 \ [] +Debug: +---->>---- exit: coq.say raw: (inductive X1 tt (arity (sort prop)) c0 \ []) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl (inductive X1 tt (arity (sort prop)) c0 \ [])) + Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl (inductive X1 tt (arity (sort prop)) c0 \ [])) + Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: (inductive X1 tt (arity (sort prop)) c0 \ []) +typed: inductive X1 tt (arity (sort prop)) c0 \ [] +Debug: +---->>---- exit: +coq.say typed: (inductive X1 tt (arity (sort prop)) c0 \ []) +Debug: +----<<---- enter: +coq.env.add-indt (inductive X1 tt (arity (sort prop)) c0 \ []) X0 +Debug: +---->>---- exit: +coq.env.add-indt (inductive X1 tt (arity (sort prop)) c0 \ []) «X1» +X1 : Prop + +X1 is not universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X1 +Debug: +----<<---- enter: +coq.say raw: + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) +raw: +inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ [] +upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt +Debug: +---->>---- exit: +coq.say raw: + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) +Debug: ----<<---- enter: coq.univ.print +Universe constraints: UNIVERSES: + {eu1} |= + ALGEBRAIC UNIVERSES: + {} + FLEXIBLE UNIVERSES: + eu1 + SORTS: + + WEAK CONSTRAINTS: + + +Debug: ---->>---- exit: coq.univ.print +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) + c0 \ [])) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) + c0 \ [])) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) +typed: +inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ [] +Debug: +---->>---- exit: +coq.say typed: + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) X0 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) + => + coq.env.add-indt + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) X1 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) + => + coq.env.add-indt + (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ + []) «X3» +Debug: +----<<---- enter: +coq.say raw: + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) +raw: +inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ [] +upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt +Debug: +---->>---- exit: +coq.say raw: + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) +Debug: ----<<---- enter: coq.univ.print +Universe constraints: UNIVERSES: + {eu2} |= + ALGEBRAIC UNIVERSES: + {} + FLEXIBLE UNIVERSES: + eu2 + SORTS: + + WEAK CONSTRAINTS: + + +Debug: ---->>---- exit: coq.univ.print +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) + c0 \ [])) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) + c0 \ [])) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) +typed: +inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ [] +Debug: +---->>---- exit: +coq.say typed: + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) X0 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) + (get-option coq:udecl-cumul + (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl-cumul + (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) => + coq.env.add-indt + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) X1 +Debug: +---->>---- exit: +get-option coq:udecl-cumul + (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) => + coq.env.add-indt + (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ + []) «X4» +X3@{eu1} : Type@{eu1} +(* eu1 |= *) + +X3 is universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X3 +X4@{eu2} : Type@{eu2} +(* *eu2 |= *) + +X4 is universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X4 +Query assignments: + GR = indt «X3» 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 + {elpi.tests.test_arg_HOAS.145} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: - + elpi.tests.test_arg_HOAS.145 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 - -Coq-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 */ + GR = indt «X4» Universe constraints: UNIVERSES: - {elpi.tests.test_HOAS.10} |= + {elpi.tests.test_arg_HOAS.146} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: - + elpi.tests.test_arg_HOAS.146 SORTS: - α5 + WEAK CONSTRAINTS: -Raw term: -app - [global (const «add»), primitive (uint63 2000000003333002), - primitive (uint63 1)] -Nice term: add 2000000003333002 1 -Red: -2000000003333003 -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 +Debug: +----<<---- enter: +coq.say raw: + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) +raw: +inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ [] +upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff +Debug: +---->>---- exit: +coq.say raw: + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) +Debug: ----<<---- enter: coq.univ.print +Universe constraints: UNIVERSES: + {eu3} |= + ALGEBRAIC UNIVERSES: + {} + FLEXIBLE UNIVERSES: + eu3 + SORTS: + + WEAK CONSTRAINTS: + + +Debug: ---->>---- exit: coq.univ.print +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) + c0 \ [])) Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) + c0 \ [])) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) +typed: +inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ [] +Debug: +---->>---- exit: +coq.say typed: + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) X0 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) + => + coq.env.add-indt + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) X1 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) + => + coq.env.add-indt + (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ + []) «X5» +X5@{eu3} : Type@{eu3} +(* eu3 |= *) + +X5 is universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X5 +Debug: +----<<---- enter: +coq.say raw: + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) +raw: +inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))] +upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff +Debug: +---->>---- exit: +coq.say raw: + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) +Debug: ----<<---- enter: coq.univ.print +Universe constraints: UNIVERSES: + {eu5 eu4} |= eu4 < eu5 + ALGEBRAIC UNIVERSES: + {} + FLEXIBLE UNIVERSES: + eu5 + eu4 + SORTS: + + WEAK CONSTRAINTS: + + +Debug: ---->>---- exit: coq.univ.print +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) + c0 \ + [constructor K + (arity + (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))])) + Illtyped inductive declaration +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck-indt-decl + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) + c0 \ + [constructor K + (arity + (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))])) + Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) +typed: +inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))] +Debug: +---->>---- exit: +coq.say typed: + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) + X0 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) + (get-option coq:udecl + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] + ff)) +Debug: +----<<---- enter: +get-option coq:udecl + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) + => + coq.env.add-indt + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) + X1 +Debug: +---->>---- exit: +get-option coq:udecl + (upoly-decl + [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff + [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) + => + coq.env.add-indt + (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ + [constructor K + (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) + «X6» +X6@{eu4 eu5} : Type@{eu5} +(* eu4 eu5 |= eu4 < eu5 *) + +X6 is universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X6 +Debug: +----<<---- enter: +coq.say raw: (inductive X8 tt (arity (sort (typ X0))) c0 \ []) + (upoly-decl [] tt [] tt) +raw: inductive X8 tt (arity (sort (typ X0))) c0 \ [] upoly-decl [] tt [] tt +Debug: +---->>---- exit: +coq.say raw: (inductive X8 tt (arity (sort (typ X0))) c0 \ []) + (upoly-decl [] tt [] tt) +Debug: ----<<---- enter: coq.univ.print +Universe constraints: +Debug: ---->>---- exit: coq.univ.print +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (inductive X8 tt (arity (sort (typ X0))) c0 \ []) X1) + Illtyped inductive declaration +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-indt-decl-skeleton + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) + c0 \ []) + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) + c0 \ [])) Illtyped inductive declaration +Debug: +----<<---- enter: +coq.say typed: + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ + []) +typed: +inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ [] +Debug: +---->>---- exit: +coq.say typed: + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ + []) +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X2 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-indt + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ + []) X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-indt + (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ + []) «X8» +X8@{u} : Type@{u} +(* u |= *) + +X8 is universe polymorphic +Expands to: Inductive elpi.tests.test_arg_HOAS.X8 +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + parameter x explicit c0 c1 \ arity c0) X0 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + parameter x explicit c0 c1 \ arity c0) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + prod `x` c0 c1 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + prod `x` c0 c1 \ c0)) illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + prod `x` c0 c1 \ c0)) illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f1 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + prod `x` c0 c1 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f1 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ + prod `x` c0 c1 \ c0) X2 «f1» +f1@{u} : forall T : Type@{u}, T -> T +(* u |= *) + +f1 is universe polymorphic +Arguments f1 T%type_scope x +f1 is transparent +Expands to: Constant elpi.tests.test_arg_HOAS.f1 +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + parameter x explicit c0 c2 \ arity c0) X0 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + parameter x explicit c0 c2 \ arity c0) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + prod `x` c0 c2 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) + => + coq.env.add-const f2 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + prod `x` c0 c2 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) + => + coq.env.add-const f2 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ + prod `x` c0 c2 \ c0) X2 «f2» +f2@{u} : forall T : Type@{u}, Type@{u} -> T -> T +(* u |= *) + +f2 is universe polymorphic +Arguments f2 (T T1)%type_scope x +f2 is transparent +Expands to: Constant elpi.tests.test_arg_HOAS.f2 +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ X0)) c0 \ + parameter x explicit c0 c1 \ arity (X1 c1)) X2 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ X0)) c0 \ + parameter x explicit c0 c1 \ arity (X1 c1)) + (prod `T` (sort (typ X0)) c0 \ prod `x` c0 c1 \ X1 c1) +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ X0)) c0 \ prod `x` c0 c1 \ X1 c1) X3 X4) + illtyped arity +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ X1 c1) (typ «elpi.tests.test_arg_HOAS.183») + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ X5 c0 c1)) illtyped arity +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton (fun `T` (sort (typ X6)) c0 \ fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ X5 c0 c1) X7) illtyped definition +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.184»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ c0) + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + fun `x` c0 c1 \ c1)) illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X8 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f3 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ c0) X9 X10 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f3 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + fun `x` c0 c1 \ c1) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ + prod `x` c0 c1 \ c0) X9 «f3» +f3@{u} : forall T : Type@{u}, T -> T +(* u |= *) + +f3 is universe polymorphic +Arguments f3 T%type_scope x +f3 is transparent +Expands to: Constant elpi.tests.test_arg_HOAS.f3 +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + parameter x explicit c0 c2 \ arity (X0 c2)) X1 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + parameter x explicit c0 c2 \ arity (X0 c2)) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ X0 c2) +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ X0 c2) X2 X3) illtyped arity +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ X0 c2) (typ «elpi.tests.test_arg_HOAS.187») + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ X4 c0 c1 c2)) illtyped arity +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ X4 c0 c1 c2) X5) illtyped definition +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ c0) + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + fun `x` c0 c2 \ c2)) illtyped definition +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) X6 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) + => + coq.env.add-const f4 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ c0) X7 X8 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) + => + coq.env.add-const f4 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ + prod `x` c0 c2 \ c0) X7 «f4» +f4@{u} : forall T : Type@{u}, Type@{u} -> T -> T +(* u |= *) + +f4 is universe polymorphic +Arguments f4 (T T1)%type_scope x +f4 is transparent +Expands to: Constant elpi.tests.test_arg_HOAS.f4 +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ «uuu»)) c0 \ + parameter T1 explicit (sort (typ «uuu»)) c1 \ + parameter x explicit c0 c2 \ arity (X0 c2)) X1 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ «uuu»)) c0 \ + parameter T1 explicit (sort (typ «uuu»)) c1 \ + parameter x explicit c0 c2 \ arity (X0 c2)) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) +Debug: +----<<---- enter: +std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) X2 X3) + illtyped arity +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-ty-skeleton + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) + (typ «elpi.tests.test_arg_HOAS.192») + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ + prod `x` c0 c2 \ X4 c0 c1 c2)) illtyped arity +Debug: +----<<---- enter: +std.assert-ok! + (coq.elaborate-skeleton + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «uuu»)) c1 \ fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ + prod `x` c0 c2 \ X4 c0 c1 c2) X5) illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.elaborate-skeleton + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «uuu»)) c1 \ fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ + prod `x` c0 c2 \ c0) + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.193»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.194»)) c1 \ + fun `x` c0 c2 \ c2)) illtyped definition +Debug: +----<<---- enter: +coq.env.add-const f5 + (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.193»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.194»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ + prod `x` c0 c2 \ c0) X6 X7 +Debug: +---->>---- exit: +coq.env.add-const f5 + (fun `T` (sort (typ «f5.u2»)) c0 \ + fun `T1` (sort (typ «f5.u3»)) c1 \ fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «f5.u0»)) c0 \ + prod `T1` (sort (typ «f5.u1»)) c1 \ prod `x` c0 c2 \ c0) X6 «f5» +Debug: +----<<---- enter: +coq.arity->term + (parameter T explicit (sort (typ «uuu»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + parameter x explicit c0 c2 \ arity c0) X0 +Debug: +---->>---- exit: +coq.arity->term + (parameter T explicit (sort (typ «uuu»)) c0 \ + parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + parameter x explicit c0 c2 \ arity c0) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + prod `x` c0 c2 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) + => + coq.env.add-const f6 + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + prod `x` c0 c2 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) + => + coq.env.add-const f6 + (fun `T` (sort (typ «uuu»)) c0 \ + fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + fun `x` c0 c2 \ c2) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ + prod `x` c0 c2 \ c0) X2 «f6» +f6@{uuux} : forall T : Type@{uuu}, Type@{uuux} -> T -> T +(* uuux |= *) + +f6 is universe polymorphic +Arguments f6 (T T1)%type_scope x +f6 is transparent +Expands to: Constant elpi.tests.test_arg_HOAS.f6 +Debug: +----<<---- enter: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) X0 +Debug: +---->>---- exit: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) + illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) + illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f7 (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f7 (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X2 «f7» +Debug: ----<<---- enter: coq.arity->term (arity X0) X1 +Debug: ---->>---- exit: coq.arity->term (arity X1) X1 +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.196») (X4)) + illtyped arity +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton (pglobal (const «f6») «Set») (X4) X5) + illtyped definition +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) + (pglobal (const «f6») «Set»)) illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X6 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f8 (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X7 X8 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f8 (pglobal (const «f6») «Set») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X7 «f8» +Debug: +----<<---- enter: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) X0 +Debug: +---->>---- exit: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) + illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) + illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f7' (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f7' (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X2 «f7'» +Debug: ----<<---- enter: coq.arity->term (arity X0) X1 +Debug: ---->>---- exit: coq.arity->term (arity X1) X1 +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.197») (X4)) + illtyped arity +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton (pglobal (const «f6») «uuu») (X4) X5) + illtyped definition +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) + (pglobal (const «f6») «uuu»)) illtyped definition +Debug: +----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X6 +Debug: +---->>---- exit: +coq.upoly-decl->attribute (upoly-decl [] tt [] tt) + (get-option coq:udecl (upoly-decl [] tt [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f8' (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X7 X8 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [] tt [] tt) => + coq.env.add-const f8' (pglobal (const «f6») «uuu») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X7 «f8'» +Debug: +----<<---- enter: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0)) X0 +Debug: +---->>---- exit: +coq.arity->term + (arity + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0)) + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0) +Debug: +----<<---- enter: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +---->>---- exit: +std.assert-ok! + (coq.typecheck (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0)) illtyped definition +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) X1 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) + => + coq.env.add-const f7'' + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0) X2 X3 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) + => + coq.env.add-const f7'' + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ + prod `x` c0 c2 \ c0) X2 «f7''» +Debug: ----<<---- enter: coq.arity->term (arity X0) X1 +Debug: ---->>---- exit: coq.arity->term (arity X1) X1 +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.200») (X4)) + illtyped arity +Debug: +----<<---- enter: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») (X4) X5) + illtyped definition +Debug: +---->>---- exit: +get-option coq:keepunivs tt => + std.assert-ok! + (coq.elaborate-skeleton + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ + prod `x` c0 c2 \ c0) + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199»)) + illtyped definition +Debug: +----<<---- enter: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) X6 +Debug: +---->>---- exit: +coq.upoly-decl->attribute + (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) + (get-option coq:udecl + (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt)) +Debug: +----<<---- enter: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) + => + coq.env.add-const f8'' + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ + prod `x` c0 c2 \ c0) X7 X8 +Debug: +---->>---- exit: +get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) + => + coq.env.add-const f8'' + (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») + (prod `T` (sort (typ «uuu»)) c0 \ + prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ + prod `x` c0 c2 \ c0) X7 «f8''» +const-decl D + (some + (fun `i` (global (indt «I»)) c0 \ + fun `l` (app [global (indt «L»), c0]) c1 \ global (indt «True»))) + (parameter i maximal (global (indt «I»)) c0 \ + parameter l maximal (app [global (indt «L»), c0]) c1 \ arity (sort prop)) +const-decl D + (some + (fun `i` (global (indt «I»)) c0 \ + fun `H` (app [global (indt «L»), c0]) c1 \ global (indt «True»))) + (parameter i maximal (global (indt «I»)) c0 \ + parameter H maximal (app [global (indt «L»), c0]) c1 \ arity (sort prop)) +const-decl D + (some + (fun `i` (global (indt «I»)) c0 \ + fun `H` (app [global (indt «L»), c0]) c1 \ + fun `n` (global (indt «nat»)) c2 \ global (indt «True»))) + (parameter i maximal (global (indt «I»)) c0 \ + parameter H maximal (app [global (indt «L»), c0]) c1 \ + parameter n explicit (global (indt «nat»)) c2 \ arity (sort prop)) +2 +fun `x` X0 c0 \ fun `y` (X1 c0) c1 \ app [global (const «Nat.add»), c0, c1] +File "./tests/test_arg_HOAS.v", line 283, characters 0-68: +Warning: Automatically putting X1 in Prop even though it was declared with +Type. +Unset Automatic Proposition Inductives to prevent this (it will become the +default in a future version). +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] +File "./tests/test_File3.v", line 18, characters 2-16: +Warning: This command does not support this attribute: phase. +[unsupported-attributes,parsing,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» + {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: + || + +Coq-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 + +Coq-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: add 2000000003333002 1 +Red: +2000000003333003 +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»)) @@ -11152,8 +13008,28 @@ File "./tests/test_HOAS.v", line 630, characters 36-37 U is linear: name it _U (discard) or U_ (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 Query assignments: - BO = fix `add` 0 + 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 \ @@ -11163,1643 +13039,4266 @@ fun `p` (global (indt «nat»)) c3 \ app [global (indc «S»), app [c0, c3, c2]]] GR = «Nat.add» - TY = prod `n` (global (indt «nat»)) c0 \ - prod `m` (global (indt «nat»)) c1 \ global (indt «nat») -fix X0 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_2` (global (indt «nat»)) c3 \ X1 c1 c2 c3) - [c2, fun `p` (X2 c1 c2) c3 \ app [c0, c3, c2]] -fix X0 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_2` (global (indt «nat»)) c3 \ - global (indt «nat»)) [c2, fun `p` (X3 c1 c2) c3 \ app [c0, c3, c2]] -Query assignments: - BO1 = fix X0 0 + 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 `_elpi_renamed_n_2` (global (indt «nat»)) c3 \ - global (indt «nat»)) [c2, fun `p` (X3 c1 c2) c3 \ app [c0, c3, c2]] - GR = «Nat.add» + 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») - X1_ = c0 \ c1 \ c2 \ -global (indt «nat») - X2_ = c0 \ c1 \ -X3 c0 c1 Syntactic constraints: - {c0 c1} : - decl c1 `m` (global (indt «nat»)), decl c0 `n` (global (indt «nat»)) - ?- evar (X3 c0 c1) (sort (typ «elpi.tests.test_quotation.2»)) (X3 c0 c1) /* suspended on X3 */ + {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_quotation.3 elpi.tests.test_quotation.2 - elpi.tests.test_quotation.1} |= Set <= elpi.tests.test_quotation.3 + {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: - elpi.tests.test_quotation.3 + SORTS: - α1 - α2 + WEAK CONSTRAINTS: -fun `v` - (app - [global (indt «Vector.t»), global (indt «nat»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - c0 \ - match c0 - (fun `_` (X0 c0) c1 \ - fun `_elpi_renamed_v_1` (app [global (indt «Vector.t»), X1 c0, X2 c0]) - c2 \ X3 c0 c2) - [global (indc «O»), - fun `_` (X4 c0) c1 \ - fun `_` (X5 c0) c2 \ - fun `_` (X6 c0) c3 \ app [global (indc «S»), global (indc «O»)]] -fun `v` - (app - [global (indt «Vector.t»), global (indt «nat»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - c0 \ - match c0 - (fun `_` (X7 c0) c1 \ - fun `_elpi_renamed_v_1` - (app [global (indt «Vector.t»), global (indt «nat»), X8 c0]) c2 \ - global (indt «nat»)) - [global (indc «O»), - fun `_` (X9 c0) c1 \ - fun `_` (X10 c0) c2 \ - fun `_` (X11 c0) c3 \ app [global (indc «S»), global (indc «O»)]] Query assignments: - T = fun `v` - (app - [global (indt «Vector.t»), global (indt «nat»), - app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - c0 \ - match c0 - (fun `_` (X7 c0) c1 \ - fun `_elpi_renamed_v_1` - (app [global (indt «Vector.t»), global (indt «nat»), X8 c0]) c2 \ - global (indt «nat»)) - [global (indc «O»), - fun `_` (X9 c0) c1 \ - fun `_` (X10 c0) c2 \ - fun `_` (X11 c0) c3 \ app [global (indc «S»), global (indc «O»)]] - X3_ = c0 \ -X7 c0 - X4_ = c0 \ -global (indt «nat») - X5_ = c0 \ -X8 c0 - X6_ = c0 \ c1 \ -global (indt «nat») - X7_ = c0 \ -X9 c0 - X8_ = c0 \ -X10 c0 - X9_ = c0 \ -X11 c0 -Syntactic constraints: - {c0} : - decl c0 `v` - (app - [global (indt «Vector.t»), global (indt «nat»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X11 c0) (sort (typ «elpi.tests.test_quotation.10»)) (X11 c0) /* suspended on X11 */ - {c0} : - decl c0 `v` - (app - [global (indt «Vector.t»), global (indt «nat»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X10 c0) (sort (typ «elpi.tests.test_quotation.9»)) (X10 c0) /* suspended on X10 */ - {c0} : - decl c0 `v` + 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 «Vector.t»), global (indt «nat»), + [global (indt «eq»), global (indt «nat»), global (indc «O»), app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X9 c0) (sort (typ «elpi.tests.test_quotation.8»)) (X9 c0) /* suspended on X9 */ - {c0} : - decl c0 `v` + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) (app - [global (indt «Vector.t»), global (indt «nat»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X8 c0) (X12 c0) (X8 c0) /* suspended on X8 */ - {c0} : - decl c0 `v` + [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 «Vector.t»), global (indt «nat»), + [global (indt «eq»), global (indt «nat»), global (indc «O»), app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X13 c0) (sort (typ «elpi.tests.test_quotation.6»)) (X12 c0) /* suspended on X13, X12 */ - {c0} : - decl c0 `v` + [global (const «Nat.add»), global (indc «O»), global (indc «O»)]]) (app - [global (indt «Vector.t»), global (indt «nat»), - app - [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) - ?- evar (X7 c0) (sort (typ «elpi.tests.test_quotation.4»)) (X7 c0) /* suspended on X7 */ + [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_quotation.12 elpi.tests.test_quotation.11 - elpi.tests.test_quotation.10 elpi.tests.test_quotation.9 - elpi.tests.test_quotation.8 elpi.tests.test_quotation.7 - elpi.tests.test_quotation.6 elpi.tests.test_quotation.5 - elpi.tests.test_quotation.4} |= - elpi.tests.test_quotation.11 < elpi.tests.test_quotation.5 - Set <= Vector.t.u0 - Set <= elpi.tests.test_quotation.11 - Set <= elpi.tests.test_quotation.12 - elpi.tests.test_quotation.11 <= Vector.t.u0 + {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: - elpi.tests.test_quotation.12 + SORTS: - α3 - α4 := Type - α5 - α6 - α7 - α8 - α9 + WEAK CONSTRAINTS: -3 -Query assignments: - X = 3 -fun `x` X0 c0 \ app [X1, c0] -Query assignments: - X = X1 - X10_ = X0 - Y = fun `x` X0 c0 \ app [X1, c0] -fun `r` (global (indt «nat»)) c0 \ - fun `p` - (prod `y` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, global (indc «O»)]) - c1 \ - fun `q` (global (indt «bool»)) c2 \ - prod `y` (global (indt «nat»)) c3 \ - app - [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] +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: - %arg1 = c0 \ c1 \ c2 \ -prod `y` (global (indt «nat»)) c3 \ - app [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] - X = fun `r` (global (indt «nat»)) c0 \ - fun `p` - (prod `y` (global (indt «nat»)) c1 \ - app - [global (indt «eq»), global (indt «nat»), c1, global (indc «O»)]) - c1 \ - fun `q` (global (indt «bool»)) c2 \ - prod `y` (global (indt «nat»)) c3 \ - app - [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] -fun u : nat => -{| val := oval u; Sub := Ord u; Sub_rect := inlined_sub_rect |} - : forall u : nat, is_SUB nat (fun x : nat => leq x u) (ord u) -Debug: -[elpi] - gterm2lp: term=(fun u => - {| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |}) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term={| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |} -Debug: [elpi] gterm2lp: term=SubType -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(oval u) -Debug: [elpi] gterm2lp: term=oval -Debug: [elpi] gterm2lp: term=u -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=inlined_sub_rect -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(fun K_S u => - let (x, Px) as u0 return (K u0) := u in K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(fun u => let (x, Px) as u0 return (K u0) := u in K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(let (x, Px) as u0 return (K u0) := _elpi_renamed_u_3 in - K_S x Px) -Debug: [elpi] gterm2lp: term=_elpi_renamed_u_3 -Debug: [elpi] gterm2lp: term=(fun u0 => K u0) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(K u0) -Debug: [elpi] gterm2lp: term=K -Debug: [elpi] gterm2lp: term=u0 -Debug: [elpi] gterm2lp: term=(fun x Px => K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(fun Px => K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(K_S x Px) -Debug: [elpi] gterm2lp: term=K_S -Debug: [elpi] gterm2lp: term=x -Debug: [elpi] gterm2lp: term=Px -Debug: -[elpi] - gterm2lp: term=(fun u => - {| val := _; Sub := elpi_code:(K) u; Sub_rect := _ |}) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] gterm2lp: term={| val := _; Sub := elpi_code:(K) u; Sub_rect := _ |} -Debug: [elpi] gterm2lp: term=SubType -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(elpi_code:(K) u) -Debug: [elpi] gterm2lp: term=elpi_code:(K) -Debug: [elpi] gterm2lp: term=u -Debug: [elpi] gterm2lp: term=_ -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -Debug: -[elpi] - elpi sigma -> coq sigma: before: -SHELF: -FUTURE GOALS STACK: + 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: - -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - elpi sigma -> coq sigma: synchronized: -SHELF: -FUTURE GOALS STACK: +SORTS: - -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - elpi sigma -> coq sigma: after: -SHELF: -FUTURE GOALS STACK: +WEAK CONSTRAINTS: -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - lp2term: depth=0 ctx=[] term=fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: -[elpi] - lp2term@0:fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: [elpi] lp2term@0:X0 -Debug: [elpi] lp2term: evar: calldepth:0 X0 RAW: -ELAB: - -Debug: -[elpi] - lp2term@1:app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: [elpi] lp2term@1:global (indc «SubType») -Debug: [elpi] lp2term@1:X1 c0 -Debug: [elpi] lp2term: evar: calldepth:0 X1 c0 RAW: -ELAB: - -Debug: [elpi] lp2term@1:X2 c0 -Debug: [elpi] lp2term: evar: calldepth:0 X2 c0 RAW: -ELAB: - -Debug: [elpi] lp2term@1:X3 c0 -Debug: [elpi] lp2term: evar: calldepth:0 X3 c0 RAW: -ELAB: - -Debug: [elpi] lp2term@1:app [global (const «oval»), c0] -Debug: [elpi] lp2term@1:global (const «oval») -Debug: [elpi] lp2term@1:c0 -Debug: [elpi] lp2term@1:X4 c0 -Debug: [elpi] lp2term: evar: calldepth:0 X4 c0 RAW: -ELAB: - -Debug: -[elpi] - lp2term@1:fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@1:X5 c0 -Debug: [elpi] lp2term: evar: calldepth:0 X5 c0 RAW: -ELAB: - -Debug: -[elpi] - lp2term@2:fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@2:X6 c0 c1 -Debug: [elpi] lp2term: evar: calldepth:0 X6 c0 c1 RAW: -ELAB: - -Debug: -[elpi] - lp2term@3:fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@3:X7 c0 c1 c2 -Debug: [elpi] lp2term: evar: calldepth:0 X7 c0 c1 c2 RAW: -ELAB: - -Debug: -[elpi] - lp2term@4:match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@4:c3 -Debug: [elpi] lp2term@4:fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4] -Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 -Debug: [elpi] lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 RAW: -ELAB: - -Debug: [elpi] lp2term@5:app [c1, c4] -Debug: [elpi] lp2term@5:c1 -Debug: [elpi] lp2term@5:c4 -Debug: -[elpi] - lp2term@4:fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] -Debug: [elpi] lp2term@4:X9 c0 c1 c2 c3 -Debug: [elpi] lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 RAW: -ELAB: - -Debug: [elpi] lp2term@5:fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] -Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 -Debug: [elpi] lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 RAW: -ELAB: - -Debug: [elpi] lp2term@6:app [c2, c4, c5] -Debug: [elpi] lp2term@6:c2 -Debug: [elpi] lp2term@6:c4 -Debug: [elpi] lp2term@6:c5 -Debug: -[elpi] - lp2term: out=(fun u : hole hole => - {| - val := oval u; - Sub := hole u hole; - Sub_rect := - fun (K : hole u hole) (K_S : hole K u hole) - (_elpi_renamed_u_3 : hole K_S K u hole) => - let - (x, Px) as u0 - return (hole u0 _elpi_renamed_u_3 K_S K hole) := - _elpi_renamed_u_3 in - K_S x Px - |}) - elpi2coq: - RAW: -ELAB: -SHELF: - - FUTURE GOALS STACK: - - -Debug: -[elpi] - detype: (fun u : hole hole => - {| - val := oval u; - Sub := hole u hole; - Sub_rect := - fun (K : hole u hole) (K_S : hole K u hole) - (_elpi_renamed_u_3 : hole K_S K u hole) => - let - (x, Px) as u0 - return (hole u0 _elpi_renamed_u_3 K_S K hole) := - _elpi_renamed_u_3 in - K_S x Px - |}) -Debug: [elpi] bringing updated sigma back to lp -Debug: -[elpi] - term2lp: depth=0 ctx= term=(forall u : nat, - is_SUB nat (fun x : nat => leq x u) (ord u)) -Debug: -[elpi] - term2lp (out): prod `u` (global (indt «nat»)) c0 \ - app - [global (indt «is_SUB»), global (indt «nat»), - fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], - app [global (indt «ord»), c0]] -Debug: -[elpi] - term2lp: depth=0 ctx= term=(fun u : nat => - {| - val := oval u; - Sub := Ord u; - Sub_rect := inlined_sub_rect - |}) -Debug: -[elpi] - term2lp (out): fun `u` (global (indt «nat»)) c0 \ - app - [global (indc «SubType»), global (indt «nat»), - fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], - app [global (indt «ord»), c0], app [global (const «oval»), c0], - app [global (indc «Ord»), c0], - fun `K` - (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) - c1 \ - fun `K_S` - (prod `x` (global (indt «nat»)) c2 \ - prod `Px` - (app - [global (indt «eq»), global (indt «bool»), - app - [fun `x` (global (indt «nat»)) c3 \ - app [global (const «leq»), c3, c0], c2], - global (indc «true»)]) c3 \ - app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ - fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ - match c3 - (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) - [fun `x` (global (indt «nat»)) c4 \ - fun `Px` - (app - [global (indt «eq»), global (indt «bool»), - app [global (const «leq»), c4, c0], global (indc «true»)]) - c5 \ app [c2, c4, c5]]] -Debug: -[elpi] - Elpi: query-compilation:0.0021 static-check:0.0000 optimization:0.0002 runtime:0.0047 (with success) - Query assignments: - GR = indc «Ord» - K = global (indc «Ord») - T = fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] - T1 = fun `u` (global (indt «nat»)) c0 \ - app - [global (indc «SubType»), global (indt «nat»), - fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], - app [global (indt «ord»), c0], app [global (const «oval»), c0], - app [global (indc «Ord»), c0], - fun `K` - (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) - c1 \ - fun `K_S` - (prod `x` (global (indt «nat»)) c2 \ - prod `Px` - (app - [global (indt «eq»), global (indt «bool»), - app - [fun `x` (global (indt «nat»)) c3 \ - app [global (const «leq»), c3, c0], c2], - global (indc «true»)]) c3 \ - app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ - fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ - match c3 - (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) - [fun `x` (global (indt «nat»)) c4 \ - fun `Px` - (app - [global (indt «eq»), global (indt «bool»), - app [global (const «leq»), c4, c0], global (indc «true»)]) - c5 \ app [c2, c4, c5]]] - X11_ = X0 - X12_ = X1 - X13_ = X2 - X14_ = X3 - X15_ = X4 - X16_ = X5 - X17_ = X6 - X18_ = X7 - X19_ = X8 - X20_ = X9 - X21_ = X10 - X22_ = global (indt «nat») - X23_ = c0 \ -global (indt «nat») - X24_ = c0 \ -fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0] - X25_ = c0 \ -app [global (indt «ord»), c0] - X26_ = c0 \ -app [global (const «oval»), c0] - X27_ = c0 \ -fun `K` - (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) - c1 \ - fun `K_S` - (prod `x` (global (indt «nat»)) c2 \ - prod `Px` - (app - [global (indt «eq»), global (indt «bool»), - app - [fun `x` (global (indt «nat»)) c3 \ - app [global (const «leq»), c3, c0], c2], global (indc «true»)]) - c3 \ app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ - fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ - match c3 (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) - [fun `x` (global (indt «nat»)) c4 \ - fun `Px` - (app - [global (indt «eq»), global (indt «bool»), - app [global (const «leq»), c4, c0], global (indc «true»)]) c5 \ - app [c2, c4, c5]] + 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_quotation.28 elpi.tests.test_quotation.27} |= - Set <= is_SUB.u0 - Set <= is_SUB.u1 - Set <= elpi.tests.test_quotation.27 - is_SUB.u2 <= elpi.tests.test_quotation.28 + {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: - {elpi.tests.test_quotation.28 elpi.tests.test_quotation.27} + {} FLEXIBLE UNIVERSES: - elpi.tests.test_quotation.28 - elpi.tests.test_quotation.27 + SORTS: - α24 := Type - α25 := Type + WEAK CONSTRAINTS: -Debug: -[elpi] - gterm2lp: term=(fun u => - {| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |}) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term={| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |} -Debug: [elpi] gterm2lp: term=SubType -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(oval u) -Debug: [elpi] gterm2lp: term=oval -Debug: [elpi] gterm2lp: term=u -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=inlined_sub_rect -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(fun K_S u => - let (x, Px) as u0 return (K u0) := u in K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(fun u => let (x, Px) as u0 return (K u0) := u in K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: -[elpi] - gterm2lp: term=(let (x, Px) as u0 return (K u0) := _elpi_renamed_u_3 in - K_S x Px) -Debug: [elpi] gterm2lp: term=_elpi_renamed_u_3 -Debug: [elpi] gterm2lp: term=(fun u0 => K u0) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(K u0) -Debug: [elpi] gterm2lp: term=K -Debug: [elpi] gterm2lp: term=u0 -Debug: [elpi] gterm2lp: term=(fun x Px => K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(fun Px => K_S x Px) -Debug: [elpi] gterm2lp: term=_ -Debug: [elpi] gterm2lp: term=(K_S x Px) -Debug: [elpi] gterm2lp: term=K_S -Debug: [elpi] gterm2lp: term=x -Debug: [elpi] gterm2lp: term=Px -Debug: -[elpi] - elpi sigma -> coq sigma: before: -SHELF: -FUTURE GOALS STACK: +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: - -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - elpi sigma -> coq sigma: synchronized: -SHELF: -FUTURE GOALS STACK: +WEAK CONSTRAINTS: -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - elpi sigma -> coq sigma: after: -SHELF: -FUTURE GOALS STACK: +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: -Coq-Elpi mapping: -RAW: -ELAB: - -Debug: -[elpi] - lp2term: depth=0 ctx=[] term=fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: -[elpi] - lp2term@0:fun `u` X0 c0 \ - app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: [elpi] lp2term@0:X0 -Debug: [elpi] lp2term: evar: calldepth:0 X0 RAW: -ELAB: - -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X0 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; -Debug: [elpi] lp2term: evar: create_unknown: visible ctx: -Debug: [elpi] restrict_coq_context: named: -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx: -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X41 - EVARS: - ?X41==[ |- Type] (internal placeholder) {?e} +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_quotation.29} |= + {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: - α26 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK: - ?X41 - -Debug: [elpi] lp2term@0:X0 -Debug: -[elpi] lp2term: evar: calldepth:0 X0 RAW: -?X41 <-> X0 -ELAB: -?X41 <-> X0 - -Debug: [elpi] lp2term: evar: already in Coq: ?X41 -Debug: -[elpi] - lp2term@1:app - [global (indc «SubType»), X1 c0, X2 c0, X3 c0, - app [global (const «oval»), c0], X4 c0, - fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] -Debug: [elpi] lp2term@1:global (indc «SubType») -Debug: [elpi] lp2term@1:X1 c0 -Debug: -[elpi] lp2term: evar: calldepth:0 X1 c0 RAW: -?X41 <-> X0 -ELAB: -?X41 <-> X0 - -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X1 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) -Debug: [elpi] in_elpi_evar:?X42 -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X43 - EVARS: - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +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_quotation.30 elpi.tests.test_quotation.29} |= + {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: - α26 - α27 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@1:X1 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X1 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 - -Debug: [elpi] lp2term: evar: already in Coq: ?X43 -Debug: [elpi] lp2term@1:c0 -Debug: [elpi] lp2term@1:X2 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X2 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 - -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X2 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) -Debug: [elpi] in_elpi_evar:?X44 -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X45 - EVARS: - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +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_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= + {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: - α26 - α27 - α28 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X45 ?X44 ?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@1:X2 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X2 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 - -Debug: [elpi] lp2term: evar: already in Coq: ?X45 -Debug: [elpi] lp2term@1:c0 -Debug: [elpi] lp2term@1:X3 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X3 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X3 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) -Debug: [elpi] in_elpi_evar:?X46 -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X47 - EVARS: - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +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 16, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 16, 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 15, characters 58-59: +Warning: +File "./tests/test_elaborator.v", line 15, 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 16, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 16, 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 21, characters 10-12: +Warning: +File "./tests/test_elaborator.v", line 21, 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 21, characters 7-9: +Warning: +File "./tests/test_elaborator.v", line 21, 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 27, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 27, 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 27, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 27, 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 29, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 29, 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 29, characters 43-44: +Warning: +File "./tests/test_elaborator.v", line 29, 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 36, characters 29-30: +Warning: +File "./tests/test_elaborator.v", line 36, 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 36, characters 31-32: +Warning: +File "./tests/test_elaborator.v", line 36, 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 39, characters 15-16: +Warning: +File "./tests/test_elaborator.v", line 39, 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 40, characters 29-31: +Warning: +File "./tests/test_elaborator.v", line 40, 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 62, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 62, 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 69, characters 32-33: +Warning: +File "./tests/test_elaborator.v", line 69, 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 76, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 76, 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 88, characters 45-46: +Warning: +File "./tests/test_elaborator.v", line 88, 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 95, characters 62-63: +Warning: +File "./tests/test_elaborator.v", line 95, 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 95, characters 64-65: +Warning: +File "./tests/test_elaborator.v", line 95, 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 95, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 95, 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 95, characters 68-69: +Warning: +File "./tests/test_elaborator.v", line 95, 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 95, characters 70-71: +Warning: +File "./tests/test_elaborator.v", line 95, 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 95, characters 72-73: +Warning: +File "./tests/test_elaborator.v", line 95, 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 106, characters 66-67: +Warning: +File "./tests/test_elaborator.v", line 106, 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 119, characters 35-38: +Warning: +File "./tests/test_elaborator.v", line 119, 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 133, characters 64-67: +Warning: +File "./tests/test_elaborator.v", line 133, 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 136, characters 33-36: +Warning: +File "./tests/test_elaborator.v", line 136, 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 149, characters 49-50: +Warning: +File "./tests/test_elaborator.v", line 149, 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 149, characters 47-48: +Warning: +File "./tests/test_elaborator.v", line 149, 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 154, characters 36-37: +Warning: +File "./tests/test_elaborator.v", line 154, 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 154, characters 38-39: +Warning: +File "./tests/test_elaborator.v", line 154, 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 156, characters 39-40: +Warning: +File "./tests/test_elaborator.v", line 156, 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 156, characters 41-42: +Warning: +File "./tests/test_elaborator.v", line 156, characters 41-42 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: + GR = const «myi» +Query assignments: + GR = const «myi» +myi : Reflexive R + : Reflexive R +Query assignments: + GR = const «myi» +Query assignments: + L = [tc-instance (const «relation_equivalence_rewrite_relation») 0, + tc-instance (const «iff_rewrite_relation») 2, + tc-instance (const «impl_rewrite_relation») 3, + tc-instance (const «inverse_impl_rewrite_relation») 3, + tc-instance (const «BinInt.Z.lt_strorder») 0, + tc-instance (const «BinNat.N.lt_strorder») 0, + tc-instance (const «BinPos.Pos.lt_strorder») 0, + tc-instance (const «PeanoNat.Nat.lt_strorder») 0, + tc-instance (const «CRelationClasses.RewriteRelation_instance_2») 0, + tc-instance (const «CRelationClasses.RewriteRelation_instance_1») 0, + tc-instance (const «CRelationClasses.RewriteRelation_instance_0») 0, + tc-instance (const «CRelationClasses.equivalence_rewrite_crelation») 1, + tc-instance (const «Equivalence_PER») 10, + tc-instance (const «BinInt.Z.eqf_equiv») 0, + tc-instance (const «BinNat.N.eqf_equiv») 0, + tc-instance (const «PeanoNat.Nat.eqf_equiv») 0, + tc-instance (const «relation_equivalence_equivalence») 0, + tc-instance (const «predicate_equivalence_equivalence») 0, + tc-instance (const «iff_equivalence») 0, + tc-instance (const «Equivalence.pointwise_equivalence») 9, + tc-instance (const «eq_equivalence») 10, + tc-instance (const «Morphisms.flip_pars») 0, + tc-instance (const «Morphisms.impl_pars») 0, + tc-instance (const «Morphisms.iff_pars») 0, + tc-instance (const «Morphisms.eq_pars») 0, + tc-instance (const «CRelationClasses.Equivalence_PER») 10, + tc-instance (const «BinInt.Z.le_preorder») 0, + tc-instance (const «BinNat.N.le_preorder») 0, + tc-instance (const «BinPos.Pos.le_preorder») 0, + tc-instance (const «PeanoNat.Nat.le_preorder») 0, + tc-instance (const «relation_implication_preorder») 0, + tc-instance (const «predicate_implication_preorder») 0, + tc-instance (const «Equivalence_PreOrder») 10, + tc-instance (const «BinInt.Z.Decidable_ge_Z») 0, + tc-instance (const «BinInt.Z.Decidable_gt_Z») 0, + tc-instance (const «BinInt.Z.Decidable_le_Z») 0, + tc-instance (const «BinInt.Z.Decidable_lt_Z») 0, + tc-instance (const «BinInt.Z.Decidable_eq_Z») 0, + tc-instance (const «PeanoNat.Nat.Decidable_le_nat») 0, + tc-instance (const «PeanoNat.Nat.Decidable_eq_nat») 0, + tc-instance (const «Bool.Decidable_eq_bool») 0, + tc-instance (const «DecidableClass.Decidable_not») 1, + tc-instance (const «CRelationClasses.relation_equivalence_equivalence») 0, + tc-instance (const «CRelationClasses.iff_equivalence») 0, + tc-instance (const «CRelationClasses.eq_equivalence») 10, + tc-instance (const «CRelationClasses.relation_implication_preorder») 0, + tc-instance (const «SetoidTactics.equivalence_default») 4, + tc-instance (const «CRelationClasses.partial_order_antisym») 2, + tc-instance (const «CRelationClasses.iffT_Symmetric») 0, + tc-instance (const «CRelationClasses.iff_Symmetric») 0, + tc-instance (const «CRelationClasses.eq_Symmetric») 0, + tc-instance (const «CRelationClasses.Equivalence_Symmetric») 1, + tc-instance (const «CRelationClasses.PER_Symmetric») 3, + tc-instance (const «BinInt.Z.le_partialorder») 0, + tc-instance (const «BinNat.N.le_partialorder») 0, + tc-instance (const «BinPos.Pos.le_partorder») 0, + tc-instance (const «PeanoNat.Nat.le_partialorder») 0, + tc-instance (const «subrelation_partial_order») 0, + tc-instance (const «Morphisms.iff_flip_impl_subrelation») 2, + tc-instance (const «Morphisms.iff_impl_subrelation») 2, + tc-instance (const «Morphisms.pointwise_subrelation») 4, + tc-instance (const «iff_Transitive») 0, + tc-instance (const «impl_Transitive») 0, + tc-instance (const «eq_Transitive») 0, + tc-instance (const «Equivalence.equiv_transitive») 1, + tc-instance (const «Equivalence_Transitive») 1, + tc-instance (const «StrictOrder_Transitive») 1, + tc-instance (const «PreOrder_Transitive») 2, + tc-instance (const «PER_Transitive») 3, + tc-instance (const «BinInt.Z.divide_transitive») 5, + tc-instance (const «BinNat.N.divide_transitive») 5, + tc-instance (const «BinNat.N.Private_NZGcdProp.divide_transitive») 5, + tc-instance (const «PeanoNat.Nat.divide_transitive») 5, + tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_transitive») 5, + tc-instance (const «Equivalence.pointwise_transitive») 9, + tc-instance (const «CMorphisms.iffT_flip_arrow_subrelation») 2, + tc-instance (const «CMorphisms.iffT_arrow_subrelation») 2, + tc-instance (const «CMorphisms.iff_flip_impl_subrelation») 2, + tc-instance (const «CMorphisms.iff_impl_subrelation») 2, + tc-instance (const «CMorphisms.pointwise_subrelation») 4, + tc-instance (const «CMorphisms.proper_proper») 0, + tc-instance (const «CMorphisms.respectful_morphism») 0, + tc-instance (const «CMorphisms.compose_proper») 0, + tc-instance (const «CMorphisms.proper_subrelation_proper_arrow») 0, + tc-instance (const «CMorphisms.PER_type_morphism») 1, + tc-instance (const «CMorphisms.trans_contra_co_type_morphism») 1, + tc-instance (const «CMorphisms.subrelation_id_proper») 1, + tc-instance (const «CMorphisms.trans_co_eq_inv_arrow_morphism») 2, + tc-instance (const «CMorphisms.per_partial_app_type_morphism») 2, + tc-instance (const «CMorphisms.PartialOrder_proper_type») 3, + tc-instance (const «CMorphisms.trans_sym_contra_arrow_morphism») 3, + tc-instance (const «CMorphisms.trans_sym_co_inv_impl_type_morphism») 3, + tc-instance (const «CMorphisms.trans_co_impl_type_morphism») 3, + tc-instance (const «CMorphisms.trans_contra_inv_impl_type_morphism») 3, + tc-instance (const «CRelationClasses.iffT_Transitive») 0, + tc-instance (const «CRelationClasses.arrow_Transitive») 0, + tc-instance (const «CRelationClasses.iff_Transitive») 0, + tc-instance (const «CRelationClasses.impl_Transitive») 0, + tc-instance (const «CRelationClasses.eq_Transitive») 0, + tc-instance (const «CRelationClasses.Equivalence_Transitive») 1, + tc-instance (const «CRelationClasses.StrictOrder_Transitive») 1, + tc-instance (const «CRelationClasses.PreOrder_Transitive») 2, + tc-instance (const «CRelationClasses.PER_Transitive») 3, + tc-instance (const «StrictOrder_Irreflexive») 1, + tc-instance (const «StrictOrder_Asymmetric») 1, + tc-instance (const «BinInt.Z.ones_wd») 0, + tc-instance (const «BinInt.Z.lnot_wd») 0, + tc-instance (const «BinInt.Z.clearbit_wd») 0, + tc-instance (const «BinInt.Z.setbit_wd») 0, + tc-instance (const «BinInt.Z.ldiff_wd») 0, + tc-instance (const «BinInt.Z.lor_wd») 0, + tc-instance (const «BinInt.Z.land_wd») 0, + tc-instance (const «BinInt.Z.lxor_wd») 0, + tc-instance (const «BinInt.Z.div2_wd») 0, + tc-instance (const «BinInt.Z.shiftl_wd») 0, + tc-instance (const «BinInt.Z.shiftr_wd») 0, + tc-instance (const «BinInt.Z.testbit_eqf») 0, + tc-instance (const «BinInt.Z.b2z_wd») 0, + tc-instance (const «BinInt.Z.eqb_compat») 0, + tc-instance (const «BinInt.Z.lcm_wd») 0, + tc-instance (const «BinInt.Z.Bezout_wd») 0, + tc-instance (const «BinInt.Z.gcd_wd») 0, + tc-instance (const «BinInt.Z.divide_wd») 0, + tc-instance (const «BinInt.Z.log2_up_wd») 0, + tc-instance (const «BinInt.Z.log2_wd») 0, + tc-instance (const «BinInt.Z.sqrt_up_wd») 0, + tc-instance (const «BinInt.Z.sqrt_wd») 0, + tc-instance (const «BinInt.Z.odd_wd») 0, + tc-instance (const «BinInt.Z.even_wd») 0, + tc-instance (const «BinInt.Z.Odd_wd») 0, + tc-instance (const «BinInt.Z.Even_wd») 0, + tc-instance (const «BinInt.Z.sgn_wd») 0, + tc-instance (const «BinInt.Z.abs_wd») 0, + tc-instance (const «BinInt.Z.min_compat») 0, + tc-instance (const «BinInt.Z.max_compat») 0, + tc-instance (const «BinInt.Z.Proper_instance_0») 0, + tc-instance (const «BinInt.Z.le_wd») 0, + tc-instance (const «BinNat.N.lnot_wd») 0, + tc-instance (const «BinNat.N.ones_wd») 0, + tc-instance (const «BinNat.N.clearbit_wd») 0, + tc-instance (const «BinNat.N.setbit_wd») 0, + tc-instance (const «BinNat.N.ldiff_wd») 0, + tc-instance (const «BinNat.N.lor_wd») 0, + tc-instance (const «BinNat.N.land_wd») 0, + tc-instance (const «BinNat.N.lxor_wd») 0, + tc-instance (const «BinNat.N.div2_wd») 0, + tc-instance (const «BinNat.N.shiftl_wd») 0, + tc-instance (const «BinNat.N.shiftr_wd») 0, + tc-instance (const «BinNat.N.testbit_eqf») 0, + tc-instance (const «BinNat.N.b2n_proper») 0, + tc-instance (const «BinNat.N.eqb_compat») 0, + tc-instance (const «BinNat.N.lcm_wd») 0, + tc-instance (const «BinNat.N.Private_NLcmProp.lcm_wd») 0, + tc-instance (const «BinNat.N.Bezout_wd») 0, + tc-instance (const «BinNat.N.gcd_wd») 0, + tc-instance (const «BinNat.N.divide_wd») 0, + tc-instance (const «BinNat.N.Private_NZGcdProp.gcd_wd») 0, + tc-instance (const «BinNat.N.Private_NZGcdProp.divide_wd») 0, + tc-instance (const «BinNat.N.log2_up_wd») 0, + tc-instance (const «BinNat.N.log2_wd») 0, + tc-instance (const «BinNat.N.sqrt_up_wd») 0, + tc-instance (const «BinNat.N.Private_NZSqrt.sqrt_wd») 0, + tc-instance (const «BinNat.N.odd_wd») 0, + tc-instance (const «BinNat.N.even_wd») 0, + tc-instance (const «BinNat.N.Odd_wd») 0, + tc-instance (const «BinNat.N.Even_wd») 0, + tc-instance (const «BinNat.N.min_compat») 0, + tc-instance (const «BinNat.N.max_compat») 0, + tc-instance (const «BinNat.N.Proper_instance_0») 0, + tc-instance (const «BinNat.N.lt_alt_wd») 0, + tc-instance (const «BinNat.N.le_alt_wd») 0, + tc-instance (const «BinNat.N.le_wd») 0, + tc-instance (const «BinNat.N.recursion_wd») 0, + tc-instance (const «BinPos.Pos.min_compat») 0, + tc-instance (const «BinPos.Pos.max_compat») 0, + tc-instance (const «BinPos.Pos.Proper_instance_0») 0, + tc-instance (const «BinPos.Pos.lt_compat») 0, + tc-instance (const «BinPos.Pos.eqb_compat») 0, + tc-instance (const «PeanoNat.Nat.lnot_wd») 0, + tc-instance (const «PeanoNat.Nat.ones_wd») 0, + tc-instance (const «PeanoNat.Nat.clearbit_wd») 0, + tc-instance (const «PeanoNat.Nat.setbit_wd») 0, + tc-instance (const «PeanoNat.Nat.ldiff_wd») 0, + tc-instance (const «PeanoNat.Nat.lor_wd») 0, + tc-instance (const «PeanoNat.Nat.land_wd») 0, + tc-instance (const «PeanoNat.Nat.lxor_wd») 0, + tc-instance (const «PeanoNat.Nat.div2_wd») 0, + tc-instance (const «PeanoNat.Nat.shiftl_wd») 0, + tc-instance (const «PeanoNat.Nat.shiftr_wd») 0, + tc-instance (const «PeanoNat.Nat.testbit_eqf») 0, + tc-instance (const «PeanoNat.Nat.b2n_proper») 0, + tc-instance (const «PeanoNat.Nat.eqb_compat») 0, + tc-instance (const «PeanoNat.Nat.lcm_wd») 0, + tc-instance (const «PeanoNat.Nat.Private_NLcmProp.lcm_wd») 0, + tc-instance (const «PeanoNat.Nat.Bezout_wd») 0, + tc-instance (const «PeanoNat.Nat.gcd_wd») 0, + tc-instance (const «PeanoNat.Nat.divide_wd») 0, + tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.gcd_wd») 0, + tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_wd») 0, + tc-instance (const «PeanoNat.Nat.log2_up_wd») 0, + tc-instance (const «PeanoNat.Nat.log2_wd») 0, + tc-instance (const «PeanoNat.Nat.sqrt_up_wd») 0, + tc-instance (const «PeanoNat.Nat.Private_NZSqrt.sqrt_wd») 0, + tc-instance (const «PeanoNat.Nat.odd_wd») 0, + tc-instance (const «PeanoNat.Nat.even_wd») 0, + tc-instance (const «PeanoNat.Nat.Odd_wd») 0, + tc-instance (const «PeanoNat.Nat.Even_wd») 0, + tc-instance (const «PeanoNat.Nat.min_compat») 0, + tc-instance (const «PeanoNat.Nat.max_compat») 0, + tc-instance (const «PeanoNat.Nat.Proper_instance_0») 0, + tc-instance (const «PeanoNat.Nat.lt_alt_wd») 0, + tc-instance (const «PeanoNat.Nat.le_alt_wd») 0, + tc-instance (const «PeanoNat.Nat.le_wd») 0, + tc-instance (const «PeanoNat.Nat.recursion_wd») 0, + tc-instance (const «PeanoNat.Nat.testbit_wd») 0, + tc-instance (const «PeanoNat.Nat.lt_wd») 0, + tc-instance (const «PeanoNat.Nat.mod_wd») 0, + tc-instance (const «PeanoNat.Nat.div_wd») 0, + tc-instance (const «PeanoNat.Nat.pow_wd») 0, + tc-instance (const «PeanoNat.Nat.mul_wd») 0, + tc-instance (const «PeanoNat.Nat.sub_wd») 0, + tc-instance (const «PeanoNat.Nat.add_wd») 0, + tc-instance (const «PeanoNat.Nat.pred_wd») 0, + tc-instance (const «PeanoNat.Nat.succ_wd») 0, + tc-instance (const «Morphisms_Prop.well_founded_morphism») 0, + tc-instance (const «Morphisms_Prop.Acc_rel_morphism») 0, + tc-instance (const «Morphisms_Prop.all_iff_morphism») 0, + tc-instance (const «Morphisms_Prop.ex_iff_morphism») 0, + tc-instance (const «Morphisms_Prop.iff_iff_iff_impl_morphism») 0, + tc-instance (const «Morphisms_Prop.or_iff_morphism») 0, + tc-instance (const «Morphisms_Prop.and_iff_morphism») 0, + tc-instance (const «Morphisms_Prop.not_iff_morphism») 0, + tc-instance (const «Morphisms.proper_proper») 0, + tc-instance (const «Morphisms.respectful_morphism») 0, + tc-instance (const «Morphisms.compose_proper») 0, + tc-instance (const «Morphisms.proper_subrelation_proper») 0, + tc-instance (const «Morphisms_Prop.all_flip_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.all_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.ex_flip_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.ex_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.or_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.and_impl_morphism») 1, + tc-instance (const «Morphisms_Prop.not_impl_morphism») 1, + tc-instance (const «Morphisms.PER_morphism») 1, + tc-instance (const «Morphisms.trans_contra_co_morphism») 1, + tc-instance (const «Morphisms.subrelation_id_proper») 1, + tc-instance (const «Morphisms_Prop.Acc_pt_morphism») 2, + tc-instance (const «Morphisms.trans_co_eq_inv_impl_morphism») 2, + tc-instance (const «Morphisms.per_partial_app_morphism») 2, + tc-instance (const «Morphisms.PartialOrder_proper») 3, + tc-instance (const «Morphisms.trans_sym_contra_impl_morphism») 3, + tc-instance (const «Morphisms.trans_sym_co_inv_impl_morphism») 3, + tc-instance (const «Morphisms.trans_co_impl_morphism») 3, + tc-instance (const «Morphisms.trans_contra_inv_impl_morphism») 3, + tc-instance (const «CRelationClasses.StrictOrder_Irreflexive») 1, + tc-instance (const «CRelationClasses.StrictOrder_Asymmetric») 1, + tc-instance (const «iff_Reflexive») 0, + tc-instance (const «impl_Reflexive») 0, + tc-instance (const «eq_Reflexive») 0, + tc-instance (const «Equivalence.equiv_reflexive») 1, + tc-instance (const «Morphisms.reflexive_eq_dom_reflexive») 1, + tc-instance (const «Equivalence_Reflexive») 1, + tc-instance (const «PreOrder_Reflexive») 2, + tc-instance (const «BinInt.Z.divide_reflexive») 5, + tc-instance (const «BinNat.N.divide_reflexive») 5, + tc-instance (const «BinNat.N.Private_NZGcdProp.divide_reflexive») 5, + tc-instance (const «PeanoNat.Nat.divide_reflexive») 5, + tc-instance (const «PeanoNat.Nat.Private_NZGcdProp.divide_reflexive») 5, + tc-instance (const «Equivalence.pointwise_reflexive») 9, + tc-instance (const «myi») 10, + tc-instance (const «ssrclasses.iff_Reflexive») 0, + tc-instance (const «ssrclasses.eq_Reflexive») 0, + tc-instance (const «ssrsetoid.compat_Reflexive») 12, + tc-instance (const «CRelationClasses.iffT_Reflexive») 0, + tc-instance (const «CRelationClasses.arrow_Reflexive») 0, + tc-instance (const «CRelationClasses.iff_Reflexive») 0, + tc-instance (const «CRelationClasses.impl_Reflexive») 0, + tc-instance (const «CRelationClasses.eq_Reflexive») 0, + tc-instance (const «CMorphisms.reflexive_eq_dom_reflexive») 1, + tc-instance (const «CRelationClasses.Equivalence_Reflexive») 1, + tc-instance (const «CRelationClasses.PreOrder_Reflexive») 2, + tc-instance (const «partial_order_antisym») 2, + tc-instance (const «iff_Symmetric») 0, + tc-instance (const «neq_Symmetric») 0, + tc-instance (const «eq_Symmetric») 0, + tc-instance (const «Equivalence.equiv_symmetric») 1, + tc-instance (const «Equivalence_Symmetric») 1, + tc-instance (const «PER_Symmetric») 3, + tc-instance (const «Equivalence.pointwise_symmetric») 9] +Query assignments: + GR = indt «RewriteRelation» + L = [tc-instance (const «relation_equivalence_rewrite_relation») 0, + tc-instance (const «iff_rewrite_relation») 2, + tc-instance (const «impl_rewrite_relation») 3, + tc-instance (const «inverse_impl_rewrite_relation») 3] +Query assignments: + GR = indt «RewriteRelation» +Query assignments: + GR = indt «True» +Query assignments: + Check = c0 \ +sigma c1 \ + c0 = expected c1 , + std.mem + [tc-instance (const «hint_c») 0, tc-instance (const «instance_c») 0, + tc-instance (const «instance_g») 4, tc-instance (const «hint_g») 5] + c1 + Exp = [expected (tc-instance (const «hint_c») 0), + expected (tc-instance (const «instance_c») 0), + expected (tc-instance (const «instance_g») 4), + expected (tc-instance (const «hint_g») 5)] + L = [tc-instance (const «hint_c») 0, tc-instance (const «instance_c») 0, + tc-instance (const «instance_g») 4, tc-instance (const «hint_g») 5] +Query assignments: + GR = const «myc» +eq_op myc t t + : bool +Query assignments: + L = [cs-instance (const «carrier») (cs-gref (const «W»)) (const «myc»), + cs-instance (const «eq_op») (cs-gref (const «Z»)) (const «myc»)] +Query assignments: + I = «eq» + P1 = «carrier» + P2 = «eq_op» +Query assignments: + GR = const «myc1» +eq_op myc1 t1 t1 + : bool +Query assignments: + P = const «eq_op» +Query assignments: + W = const «W» +[cs-instance (const «eq_op») (cs-gref (const «Z1»)) (const «myc1»)] +Query assignments: + L = [cs-instance (const «eq_op») (cs-gref (const «Z1»)) (const «myc1»)] + P = const «eq_op» + W = const «Z1» +Query assignments: + P = const «eq_op» + W = indt «nat» +Query assignments: + C1 = const «C1» + GR1 = const «c12» + GR2 = const «c1t» + GR3 = const «c1f» +fun x : C1 => x : C2 + : C1 -> C2 +fun (x : C1) (_ : x) => true + : forall x : C1, x -> bool +fun x : C1 => x 3 + : C1 -> nat +Query assignments: + L = [coercion (const «c1t») 0 (const «C1») sortclass, + coercion (const «c1f») 0 (const «C1») funclass, + coercion (const «c12») 0 (const «C1») (grefclass (const «C2»)), + coercion (const «reverse_coercion») 3 (const «ReverseCoercionSource») + (grefclass (const «ReverseCoercionTarget»))] +Query assignments: + %arg1 = const «nuc» +nuc : forall x : nat, C1 -> C3 x +nuc is not universe polymorphic +Arguments nuc x%nat_scope _ +nuc is a reversible coercion +Expands to: Constant elpi.tests.test_API_TC_CS.nuc +File "./tests/test_API_TC_CS.v", line 42, characters 26-27: +Warning: +File "./tests/test_API_TC_CS.v", line 42, characters 26-27 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.eq_proper_proxy || + class_apply @Morphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; class_apply @Morphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (Morphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (CMorphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @CMorphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.complement_proper) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @Morphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @irreflexivity) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply CRelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) unconvertible +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.eq_proper_proxy || + class_apply @CMorphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 42, characters 0-30: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.reflexive_proxy_tac A R) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 66-67: +Warning: +File "./tests/test_API_TC_CS.v", line 43, characters 66-67 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) (equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 43, characters 0-70: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./tests/test_API_TC_CS.v", line 102, characters 27-28: +Warning: +File "./tests/test_API_TC_CS.v", line 102, characters 27-28 +L is linear: name it _L (discard) or L_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API_TC_CS.v", line 159, characters 32-33: +Warning: +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] +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» + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +c2 +global (indt «nat») +z +nat +Query assignments: + %arg1 = c0 \ c1 \ c2 \ +z + %arg2 = c0 \ c1 \ c2 \ +nat + T = global (indt «nat») +c2 +global (indt «nat») +z +nat +Query assignments: + %arg1 = c0 \ c1 \ c2 \ +z + %arg2 = c0 \ c1 \ c2 \ +nat + T = global (indt «nat») +Illegal application (Non-functional construction): +The expression "Prop" of type "Type" +cannot be applied to the term + "Prop" : "Type" +Query assignments: + E = Illegal application (Non-functional construction): +The expression "Prop" of type "Type" +cannot be applied to the term + "Prop" : "Type" +Unable to unify "bool" with "nat". +Query assignments: + Msg = Unable to unify "bool" with "nat". +Query assignments: + Cons = global (indc «cons») + GRCons = indc «cons» + GRList = indt «list» + GRNat = indt «nat» + GRNil = indc «nil» + GRZero = indc «O» + L = app + [global (indc «cons»), global (indt «nat»), global (indc «O»), + app [global (indc «nil»), global (indt «nat»)]] + LE = app + [global (indc «cons»), global (indt «nat»), global (indc «O»), + app [global (indc «nil»), global (indt «nat»)]] + List = global (indt «list») + Nat = global (indt «nat») + Nil = global (indc «nil») + Zero = global (indc «O») +Universe constraints: UNIVERSES: - {elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 - elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= + {elpi.tests.test_API_typecheck.4 elpi.tests.test_API_typecheck.3 + elpi.tests.test_API_typecheck.2 elpi.tests.test_API_typecheck.1} |= + elpi.tests.test_API_typecheck.3 < elpi.tests.test_API_typecheck.2 + elpi.tests.test_API_typecheck.4 < elpi.tests.test_API_typecheck.1 + Set <= elpi.tests.test_API_typecheck.3 + Set <= elpi.tests.test_API_typecheck.4 + elpi.tests.test_API_typecheck.3 <= list.u0 + elpi.tests.test_API_typecheck.4 <= list.u0 ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α26 - α27 - α28 - α29 + α1 := Type + α2 := Type WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X47 ?X46 ?X45 ?X44 ?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@1:X3 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X3 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 - -Debug: [elpi] lp2term: evar: already in Coq: ?X47 -Debug: [elpi] lp2term@1:c0 -Debug: [elpi] lp2term@1:app [global (const «oval»), c0] -Debug: [elpi] lp2term@1:global (const «oval») -Debug: [elpi] lp2term@1:c0 -Debug: [elpi] lp2term@1:X4 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X4 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 - -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X4 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) -Debug: [elpi] in_elpi_evar:?X48 -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X49 - EVARS: - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +global (indt «nat») +Query assignments: + T = global (indt «nat») + X1_ = global (indt «nat») + X2_ = global (indt «nat») +Universe constraints: UNIVERSES: - {elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 - elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= + {elpi.tests.test_API_typecheck.9 elpi.tests.test_API_typecheck.8 + elpi.tests.test_API_typecheck.7 elpi.tests.test_API_typecheck.6 + elpi.tests.test_API_typecheck.5} |= + Set < elpi.tests.test_API_typecheck.7 + elpi.tests.test_API_typecheck.8 < elpi.tests.test_API_typecheck.6 + elpi.tests.test_API_typecheck.9 < elpi.tests.test_API_typecheck.5 + Set <= elpi.tests.test_API_typecheck.8 + Set <= elpi.tests.test_API_typecheck.9 + elpi.tests.test_API_typecheck.8 <= list.u0 + elpi.tests.test_API_typecheck.9 <= list.u0 ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α26 - α27 - α28 - α29 - α30 + α3 := Type + α4 := Type + α5 := Type WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@1:X4 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X4 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 - -Debug: [elpi] lp2term: evar: already in Coq: ?X49 -Debug: [elpi] lp2term@1:c0 -Debug: -[elpi] - lp2term@1:fun `K` (X5 c0) c1 \ - fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@1:X5 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X5 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X5 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X50 - EVARS: - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +«elpi.tests.test_API_typecheck.10» +Query assignments: + U = «elpi.tests.test_API_typecheck.10» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_typecheck.10} |= + Set <= elpi.tests.test_API_typecheck.10 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_typecheck.10} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_typecheck.10 +SORTS: + +WEAK CONSTRAINTS: + +Unable to unify "Set" with "Prop" (universe inconsistency: Cannot enforce Set +<= Prop). +Query assignments: + E = Unable to unify "Set" with "Prop" (universe inconsistency: Cannot enforce Set +<= Prop). +File "./tests/test_API_typecheck.v", line 59, characters 2-4: +Warning: +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] +Coq version: 8.20.1 = 8 . 20 . 1 +Query assignments: + MA = 8 + MI = 20 + P = 1 + V = 8.20.1 +hello world +A +B +Query assignments: + GR = «nat» +Query assignments: + GR = «Nat.add» + MP = «Coq.Init.Datatypes» +Query assignments: + A = «elpi.tests.test_API.succ» + GR = «Nat.add» + MP = «Coq.Init.Datatypes» + X1 = [loc-gref (const «Nat.add»)] + X2 = [loc-gref (const «Nat.add»)] + X3 = [loc-abbreviation «elpi.tests.test_API.succ»] + X4 = [loc-modpath «Coq.Init.Datatypes»] +Universe constraints: +Query assignments: + X = «elpi.tests.test_API.1» +Universe constraints: UNIVERSES: - {elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 - elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 - elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= + {elpi.tests.test_API.1} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α26 - α27 - α28 - α29 - α30 - α31 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@1:X5 c0 -Debug: -[elpi] - lp2term: evar: calldepth:0 X5 c0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 - -Debug: [elpi] lp2term: evar: already in Coq: ?X50 -Debug: [elpi] lp2term@1:c0 -Debug: -[elpi] - lp2term@2:fun `K_S` (X6 c0 c1) c2 \ - fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@2:X6 c0 c1 -Debug: -[elpi] - lp2term: evar: calldepth:0 X6 c0 c1 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 - -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X6 -Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) (K : ?e8) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 -c1 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - restrict_coq_context: cur subst: u - restrict_coq_context: looking at K(dbl 1) -Debug: [elpi] ?e8--0->?e8 -Debug: -[elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) (K : ?e8) -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X51 - EVARS: - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +Query assignments: + X = typ «elpi.tests.test_API.2» + Y = typ «elpi.tests.test_API.3» +Universe constraints: UNIVERSES: - {elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 - elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 - elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= + {elpi.tests.test_API.3 elpi.tests.test_API.2} |= + elpi.tests.test_API.2 <= elpi.tests.test_API.3 ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α26 - α27 - α28 - α29 - α30 - α31 - α32 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 -?X41 - -Debug: [elpi] lp2term@2:X6 c0 c1 -Debug: -[elpi] - lp2term: evar: calldepth:0 X6 c0 c1 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 - -Debug: [elpi] lp2term: evar: already in Coq: ?X51 -Debug: [elpi] lp2term@2:c0 -Debug: [elpi] lp2term@2:c1 -Debug: -[elpi] - lp2term@3:fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ - match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@3:X7 c0 c1 c2 -Debug: -[elpi] - lp2term: evar: calldepth:0 X7 c0 c1 c2 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X7 -Debug: -[elpi] - lp2term: evar: create_unknown: whole ctx: ; (u : ?e) - (K : ?e8) - (K_S : ?e9) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 -c2 -Debug: [elpi] restrict_coq_context: named: -Debug: -[elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - restrict_coq_context: cur subst: u - restrict_coq_context: looking at K(dbl 1) -Debug: [elpi] ?e8--0->?e8 -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - restrict_coq_context: cur subst: K - u - restrict_coq_context: looking at K_S(dbl 2) -Debug: [elpi] ?e9--0->?e9 -Debug: -[elpi] - lp2term: evar: create_unknown: restricted ctx:(u : ?e) - (K : ?e8) - (K_S : ?e9) -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X52 - EVARS: - ?X52==[u K K_S |- Type] (internal placeholder) {?e10} - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} +Query assignments: + X = typ «elpi.tests.test_API.4» + Y = typ «elpi.tests.test_API.5» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API.5 elpi.tests.test_API.4} |= + elpi.tests.test_API.4 <= elpi.tests.test_API.5 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + +Query assignments: + X = typ «elpi.tests.test_API.6» + Y = typ «elpi.tests.test_API.7» + Z = typ «elpi.tests.test_API.8» +Universe constraints: UNIVERSES: - {elpi.tests.test_quotation.36 elpi.tests.test_quotation.35 - elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 - elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 - elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= + {elpi.tests.test_API.8 elpi.tests.test_API.7 elpi.tests.test_API.6} |= + elpi.tests.test_API.6 <= elpi.tests.test_API.8 + elpi.tests.test_API.7 <= elpi.tests.test_API.8 ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α26 - α27 - α28 - α29 - α30 - α31 - α32 - α33 + WEAK CONSTRAINTS: -SHELF: -FUTURE GOALS STACK:?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 -?X41 -Debug: [elpi] lp2term@3:X7 c0 c1 c2 -Debug: -[elpi] - lp2term: evar: calldepth:0 X7 c0 c1 c2 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 +Query assignments: + X = typ «elpi.tests.test_API.9» + Y = typ «elpi.tests.test_API.10» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API.10 elpi.tests.test_API.9} |= + elpi.tests.test_API.9 < elpi.tests.test_API.10 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + -Debug: [elpi] lp2term: evar: already in Coq: ?X52 -Debug: [elpi] lp2term@3:c0 -Debug: [elpi] lp2term@3:c1 -Debug: [elpi] lp2term@3:c2 -Debug: -[elpi] - lp2term@4:match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) - [fun `x` (X9 c0 c1 c2 c3) c4 \ - fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] -Debug: [elpi] lp2term@4:c3 -Debug: [elpi] lp2term@4:fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4] -Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 -Debug: -[elpi] - lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 +[foo (const «X»), foo (indt «nat»), foo (indt «bool»)] +[foo (indt «nat»), foo (indt «bool»)] +[] +[foo (indt «nat»)] +hello [int 1, int 2, trm (global (indt «nat»)), str x] +coq.pp.box (coq.pp.hv 2) + [coq.pp.str Module, coq.pp.spc, coq.pp.str Foo, coq.pp.spc, coq.pp.str :=, + coq.pp.brk 1 0, coq.pp.str body, coq.pp.spc, coq.pp.str End Foo.] +Module + Foo + := + body + End Foo. +fix foo (x : ?e3) (y : ?e4) {struct x} : ?e2 := + match x as _elpi_renamed_x_3 return ?e6 with + | true => S (S (S O)) + | false => y + end +fix foo x y {struct x} := if x as _elpi_renamed_x_3 then 3 else y +File "./tests/test_API.v", line 2, characters 0-24: +Warning: Using Vector.t is known to be technically difficult, see +. +[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] +File "./tests/test_API.v", line 74, characters 37-39: +Warning: +File "./tests/test_API.v", line 74, characters 37-39 +MP is linear: name it _MP (discard) or MP_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 82, characters 54-55: +Warning: +File "./tests/test_API.v", line 82, characters 54-55 +A is linear: name it _A (discard) or A_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 83, characters 56-58: +Warning: +File "./tests/test_API.v", line 83, characters 56-58 +MP is linear: name it _MP (discard) or MP_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 92, characters 29-30: +Warning: +File "./tests/test_API.v", line 92, characters 29-30 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 93, characters 29-30: +Warning: +File "./tests/test_API.v", line 93, characters 29-30 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 93, characters 31-32: +Warning: +File "./tests/test_API.v", line 93, characters 31-32 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 94, characters 28-29: +Warning: +File "./tests/test_API.v", line 94, characters 28-29 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 94, characters 30-31: +Warning: +File "./tests/test_API.v", line 94, characters 30-31 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 95, characters 36-37: +Warning: +File "./tests/test_API.v", line 95, characters 36-37 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 95, characters 38-39: +Warning: +File "./tests/test_API.v", line 95, characters 38-39 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 95, characters 40-41: +Warning: +File "./tests/test_API.v", line 95, characters 40-41 +Z is linear: name it _Z (discard) or Z_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 96, characters 29-30: +Warning: +File "./tests/test_API.v", line 96, characters 29-30 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_API.v", line 96, characters 31-32: +Warning: +File "./tests/test_API.v", line 96, characters 31-32 +Y is linear: name it _Y (discard) or Y_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +Query assignments: + P = /build/reproducible-path/coq-elpi-2.4.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] +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 -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X8 +add_equal is not universe polymorphic +Arguments add_equal (n m)%nat_scope +add_equal is opaque +Expands to: Constant elpi.tests.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.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.test_API_env.18 elpi.tests.test_API_env.17 + elpi.tests.test_API_env.16 elpi.tests.test_API_env.15 + elpi.tests.test_API_env.14 elpi.tests.test_API_env.13 + elpi.tests.test_API_env.11} |= + tx.u0 < elpi.tests.test_API_env.11 + tx.u1 < elpi.tests.test_API_env.13 + Set <= elpi.tests.test_API_env.13 + Set <= elpi.tests.test_API_env.14 + Set <= elpi.tests.test_API_env.15 + Set <= elpi.tests.test_API_env.16 + Set <= elpi.tests.test_API_env.17 + Set <= elpi.tests.test_API_env.18 + tx.u0 <= elpi.tests.test_API_env.14 + tx.u1 <= elpi.tests.test_API_env.14 + elpi.tests.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.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.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi.tests.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.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.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi.tests.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.test_API_env.26» + UA = «elpi.tests.test_API_env.20» + UB1 = «ind1.u0» + UB2 = «ind1.u0» + UB3 = «ind1.u0» + UC = «elpi.tests.test_API_env.22» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_env.26} |= + Set <= elpi.tests.test_API_env.26 + ind1.u0 <= elpi.tests.test_API_env.26 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + D = parameter A explicit (sort (typ «elpi.tests.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.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi.tests.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.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.test_API_env.22»)) c4 \ + prod `_` c4 c5 \ sort (typ «elpi.tests.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.test_API_env.27» + UA = «elpi.tests.test_API_env.20» + UB1 = «ind1.u0» + UB2 = «ind1.u0» + UB3 = «ind1.u0» + UC = «elpi.tests.test_API_env.22» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_env.27} |= + Set <= elpi.tests.test_API_env.27 + ind1.u0 <= elpi.tests.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.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; + ConstructiveExtra.Z_inj_nat_id; ConstructiveExtra.Z_inj_nat_rev; + ZArith_dec.Z_le_lt_eq_dec; ZArith_dec.Z_lt_dec; ZArith_dec.Z_lt_ge_dec; + ZArith_dec.Z_lt_le_dec; Znumtheory.Z_lt_neq; Zdiv.Z_mod_lt; + Zdiv.Z_mod_mult; Field_theory.Z_pos_sub_gt; BinNums.Z_rec; + BinNums.Z_rect; Zcompare.Zcompare_mult_compat; ZArith_dec.Zcompare_rec; +...TRUNCATED BY DUNE... + BinPos.Pos.add_succ_l; BinInt.Z.add_succ_l; BinNat.N.add_succ_r; + PeanoNat.Nat.add_succ_r; BinPos.Pos.add_succ_r; BinInt.Z.add_succ_r; + 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.346589 +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.test_API_env.30»)) (X1 c0) /* suspended on X2, X1 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_env.30} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α13 +WEAK CONSTRAINTS: + + +Query assignments: + Decl = record Rec (sort (typ «elpi.tests.test_API_env.31»)) BuildRec + (field [] f (sort (typ «elpi.tests.test_API_env.32»)) c0 \ end-record) + X11_ = «elpi.tests.test_API_env.31» + X12_ = «elpi.tests.test_API_env.32» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API_env.32 elpi.tests.test_API_env.31} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API_env.32 elpi.tests.test_API_env.31} +FLEXIBLE UNIVERSES: + elpi.tests.test_API_env.32 + elpi.tests.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.test_API_env.33 +elpi.tests.test_API_env.34} + : Test.Rec@{elpi.tests.test_API_env.33 elpi.tests.test_API_env.34} -> + Type@{elpi.tests.test_API_env.34} +(* {elpi.tests.test_API_env.34 elpi.tests.test_API_env.33} |= + elpi.tests.test_API_env.34 < elpi.tests.test_API_env.33 *) +Query assignments: + LP = «Coq.ZArith.Znat» + MP = «Coq.ZArith.Znat.N2Z» +File "./tests/test_API_env.v", line 2, characters 0-24: +Warning: Using Vector.t is known to be technically difficult, see +. +[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] +File "./tests/test_API_env.v", line 26, characters 24-26: +Warning: +File "./tests/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/test_API_env.v", line 82, characters 23-25: +Warning: +File "./tests/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/test_API_env.v", line 215, characters 71-72: +Warning: +File "./tests/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/test_API_env.v", line 209, characters 39-41: +Warning: +File "./tests/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/test_API_env.v", line 212, characters 45-48: +Warning: +File "./tests/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/test_API_env.v", line 218, characters 40-43: +Warning: +File "./tests/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/test_API_env.v", line 225, characters 40-43: +Warning: +File "./tests/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/test_API_env.v", line 215, characters 34-36: +Warning: +File "./tests/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/test_API_env.v", line 246, characters 71-72: +Warning: +File "./tests/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/test_API_env.v", line 240, characters 39-41: +Warning: +File "./tests/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/test_API_env.v", line 243, characters 45-48: +Warning: +File "./tests/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/test_API_env.v", line 249, characters 40-43: +Warning: +File "./tests/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/test_API_env.v", line 256, characters 40-43: +Warning: +File "./tests/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/test_API_env.v", line 246, characters 34-36: +Warning: +File "./tests/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/test_API_env.v", line 273, characters 39-41: +Warning: +File "./tests/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/test_API_env.v", line 275, characters 30-32: +Warning: +File "./tests/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/test_API_env.v", line 291, characters 39-41: +Warning: +File "./tests/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/test_API_env.v", line 293, characters 30-32: +Warning: +File "./tests/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] +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 + (context-item A explicit _ none c0 \ + context-item B explicit _ none c1 \ context-end)] +interp +[ctx-decl + (context-item A explicit (global (indt «nat»)) none c0 \ + context-item B explicit (global (indt «bool»)) none c1 \ context-end)] +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 + (context-item A explicit _ none c0 \ + context-item B explicit _ none c1 \ context-end)] +interp +[ctx-decl + (context-item A explicit (global (indt «nat»)) none c0 \ + context-item B explicit (global (indt «bool»)) none c1 \ context-end)] +a : nat + +a is not universe polymorphic +a is transparent +Expands to: Constant elpi.tests.test_synterp.X.a +Module X := Struct Definition a : nat. End +Module A := Struct Definition a : nat. End +a + : nat +L= [p 1] +File "./tests/test_synterp.v", line 39, characters 20-21: +Warning: +File "./tests/test_synterp.v", line 39, characters 20-21 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +File "./tests/test_synterp.v", line 42, characters 12-13: +Warning: +File "./tests/test_synterp.v", line 42, characters 12-13 +X is linear: name it _X (discard) or X_ (fresh variable) +[elpi.linear-variable,elpi.typecheck,elpi,default] +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] +hello1 +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» + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») +fix X0 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_2` (global (indt «nat»)) c3 \ X1 c1 c2 c3) + [c2, fun `p` (X2 c1 c2) c3 \ app [c0, c3, c2]] +fix X0 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_2` (global (indt «nat»)) c3 \ + global (indt «nat»)) [c2, fun `p` (X3 c1 c2) c3 \ app [c0, c3, c2]] +Query assignments: + BO1 = fix X0 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_2` (global (indt «nat»)) c3 \ + global (indt «nat»)) [c2, fun `p` (X3 c1 c2) c3 \ app [c0, c3, c2]] + GR = «Nat.add» + TY = prod `n` (global (indt «nat»)) c0 \ + prod `m` (global (indt «nat»)) c1 \ global (indt «nat») + X1_ = c0 \ c1 \ c2 \ +global (indt «nat») + X2_ = c0 \ c1 \ +X3 c0 c1 +Syntactic constraints: + {c0 c1} : + decl c1 `m` (global (indt «nat»)), decl c0 `n` (global (indt «nat»)) + ?- evar (X3 c0 c1) (sort (typ «elpi.tests.test_quotation.2»)) (X3 c0 c1) /* suspended on X3 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_quotation.3 elpi.tests.test_quotation.2 + elpi.tests.test_quotation.1} |= Set <= elpi.tests.test_quotation.3 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + elpi.tests.test_quotation.3 +SORTS: + α1 + α2 +WEAK CONSTRAINTS: + + +fun `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + c0 \ + match c0 + (fun `_` (X0 c0) c1 \ + fun `_elpi_renamed_v_1` (app [global (indt «Vector.t»), X1 c0, X2 c0]) + c2 \ X3 c0 c2) + [global (indc «O»), + fun `_` (X4 c0) c1 \ + fun `_` (X5 c0) c2 \ + fun `_` (X6 c0) c3 \ app [global (indc «S»), global (indc «O»)]] +fun `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + c0 \ + match c0 + (fun `_` (X7 c0) c1 \ + fun `_elpi_renamed_v_1` + (app [global (indt «Vector.t»), global (indt «nat»), X8 c0]) c2 \ + global (indt «nat»)) + [global (indc «O»), + fun `_` (X9 c0) c1 \ + fun `_` (X10 c0) c2 \ + fun `_` (X11 c0) c3 \ app [global (indc «S»), global (indc «O»)]] +Query assignments: + T = fun `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + c0 \ + match c0 + (fun `_` (X7 c0) c1 \ + fun `_elpi_renamed_v_1` + (app [global (indt «Vector.t»), global (indt «nat»), X8 c0]) c2 \ + global (indt «nat»)) + [global (indc «O»), + fun `_` (X9 c0) c1 \ + fun `_` (X10 c0) c2 \ + fun `_` (X11 c0) c3 \ app [global (indc «S»), global (indc «O»)]] + X3_ = c0 \ +X7 c0 + X4_ = c0 \ +global (indt «nat») + X5_ = c0 \ +X8 c0 + X6_ = c0 \ c1 \ +global (indt «nat») + X7_ = c0 \ +X9 c0 + X8_ = c0 \ +X10 c0 + X9_ = c0 \ +X11 c0 +Syntactic constraints: + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X11 c0) (sort (typ «elpi.tests.test_quotation.10»)) (X11 c0) /* suspended on X11 */ + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X10 c0) (sort (typ «elpi.tests.test_quotation.9»)) (X10 c0) /* suspended on X10 */ + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X9 c0) (sort (typ «elpi.tests.test_quotation.8»)) (X9 c0) /* suspended on X9 */ + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X8 c0) (X12 c0) (X8 c0) /* suspended on X8 */ + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X13 c0) (sort (typ «elpi.tests.test_quotation.6»)) (X12 c0) /* suspended on X13, X12 */ + {c0} : + decl c0 `v` + (app + [global (indt «Vector.t»), global (indt «nat»), + app + [global (indc «S»), app [global (indc «S»), global (indc «O»)]]]) + ?- evar (X7 c0) (sort (typ «elpi.tests.test_quotation.4»)) (X7 c0) /* suspended on X7 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_quotation.12 elpi.tests.test_quotation.11 + elpi.tests.test_quotation.10 elpi.tests.test_quotation.9 + elpi.tests.test_quotation.8 elpi.tests.test_quotation.7 + elpi.tests.test_quotation.6 elpi.tests.test_quotation.5 + elpi.tests.test_quotation.4} |= + elpi.tests.test_quotation.11 < elpi.tests.test_quotation.5 + Set <= Vector.t.u0 + Set <= elpi.tests.test_quotation.11 + Set <= elpi.tests.test_quotation.12 + elpi.tests.test_quotation.11 <= Vector.t.u0 +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + elpi.tests.test_quotation.12 +SORTS: + α3 + α4 := Type + α5 + α6 + α7 + α8 + α9 +WEAK CONSTRAINTS: + + +3 +Query assignments: + X = 3 +fun `x` X0 c0 \ app [X1, c0] +Query assignments: + X = X1 + X10_ = X0 + Y = fun `x` X0 c0 \ app [X1, c0] +fun `r` (global (indt «nat»)) c0 \ + fun `p` + (prod `y` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, global (indc «O»)]) + c1 \ + fun `q` (global (indt «bool»)) c2 \ + prod `y` (global (indt «nat»)) c3 \ + app + [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] +Query assignments: + %arg1 = c0 \ c1 \ c2 \ +prod `y` (global (indt «nat»)) c3 \ + app [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] + X = fun `r` (global (indt «nat»)) c0 \ + fun `p` + (prod `y` (global (indt «nat»)) c1 \ + app + [global (indt «eq»), global (indt «nat»), c1, global (indc «O»)]) + c1 \ + fun `q` (global (indt «bool»)) c2 \ + prod `y` (global (indt «nat»)) c3 \ + app + [global (indt «eq»), global (indt «nat»), c3, global (indc «O»)] +fun u : nat => +{| val := oval u; Sub := Ord u; Sub_rect := inlined_sub_rect |} + : forall u : nat, is_SUB nat (fun x : nat => leq x u) (ord u) Debug: [elpi] - lp2term: evar: create_unknown: whole ctx: ; (u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 -c3 -Debug: [elpi] restrict_coq_context: named: + gterm2lp: term=(fun u => + {| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |}) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e + gterm2lp: term={| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |} +Debug: [elpi] gterm2lp: term=SubType +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(oval u) +Debug: [elpi] gterm2lp: term=oval +Debug: [elpi] gterm2lp: term=u +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=inlined_sub_rect +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - restrict_coq_context: cur subst: u - restrict_coq_context: looking at K(dbl 1) -Debug: [elpi] ?e8--0->?e8 + gterm2lp: term=(fun K_S u => + let (x, Px) as u0 return (K u0) := u in K_S x Px) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - restrict_coq_context: cur subst: K - u - restrict_coq_context: looking at K_S(dbl 2) -Debug: [elpi] ?e9--0->?e9 + gterm2lp: term=(fun u => let (x, Px) as u0 return (K u0) := u in K_S x Px) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - (K_S : ?e9) - restrict_coq_context: cur subst: K_S - K - u - restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) -Debug: [elpi] ?e10--0->?e10 + gterm2lp: term=(let (x, Px) as u0 return (K u0) := _elpi_renamed_u_3 in + K_S x Px) +Debug: [elpi] gterm2lp: term=_elpi_renamed_u_3 +Debug: [elpi] gterm2lp: term=(fun u0 => K u0) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(K u0) +Debug: [elpi] gterm2lp: term=K +Debug: [elpi] gterm2lp: term=u0 +Debug: [elpi] gterm2lp: term=(fun x Px => K_S x Px) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(fun Px => K_S x Px) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(K_S x Px) +Debug: [elpi] gterm2lp: term=K_S +Debug: [elpi] gterm2lp: term=x +Debug: [elpi] gterm2lp: term=Px Debug: [elpi] - lp2term: evar: create_unknown: restricted ctx:(u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) + gterm2lp: term=(fun u => + {| val := _; Sub := elpi_code:(K) u; Sub_rect := _ |}) +Debug: [elpi] gterm2lp: term=_ +Debug: +[elpi] gterm2lp: term={| val := _; Sub := elpi_code:(K) u; Sub_rect := _ |} +Debug: [elpi] gterm2lp: term=SubType +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(elpi_code:(K) u) +Debug: [elpi] gterm2lp: term=elpi_code:(K) +Debug: [elpi] gterm2lp: term=u +Debug: [elpi] gterm2lp: term=_ +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Debug: [elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X53 - EVARS: - ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} - ?X52==[u K K_S |- Type] (internal placeholder) {?e10} - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} - -UNIVERSES: - {elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 - elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 - elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 - elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: + elpi sigma -> coq sigma: before: +SHELF: +FUTURE GOALS STACK: -SORTS: - α26 - α27 - α28 - α29 - α30 - α31 - α32 - α33 - α34 -WEAK CONSTRAINTS: + +Coq-Elpi mapping: +RAW: +ELAB: + +Debug: +[elpi] + elpi sigma -> coq sigma: synchronized: +SHELF: +FUTURE GOALS STACK: + +Coq-Elpi mapping: +RAW: +ELAB: + +Debug: +[elpi] + elpi sigma -> coq sigma: after: SHELF: -FUTURE GOALS STACK:?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 -?X42 -?X41 +FUTURE GOALS STACK: + + +Coq-Elpi mapping: +RAW: +ELAB: -Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 Debug: [elpi] - lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 + lp2term: depth=0 ctx=[] term=fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: +[elpi] + lp2term@0:fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: [elpi] lp2term@0:X0 +Debug: [elpi] lp2term: evar: calldepth:0 X0 RAW: ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -Debug: [elpi] lp2term: evar: already in Coq: ?X53 -Debug: [elpi] lp2term@4:c0 -Debug: [elpi] lp2term@4:c1 -Debug: [elpi] lp2term@4:c2 +Debug: +[elpi] + lp2term@1:app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: [elpi] lp2term@1:global (indc «SubType») +Debug: [elpi] lp2term@1:X1 c0 +Debug: [elpi] lp2term: evar: calldepth:0 X1 c0 RAW: +ELAB: + +Debug: [elpi] lp2term@1:X2 c0 +Debug: [elpi] lp2term: evar: calldepth:0 X2 c0 RAW: +ELAB: + +Debug: [elpi] lp2term@1:X3 c0 +Debug: [elpi] lp2term: evar: calldepth:0 X3 c0 RAW: +ELAB: + +Debug: [elpi] lp2term@1:app [global (const «oval»), c0] +Debug: [elpi] lp2term@1:global (const «oval») +Debug: [elpi] lp2term@1:c0 +Debug: [elpi] lp2term@1:X4 c0 +Debug: [elpi] lp2term: evar: calldepth:0 X4 c0 RAW: +ELAB: + +Debug: +[elpi] + lp2term@1:fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@1:X5 c0 +Debug: [elpi] lp2term: evar: calldepth:0 X5 c0 RAW: +ELAB: + +Debug: +[elpi] + lp2term@2:fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@2:X6 c0 c1 +Debug: [elpi] lp2term: evar: calldepth:0 X6 c0 c1 RAW: +ELAB: + +Debug: +[elpi] + lp2term@3:fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@3:X7 c0 c1 c2 +Debug: [elpi] lp2term: evar: calldepth:0 X7 c0 c1 c2 RAW: +ELAB: + +Debug: +[elpi] + lp2term@4:match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] Debug: [elpi] lp2term@4:c3 +Debug: [elpi] lp2term@4:fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4] +Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 +Debug: [elpi] lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 RAW: +ELAB: + Debug: [elpi] lp2term@5:app [c1, c4] Debug: [elpi] lp2term@5:c1 Debug: [elpi] lp2term@5:c4 @@ -12808,217 +17307,371 @@ lp2term@4:fun `x` (X9 c0 c1 c2 c3) c4 \ fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] Debug: [elpi] lp2term@4:X9 c0 c1 c2 c3 +Debug: [elpi] lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 RAW: +ELAB: + +Debug: [elpi] lp2term@5:fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] +Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 +Debug: [elpi] lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 RAW: +ELAB: + +Debug: [elpi] lp2term@6:app [c2, c4, c5] +Debug: [elpi] lp2term@6:c2 +Debug: [elpi] lp2term@6:c4 +Debug: [elpi] lp2term@6:c5 Debug: [elpi] - lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 + lp2term: out=(fun u : hole hole => + {| + val := oval u; + Sub := hole u hole; + Sub_rect := + fun (K : hole u hole) (K_S : hole K u hole) + (_elpi_renamed_u_3 : hole K_S K u hole) => + let + (x, Px) as u0 + return (hole u0 _elpi_renamed_u_3 K_S K hole) := + _elpi_renamed_u_3 in + K_S x Px + |}) + elpi2coq: RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 +SHELF: + + FUTURE GOALS STACK: + + +Debug: +[elpi] + detype: (fun u : hole hole => + {| + val := oval u; + Sub := hole u hole; + Sub_rect := + fun (K : hole u hole) (K_S : hole K u hole) + (_elpi_renamed_u_3 : hole K_S K u hole) => + let + (x, Px) as u0 + return (hole u0 _elpi_renamed_u_3 K_S K hole) := + _elpi_renamed_u_3 in + K_S x Px + |}) +Debug: [elpi] bringing updated sigma back to lp +Debug: +[elpi] + term2lp: depth=0 ctx= term=(forall u : nat, + is_SUB nat (fun x : nat => leq x u) (ord u)) +Debug: +[elpi] + term2lp (out): prod `u` (global (indt «nat»)) c0 \ + app + [global (indt «is_SUB»), global (indt «nat»), + fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], + app [global (indt «ord»), c0]] +Debug: +[elpi] + term2lp: depth=0 ctx= term=(fun u : nat => + {| + val := oval u; + Sub := Ord u; + Sub_rect := inlined_sub_rect + |}) +Debug: +[elpi] + term2lp (out): fun `u` (global (indt «nat»)) c0 \ + app + [global (indc «SubType»), global (indt «nat»), + fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], + app [global (indt «ord»), c0], app [global (const «oval»), c0], + app [global (indc «Ord»), c0], + fun `K` + (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) + c1 \ + fun `K_S` + (prod `x` (global (indt «nat»)) c2 \ + prod `Px` + (app + [global (indt «eq»), global (indt «bool»), + app + [fun `x` (global (indt «nat»)) c3 \ + app [global (const «leq»), c3, c0], c2], + global (indc «true»)]) c3 \ + app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ + fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ + match c3 + (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) + [fun `x` (global (indt «nat»)) c4 \ + fun `Px` + (app + [global (indt «eq»), global (indt «bool»), + app [global (const «leq»), c4, c0], global (indc «true»)]) + c5 \ app [c2, c4, c5]]] +Debug: +[elpi] + Elpi: query-compilation:0.0109 static-check:0.0000 optimization:0.0004 runtime:0.0267 (with success) + +Query assignments: + GR = indc «Ord» + K = global (indc «Ord») + T = fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] + T1 = fun `u` (global (indt «nat»)) c0 \ + app + [global (indc «SubType»), global (indt «nat»), + fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0], + app [global (indt «ord»), c0], app [global (const «oval»), c0], + app [global (indc «Ord»), c0], + fun `K` + (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) + c1 \ + fun `K_S` + (prod `x` (global (indt «nat»)) c2 \ + prod `Px` + (app + [global (indt «eq»), global (indt «bool»), + app + [fun `x` (global (indt «nat»)) c3 \ + app [global (const «leq»), c3, c0], c2], + global (indc «true»)]) c3 \ + app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ + fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ + match c3 + (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) + [fun `x` (global (indt «nat»)) c4 \ + fun `Px` + (app + [global (indt «eq»), global (indt «bool»), + app [global (const «leq»), c4, c0], global (indc «true»)]) + c5 \ app [c2, c4, c5]]] + X11_ = X0 + X12_ = X1 + X13_ = X2 + X14_ = X3 + X15_ = X4 + X16_ = X5 + X17_ = X6 + X18_ = X7 + X19_ = X8 + X20_ = X9 + X21_ = X10 + X22_ = global (indt «nat») + X23_ = c0 \ +global (indt «nat») + X24_ = c0 \ +fun `x` (global (indt «nat»)) c1 \ app [global (const «leq»), c1, c0] + X25_ = c0 \ +app [global (indt «ord»), c0] + X26_ = c0 \ +app [global (const «oval»), c0] + X27_ = c0 \ +fun `K` + (prod `x` (app [global (indt «ord»), c0]) c1 \ sort (typ «is_SUB.u2»)) + c1 \ + fun `K_S` + (prod `x` (global (indt «nat»)) c2 \ + prod `Px` + (app + [global (indt «eq»), global (indt «bool»), + app + [fun `x` (global (indt «nat»)) c3 \ + app [global (const «leq»), c3, c0], c2], global (indc «true»)]) + c3 \ app [c1, app [global (indc «Ord»), c0, c2, c3]]) c2 \ + fun `_elpi_renamed_u_3` (app [global (indt «ord»), c0]) c3 \ + match c3 (fun `xxx` (app [global (indt «ord»), c0]) c4 \ app [c1, c4]) + [fun `x` (global (indt «nat»)) c4 \ + fun `Px` + (app + [global (indt «eq»), global (indt «bool»), + app [global (const «leq»), c4, c0], global (indc «true»)]) c5 \ + app [c2, c4, c5]] +Universe constraints: +UNIVERSES: + {elpi.tests.test_quotation.28 elpi.tests.test_quotation.27} |= + Set <= is_SUB.u0 + Set <= is_SUB.u1 + Set <= elpi.tests.test_quotation.27 + is_SUB.u2 <= elpi.tests.test_quotation.28 +ALGEBRAIC UNIVERSES: + {elpi.tests.test_quotation.28 elpi.tests.test_quotation.27} +FLEXIBLE UNIVERSES: + elpi.tests.test_quotation.28 + elpi.tests.test_quotation.27 +SORTS: + α24 := Type + α25 := Type +WEAK CONSTRAINTS: + -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X9 Debug: [elpi] - lp2term: evar: create_unknown: whole ctx: ; (u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 -c3 -Debug: [elpi] restrict_coq_context: named: + gterm2lp: term=(fun u => + {| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |}) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: - restrict_coq_context: cur subst: - restrict_coq_context: looking at u(dbl 0) -Debug: [elpi] ?e--0->?e + gterm2lp: term={| val := oval u; Sub := _; Sub_rect := inlined_sub_rect |} +Debug: [elpi] gterm2lp: term=SubType +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(oval u) +Debug: [elpi] gterm2lp: term=oval +Debug: [elpi] gterm2lp: term=u +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=inlined_sub_rect +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - restrict_coq_context: cur subst: u - restrict_coq_context: looking at K(dbl 1) -Debug: [elpi] ?e8--0->?e8 + gterm2lp: term=(fun K_S u => + let (x, Px) as u0 return (K u0) := u in K_S x Px) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - restrict_coq_context: cur subst: K - u - restrict_coq_context: looking at K_S(dbl 2) -Debug: [elpi] ?e9--0->?e9 + gterm2lp: term=(fun u => let (x, Px) as u0 return (K u0) := u in K_S x Px) +Debug: [elpi] gterm2lp: term=_ Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - (K_S : ?e9) - restrict_coq_context: cur subst: K_S - K - u - restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) -Debug: [elpi] ?e10--0->?e10 + gterm2lp: term=(let (x, Px) as u0 return (K u0) := _elpi_renamed_u_3 in + K_S x Px) +Debug: [elpi] gterm2lp: term=_elpi_renamed_u_3 +Debug: [elpi] gterm2lp: term=(fun u0 => K u0) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(K u0) +Debug: [elpi] gterm2lp: term=K +Debug: [elpi] gterm2lp: term=u0 +Debug: [elpi] gterm2lp: term=(fun x Px => K_S x Px) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(fun Px => K_S x Px) +Debug: [elpi] gterm2lp: term=_ +Debug: [elpi] gterm2lp: term=(K_S x Px) +Debug: [elpi] gterm2lp: term=K_S +Debug: [elpi] gterm2lp: term=x +Debug: [elpi] gterm2lp: term=Px Debug: [elpi] - lp2term: evar: create_unknown: restricted ctx:(u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) + elpi sigma -> coq sigma: before: +SHELF: +FUTURE GOALS STACK: + + +Coq-Elpi mapping: +RAW: +ELAB: + Debug: [elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X54 + elpi sigma -> coq sigma: synchronized: +SHELF: +FUTURE GOALS STACK: + + +Coq-Elpi mapping: +RAW: +ELAB: + +Debug: +[elpi] + elpi sigma -> coq sigma: after: +SHELF: +FUTURE GOALS STACK: + + +Coq-Elpi mapping: +RAW: +ELAB: + +Debug: +[elpi] + lp2term: depth=0 ctx=[] term=fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: +[elpi] + lp2term@0:fun `u` X0 c0 \ + app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: [elpi] lp2term@0:X0 +Debug: [elpi] lp2term: evar: calldepth:0 X0 RAW: +ELAB: + +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X0 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; +Debug: [elpi] lp2term: evar: create_unknown: visible ctx: +Debug: [elpi] restrict_coq_context: named: +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx: +Debug: +[elpi] + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X41 EVARS: - ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} - ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} - ?X52==[u K K_S |- Type] (internal placeholder) {?e10} - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} ?X41==[ |- Type] (internal placeholder) {?e} UNIVERSES: - {elpi.tests.test_quotation.38 elpi.tests.test_quotation.37 - elpi.tests.test_quotation.36 elpi.tests.test_quotation.35 - elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 - elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 - elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= + {elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: α26 - α27 - α28 - α29 - α30 - α31 - α32 - α33 - α34 - α35 WEAK CONSTRAINTS: SHELF: -FUTURE GOALS STACK:?X54 ?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 -?X43 ?X42 -?X41 +FUTURE GOALS STACK: + ?X41 -Debug: [elpi] lp2term@4:X9 c0 c1 c2 c3 +Debug: [elpi] lp2term@0:X0 Debug: -[elpi] - lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 - RAW: +[elpi] lp2term: evar: calldepth:0 X0 RAW: ?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 ELAB: ?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -Debug: [elpi] lp2term: evar: already in Coq: ?X54 -Debug: [elpi] lp2term@4:c0 -Debug: [elpi] lp2term@4:c1 -Debug: [elpi] lp2term@4:c2 -Debug: [elpi] lp2term@4:c3 -Debug: [elpi] lp2term@5:fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] -Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 +Debug: [elpi] lp2term: evar: already in Coq: ?X41 Debug: [elpi] - lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 - RAW: + lp2term@1:app + [global (indc «SubType»), X1 c0, X2 c0, X3 c0, + app [global (const «oval»), c0], X4 c0, + fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]]] +Debug: [elpi] lp2term@1:global (indc «SubType») +Debug: [elpi] lp2term@1:X1 c0 +Debug: +[elpi] lp2term: evar: calldepth:0 X1 c0 RAW: ?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 ELAB: ?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -Debug: [elpi] lp2term: evar: unknown: calldepth:0 X10 -Debug: -[elpi] - lp2term: evar: create_unknown: whole ctx: ; (u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) - (x : ?e12) -Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 c3 -c4 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X1 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 Debug: [elpi] restrict_coq_context: named: Debug: [elpi] @@ -13026,76 +17679,18 @@ restrict_coq_context: cur subst: restrict_coq_context: looking at u(dbl 0) Debug: [elpi] ?e--0->?e +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) +Debug: [elpi] in_elpi_evar:?X42 Debug: [elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - restrict_coq_context: cur subst: u - restrict_coq_context: looking at K(dbl 1) -Debug: [elpi] ?e8--0->?e8 -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - restrict_coq_context: cur subst: K - u - restrict_coq_context: looking at K_S(dbl 2) -Debug: [elpi] ?e9--0->?e9 -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - (K_S : ?e9) - restrict_coq_context: cur subst: K_S - K - u - restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) -Debug: [elpi] ?e10--0->?e10 -Debug: -[elpi] - restrict_coq_context: cur rel ctx: (u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) - restrict_coq_context: cur subst: _elpi_renamed_u_3 - K_S - K - u - restrict_coq_context: looking at x(dbl 4) -Debug: [elpi] ?e12--0->?e12 -Debug: -[elpi] - lp2term: evar: create_unknown: restricted ctx:(u : ?e) - (K : ?e8) - (K_S : ?e9) - (_elpi_renamed_u_3 : ?e10) - (x : ?e12) -Debug: -[elpi] - lp2term: evar: create_unknown: new link: ? |> |- ? = ?X55 + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X43 EVARS: - ?X55==[u K K_S _elpi_renamed_u_3 x |- Type] (internal placeholder) {?e13} - ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} - ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} - ?X52==[u K K_S |- Type] (internal placeholder) {?e10} - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} ?X43==[u |- ?e0] (internal placeholder) {?e1} ?X42==[u |- Type] (internal placeholder) {?e0} ?X41==[ |- Type] (internal placeholder) {?e} UNIVERSES: - {elpi.tests.test_quotation.39 elpi.tests.test_quotation.38 - elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 - elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 - elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 - elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= + {elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: @@ -13103,371 +17698,161 @@ SORTS: α26 α27 - α28 - α29 - α30 - α31 - α32 - α33 - α34 - α35 - α36 WEAK CONSTRAINTS: SHELF: -FUTURE GOALS STACK:?X55 ?X54 ?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 -?X44 ?X43 ?X42 +FUTURE GOALS STACK:?X43 ?X42 ?X41 -Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 +Debug: [elpi] lp2term@1:X1 c0 Debug: [elpi] - lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 + lp2term: evar: calldepth:0 X1 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 ?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 ?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] lp2term: evar: already in Coq: ?X55 -Debug: [elpi] lp2term@5:c0 -Debug: [elpi] lp2term@5:c1 -Debug: [elpi] lp2term@5:c2 -Debug: [elpi] lp2term@5:c3 -Debug: [elpi] lp2term@5:c4 -Debug: [elpi] lp2term@6:app [c2, c4, c5] -Debug: [elpi] lp2term@6:c2 -Debug: [elpi] lp2term@6:c4 -Debug: [elpi] lp2term@6:c5 +Debug: [elpi] lp2term: evar: already in Coq: ?X43 +Debug: [elpi] lp2term@1:c0 +Debug: [elpi] lp2term@1:X2 c0 Debug: [elpi] - lp2term: out=(fun u : ?e => - {| - val := oval u; - Sub := ?e7; - Sub_rect := - fun (K : ?e8) (K_S : ?e9) (_elpi_renamed_u_3 : ?e10) => - let - (x, Px) as u0 - return - ?e11@{u:=K; K:=K_S; K_S:=_elpi_renamed_u_3; - _elpi_renamed_u_3:=u0} := _elpi_renamed_u_3 in - K_S x Px - |}) - elpi2coq: + lp2term: evar: calldepth:0 X2 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 ?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 ?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -EVARS: - ?X55==[u K K_S _elpi_renamed_u_3 x |- Type] (internal placeholder) {?e13} - ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} - ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} - ?X52==[u K K_S |- Type] (internal placeholder) {?e10} - ?X51==[u K |- Type] (internal placeholder) {?e9} - ?X50==[u |- Type] (internal placeholder) {?e8} - ?X49==[u |- ?e6] (internal placeholder) {?e7} - ?X48==[u |- Type] (internal placeholder) {?e6} - ?X47==[u |- ?e4] (internal placeholder) {?e5} - ?X46==[u |- Type] (internal placeholder) {?e4} - ?X45==[u |- ?e2] (internal placeholder) {?e3} - ?X44==[u |- Type] (internal placeholder) {?e2} - ?X43==[u |- ?e0] (internal placeholder) {?e1} - ?X42==[u |- Type] (internal placeholder) {?e0} - ?X41==[ |- Type] (internal placeholder) {?e} - - UNIVERSES: - {elpi.tests.test_quotation.39 elpi.tests.test_quotation.38 - elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 - elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 - elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 - elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 - elpi.tests.test_quotation.29} |= - ALGEBRAIC UNIVERSES: - {} - FLEXIBLE UNIVERSES: - - SORTS: - α26 - α27 - α28 - α29 - α30 - α31 - α32 - α33 - α34 - α35 - α36 - WEAK CONSTRAINTS: - - SHELF: - - FUTURE GOALS STACK: - ?X55 - ?X54 - ?X53 - ?X52 - ?X51 - ?X50 - ?X49 - ?X48 - ?X47 - ?X46 - ?X45 - ?X44 - ?X43 - ?X42 - ?X41 - + +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X2 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - in_elpi_fresh_evar: unknown ?X41 <-> X0 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 - -Debug: [elpi] term2lp: depth=0 ctx= term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.29») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to0 + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) +Debug: [elpi] in_elpi_evar:?X44 Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X41 <-> X0 - declare-evar [] (X0) (sort (typ «elpi.tests.test_quotation.29»)) (X0) + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X45 + EVARS: + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} + +UNIVERSES: + {elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α26 + α27 + α28 +WEAK CONSTRAINTS: + +SHELF: +FUTURE GOALS STACK:?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@1:X2 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X42 <-> X12 + lp2term: evar: calldepth:0 X2 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 ?X43 <-> X1 ?X44 <-> X14 ?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 ?X43 <-> X1 ?X44 <-> X13 ?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.30») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 -Debug: -[elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X42 <-> X12 - pi c0 \ - declare-evar [decl c0 `u` (X0)] (X12 c0) - (sort (typ «elpi.tests.test_quotation.30»)) (X11 c0) +Debug: [elpi] lp2term: evar: already in Coq: ?X45 +Debug: [elpi] lp2term@1:c0 +Debug: [elpi] lp2term@1:X3 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X43 <-> X1 + lp2term: evar: calldepth:0 X3 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 ?X43 <-> X1 ?X44 <-> X14 ?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 ?X43 <-> X1 ?X44 <-> X13 ?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e0 -Debug: [elpi] in_elpi_evar:?X42 -Debug: [elpi] in_elpi_evar: known ?X42 as X11 -Debug: [elpi] term2lp (out): X11 c0 -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X3 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X43 <-> X1 - pi c0 \ declare-evar [decl c0 `u` (X0)] (X1 c0) (X11 c0) (X1 c0) + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) +Debug: [elpi] in_elpi_evar:?X46 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X44 <-> X14 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X47 + EVARS: + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.31») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 -Debug: -[elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X44 <-> X14 - pi c0 \ - declare-evar [decl c0 `u` (X0)] (X14 c0) - (sort (typ «elpi.tests.test_quotation.31»)) (X13 c0) +UNIVERSES: + {elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 + elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α26 + α27 + α28 + α29 +WEAK CONSTRAINTS: + +SHELF: +FUTURE GOALS STACK:?X47 ?X46 ?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@1:X3 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X45 <-> X2 + lp2term: evar: calldepth:0 X3 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13476,14 +17861,6 @@ ?X45 <-> X2 ?X46 <-> X16 ?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13492,31 +17869,16 @@ ?X45 <-> X2 ?X46 <-> X15 ?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e2 -Debug: [elpi] in_elpi_evar:?X44 -Debug: [elpi] in_elpi_evar: known ?X44 as X13 -Debug: [elpi] term2lp (out): X13 c0 -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 -Debug: -[elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X45 <-> X2 - pi c0 \ declare-evar [decl c0 `u` (X0)] (X2 c0) (X13 c0) (X2 c0) +Debug: [elpi] lp2term: evar: already in Coq: ?X47 +Debug: [elpi] lp2term@1:c0 +Debug: [elpi] lp2term@1:app [global (const «oval»), c0] +Debug: [elpi] lp2term@1:global (const «oval») +Debug: [elpi] lp2term@1:c0 +Debug: [elpi] lp2term@1:X4 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X46 <-> X16 + lp2term: evar: calldepth:0 X4 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13525,14 +17887,6 @@ ?X45 <-> X2 ?X46 <-> X16 ?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13541,80 +17895,57 @@ ?X45 <-> X2 ?X46 <-> X15 ?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.32») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X4 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X46 <-> X16 - pi c0 \ - declare-evar [decl c0 `u` (X0)] (X16 c0) - (sort (typ «elpi.tests.test_quotation.32»)) (X15 c0) + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) +Debug: [elpi] in_elpi_evar:?X48 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X47 <-> X3 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X49 + EVARS: + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e4 -Debug: [elpi] in_elpi_evar:?X46 -Debug: [elpi] in_elpi_evar: known ?X46 as X15 -Debug: [elpi] term2lp (out): X15 c0 -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 -Debug: -[elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X47 <-> X3 - pi c0 \ declare-evar [decl c0 `u` (X0)] (X3 c0) (X15 c0) (X3 c0) +UNIVERSES: + {elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 + elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α26 + α27 + α28 + α29 + α30 +WEAK CONSTRAINTS: + +SHELF: +FUTURE GOALS STACK:?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@1:X4 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X48 <-> X18 + lp2term: evar: calldepth:0 X4 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13625,12 +17956,6 @@ ?X47 <-> X3 ?X48 <-> X18 ?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13641,29 +17966,21 @@ ?X47 <-> X3 ?X48 <-> X17 ?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.33») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: [elpi] lp2term: evar: already in Coq: ?X49 +Debug: [elpi] lp2term@1:c0 Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X48 <-> X18 - pi c0 \ - declare-evar [decl c0 `u` (X0)] (X18 c0) - (sort (typ «elpi.tests.test_quotation.33»)) (X17 c0) + lp2term@1:fun `K` (X5 c0) c1 \ + fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@1:X5 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X49 <-> X4 + lp2term: evar: calldepth:0 X5 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13674,12 +17991,6 @@ ?X47 <-> X3 ?X48 <-> X18 ?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13690,78 +18001,58 @@ ?X47 <-> X3 ?X48 <-> X17 ?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e6 -Debug: [elpi] in_elpi_evar:?X48 -Debug: [elpi] in_elpi_evar: known ?X48 as X17 -Debug: [elpi] term2lp (out): X17 c0 -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X5 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X49 <-> X4 - pi c0 \ declare-evar [decl c0 `u` (X0)] (X4 c0) (X17 c0) (X4 c0) + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: [elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) Debug: [elpi] - in_elpi_fresh_evar: unknown ?X50 <-> X5 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X50 + EVARS: + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.34») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 -Debug: -[elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X50 <-> X5 - pi c0 \ - declare-evar [decl c0 `u` (X0)] (X5 c0) - (sort (typ «elpi.tests.test_quotation.34»)) (X5 c0) +UNIVERSES: + {elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 + elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 + elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α26 + α27 + α28 + α29 + α30 + α31 +WEAK CONSTRAINTS: + +SHELF: +FUTURE GOALS STACK:?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@1:X5 c0 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X51 <-> X6 + lp2term: evar: calldepth:0 X5 c0 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13773,11 +18064,6 @@ ?X48 <-> X18 ?X49 <-> X4 ?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13789,33 +18075,20 @@ ?X48 <-> X17 ?X49 <-> X4 ?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 -Debug: [elpi] in_elpi_evar:?X50 -Debug: [elpi] in_elpi_evar: known ?X50 as X5 -Debug: [elpi] term2lp (out): X5 c0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e K : ?e8 term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.35») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to2 +Debug: [elpi] lp2term: evar: already in Coq: ?X50 +Debug: [elpi] lp2term@1:c0 Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X51 <-> X6 - pi c0 \ - pi c1 \ - declare-evar [decl c1 `K` (X5 c0), decl c0 `u` X0] (X6 c0 c1) - (sort (typ «elpi.tests.test_quotation.35»)) (X6 c0 c1) + lp2term@2:fun `K_S` (X6 c0 c1) c2 \ + fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@2:X6 c0 c1 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X52 <-> X7 + lp2term: evar: calldepth:0 X6 c0 c1 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13827,11 +18100,6 @@ ?X48 <-> X18 ?X49 <-> X4 ?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13843,107 +18111,69 @@ ?X48 <-> X17 ?X49 <-> X4 ?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 -Debug: [elpi] in_elpi_evar:?X50 -Debug: [elpi] in_elpi_evar: known ?X50 as X5 -Debug: [elpi] term2lp (out): X5 c0 -Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 -Debug: [elpi] in_elpi_evar:?X51 -Debug: [elpi] in_elpi_evar: known ?X51 as X6 -Debug: [elpi] term2lp (out): X6 c0 c1 -Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 K_S : ?e9 term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.36») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to3 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X6 +Debug: [elpi] lp2term: evar: create_unknown: whole ctx: ; (u : ?e) (K : ?e8) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 +c1 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X52 <-> X7 - pi c0 \ - pi c1 \ - pi c2 \ - declare-evar - [decl c2 `K_S` (X6 c0 c1), decl c1 `K` (X5 c0), decl c0 `u` X0] - (X7 c0 c1 c2) (sort (typ «elpi.tests.test_quotation.36»)) (X7 c0 c1 c2) + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e Debug: [elpi] - in_elpi_fresh_evar: unknown ?X53 <-> X8 - RAW: -?X41 <-> X0 -?X42 <-> X12 -?X43 <-> X1 -?X44 <-> X14 -?X45 <-> X2 -?X46 <-> X16 -?X47 <-> X3 -?X48 <-> X18 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -ELAB: -?X41 <-> X0 -?X42 <-> X11 -?X43 <-> X1 -?X44 <-> X13 -?X45 <-> X2 -?X46 <-> X15 -?X47 <-> X3 -?X48 <-> X17 -?X49 <-> X4 -?X50 <-> X5 -?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 - -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 -Debug: [elpi] in_elpi_evar:?X50 -Debug: [elpi] in_elpi_evar: known ?X50 as X5 -Debug: [elpi] term2lp (out): X5 c0 -Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 -Debug: [elpi] in_elpi_evar:?X51 -Debug: [elpi] in_elpi_evar: known ?X51 as X6 -Debug: [elpi] term2lp (out): X6 c0 c1 -Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 -Debug: [elpi] in_elpi_evar:?X52 -Debug: [elpi] in_elpi_evar: known ?X52 as X7 -Debug: [elpi] term2lp (out): X7 c0 c1 c2 + restrict_coq_context: cur rel ctx: (u : ?e) + restrict_coq_context: cur subst: u + restrict_coq_context: looking at K(dbl 1) +Debug: [elpi] ?e8--0->?e8 Debug: -[elpi] - term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.37») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to4 +[elpi] lp2term: evar: create_unknown: restricted ctx:(u : ?e) (K : ?e8) Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X53 <-> X8 - pi c0 \ - pi c1 \ - pi c2 \ - pi c3 \ - declare-evar - [decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), - decl c1 `K` (X5 c0), decl c0 `u` X0] (X8 c0 c1 c2 c3) - (sort (typ «elpi.tests.test_quotation.37»)) (X8 c0 c1 c2 c3) + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X51 + EVARS: + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} + +UNIVERSES: + {elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 + elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 + elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α26 + α27 + α28 + α29 + α30 + α31 + α32 +WEAK CONSTRAINTS: + +SHELF: +FUTURE GOALS STACK:?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@2:X6 c0 c1 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X54 <-> X9 + lp2term: evar: calldepth:0 X6 c0 c1 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -13956,10 +18186,6 @@ ?X49 <-> X4 ?X50 <-> X5 ?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -13972,46 +18198,20 @@ ?X49 <-> X4 ?X50 <-> X5 ?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 -Debug: [elpi] in_elpi_evar:?X50 -Debug: [elpi] in_elpi_evar: known ?X50 as X5 -Debug: [elpi] term2lp (out): X5 c0 -Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 -Debug: [elpi] in_elpi_evar:?X51 -Debug: [elpi] in_elpi_evar: known ?X51 as X6 -Debug: [elpi] term2lp (out): X6 c0 c1 -Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 -Debug: [elpi] in_elpi_evar:?X52 -Debug: [elpi] in_elpi_evar: known ?X52 as X7 -Debug: [elpi] term2lp (out): X7 c0 c1 c2 -Debug: -[elpi] - term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.38») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to4 +Debug: [elpi] lp2term: evar: already in Coq: ?X51 +Debug: [elpi] lp2term@2:c0 +Debug: [elpi] lp2term@2:c1 Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X54 <-> X9 - pi c0 \ - pi c1 \ - pi c2 \ - pi c3 \ - declare-evar - [decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), - decl c1 `K` (X5 c0), decl c0 `u` X0] (X9 c0 c1 c2 c3) - (sort (typ «elpi.tests.test_quotation.38»)) (X9 c0 c1 c2 c3) + lp2term@3:fun `_elpi_renamed_u_3` (X7 c0 c1 c2) c3 \ + match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@3:X7 c0 c1 c2 Debug: [elpi] - in_elpi_fresh_evar: unknown ?X55 <-> X10 + lp2term: evar: calldepth:0 X7 c0 c1 c2 RAW: ?X41 <-> X0 ?X42 <-> X12 @@ -14024,10 +18224,6 @@ ?X49 <-> X4 ?X50 <-> X5 ?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 ELAB: ?X41 <-> X0 ?X42 <-> X11 @@ -14040,3902 +18236,1594 @@ ?X49 <-> X4 ?X50 <-> X5 ?X51 <-> X6 -?X52 <-> X7 -?X53 <-> X8 -?X54 <-> X9 -?X55 <-> X10 -Debug: [elpi] term2lp: depth=1 ctx= term=?e -Debug: [elpi] in_elpi_evar:?X41 -Debug: [elpi] in_elpi_evar: known ?X41 as X0 -Debug: [elpi] term2lp (out): X0 -Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 -Debug: [elpi] in_elpi_evar:?X50 -Debug: [elpi] in_elpi_evar: known ?X50 as X5 -Debug: [elpi] term2lp (out): X5 c0 -Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 -Debug: [elpi] in_elpi_evar:?X51 -Debug: [elpi] in_elpi_evar: known ?X51 as X6 -Debug: [elpi] term2lp (out): X6 c0 c1 -Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 -Debug: [elpi] in_elpi_evar:?X52 -Debug: [elpi] in_elpi_evar: known ?X52 as X7 -Debug: [elpi] term2lp (out): X7 c0 c1 c2 +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X7 Debug: [elpi] - term2lp: depth=5 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term= - ?e12 -Debug: [elpi] in_elpi_evar:?X54 -Debug: [elpi] in_elpi_evar: known ?X54 as X9 -Debug: [elpi] term2lp (out): X9 c0 c1 c2 c3 + lp2term: evar: create_unknown: whole ctx: ; (u : ?e) + (K : ?e8) + (K_S : ?e9) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 +c2 +Debug: [elpi] restrict_coq_context: named: Debug: [elpi] - term2lp: depth=5 ctx=u : ?e - K : ?e8 - K_S : ?e9 - _elpi_renamed_u_3 : ?e10 - x : ?e12 term=Type -Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.39») -Debug: [elpi] in_elpi_evar_concl: moving Ctx down to5 + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e Debug: [elpi] - in_elpi_fresh_evar: new decl at depth:0 for ?X55 <-> X10 - pi c0 \ - pi c1 \ - pi c2 \ - pi c3 \ - pi c4 \ - declare-evar - [decl c4 `x` (X9 c0 c1 c2 c3), - decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), - decl c1 `K` (X5 c0), decl c0 `u` X0] (X10 c0 c1 c2 c3 c4) - (sort (typ «elpi.tests.test_quotation.39»)) (X10 c0 c1 c2 c3 c4) + restrict_coq_context: cur rel ctx: (u : ?e) + restrict_coq_context: cur subst: u + restrict_coq_context: looking at K(dbl 1) +Debug: [elpi] ?e8--0->?e8 Debug: [elpi] - Elpi: query-compilation:0.0011 static-check:0.0000 optimization:0.0001 runtime:0.0141 (with error) - -hd - : forall A : Type, A -> list A -> A -Debug: [elpi] gterm2lp: term=hd -Debug: [elpi] Compiler cache: lookups=8, hits=6 - -Debug: [elpi] Compiler cache: lookups=0, hits=0 - -File "./tests/test_quotation.v", line 32, characters 0-15: -Warning: Using Vector.t is known to be technically difficult, see -. -[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] -File "./tests/test_quotation.v", line 47, characters 32-33: -Warning: -File "./tests/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] -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 - (context-item A explicit _ none c0 \ - context-item B explicit _ none c1 \ context-end)] -interp -[ctx-decl - (context-item A explicit (global (indt «nat»)) none c0 \ - context-item B explicit (global (indt «bool»)) none c1 \ context-end)] -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 - (context-item A explicit _ none c0 \ - context-item B explicit _ none c1 \ context-end)] -interp -[ctx-decl - (context-item A explicit (global (indt «nat»)) none c0 \ - context-item B explicit (global (indt «bool»)) none c1 \ context-end)] -a : nat - -a is not universe polymorphic -a is transparent -Expands to: Constant elpi.tests.test_synterp.X.a -Module X := Struct Definition a : nat. End -Module A := Struct Definition a : nat. End -a - : nat -L= [p 1] -File "./tests/test_synterp.v", line 39, characters 20-21: -Warning: -File "./tests/test_synterp.v", line 39, characters 20-21 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_synterp.v", line 42, characters 12-13: -Warning: -File "./tests/test_synterp.v", line 42, characters 12-13 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -Debug: -----<<---- enter: -coq.say raw: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -raw: -parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] -Debug: ----->>---- exit: -coq.say raw: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) - c6 \ app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app - [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) - Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) - c6 \ app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app - [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) - Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -typed: -parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] -Debug: ----->>---- exit: -coq.say typed: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -Debug: -----<<---- enter: -coq.env.add-indt - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.2»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.7»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.3»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.4»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - X0 -Debug: ----->>---- exit: -coq.env.add-indt - (parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) - c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - «foo1» -foo1 ?A2 ?B1 ?B2 ?n : Type - : Type -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?n : [ |- nat] -a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 - : foo1 ?A2 ?B1 ?B2 3 -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] -Debug: -----<<---- enter: -coq.say raw: - (parameter A1 maximal X0 c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ X1)) c2 \ - parameter B2 explicit (sort (typ X2)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ X4)) c3 \ - parameter B2 explicit (sort (typ X5)) c4 \ - arity - (prod `x` (X6 c4) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ X7)) c3 \ - parameter B2 explicit (sort (typ X8)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -raw: -parameter A1 maximal X0 c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ X1)) c2 \ - parameter B2 explicit (sort (typ X2)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ X4)) c3 \ - parameter B2 explicit (sort (typ X5)) c4 \ - arity - (prod `x` (X6 c4) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ X7)) c3 \ - parameter B2 explicit (sort (typ X8)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] -Debug: ----->>---- exit: -coq.say raw: - (parameter A1 maximal X0 c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ X1)) c2 \ - parameter B2 explicit (sort (typ X2)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ X4)) c3 \ - parameter B2 explicit (sort (typ X5)) c4 \ - arity - (prod `x` (X6 c4) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ X7)) c3 \ - parameter B2 explicit (sort (typ X8)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -Debug: -----<<---- enter: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (parameter A1 maximal X0 c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ X1)) c2 \ - parameter B2 explicit (sort (typ X2)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ X3))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ X4)) c3 \ - parameter B2 explicit (sort (typ X5)) c4 \ - arity - (prod `x` (X6 c4) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) - c6 \ app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ X7)) c3 \ - parameter B2 explicit (sort (typ X8)) c4 \ - arity - (prod `_` c0 c5 \ - app - [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - X9) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (parameter A1 maximal X0 c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.41»)) - c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.44»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.47»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.52»)) - c3 \ - parameter B2 explicit - (sort (typ «elpi.tests.test_arg_HOAS.54»)) c4 \ - arity - (prod `x` (X6 c4) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) - c6 \ app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.61»)) - c3 \ - parameter B2 explicit - (sort (typ «elpi.tests.test_arg_HOAS.63»)) c4 \ - arity - (prod `_` c0 c5 \ - app - [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) - c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) - c3 \ - parameter B2 explicit - (sort (typ «elpi.tests.test_arg_HOAS.55»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) - c6 \ app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) - c3 \ - parameter B2 explicit - (sort (typ «elpi.tests.test_arg_HOAS.64»)) c4 \ - arity - (prod `_` c0 c5 \ - app - [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))])) - Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -typed: -parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] -Debug: ----->>---- exit: -coq.say typed: - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) -Debug: -----<<---- enter: -coq.env.add-indt - (parameter A1 maximal (sort (typ «elpi.tests.test_arg_HOAS.40»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.42»)) c2 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.45»)) - c3 \ - arity - (prod `_` (global (indt «nat»)) c4 \ - sort (typ «elpi.tests.test_arg_HOAS.48»))) c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - X10 -Debug: ----->>---- exit: -coq.env.add-indt - (parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) - c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.53»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.55»)) - c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «elpi.tests.test_arg_HOAS.62»)) - c3 \ - parameter B2 explicit (sort (typ «elpi.tests.test_arg_HOAS.64»)) - c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))]) - «foo1» -foo1 ?A2 ?B1 ?B2 ?n : Type - : Type -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?n : [ |- nat] -a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 - : foo1 ?A2 ?B1 ?B2 3 -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] -Query assignments: - D = parameter A explicit (sort (typ «t.u0»)) c0 \ - inductive t tt - (parameter y explicit (global (indt «nat»)) c1 \ - arity (sort (typ «elpi.tests.test_arg_HOAS.82»))) c1 \ - [constructor K - (parameter y explicit (global (indt «nat»)) c2 \ - parameter x explicit c0 c3 \ - parameter n maximal (global (indt «nat»)) c4 \ - arity (prod `_` (app [c1, c4]) c5 \ app [c1, c2]))] - I = «t» -Universe constraints: -UNIVERSES: - {elpi.tests.test_arg_HOAS.82} |= - Set <= elpi.tests.test_arg_HOAS.82 - t.u0 <= elpi.tests.test_arg_HOAS.82 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Debug: -----<<---- enter: -coq.say raw: - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -raw: -record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) -Debug: ----->>---- exit: -coq.say raw: - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ - end-record))) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ - end-record))) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -typed: -record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) -Debug: ----->>---- exit: -coq.say typed: - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -Debug: -----<<---- enter: -coq.env.add-indt - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) - X0 -Debug: ----->>---- exit: -coq.env.add-indt - (record foo (sort (typ «Set»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) - «foo» -Debug: -----<<---- enter: -coq.say raw: - (record foo (sort (typ X0)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], - global (indc «O»)]) c1 \ end-record)) -raw: -record foo (sort (typ X0)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], - global (indc «O»)]) c1 \ end-record) -Debug: ----->>---- exit: -coq.say raw: - (record foo (sort (typ X0)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], - global (indc «O»)]) c1 \ end-record)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (record foo (sort (typ X0)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], - global (indc «O»)]) c1 \ end-record)) X2) - Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (record foo (sort (typ «elpi.tests.test_arg_HOAS.85»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), X1 c0, app [c0, global (indc «O»)], - global (indc «O»)]) c1 \ end-record)) - (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ - end-record))) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -typed: -record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record) -Debug: ----->>---- exit: -coq.say typed: - (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) -Debug: -----<<---- enter: -coq.env.add-indt - (record foo (sort (typ «elpi.tests.test_arg_HOAS.86»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) - X3 -Debug: ----->>---- exit: -coq.env.add-indt - (record foo (sort (typ «foo.u0»)) Build_foo - (field [coercion off, canonical tt] f - (prod `_` (global (indt «nat»)) c0 \ global (indt «nat»)) c0 \ - field [coercion off, canonical tt] _ - (app - [global (indt «eq»), global (indt «nat»), - app [c0, global (indc «O»)], global (indc «O»)]) c1 \ end-record)) - «foo» -Debug: -----<<---- enter: -coq.say raw: - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) -raw: -parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record) -Debug: ----->>---- exit: -coq.say raw: - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record))) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record))) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) -typed: -parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record) -Debug: ----->>---- exit: -coq.say typed: - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) -Debug: -----<<---- enter: -coq.env.add-indt - (parameter A explicit (sort (typ «elpi.tests.test_arg_HOAS.88»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.88»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) X0 -Debug: ----->>---- exit: -coq.env.add-indt - (parameter A explicit (sort (typ «foo.u0»)) c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «foo.u0»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `a` c0 c3 \ - prod `_` (app [global (indt «eq»), c0, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (global (indt «nat»)) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` c0 c5 \ - app [global (indt «eq»), c0, app [c2, c5, c5], c5]) c4 \ - end-record)) «foo» -Query assignments: - I = «foo» -Debug: -----<<---- enter: -coq.say raw: - (parameter A explicit X0 c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ X1)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `_elpi_renamed_a_1` c0 c3 \ - prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) - c3 \ - field [coercion off, canonical ff] x - (let `w` (X3 c3) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` (X4 c3 c4) c5 \ - app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) - c4 \ end-record)) -raw: -parameter A explicit X0 c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ X1)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `_elpi_renamed_a_1` c0 c3 \ - prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) c3 \ - field [coercion off, canonical ff] x - (let `w` (X3 c3) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` (X4 c3 c4) c5 \ - app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) c4 \ - end-record) -Debug: ----->>---- exit: -coq.say raw: - (parameter A explicit X0 c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ X1)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `_elpi_renamed_a_1` c0 c3 \ - prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) - c3 \ - field [coercion off, canonical ff] x - (let `w` (X3 c3) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` (X4 c3 c4) c5 \ - app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) - c4 \ end-record)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (parameter A explicit X0 c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ X1)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `_elpi_renamed_a_1` c0 c3 \ - prod `_` (app [global (indt «eq»), X2 c2 c3, c1, c1]) c4 \ c0) - c3 \ - field [coercion off, canonical ff] x - (let `w` (X3 c3) - (app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]) c4 \ - prod `x` (X4 c3 c4) c5 \ - app [global (indt «eq»), X5 c3 c4 c5, app [c2, c5, c5], c5]) - c4 \ end-record)) X6) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (parameter A explicit X0 c0 \ - parameter B explicit c0 c1 \ - record foo (sort (typ «elpi.tests.test_arg_HOAS.95»)) Build_foo - (field [coercion off, canonical tt] a - (prod `_` c0 c2 \ prod `_` c0 c3 \ c0) c2 \ - field [coercion reversible, canonical tt] z - (prod `_elpi_renamed_a_1` c0 c3 \ -...TRUNCATED BY DUNE... - app - [global (const «Nat.add»), c2, - app [global (indc «S»), global (indc «O»)]]) - (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ - prod `w` c0 c1 \ prod `n` (global (indt «nat»)) c2 \ X5 c0 c1 c2) X7) - illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-skeleton - (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.109»)) c0 \ - fun `w` c0 c1 \ - fun `n` (global (indt «nat»)) c2 \ - app - [global (const «Nat.add»), c2, - app [global (indc «S»), global (indc «O»)]]) - (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ - prod `w` c0 c1 \ - prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) - (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.110»)) c0 \ - fun `w` c0 c1 \ - fun `n` (global (indt «nat»)) c2 \ - app - [global (const «Nat.add»), c2, - app [global (indc «S»), global (indc «O»)]])) - illtyped definition -Debug: -----<<---- enter: -coq.env.add-const x1 - (fun `P` (sort (typ «elpi.tests.test_arg_HOAS.110»)) c0 \ - fun `w` c0 c1 \ - fun `n` (global (indt «nat»)) c2 \ - app - [global (const «Nat.add»), c2, - app [global (indc «S»), global (indc «O»)]]) - (prod `P` (sort (typ «elpi.tests.test_arg_HOAS.106»)) c0 \ - prod `w` c0 c1 \ - prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) X8 X9 -Debug: ----->>---- exit: -coq.env.add-const x1 - (fun `P` (sort (typ «x1.u1»)) c0 \ - fun `w` c0 c1 \ - fun `n` (global (indt «nat»)) c2 \ - app - [global (const «Nat.add»), c2, - app [global (indc «S»), global (indc «O»)]]) - (prod `P` (sort (typ «x1.u0»)) c0 \ - prod `w` c0 c1 \ - prod `n` (global (indt «nat»)) c2 \ global (indt «nat»)) X8 «x1» -x1 : forall P : Type, P -> nat -> nat - : forall P : Type, P -> nat -> nat -eq_refl : x1 = (fun (P : Type) (_ : P) (n : nat) => n + 1) - : x1 = (fun (P : Type) (_ : P) (n : nat) => n + 1) -Debug: -----<<---- enter: -coq.arity->term - (parameter n explicit (global (indt «nat»)) c0 \ - arity (sort (typ «elpi.tests.test_arg_HOAS.113»))) X0 -Debug: ----->>---- exit: -coq.arity->term - (parameter n explicit (global (indt «nat»)) c0 \ - arity (sort (typ «elpi.tests.test_arg_HOAS.113»))) - (prod `n` (global (indt «nat»)) c0 \ - sort (typ «elpi.tests.test_arg_HOAS.113»)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-ty - (prod `n` (global (indt «nat»)) c0 \ - sort (typ «elpi.tests.test_arg_HOAS.113»)) X1) illtyped axiom -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-ty - (prod `n` (global (indt «nat»)) c0 \ - sort (typ «elpi.tests.test_arg_HOAS.113»)) - (typ «elpi.tests.test_arg_HOAS.114»)) illtyped axiom -Debug: -----<<---- enter: -coq.env.add-axiom y - (prod `n` (global (indt «nat»)) c0 \ - sort (typ «elpi.tests.test_arg_HOAS.113»)) X2 -Debug: ----->>---- exit: -coq.env.add-axiom y - (prod `n` (global (indt «nat»)) c0 \ sort (typ «y.u0»)) «y» -y : nat -> Type - : nat -> Type -Debug: -----<<---- enter: -coq.arity->term - (parameter n explicit (global (indt «nat»)) c0 \ - arity (global (indt «nat»))) X0 -Debug: ----->>---- exit: -coq.arity->term - (parameter n explicit (global (indt «nat»)) c0 \ - arity (global (indt «nat»))) - (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck - (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) - (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»))) - illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck - (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) - (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»))) - illtyped definition -Debug: -----<<---- enter: -coq.env.add-const x - (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) - (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) X1 X2 -Debug: ----->>---- exit: -coq.env.add-const x - (fun `n` (global (indt «nat»)) c0 \ app [global (indc «S»), c0]) - (prod `n` (global (indt «nat»)) c0 \ global (indt «nat»)) X1 «x» -parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) - c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] -Query assignments: - D = parameter A1 maximal (sort (typ «foo1.u0»)) c0 \ - parameter A2 explicit c0 c1 \ - inductive foo1 tt - (parameter B1 explicit (sort (typ «foo1.u1»)) c2 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c3 \ - arity (prod `_` (global (indt «nat»)) c4 \ sort (typ «foo1.u3»))) - c2 \ - [constructor a_k1 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `x` (global (indt «nat»)) c5 \ - prod `_` - (app - [c2, app [global (indt «prod»), c3, c3], c4, - app - [global (indc «S»), - app - [global (indc «S»), - app [global (indc «S»), global (indc «O»)]]]]) c6 \ - app [c2, c3, c4, c5])), - constructor a_k2 - (parameter B1 explicit (sort (typ «foo1.u1»)) c3 \ - parameter B2 explicit (sort (typ «foo1.u2»)) c4 \ - arity - (prod `_` c0 c5 \ - app [c2, c3, c4, app [global (indc «S»), global (indc «O»)]]))] - I = «inductive_nup.foo1» -foo1 ?A2 ?B1 ?B2 ?n : Type - : Type -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?n : [ |- nat] -a_k1 ?A2 ?B1 ?B2 3 ?f : foo1 ?A2 ?B1 ?B2 3 - : foo1 ?A2 ?B1 ?B2 3 -where -?A1 : [ |- Type] -?A2 : [ |- ?A1] -?B1 : [ |- Type] -?B2 : [ |- Type] -?f : [ |- foo1 ?A2 (?B1 * ?B1) ?B2 3] -Query assignments: - I = «inductive_nup.r» - R = parameter A explicit (sort (typ «r.u0»)) c0 \ - parameter a explicit c0 c1 \ - record r (sort (typ «r.u0»)) R - (field [coercion reversible, canonical tt] f (prod `_` c0 c2 \ c0) c2 \ - field [coercion off, canonical tt] g c0 c3 \ - field [coercion off, canonical tt] p - (app [global (indt «eq»), c0, c1, c3]) c4 \ end-record) -Record r (A : Type) (a : A) : Type := R { f : A -> A; g : A; p : a = g }. - -Arguments r A%type_scope a -Arguments R A%type_scope a f%function_scope g p -Arguments f A%type_scope a record _ -Arguments g A%type_scope a record -Arguments p A%type_scope a record -Debug: -----<<---- enter: coq.say raw: (inductive X1 tt (arity (sort prop)) c0 \ []) -raw: inductive X1 tt (arity (sort prop)) c0 \ [] -Debug: ----->>---- exit: coq.say raw: (inductive X1 tt (arity (sort prop)) c0 \ []) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl (inductive X1 tt (arity (sort prop)) c0 \ [])) - Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl (inductive X1 tt (arity (sort prop)) c0 \ [])) - Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: (inductive X1 tt (arity (sort prop)) c0 \ []) -typed: inductive X1 tt (arity (sort prop)) c0 \ [] -Debug: ----->>---- exit: -coq.say typed: (inductive X1 tt (arity (sort prop)) c0 \ []) -Debug: -----<<---- enter: -coq.env.add-indt (inductive X1 tt (arity (sort prop)) c0 \ []) X0 -Debug: ----->>---- exit: -coq.env.add-indt (inductive X1 tt (arity (sort prop)) c0 \ []) «X1» -X1 : Prop - -X1 is not universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X1 -Debug: -----<<---- enter: -coq.say raw: - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) -raw: -inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ [] -upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt -Debug: ----->>---- exit: -coq.say raw: - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) -Debug: ----<<---- enter: coq.univ.print -Universe constraints: UNIVERSES: - {eu1} |= - ALGEBRAIC UNIVERSES: - {} - FLEXIBLE UNIVERSES: - eu1 - SORTS: - - WEAK CONSTRAINTS: - - -Debug: ---->>---- exit: coq.univ.print -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) - c0 \ [])) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) - c0 \ [])) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) -typed: -inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ [] -Debug: ----->>---- exit: -coq.say typed: - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) X0 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) - => - coq.env.add-indt - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) X1 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.129»] tt [] tt) - => - coq.env.add-indt - (inductive X3 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.129»))) c0 \ - []) «X3» -Debug: -----<<---- enter: -coq.say raw: - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) -raw: -inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ [] -upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt -Debug: ----->>---- exit: -coq.say raw: - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) -Debug: ----<<---- enter: coq.univ.print -Universe constraints: UNIVERSES: - {eu2} |= - ALGEBRAIC UNIVERSES: - {} - FLEXIBLE UNIVERSES: - eu2 - SORTS: - - WEAK CONSTRAINTS: - - -Debug: ---->>---- exit: coq.univ.print -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) - c0 \ [])) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) - c0 \ [])) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) -typed: -inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ [] -Debug: ----->>---- exit: -coq.say typed: - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) X0 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) - (get-option coq:udecl-cumul - (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl-cumul - (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) => - coq.env.add-indt - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) X1 -Debug: ----->>---- exit: -get-option coq:udecl-cumul - (upoly-decl-cumul [auto «elpi.tests.test_arg_HOAS.137»] tt [] tt) => - coq.env.add-indt - (inductive X4 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.137»))) c0 \ - []) «X4» -X3@{eu1} : Type@{eu1} -(* eu1 |= *) - -X3 is universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X3 -X4@{eu2} : Type@{eu2} -(* *eu2 |= *) - -X4 is universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X4 -Query assignments: - GR = indt «X3» -Universe constraints: -UNIVERSES: - {elpi.tests.test_arg_HOAS.145} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - elpi.tests.test_arg_HOAS.145 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - GR = indt «X4» -Universe constraints: -UNIVERSES: - {elpi.tests.test_arg_HOAS.146} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - elpi.tests.test_arg_HOAS.146 -SORTS: - -WEAK CONSTRAINTS: - - -Debug: -----<<---- enter: -coq.say raw: - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) -raw: -inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ [] -upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff -Debug: ----->>---- exit: -coq.say raw: - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) -Debug: ----<<---- enter: coq.univ.print -Universe constraints: UNIVERSES: - {eu3} |= - ALGEBRAIC UNIVERSES: - {} - FLEXIBLE UNIVERSES: - eu3 - SORTS: - - WEAK CONSTRAINTS: - - -Debug: ---->>---- exit: coq.univ.print -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) - c0 \ [])) Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) - c0 \ [])) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) -typed: -inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ [] -Debug: ----->>---- exit: -coq.say typed: - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) X0 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) - => - coq.env.add-indt - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) X1 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.147»] ff [] ff) - => - coq.env.add-indt - (inductive X5 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.147»))) c0 \ - []) «X5» -X5@{eu3} : Type@{eu3} -(* eu3 |= *) - -X5 is universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X5 -Debug: -----<<---- enter: -coq.say raw: - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) -raw: -inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))] -upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff -Debug: ----->>---- exit: -coq.say raw: - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) -Debug: ----<<---- enter: coq.univ.print -Universe constraints: UNIVERSES: - {eu5 eu4} |= eu4 < eu5 - ALGEBRAIC UNIVERSES: - {} - FLEXIBLE UNIVERSES: - eu5 - eu4 - SORTS: - - WEAK CONSTRAINTS: - - -Debug: ---->>---- exit: coq.univ.print -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) - c0 \ - [constructor K - (arity - (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))])) - Illtyped inductive declaration -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck-indt-decl - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) - c0 \ - [constructor K - (arity - (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))])) - Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) -typed: -inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))] -Debug: ----->>---- exit: -coq.say typed: - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) - X0 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) - (get-option coq:udecl - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] - ff)) -Debug: -----<<---- enter: -get-option coq:udecl - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) - => - coq.env.add-indt - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) - X1 -Debug: ----->>---- exit: -get-option coq:udecl - (upoly-decl - [«elpi.tests.test_arg_HOAS.155», «elpi.tests.test_arg_HOAS.156»] ff - [lt «elpi.tests.test_arg_HOAS.155» «elpi.tests.test_arg_HOAS.156»] ff) - => - coq.env.add-indt - (inductive X6 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.156»))) c0 \ - [constructor K - (arity (prod `u` (sort (typ «elpi.tests.test_arg_HOAS.155»)) c1 \ c0))]) - «X6» -X6@{eu4 eu5} : Type@{eu5} -(* eu4 eu5 |= eu4 < eu5 *) - -X6 is universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X6 -Debug: -----<<---- enter: -coq.say raw: (inductive X8 tt (arity (sort (typ X0))) c0 \ []) - (upoly-decl [] tt [] tt) -raw: inductive X8 tt (arity (sort (typ X0))) c0 \ [] upoly-decl [] tt [] tt -Debug: ----->>---- exit: -coq.say raw: (inductive X8 tt (arity (sort (typ X0))) c0 \ []) - (upoly-decl [] tt [] tt) -Debug: ----<<---- enter: coq.univ.print -Universe constraints: -Debug: ---->>---- exit: coq.univ.print -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (inductive X8 tt (arity (sort (typ X0))) c0 \ []) X1) - Illtyped inductive declaration -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-indt-decl-skeleton - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) - c0 \ []) - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) - c0 \ [])) Illtyped inductive declaration -Debug: -----<<---- enter: -coq.say typed: - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ - []) -typed: -inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ [] -Debug: ----->>---- exit: -coq.say typed: - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ - []) -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X2 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-indt - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ - []) X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-indt - (inductive X8 tt (arity (sort (typ «elpi.tests.test_arg_HOAS.171»))) c0 \ - []) «X8» -X8@{u} : Type@{u} -(* u |= *) - -X8 is universe polymorphic -Expands to: Inductive elpi.tests.test_arg_HOAS.X8 -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - parameter x explicit c0 c1 \ arity c0) X0 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - parameter x explicit c0 c1 \ arity c0) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - prod `x` c0 c1 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - prod `x` c0 c1 \ c0)) illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - prod `x` c0 c1 \ c0)) illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f1 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - prod `x` c0 c1 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f1 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.179»)) c0 \ - prod `x` c0 c1 \ c0) X2 «f1» -f1@{u} : forall T : Type@{u}, T -> T -(* u |= *) - -f1 is universe polymorphic -Arguments f1 T%type_scope x -f1 is transparent -Expands to: Constant elpi.tests.test_arg_HOAS.f1 -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - parameter x explicit c0 c2 \ arity c0) X0 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - parameter x explicit c0 c2 \ arity c0) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - prod `x` c0 c2 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) - => - coq.env.add-const f2 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - prod `x` c0 c2 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.180»] ff [] tt) - => - coq.env.add-const f2 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.180»)) c1 \ - prod `x` c0 c2 \ c0) X2 «f2» -f2@{u} : forall T : Type@{u}, Type@{u} -> T -> T -(* u |= *) - -f2 is universe polymorphic -Arguments f2 (T T1)%type_scope x -f2 is transparent -Expands to: Constant elpi.tests.test_arg_HOAS.f2 -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ X0)) c0 \ - parameter x explicit c0 c1 \ arity (X1 c1)) X2 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ X0)) c0 \ - parameter x explicit c0 c1 \ arity (X1 c1)) - (prod `T` (sort (typ X0)) c0 \ prod `x` c0 c1 \ X1 c1) -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ X0)) c0 \ prod `x` c0 c1 \ X1 c1) X3 X4) - illtyped arity -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ X1 c1) (typ «elpi.tests.test_arg_HOAS.183») - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ X5 c0 c1)) illtyped arity -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton (fun `T` (sort (typ X6)) c0 \ fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ X5 c0 c1) X7) illtyped definition -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.184»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ c0) - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - fun `x` c0 c1 \ c1)) illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X8 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f3 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ c0) X9 X10 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f3 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - fun `x` c0 c1 \ c1) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.181»)) c0 \ - prod `x` c0 c1 \ c0) X9 «f3» -f3@{u} : forall T : Type@{u}, T -> T -(* u |= *) - -f3 is universe polymorphic -Arguments f3 T%type_scope x -f3 is transparent -Expands to: Constant elpi.tests.test_arg_HOAS.f3 -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - parameter x explicit c0 c2 \ arity (X0 c2)) X1 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - parameter x explicit c0 c2 \ arity (X0 c2)) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ X0 c2) -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ X0 c2) X2 X3) illtyped arity -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ X0 c2) (typ «elpi.tests.test_arg_HOAS.187») - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ X4 c0 c1 c2)) illtyped arity -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ X4 c0 c1 c2) X5) illtyped definition -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ c0) - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - fun `x` c0 c2 \ c2)) illtyped definition -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) X6 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) - => - coq.env.add-const f4 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ c0) X7 X8 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.185»] ff [] tt) - => - coq.env.add-const f4 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.185»)) c1 \ - prod `x` c0 c2 \ c0) X7 «f4» -f4@{u} : forall T : Type@{u}, Type@{u} -> T -> T -(* u |= *) - -f4 is universe polymorphic -Arguments f4 (T T1)%type_scope x -f4 is transparent -Expands to: Constant elpi.tests.test_arg_HOAS.f4 -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ «uuu»)) c0 \ - parameter T1 explicit (sort (typ «uuu»)) c1 \ - parameter x explicit c0 c2 \ arity (X0 c2)) X1 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ «uuu»)) c0 \ - parameter T1 explicit (sort (typ «uuu»)) c1 \ - parameter x explicit c0 c2 \ arity (X0 c2)) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) -Debug: -----<<---- enter: -std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) X2 X3) - illtyped arity -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-ty-skeleton - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ X0 c2) - (typ «elpi.tests.test_arg_HOAS.192») - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ - prod `x` c0 c2 \ X4 c0 c1 c2)) illtyped arity -Debug: -----<<---- enter: -std.assert-ok! - (coq.elaborate-skeleton - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «uuu»)) c1 \ fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ - prod `x` c0 c2 \ X4 c0 c1 c2) X5) illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.elaborate-skeleton - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «uuu»)) c1 \ fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ - prod `x` c0 c2 \ c0) - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.193»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.194»)) c1 \ - fun `x` c0 c2 \ c2)) illtyped definition -Debug: -----<<---- enter: -coq.env.add-const f5 - (fun `T` (sort (typ «elpi.tests.test_arg_HOAS.193»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.194»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «elpi.tests.test_arg_HOAS.189»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.190»)) c1 \ - prod `x` c0 c2 \ c0) X6 X7 -Debug: ----->>---- exit: -coq.env.add-const f5 - (fun `T` (sort (typ «f5.u2»)) c0 \ - fun `T1` (sort (typ «f5.u3»)) c1 \ fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «f5.u0»)) c0 \ - prod `T1` (sort (typ «f5.u1»)) c1 \ prod `x` c0 c2 \ c0) X6 «f5» -Debug: -----<<---- enter: -coq.arity->term - (parameter T explicit (sort (typ «uuu»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - parameter x explicit c0 c2 \ arity c0) X0 -Debug: ----->>---- exit: -coq.arity->term - (parameter T explicit (sort (typ «uuu»)) c0 \ - parameter T1 explicit (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - parameter x explicit c0 c2 \ arity c0) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - prod `x` c0 c2 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) - => - coq.env.add-const f6 - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - prod `x` c0 c2 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.195»] ff [] tt) - => - coq.env.add-const f6 - (fun `T` (sort (typ «uuu»)) c0 \ - fun `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - fun `x` c0 c2 \ c2) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.195»)) c1 \ - prod `x` c0 c2 \ c0) X2 «f6» -f6@{uuux} : forall T : Type@{uuu}, Type@{uuux} -> T -> T -(* uuux |= *) - -f6 is universe polymorphic -Arguments f6 (T T1)%type_scope x -f6 is transparent -Expands to: Constant elpi.tests.test_arg_HOAS.f6 -Debug: -----<<---- enter: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) X0 -Debug: ----->>---- exit: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) - illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0)) - illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f7 (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f7 (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X2 «f7» -Debug: ----<<---- enter: coq.arity->term (arity X0) X1 -Debug: ---->>---- exit: coq.arity->term (arity X1) X1 -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.196») (X4)) - illtyped arity -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton (pglobal (const «f6») «Set») (X4) X5) - illtyped definition -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) - (pglobal (const «f6») «Set»)) illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X6 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f8 (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X7 X8 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f8 (pglobal (const «f6») «Set») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «Set»)) c1 \ prod `x` c0 c2 \ c0) X7 «f8» -Debug: -----<<---- enter: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) X0 -Debug: ----->>---- exit: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) - illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0)) - illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f7' (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f7' (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X2 «f7'» -Debug: ----<<---- enter: coq.arity->term (arity X0) X1 -Debug: ---->>---- exit: coq.arity->term (arity X1) X1 -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.197») (X4)) - illtyped arity -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton (pglobal (const «f6») «uuu») (X4) X5) - illtyped definition -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) - (pglobal (const «f6») «uuu»)) illtyped definition -Debug: -----<<---- enter: coq.upoly-decl->attribute (upoly-decl [] tt [] tt) X6 -Debug: ----->>---- exit: -coq.upoly-decl->attribute (upoly-decl [] tt [] tt) - (get-option coq:udecl (upoly-decl [] tt [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f8' (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X7 X8 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [] tt [] tt) => - coq.env.add-const f8' (pglobal (const «f6») «uuu») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «uuu»)) c1 \ prod `x` c0 c2 \ c0) X7 «f8'» -Debug: -----<<---- enter: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0)) X0 -Debug: ----->>---- exit: -coq.arity->term - (arity - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0)) - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0) -Debug: -----<<---- enter: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: ----->>---- exit: -std.assert-ok! - (coq.typecheck (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0)) illtyped definition -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) X1 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt)) -Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) - => - coq.env.add-const f7'' - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0) X2 X3 -Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.198»] ff [] tt) - => - coq.env.add-const f7'' - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.198») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.198»)) c1 \ - prod `x` c0 c2 \ c0) X2 «f7''» -Debug: ----<<---- enter: coq.arity->term (arity X0) X1 -Debug: ---->>---- exit: coq.arity->term (arity X1) X1 -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! (coq.elaborate-ty-skeleton X1 X2 X3) illtyped arity -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-ty-skeleton X1 (typ «elpi.tests.test_arg_HOAS.200») (X4)) - illtyped arity -Debug: -----<<---- enter: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») (X4) X5) - illtyped definition -Debug: ----->>---- exit: -get-option coq:keepunivs tt => - std.assert-ok! - (coq.elaborate-skeleton - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ - prod `x` c0 c2 \ c0) - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199»)) - illtyped definition -Debug: -----<<---- enter: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) X6 -Debug: ----->>---- exit: -coq.upoly-decl->attribute - (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) - (get-option coq:udecl - (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt)) + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + restrict_coq_context: cur subst: K + u + restrict_coq_context: looking at K_S(dbl 2) +Debug: [elpi] ?e9--0->?e9 Debug: -----<<---- enter: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) - => - coq.env.add-const f8'' - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ - prod `x` c0 c2 \ c0) X7 X8 +[elpi] + lp2term: evar: create_unknown: restricted ctx:(u : ?e) + (K : ?e8) + (K_S : ?e9) Debug: ----->>---- exit: -get-option coq:udecl (upoly-decl [«elpi.tests.test_arg_HOAS.199»] ff [] tt) - => - coq.env.add-const f8'' - (pglobal (const «f6») «elpi.tests.test_arg_HOAS.199») - (prod `T` (sort (typ «uuu»)) c0 \ - prod `T1` (sort (typ «elpi.tests.test_arg_HOAS.199»)) c1 \ - prod `x` c0 c2 \ c0) X7 «f8''» -const-decl D - (some - (fun `i` (global (indt «I»)) c0 \ - fun `l` (app [global (indt «L»), c0]) c1 \ global (indt «True»))) - (parameter i maximal (global (indt «I»)) c0 \ - parameter l maximal (app [global (indt «L»), c0]) c1 \ arity (sort prop)) -const-decl D - (some - (fun `i` (global (indt «I»)) c0 \ - fun `H` (app [global (indt «L»), c0]) c1 \ global (indt «True»))) - (parameter i maximal (global (indt «I»)) c0 \ - parameter H maximal (app [global (indt «L»), c0]) c1 \ arity (sort prop)) -const-decl D - (some - (fun `i` (global (indt «I»)) c0 \ - fun `H` (app [global (indt «L»), c0]) c1 \ - fun `n` (global (indt «nat»)) c2 \ global (indt «True»))) - (parameter i maximal (global (indt «I»)) c0 \ - parameter H maximal (app [global (indt «L»), c0]) c1 \ - parameter n explicit (global (indt «nat»)) c2 \ arity (sort prop)) -2 -fun `x` X0 c0 \ fun `y` (X1 c0) c1 \ app [global (const «Nat.add»), c0, c1] -File "./tests/test_arg_HOAS.v", line 283, characters 0-68: -Warning: Automatically putting X1 in Prop even though it was declared with -Type. -Unset Automatic Proposition Inductives to prevent this (it will become the -default in a future version). -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] -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 16, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 16, 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 15, characters 58-59: -Warning: -File "./tests/test_elaborator.v", line 15, 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 16, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 16, 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 21, characters 10-12: -Warning: -File "./tests/test_elaborator.v", line 21, 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 21, characters 7-9: -Warning: -File "./tests/test_elaborator.v", line 21, 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 27, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 27, 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 27, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 27, 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 29, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 29, 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 29, characters 43-44: -Warning: -File "./tests/test_elaborator.v", line 29, 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 36, characters 29-30: -Warning: -File "./tests/test_elaborator.v", line 36, 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 36, characters 31-32: -Warning: -File "./tests/test_elaborator.v", line 36, 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 39, characters 15-16: -Warning: -File "./tests/test_elaborator.v", line 39, 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 40, characters 29-31: -Warning: -File "./tests/test_elaborator.v", line 40, 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 62, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 62, 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 69, characters 32-33: -Warning: -File "./tests/test_elaborator.v", line 69, 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 76, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 76, 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 88, characters 45-46: -Warning: -File "./tests/test_elaborator.v", line 88, 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 95, characters 62-63: -Warning: -File "./tests/test_elaborator.v", line 95, 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 95, characters 64-65: -Warning: -File "./tests/test_elaborator.v", line 95, 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 95, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 95, 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 95, characters 68-69: -Warning: -File "./tests/test_elaborator.v", line 95, 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 95, characters 70-71: -Warning: -File "./tests/test_elaborator.v", line 95, 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 95, characters 72-73: -Warning: -File "./tests/test_elaborator.v", line 95, 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 106, characters 66-67: -Warning: -File "./tests/test_elaborator.v", line 106, 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 119, characters 35-38: -Warning: -File "./tests/test_elaborator.v", line 119, 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 133, characters 64-67: -Warning: -File "./tests/test_elaborator.v", line 133, 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 136, characters 33-36: -Warning: -File "./tests/test_elaborator.v", line 136, 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 149, characters 49-50: -Warning: -File "./tests/test_elaborator.v", line 149, 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 149, characters 47-48: -Warning: -File "./tests/test_elaborator.v", line 149, 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 154, characters 36-37: -Warning: -File "./tests/test_elaborator.v", line 154, 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 154, characters 38-39: -Warning: -File "./tests/test_elaborator.v", line 154, 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 156, characters 39-40: -Warning: -File "./tests/test_elaborator.v", line 156, 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 156, characters 41-42: -Warning: -File "./tests/test_elaborator.v", line 156, characters 41-42 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -Coq version: 8.20.1 = 8 . 20 . 1 -Query assignments: - MA = 8 - MI = 20 - P = 1 - V = 8.20.1 -hello world -A -B -Query assignments: - GR = «nat» -Query assignments: - GR = «Nat.add» - MP = «Coq.Init.Datatypes» -Query assignments: - A = «elpi.tests.test_API.succ» - GR = «Nat.add» - MP = «Coq.Init.Datatypes» - X1 = [loc-gref (const «Nat.add»)] - X2 = [loc-gref (const «Nat.add»)] - X3 = [loc-abbreviation «elpi.tests.test_API.succ»] - X4 = [loc-modpath «Coq.Init.Datatypes»] -Universe constraints: -Query assignments: - X = «elpi.tests.test_API.1» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API.1} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - +[elpi] + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X52 + EVARS: + ?X52==[u K K_S |- Type] (internal placeholder) {?e10} + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Query assignments: - X = typ «elpi.tests.test_API.2» - Y = typ «elpi.tests.test_API.3» -Universe constraints: UNIVERSES: - {elpi.tests.test_API.3 elpi.tests.test_API.2} |= - elpi.tests.test_API.2 <= elpi.tests.test_API.3 + {elpi.tests.test_quotation.36 elpi.tests.test_quotation.35 + elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 + elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 + elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - + α26 + α27 + α28 + α29 + α30 + α31 + α32 + α33 WEAK CONSTRAINTS: +SHELF: +FUTURE GOALS STACK:?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@3:X7 c0 c1 c2 +Debug: +[elpi] + lp2term: evar: calldepth:0 X7 c0 c1 c2 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 + +Debug: [elpi] lp2term: evar: already in Coq: ?X52 +Debug: [elpi] lp2term@3:c0 +Debug: [elpi] lp2term@3:c1 +Debug: [elpi] lp2term@3:c2 +Debug: +[elpi] + lp2term@4:match c3 (fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4]) + [fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5]] +Debug: [elpi] lp2term@4:c3 +Debug: [elpi] lp2term@4:fun `u0` (X8 c0 c1 c2 c3) c4 \ app [c1, c4] +Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 +Debug: +[elpi] + lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 + +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X8 +Debug: +[elpi] + lp2term: evar: create_unknown: whole ctx: ; (u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 +c3 +Debug: [elpi] restrict_coq_context: named: +Debug: +[elpi] + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + restrict_coq_context: cur subst: u + restrict_coq_context: looking at K(dbl 1) +Debug: [elpi] ?e8--0->?e8 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + restrict_coq_context: cur subst: K + u + restrict_coq_context: looking at K_S(dbl 2) +Debug: [elpi] ?e9--0->?e9 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + (K_S : ?e9) + restrict_coq_context: cur subst: K_S + K + u + restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) +Debug: [elpi] ?e10--0->?e10 +Debug: +[elpi] + lp2term: evar: create_unknown: restricted ctx:(u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) +Debug: +[elpi] + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X53 + EVARS: + ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} + ?X52==[u K K_S |- Type] (internal placeholder) {?e10} + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Query assignments: - X = typ «elpi.tests.test_API.4» - Y = typ «elpi.tests.test_API.5» -Universe constraints: UNIVERSES: - {elpi.tests.test_API.5 elpi.tests.test_API.4} |= - elpi.tests.test_API.4 <= elpi.tests.test_API.5 + {elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 + elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 + elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 + elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - + α26 + α27 + α28 + α29 + α30 + α31 + α32 + α33 + α34 WEAK CONSTRAINTS: +SHELF: +FUTURE GOALS STACK:?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 ?X43 +?X42 +?X41 + +Debug: [elpi] lp2term@4:X8 c0 c1 c2 c3 +Debug: +[elpi] + lp2term: evar: calldepth:0 X8 c0 c1 c2 c3 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 + +Debug: [elpi] lp2term: evar: already in Coq: ?X53 +Debug: [elpi] lp2term@4:c0 +Debug: [elpi] lp2term@4:c1 +Debug: [elpi] lp2term@4:c2 +Debug: [elpi] lp2term@4:c3 +Debug: [elpi] lp2term@5:app [c1, c4] +Debug: [elpi] lp2term@5:c1 +Debug: [elpi] lp2term@5:c4 +Debug: +[elpi] + lp2term@4:fun `x` (X9 c0 c1 c2 c3) c4 \ + fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] +Debug: [elpi] lp2term@4:X9 c0 c1 c2 c3 +Debug: +[elpi] + lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 + +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X9 +Debug: +[elpi] + lp2term: evar: create_unknown: whole ctx: ; (u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 +c3 +Debug: [elpi] restrict_coq_context: named: +Debug: +[elpi] + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + restrict_coq_context: cur subst: u + restrict_coq_context: looking at K(dbl 1) +Debug: [elpi] ?e8--0->?e8 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + restrict_coq_context: cur subst: K + u + restrict_coq_context: looking at K_S(dbl 2) +Debug: [elpi] ?e9--0->?e9 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + (K_S : ?e9) + restrict_coq_context: cur subst: K_S + K + u + restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) +Debug: [elpi] ?e10--0->?e10 +Debug: +[elpi] + lp2term: evar: create_unknown: restricted ctx:(u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) +Debug: +[elpi] + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X54 + EVARS: + ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} + ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} + ?X52==[u K K_S |- Type] (internal placeholder) {?e10} + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Query assignments: - X = typ «elpi.tests.test_API.6» - Y = typ «elpi.tests.test_API.7» - Z = typ «elpi.tests.test_API.8» -Universe constraints: UNIVERSES: - {elpi.tests.test_API.8 elpi.tests.test_API.7 elpi.tests.test_API.6} |= - elpi.tests.test_API.6 <= elpi.tests.test_API.8 - elpi.tests.test_API.7 <= elpi.tests.test_API.8 + {elpi.tests.test_quotation.38 elpi.tests.test_quotation.37 + elpi.tests.test_quotation.36 elpi.tests.test_quotation.35 + elpi.tests.test_quotation.34 elpi.tests.test_quotation.33 + elpi.tests.test_quotation.32 elpi.tests.test_quotation.31 + elpi.tests.test_quotation.30 elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - + α26 + α27 + α28 + α29 + α30 + α31 + α32 + α33 + α34 + α35 WEAK CONSTRAINTS: +SHELF: +FUTURE GOALS STACK:?X54 ?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 ?X44 +?X43 ?X42 +?X41 + +Debug: [elpi] lp2term@4:X9 c0 c1 c2 c3 +Debug: +[elpi] + lp2term: evar: calldepth:0 X9 c0 c1 c2 c3 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 + +Debug: [elpi] lp2term: evar: already in Coq: ?X54 +Debug: [elpi] lp2term@4:c0 +Debug: [elpi] lp2term@4:c1 +Debug: [elpi] lp2term@4:c2 +Debug: [elpi] lp2term@4:c3 +Debug: [elpi] lp2term@5:fun `Px` (X10 c0 c1 c2 c3 c4) c5 \ app [c2, c4, c5] +Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 +Debug: +[elpi] + lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 + +Debug: [elpi] lp2term: evar: unknown: calldepth:0 X10 +Debug: +[elpi] + lp2term: evar: create_unknown: whole ctx: ; (u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) + (x : ?e12) +Debug: [elpi] lp2term: evar: create_unknown: visible ctx:c0 c1 c2 c3 +c4 +Debug: [elpi] restrict_coq_context: named: +Debug: +[elpi] + restrict_coq_context: cur rel ctx: + restrict_coq_context: cur subst: + restrict_coq_context: looking at u(dbl 0) +Debug: [elpi] ?e--0->?e +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + restrict_coq_context: cur subst: u + restrict_coq_context: looking at K(dbl 1) +Debug: [elpi] ?e8--0->?e8 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + restrict_coq_context: cur subst: K + u + restrict_coq_context: looking at K_S(dbl 2) +Debug: [elpi] ?e9--0->?e9 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + (K_S : ?e9) + restrict_coq_context: cur subst: K_S + K + u + restrict_coq_context: looking at _elpi_renamed_u_3(dbl 3) +Debug: [elpi] ?e10--0->?e10 +Debug: +[elpi] + restrict_coq_context: cur rel ctx: (u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) + restrict_coq_context: cur subst: _elpi_renamed_u_3 + K_S + K + u + restrict_coq_context: looking at x(dbl 4) +Debug: [elpi] ?e12--0->?e12 +Debug: +[elpi] + lp2term: evar: create_unknown: restricted ctx:(u : ?e) + (K : ?e8) + (K_S : ?e9) + (_elpi_renamed_u_3 : ?e10) + (x : ?e12) +Debug: +[elpi] + lp2term: evar: create_unknown: new link: ? |> |- ? = ?X55 + EVARS: + ?X55==[u K K_S _elpi_renamed_u_3 x |- Type] (internal placeholder) {?e13} + ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} + ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} + ?X52==[u K K_S |- Type] (internal placeholder) {?e10} + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} -Query assignments: - X = typ «elpi.tests.test_API.9» - Y = typ «elpi.tests.test_API.10» -Universe constraints: UNIVERSES: - {elpi.tests.test_API.10 elpi.tests.test_API.9} |= - elpi.tests.test_API.9 < elpi.tests.test_API.10 + {elpi.tests.test_quotation.39 elpi.tests.test_quotation.38 + elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 + elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 + elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 + elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - + α26 + α27 + α28 + α29 + α30 + α31 + α32 + α33 + α34 + α35 + α36 WEAK CONSTRAINTS: +SHELF: +FUTURE GOALS STACK:?X55 ?X54 ?X53 ?X52 ?X51 ?X50 ?X49 ?X48 ?X47 ?X46 ?X45 +?X44 ?X43 ?X42 +?X41 -[foo (const «X»), foo (indt «nat»), foo (indt «bool»)] -[foo (indt «nat»), foo (indt «bool»)] -[] -[foo (indt «nat»)] -hello [int 1, int 2, trm (global (indt «nat»)), str x] -coq.pp.box (coq.pp.hv 2) - [coq.pp.str Module, coq.pp.spc, coq.pp.str Foo, coq.pp.spc, coq.pp.str :=, - coq.pp.brk 1 0, coq.pp.str body, coq.pp.spc, coq.pp.str End Foo.] -Module - Foo - := - body - End Foo. -fix foo (x : ?e3) (y : ?e4) {struct x} : ?e2 := - match x as _elpi_renamed_x_3 return ?e6 with - | true => S (S (S O)) - | false => y - end -fix foo x y {struct x} := if x as _elpi_renamed_x_3 then 3 else y -File "./tests/test_API.v", line 2, characters 0-24: +Debug: [elpi] lp2term@5:X10 c0 c1 c2 c3 c4 +Debug: +[elpi] + lp2term: evar: calldepth:0 X10 c0 c1 c2 c3 c4 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] lp2term: evar: already in Coq: ?X55 +Debug: [elpi] lp2term@5:c0 +Debug: [elpi] lp2term@5:c1 +Debug: [elpi] lp2term@5:c2 +Debug: [elpi] lp2term@5:c3 +Debug: [elpi] lp2term@5:c4 +Debug: [elpi] lp2term@6:app [c2, c4, c5] +Debug: [elpi] lp2term@6:c2 +Debug: [elpi] lp2term@6:c4 +Debug: [elpi] lp2term@6:c5 +Debug: +[elpi] + lp2term: out=(fun u : ?e => + {| + val := oval u; + Sub := ?e7; + Sub_rect := + fun (K : ?e8) (K_S : ?e9) (_elpi_renamed_u_3 : ?e10) => + let + (x, Px) as u0 + return + ?e11@{u:=K; K:=K_S; K_S:=_elpi_renamed_u_3; + _elpi_renamed_u_3:=u0} := _elpi_renamed_u_3 in + K_S x Px + |}) + elpi2coq: + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +EVARS: + ?X55==[u K K_S _elpi_renamed_u_3 x |- Type] (internal placeholder) {?e13} + ?X54==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e12} + ?X53==[u K K_S _elpi_renamed_u_3 |- Type] (internal placeholder) {?e11} + ?X52==[u K K_S |- Type] (internal placeholder) {?e10} + ?X51==[u K |- Type] (internal placeholder) {?e9} + ?X50==[u |- Type] (internal placeholder) {?e8} + ?X49==[u |- ?e6] (internal placeholder) {?e7} + ?X48==[u |- Type] (internal placeholder) {?e6} + ?X47==[u |- ?e4] (internal placeholder) {?e5} + ?X46==[u |- Type] (internal placeholder) {?e4} + ?X45==[u |- ?e2] (internal placeholder) {?e3} + ?X44==[u |- Type] (internal placeholder) {?e2} + ?X43==[u |- ?e0] (internal placeholder) {?e1} + ?X42==[u |- Type] (internal placeholder) {?e0} + ?X41==[ |- Type] (internal placeholder) {?e} + + UNIVERSES: + {elpi.tests.test_quotation.39 elpi.tests.test_quotation.38 + elpi.tests.test_quotation.37 elpi.tests.test_quotation.36 + elpi.tests.test_quotation.35 elpi.tests.test_quotation.34 + elpi.tests.test_quotation.33 elpi.tests.test_quotation.32 + elpi.tests.test_quotation.31 elpi.tests.test_quotation.30 + elpi.tests.test_quotation.29} |= + ALGEBRAIC UNIVERSES: + {} + FLEXIBLE UNIVERSES: + + SORTS: + α26 + α27 + α28 + α29 + α30 + α31 + α32 + α33 + α34 + α35 + α36 + WEAK CONSTRAINTS: + + SHELF: + + FUTURE GOALS STACK: + ?X55 + ?X54 + ?X53 + ?X52 + ?X51 + ?X50 + ?X49 + ?X48 + ?X47 + ?X46 + ?X45 + ?X44 + ?X43 + ?X42 + ?X41 + +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X41 <-> X0 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=0 ctx= term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.29») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to0 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X41 <-> X0 + declare-evar [] (X0) (sort (typ «elpi.tests.test_quotation.29»)) (X0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X42 <-> X12 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.30») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X42 <-> X12 + pi c0 \ + declare-evar [decl c0 `u` (X0)] (X12 c0) + (sort (typ «elpi.tests.test_quotation.30»)) (X11 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X43 <-> X1 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e0 +Debug: [elpi] in_elpi_evar:?X42 +Debug: [elpi] in_elpi_evar: known ?X42 as X11 +Debug: [elpi] term2lp (out): X11 c0 +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X43 <-> X1 + pi c0 \ declare-evar [decl c0 `u` (X0)] (X1 c0) (X11 c0) (X1 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X44 <-> X14 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.31») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X44 <-> X14 + pi c0 \ + declare-evar [decl c0 `u` (X0)] (X14 c0) + (sort (typ «elpi.tests.test_quotation.31»)) (X13 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X45 <-> X2 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e2 +Debug: [elpi] in_elpi_evar:?X44 +Debug: [elpi] in_elpi_evar: known ?X44 as X13 +Debug: [elpi] term2lp (out): X13 c0 +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X45 <-> X2 + pi c0 \ declare-evar [decl c0 `u` (X0)] (X2 c0) (X13 c0) (X2 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X46 <-> X16 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.32») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X46 <-> X16 + pi c0 \ + declare-evar [decl c0 `u` (X0)] (X16 c0) + (sort (typ «elpi.tests.test_quotation.32»)) (X15 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X47 <-> X3 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e4 +Debug: [elpi] in_elpi_evar:?X46 +Debug: [elpi] in_elpi_evar: known ?X46 as X15 +Debug: [elpi] term2lp (out): X15 c0 +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X47 <-> X3 + pi c0 \ declare-evar [decl c0 `u` (X0)] (X3 c0) (X15 c0) (X3 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X48 <-> X18 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.33») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X48 <-> X18 + pi c0 \ + declare-evar [decl c0 `u` (X0)] (X18 c0) + (sort (typ «elpi.tests.test_quotation.33»)) (X17 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X49 <-> X4 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=?e6 +Debug: [elpi] in_elpi_evar:?X48 +Debug: [elpi] in_elpi_evar: known ?X48 as X17 +Debug: [elpi] term2lp (out): X17 c0 +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X49 <-> X4 + pi c0 \ declare-evar [decl c0 `u` (X0)] (X4 c0) (X17 c0) (X4 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X50 <-> X5 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=1 ctx=u : ?e term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.34») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to1 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X50 <-> X5 + pi c0 \ + declare-evar [decl c0 `u` (X0)] (X5 c0) + (sort (typ «elpi.tests.test_quotation.34»)) (X5 c0) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X51 <-> X6 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 +Debug: [elpi] in_elpi_evar:?X50 +Debug: [elpi] in_elpi_evar: known ?X50 as X5 +Debug: [elpi] term2lp (out): X5 c0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e K : ?e8 term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.35») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to2 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X51 <-> X6 + pi c0 \ + pi c1 \ + declare-evar [decl c1 `K` (X5 c0), decl c0 `u` X0] (X6 c0 c1) + (sort (typ «elpi.tests.test_quotation.35»)) (X6 c0 c1) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X52 <-> X7 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 +Debug: [elpi] in_elpi_evar:?X50 +Debug: [elpi] in_elpi_evar: known ?X50 as X5 +Debug: [elpi] term2lp (out): X5 c0 +Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 +Debug: [elpi] in_elpi_evar:?X51 +Debug: [elpi] in_elpi_evar: known ?X51 as X6 +Debug: [elpi] term2lp (out): X6 c0 c1 +Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 K_S : ?e9 term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.36») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to3 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X52 <-> X7 + pi c0 \ + pi c1 \ + pi c2 \ + declare-evar + [decl c2 `K_S` (X6 c0 c1), decl c1 `K` (X5 c0), decl c0 `u` X0] + (X7 c0 c1 c2) (sort (typ «elpi.tests.test_quotation.36»)) (X7 c0 c1 c2) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X53 <-> X8 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 +Debug: [elpi] in_elpi_evar:?X50 +Debug: [elpi] in_elpi_evar: known ?X50 as X5 +Debug: [elpi] term2lp (out): X5 c0 +Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 +Debug: [elpi] in_elpi_evar:?X51 +Debug: [elpi] in_elpi_evar: known ?X51 as X6 +Debug: [elpi] term2lp (out): X6 c0 c1 +Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 +Debug: [elpi] in_elpi_evar:?X52 +Debug: [elpi] in_elpi_evar: known ?X52 as X7 +Debug: [elpi] term2lp (out): X7 c0 c1 c2 +Debug: +[elpi] + term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.37») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to4 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X53 <-> X8 + pi c0 \ + pi c1 \ + pi c2 \ + pi c3 \ + declare-evar + [decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), + decl c1 `K` (X5 c0), decl c0 `u` X0] (X8 c0 c1 c2 c3) + (sort (typ «elpi.tests.test_quotation.37»)) (X8 c0 c1 c2 c3) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X54 <-> X9 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 +Debug: [elpi] in_elpi_evar:?X50 +Debug: [elpi] in_elpi_evar: known ?X50 as X5 +Debug: [elpi] term2lp (out): X5 c0 +Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 +Debug: [elpi] in_elpi_evar:?X51 +Debug: [elpi] in_elpi_evar: known ?X51 as X6 +Debug: [elpi] term2lp (out): X6 c0 c1 +Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 +Debug: [elpi] in_elpi_evar:?X52 +Debug: [elpi] in_elpi_evar: known ?X52 as X7 +Debug: [elpi] term2lp (out): X7 c0 c1 c2 +Debug: +[elpi] + term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.38») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to4 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X54 <-> X9 + pi c0 \ + pi c1 \ + pi c2 \ + pi c3 \ + declare-evar + [decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), + decl c1 `K` (X5 c0), decl c0 `u` X0] (X9 c0 c1 c2 c3) + (sort (typ «elpi.tests.test_quotation.38»)) (X9 c0 c1 c2 c3) +Debug: +[elpi] + in_elpi_fresh_evar: unknown ?X55 <-> X10 + RAW: +?X41 <-> X0 +?X42 <-> X12 +?X43 <-> X1 +?X44 <-> X14 +?X45 <-> X2 +?X46 <-> X16 +?X47 <-> X3 +?X48 <-> X18 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 +ELAB: +?X41 <-> X0 +?X42 <-> X11 +?X43 <-> X1 +?X44 <-> X13 +?X45 <-> X2 +?X46 <-> X15 +?X47 <-> X3 +?X48 <-> X17 +?X49 <-> X4 +?X50 <-> X5 +?X51 <-> X6 +?X52 <-> X7 +?X53 <-> X8 +?X54 <-> X9 +?X55 <-> X10 + +Debug: [elpi] term2lp: depth=1 ctx= term=?e +Debug: [elpi] in_elpi_evar:?X41 +Debug: [elpi] in_elpi_evar: known ?X41 as X0 +Debug: [elpi] term2lp (out): X0 +Debug: [elpi] term2lp: depth=2 ctx=u : ?e term=?e8 +Debug: [elpi] in_elpi_evar:?X50 +Debug: [elpi] in_elpi_evar: known ?X50 as X5 +Debug: [elpi] term2lp (out): X5 c0 +Debug: [elpi] term2lp: depth=3 ctx=u : ?e K : ?e8 term=?e9 +Debug: [elpi] in_elpi_evar:?X51 +Debug: [elpi] in_elpi_evar: known ?X51 as X6 +Debug: [elpi] term2lp (out): X6 c0 c1 +Debug: [elpi] term2lp: depth=4 ctx=u : ?e K : ?e8 K_S : ?e9 term=?e10 +Debug: [elpi] in_elpi_evar:?X52 +Debug: [elpi] in_elpi_evar: known ?X52 as X7 +Debug: [elpi] term2lp (out): X7 c0 c1 c2 +Debug: +[elpi] + term2lp: depth=5 ctx=u : ?e K : ?e8 K_S : ?e9 _elpi_renamed_u_3 : ?e10 term= + ?e12 +Debug: [elpi] in_elpi_evar:?X54 +Debug: [elpi] in_elpi_evar: known ?X54 as X9 +Debug: [elpi] term2lp (out): X9 c0 c1 c2 c3 +Debug: +[elpi] + term2lp: depth=5 ctx=u : ?e + K : ?e8 + K_S : ?e9 + _elpi_renamed_u_3 : ?e10 + x : ?e12 term=Type +Debug: [elpi] term2lp (out): sort (typ «elpi.tests.test_quotation.39») +Debug: [elpi] in_elpi_evar_concl: moving Ctx down to5 +Debug: +[elpi] + in_elpi_fresh_evar: new decl at depth:0 for ?X55 <-> X10 + pi c0 \ + pi c1 \ + pi c2 \ + pi c3 \ + pi c4 \ + declare-evar + [decl c4 `x` (X9 c0 c1 c2 c3), + decl c3 `_elpi_renamed_u_3` (X7 c0 c1 c2), decl c2 `K_S` (X6 c0 c1), + decl c1 `K` (X5 c0), decl c0 `u` X0] (X10 c0 c1 c2 c3 c4) + (sort (typ «elpi.tests.test_quotation.39»)) (X10 c0 c1 c2 c3 c4) +Debug: +[elpi] + Elpi: query-compilation:0.0066 static-check:0.0000 optimization:0.0002 runtime:0.0655 (with error) + +hd + : forall A : Type, A -> list A -> A +Debug: [elpi] gterm2lp: term=hd +Debug: [elpi] Compiler cache: lookups=8, hits=6 + +Debug: [elpi] Compiler cache: lookups=0, hits=0 + +File "./tests/test_quotation.v", line 32, characters 0-15: Warning: Using Vector.t is known to be technically difficult, see . [warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] -File "./tests/test_API.v", line 74, characters 37-39: -Warning: -File "./tests/test_API.v", line 74, characters 37-39 -MP is linear: name it _MP (discard) or MP_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 82, characters 54-55: -Warning: -File "./tests/test_API.v", line 82, characters 54-55 -A is linear: name it _A (discard) or A_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 83, characters 56-58: -Warning: -File "./tests/test_API.v", line 83, characters 56-58 -MP is linear: name it _MP (discard) or MP_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 92, characters 29-30: -Warning: -File "./tests/test_API.v", line 92, characters 29-30 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 93, characters 29-30: -Warning: -File "./tests/test_API.v", line 93, characters 29-30 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 93, characters 31-32: -Warning: -File "./tests/test_API.v", line 93, characters 31-32 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 94, characters 28-29: -Warning: -File "./tests/test_API.v", line 94, characters 28-29 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 94, characters 30-31: -Warning: -File "./tests/test_API.v", line 94, characters 30-31 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 95, characters 36-37: -Warning: -File "./tests/test_API.v", line 95, characters 36-37 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 95, characters 38-39: -Warning: -File "./tests/test_API.v", line 95, characters 38-39 -Y is linear: name it _Y (discard) or Y_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 95, characters 40-41: -Warning: -File "./tests/test_API.v", line 95, characters 40-41 -Z is linear: name it _Z (discard) or Z_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 96, characters 29-30: -Warning: -File "./tests/test_API.v", line 96, characters 29-30 -X is linear: name it _X (discard) or X_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API.v", line 96, characters 31-32: -Warning: -File "./tests/test_API.v", line 96, characters 31-32 -Y is linear: name it _Y (discard) or Y_ (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: +File "./tests/test_quotation.v", line 47, characters 32-33: Warning: -File "./tests/test_vernacular1.v", line 65, characters 26-27 +File "./tests/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] -hello1 -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 nabla c1 \ seal (goal [decl c1 `P` (sort prop)] (app [global (const «id»), X0, X1]) @@ -18656,7 +20544,7 @@ Debug: rid:0 step:1 gid:4 user:rule:and = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.003s) Debug: run 2 {{{ Debug: @@ -18707,7 +20595,7 @@ Debug: rid:0 step:2 gid:7 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 3 {{{ Debug: @@ -18842,7 +20730,7 @@ Debug: rid:0 step:4 gid:9 user:rule:backchain = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 5 {{{ Debug: @@ -19228,7 +21116,7 @@ Debug: rid:4 step:104 gid:244 user:rule:pi = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 105 {{{ Debug: @@ -19269,7 +21157,7 @@ Debug: rid:4 step:105 gid:244 user:rule:builtin = fail -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 106 {{{ Debug: @@ -19307,7 +21195,7 @@ Debug: rid:4 step:106 gid:157 user:rule:backchain:candidates = File "/build/reproducible-path/coq-elpi-2.4.0/elpi/elpi-ltac.elpi", line 119, column 0, characters 4642-4704: -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: select 52 {{{ Debug: @@ -19391,7 +21279,7 @@ Debug: rid:4 step:106 gid:245 user:rule:backchain = success -Debug: }}} -> (0.001s) +Debug: }}} -> (0.002s) Debug: run 107 {{{ Debug: @@ -19847,7 +21735,7 @@ global (indc «O»)], c4], c3]] = X49 c2 c3 c4 -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 116 {{{ Debug: @@ -19888,7 +21776,7 @@ Debug: rid:4 step:116 gid:253 user:rule:eq = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 117 {{{ Debug: @@ -19978,7 +21866,7 @@ Debug: rid:4 step:119 gid:251 user:rule:builtin = success -Debug: }}} -> (0.000s) +Debug: }}} -> (0.001s) Debug: run 120 {{{ Debug: @@ -20015,36 +21903,58 @@ 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] +test2 test1 str hello -str x +test1 +too many arguments +test1 +str hello my +str Dear test1 too many arguments [attribute elpi.loc (leaf-loc - File "./tests/test_vernacular2.v", line 10, column 24, characters 326-329:), - attribute elpi.phase (leaf-str interp), - attribute fwd_compat_attr (leaf-str )] + 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_vernacular2.v", line 11, column 0, characters 331-354:), - attribute elpi.phase (leaf-str interp), - attribute fwd_compat_attr (leaf-str )] -File "./tests/test_vernacular2.v", line 6, characters 2-17: -Warning: This command does not support this attribute: fwd_compat_attr. -[unsupported-attributes,parsing,default] -File "./tests/test_vernacular2.v", line 7, characters 2-17: -Warning: This command does not support this attribute: fwd_compat_attr. -[unsupported-attributes,parsing,default] -File "./tests/test_vernacular2.v", line 8, characters 2-17: -Warning: This command does not support this attribute: fwd_compat_attr. -[unsupported-attributes,parsing,default] -File "./tests/test_vernacular2.v", line 9, characters 2-17: -Warning: This command does not support this attribute: fwd_compat_attr. -[unsupported-attributes,parsing,default] -File "./tests/test_vernacular2.v", line 10, characters 2-17: -Warning: This command does not support this attribute: fwd_compat_attr. + 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] [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, @@ -20120,2506 +22030,632 @@ p 738, p 739, p 740, p 741, p 742, p 743, p 744, p 745, p 746, p 747, p 748, p 749, p 750, p 751, p 752, p 753, p 754, p 755, p 756, p 757, p 758, p 759, p 760, p 761, p 762, p 763, p 764, p 765, p 766, p 767, - p 768, p 769, p 770, p 771, p 772, p 773, p 774, p 775, p 776, p 777, - p 778, p 779, p 780, p 781, p 782, p 783, p 784, p 785, p 786, p 787, - p 788, p 789, p 790, p 791, p 792, p 793, p 794, p 795, p 796, p 797, - p 798, p 799, p 800, p 801, p 802, p 803, p 804, p 805, p 806, p 807, - p 808, p 809, p 810, p 811, p 812, p 813, p 814, p 815, p 816, p 817, - p 818, p 819, p 820, p 821, p 822, p 823, p 824, p 825, p 826, p 827, - p 828, p 829, p 830, p 831, p 832, p 833, p 834, p 835, p 836, p 837, - p 838, p 839, p 840, p 841, p 842, p 843, p 844, p 845, p 846, p 847, - p 848, p 849, p 850, p 851, p 852, p 853, p 854, p 855, p 856, p 857, - p 858, p 859, p 860, p 861, p 862, p 863, p 864, p 865, p 866, p 867, - p 868, p 869, p 870, p 871, p 872, p 873, p 874, p 875, p 876, p 877, - p 878, p 879, p 880, p 881, p 882, p 883, p 884, p 885, p 886, p 887, - p 888, p 889, p 890, p 891, p 892, p 893, p 894, p 895, p 896, p 897, - p 898, p 899, p 900, p 901, p 902, p 903, p 904, p 905, p 906, p 907, - p 908, p 909, p 910, p 911, p 912, p 913, p 914, p 915, p 916, p 917, - p 918, p 919, p 920, p 921, p 922, p 923, p 924, p 925, p 926, p 927, - p 928, p 929, p 930, p 931, p 932, p 933, p 934, p 935, p 936, p 937, - p 938, p 939, p 940, p 941, p 942, p 943, p 944, p 945, p 946, p 947, - p 948, p 949, p 950, p 951, p 952, p 953, p 954, p 955, p 956, p 957, - p 958, p 959, p 960, p 961, p 962, p 963, p 964, p 965, p 966, p 967, - p 968, p 969, p 970, p 971, p 972, p 973, p 974, p 975, p 976, p 977, - p 978, p 979, p 980, p 981, p 982, p 983, p 984, p 985, p 986, p 987, - p 988, p 989, p 990, p 991, p 992, p 993, p 994, p 995, p 996, p 997, - p 998, p 999, p 1000, p 1001, p 1002, p 1003, p 1004, p 1005, p 1006, - p 1007, p 1008, p 1009, p 1010, p 1011, p 1012, p 1013, p 1014, p 1015, - p 1016, p 1017, p 1018, p 1019, p 1020, p 1021, p 1022, p 1023, p 1024, - p 1025, p 1026, p 1027, p 1028, p 1029, p 1030, p 1031, p 1032, p 1033, - p 1034, p 1035, p 1036, p 1037, p 1038, p 1039, p 1040, p 1041, p 1042, - p 1043, p 1044, p 1045, p 1046, p 1047, p 1048, p 1049, p 1050, p 1051, - p 1052, p 1053, p 1054, p 1055, p 1056, p 1057, p 1058, p 1059, p 1060, - p 1061, p 1062, p 1063, p 1064, p 1065, p 1066, p 1067, p 1068, p 1069, - p 1070, p 1071, p 1072, p 1073, p 1074, p 1075, p 1076, p 1077, p 1078, - p 1079, p 1080, p 1081, p 1082, p 1083, p 1084, p 1085, p 1086, p 1087, - p 1088, p 1089, p 1090, p 1091, p 1092, p 1093, p 1094, p 1095, p 1096, - p 1097, p 1098, p 1099, p 1100, p 1101, p 1102, p 1103, p 1104, p 1105, - p 1106, p 1107, p 1108, p 1109, p 1110, p 1111, p 1112, p 1113, p 1114, - p 1115, p 1116, p 1117, p 1118, p 1119, p 1120, p 1121, p 1122, p 1123, - p 1124, p 1125, p 1126, p 1127, p 1128, p 1129, p 1130, p 1131, p 1132, - p 1133, p 1134, p 1135, p 1136, p 1137, p 1138, p 1139, p 1140, p 1141, - p 1142, p 1143, p 1144, p 1145, p 1146, p 1147, p 1148, p 1149, p 1150, - p 1151, p 1152, p 1153, p 1154, p 1155, p 1156, p 1157, p 1158, p 1159, - p 1160, p 1161, p 1162, p 1163, p 1164, p 1165, p 1166, p 1167, p 1168, - p 1169, p 1170, p 1171, p 1172, p 1173, p 1174, p 1175, p 1176, p 1177, - p 1178, p 1179, p 1180, p 1181, p 1182, p 1183, p 1184, p 1185, p 1186, - p 1187, p 1188, p 1189, p 1190, p 1191, p 1192, p 1193, p 1194, p 1195, - p 1196, p 1197, p 1198, p 1199, p 1200, p 1201, p 1202, p 1203, p 1204, - p 1205, p 1206, p 1207, p 1208, p 1209, p 1210, p 1211, p 1212, p 1213, - p 1214, p 1215, p 1216, p 1217, p 1218, p 1219, p 1220, p 1221, p 1222, - p 1223, p 1224, p 1225, p 1226, p 1227, p 1228, p 1229, p 1230, p 1231, - p 1232, p 1233, p 1234, p 1235, p 1236, p 1237, p 1238, p 1239, p 1240, - p 1241, p 1242, p 1243, p 1244, p 1245, p 1246, p 1247, p 1248, p 1249, - p 1250, p 1251, p 1252, p 1253, p 1254, p 1255, p 1256, p 1257, p 1258, - p 1259, p 1260, p 1261, p 1262, p 1263, p 1264, p 1265, p 1266, p 1267, - p 1268, p 1269, p 1270, p 1271, p 1272, p 1273, p 1274, p 1275, p 1276, - p 1277, p 1278, p 1279, p 1280, p 1281, p 1282, p 1283, p 1284, p 1285, - p 1286, p 1287, p 1288, p 1289, p 1290, p 1291, p 1292, p 1293, p 1294, - p 1295, p 1296, p 1297, p 1298, p 1299, p 1300, p 1301, p 1302, p 1303, - p 1304, p 1305, p 1306, p 1307, p 1308, p 1309, p 1310, p 1311, p 1312, - p 1313, p 1314, p 1315, p 1316, p 1317, p 1318, p 1319, p 1320, p 1321, - p 1322, p 1323, p 1324, p 1325, p 1326, p 1327, p 1328, p 1329, p 1330, - p 1331, p 1332, p 1333, p 1334, p 1335, p 1336, p 1337, p 1338, p 1339, - p 1340, p 1341, p 1342, p 1343, p 1344, p 1345, p 1346, p 1347, p 1348, - p 1349, p 1350, p 1351, p 1352, p 1353, p 1354, p 1355, p 1356, p 1357, - p 1358, p 1359, p 1360, p 1361, p 1362, p 1363, p 1364, p 1365, p 1366, - p 1367, p 1368, p 1369, p 1370, p 1371, p 1372, p 1373, p 1374, p 1375, - p 1376, p 1377, p 1378, p 1379, p 1380, p 1381, p 1382, p 1383, p 1384, - p 1385, p 1386, p 1387, p 1388, p 1389, p 1390, p 1391, p 1392, p 1393, - p 1394, p 1395, p 1396, p 1397, p 1398, p 1399, p 1400, p 1401, p 1402, - p 1403, p 1404, p 1405, p 1406, p 1407, p 1408, p 1409, p 1410, p 1411, - p 1412, p 1413, p 1414, p 1415, p 1416, p 1417, p 1418, p 1419, p 1420, - p 1421, p 1422, p 1423, p 1424, p 1425, p 1426, p 1427, p 1428, p 1429, - p 1430, p 1431, p 1432, p 1433, p 1434, p 1435, p 1436, p 1437, p 1438, - p 1439, p 1440, p 1441, p 1442, p 1443, p 1444, p 1445, p 1446, p 1447, - p 1448, p 1449, p 1450, p 1451, p 1452, p 1453, p 1454, p 1455, p 1456, - p 1457, p 1458, p 1459, p 1460, p 1461, p 1462, p 1463, p 1464, p 1465, - p 1466, p 1467, p 1468, p 1469, p 1470, p 1471, p 1472, p 1473, p 1474, - p 1475, p 1476, p 1477, p 1478, p 1479, p 1480, p 1481, p 1482, p 1483, - p 1484, p 1485, p 1486, p 1487, p 1488, p 1489, p 1490, p 1491, p 1492, - p 1493, p 1494, p 1495, p 1496, p 1497, p 1498, p 1499, p 1500, p 1501, - p 1502, p 1503, p 1504, p 1505, p 1506, p 1507, p 1508, p 1509, p 1510, - p 1511, p 1512, p 1513, p 1514, p 1515, p 1516, p 1517, p 1518, p 1519, - p 1520, p 1521, p 1522, p 1523, p 1524, p 1525, p 1526, p 1527, p 1528, - p 1529, p 1530, p 1531, p 1532, p 1533, p 1534, p 1535, p 1536, p 1537, - p 1538, p 1539, p 1540, p 1541, p 1542, p 1543, p 1544, p 1545, p 1546, - p 1547, p 1548, p 1549, p 1550, p 1551, p 1552, p 1553, p 1554, p 1555, - p 1556, p 1557, p 1558, p 1559, p 1560, p 1561, p 1562, p 1563, p 1564, - p 1565, p 1566, p 1567, p 1568, p 1569, p 1570, p 1571, p 1572, p 1573, - p 1574, p 1575, p 1576, p 1577, p 1578, p 1579, p 1580, p 1581, p 1582, - p 1583, p 1584, p 1585, p 1586, p 1587, p 1588, p 1589, p 1590, p 1591, - p 1592, p 1593, p 1594, p 1595, p 1596, p 1597, p 1598, p 1599, p 1600, - p 1601, p 1602, p 1603, p 1604, p 1605, p 1606, p 1607, p 1608, p 1609, - p 1610, p 1611, p 1612, p 1613, p 1614, p 1615, p 1616, p 1617, p 1618, - p 1619, p 1620, p 1621, p 1622, p 1623, p 1624, p 1625, p 1626, p 1627, - p 1628, p 1629, p 1630, p 1631, p 1632, p 1633, p 1634, p 1635, p 1636, - p 1637, p 1638, p 1639, p 1640, p 1641, p 1642, p 1643, p 1644, p 1645, - p 1646, p 1647, p 1648, p 1649, p 1650, p 1651, p 1652, p 1653, p 1654, - p 1655, p 1656, p 1657, p 1658, p 1659, p 1660, p 1661, p 1662, p 1663, - p 1664, p 1665, p 1666, p 1667, p 1668, p 1669, p 1670, p 1671, p 1672, - p 1673, p 1674, p 1675, p 1676, p 1677, p 1678, p 1679, p 1680, p 1681, - p 1682, p 1683, p 1684, p 1685, p 1686, p 1687, p 1688, p 1689, p 1690, - p 1691, p 1692, p 1693, p 1694, p 1695, p 1696, p 1697, p 1698, p 1699, - p 1700, p 1701, p 1702, p 1703, p 1704, p 1705, p 1706, p 1707, p 1708, - p 1709, p 1710, p 1711, p 1712, p 1713, p 1714, p 1715, p 1716, p 1717, - p 1718, p 1719, p 1720, p 1721, p 1722, p 1723, p 1724, p 1725, p 1726, - p 1727, p 1728, p 1729, p 1730, p 1731, p 1732, p 1733, p 1734, p 1735, - p 1736, p 1737, p 1738, p 1739, p 1740, p 1741, p 1742, p 1743, p 1744, - p 1745, p 1746, p 1747, p 1748, p 1749, p 1750, p 1751, p 1752, p 1753, - p 1754, p 1755, p 1756, p 1757, p 1758, p 1759, p 1760, p 1761, p 1762, - p 1763, p 1764, p 1765, p 1766, p 1767, p 1768, p 1769, p 1770, p 1771, - p 1772, p 1773, p 1774, p 1775, p 1776, p 1777, p 1778, p 1779, p 1780, - p 1781, p 1782, p 1783, p 1784, p 1785, p 1786, p 1787, p 1788, p 1789, - p 1790, p 1791, p 1792, p 1793, p 1794, p 1795, p 1796, p 1797, p 1798, - p 1799, p 1800, p 1801, p 1802, p 1803, p 1804, p 1805, p 1806, p 1807, - p 1808, p 1809, p 1810, p 1811, p 1812, p 1813, p 1814, p 1815, p 1816, - p 1817, p 1818, p 1819, p 1820, p 1821, p 1822, p 1823, p 1824, p 1825, - p 1826, p 1827, p 1828, p 1829, p 1830, p 1831, p 1832, p 1833, p 1834, - p 1835, p 1836, p 1837, p 1838, p 1839, p 1840, p 1841, p 1842, p 1843, - p 1844, p 1845, p 1846, p 1847, p 1848, p 1849, p 1850, p 1851, p 1852, - p 1853, p 1854, p 1855, p 1856, p 1857, p 1858, p 1859, p 1860, p 1861, - p 1862, p 1863, p 1864, p 1865, p 1866, p 1867, p 1868, p 1869, p 1870, - p 1871, p 1872, p 1873, p 1874, p 1875, p 1876, p 1877, p 1878, p 1879, - p 1880, p 1881, p 1882, p 1883, p 1884, p 1885, p 1886, p 1887, p 1888, - p 1889, p 1890, p 1891, p 1892, p 1893, p 1894, p 1895, p 1896, p 1897, - p 1898, p 1899, p 1900, p 1901, p 1902, p 1903, p 1904, p 1905, p 1906, - p 1907, p 1908, p 1909, p 1910, p 1911, p 1912, p 1913, p 1914, p 1915, - p 1916, p 1917, p 1918, p 1919, p 1920, p 1921, p 1922, p 1923, p 1924, - p 1925, p 1926, p 1927, p 1928, p 1929, p 1930, p 1931, p 1932, p 1933, - p 1934, p 1935, p 1936, p 1937, p 1938, p 1939, p 1940, p 1941, p 1942, - p 1943, p 1944, p 1945, p 1946, p 1947, p 1948, p 1949, p 1950, p 1951, - p 1952, p 1953, p 1954, p 1955, p 1956, p 1957, p 1958, p 1959, p 1960, - p 1961, p 1962, p 1963, p 1964, p 1965, p 1966, p 1967, p 1968, p 1969, - p 1970, p 1971, p 1972, p 1973, p 1974, p 1975, p 1976, p 1977, p 1978, - p 1979, p 1980, p 1981, p 1982, p 1983, p 1984, p 1985, p 1986, p 1987, - p 1988, p 1989, p 1990, p 1991, p 1992, p 1993, p 1994, p 1995, p 1996, - p 1997, p 1998, p 1999, p 2000, p 2001, p 2002, p 2003, p 2004, p 2005, - p 2006, p 2007, p 2008, p 2009, p 2010, p 2011, p 2012, p 2013, p 2014, - p 2015, p 2016, p 2017, p 2018, p 2019, p 2020, p 2021, p 2022, p 2023, - p 2024, p 2025, p 2026, p 2027, p 2028, p 2029, p 2030, p 2031, p 2032, - p 2033, p 2034, p 2035, p 2036, p 2037, p 2038, p 2039, p 2040, p 2041, - p 2042, p 2043, p 2044, p 2045, p 2046, p 2047, p 2048, p 2049, p 2050, - p 2051, p 2052, p 2053, p 2054, p 2055, p 2056, p 2057, p 2058, p 2059, - p 2060, p 2061, p 2062, p 2063, p 2064, p 2065, p 2066, p 2067, p 2068, - p 2069, p 2070, p 2071, p 2072, p 2073, p 2074, p 2075, p 2076, p 2077, - p 2078, p 2079, p 2080, p 2081, p 2082, p 2083, p 2084, p 2085, p 2086, - p 2087, p 2088, p 2089, p 2090, p 2091, p 2092, p 2093, p 2094, p 2095, - p 2096, p 2097, p 2098, p 2099, p 2100, p 2101, p 2102, p 2103, p 2104, - p 2105, p 2106, p 2107, p 2108, p 2109, p 2110, p 2111, p 2112, p 2113, - p 2114, p 2115, p 2116, p 2117, p 2118, p 2119, p 2120, p 2121, p 2122, - p 2123, p 2124, p 2125, p 2126, p 2127, p 2128, p 2129, p 2130, p 2131, - p 2132, p 2133, p 2134, p 2135, p 2136, p 2137, p 2138, p 2139, p 2140, - p 2141, p 2142, p 2143, p 2144, p 2145, p 2146, p 2147, p 2148, p 2149, - p 2150, p 2151, p 2152, p 2153, p 2154, p 2155, p 2156, p 2157, p 2158, - p 2159, p 2160, p 2161, p 2162, p 2163, p 2164, p 2165, p 2166, p 2167, - p 2168, p 2169, p 2170, p 2171, p 2172, p 2173, p 2174, p 2175, p 2176, - p 2177, p 2178, p 2179, p 2180, p 2181, p 2182, p 2183, p 2184, p 2185, - p 2186, p 2187, p 2188, p 2189, p 2190, p 2191, p 2192, p 2193, p 2194, - p 2195, p 2196, p 2197, p 2198, p 2199, p 2200, p 2201, p 2202, p 2203, - p 2204, p 2205, p 2206, p 2207, p 2208, p 2209, p 2210, p 2211, p 2212, - p 2213, p 2214, p 2215, p 2216, p 2217, p 2218, p 2219, p 2220, p 2221, - p 2222, p 2223, p 2224, p 2225, p 2226, p 2227, p 2228, p 2229, p 2230, - p 2231, p 2232, p 2233, p 2234, p 2235, p 2236, p 2237, p 2238, p 2239, - p 2240, p 2241, p 2242, p 2243, p 2244, p 2245, p 2246, p 2247, p 2248, - p 2249, p 2250, p 2251, p 2252, p 2253, p 2254, p 2255, p 2256, p 2257, - p 2258, p 2259, p 2260, p 2261, p 2262, p 2263, p 2264, p 2265, p 2266, - p 2267, p 2268, p 2269, p 2270, p 2271, p 2272, p 2273, p 2274, p 2275, - p 2276, p 2277, p 2278, p 2279, p 2280, p 2281, p 2282, p 2283, p 2284, - p 2285, p 2286, p 2287, p 2288, p 2289, p 2290, p 2291, p 2292, p 2293, - p 2294, p 2295, p 2296, p 2297, p 2298, p 2299, p 2300, p 2301, p 2302, - p 2303, p 2304, p 2305, p 2306, p 2307, p 2308, p 2309, p 2310, p 2311, - p 2312, p 2313, p 2314, p 2315, p 2316, p 2317, p 2318, p 2319, p 2320, - p 2321, p 2322, p 2323, p 2324, p 2325, p 2326, p 2327, p 2328, p 2329, - p 2330, p 2331, p 2332, p 2333, p 2334, p 2335, p 2336, p 2337, p 2338, - p 2339, p 2340, p 2341, p 2342, p 2343, p 2344, p 2345, p 2346, p 2347, - p 2348, p 2349, p 2350, p 2351, p 2352, p 2353, p 2354, p 2355, p 2356, - p 2357, p 2358, p 2359, p 2360, p 2361, p 2362, p 2363, p 2364, p 2365, - p 2366, p 2367, p 2368, p 2369, p 2370, p 2371, p 2372, p 2373, p 2374, - p 2375, p 2376, p 2377, p 2378, p 2379, p 2380, p 2381, p 2382, p 2383, - p 2384, p 2385, p 2386, p 2387, p 2388, p 2389, p 2390, p 2391, p 2392, - p 2393, p 2394, p 2395, p 2396, p 2397, p 2398, p 2399, p 2400, p 2401, - p 2402, p 2403, p 2404, p 2405, p 2406, p 2407, p 2408, p 2409, p 2410, - p 2411, p 2412, p 2413, p 2414, p 2415, p 2416, p 2417, p 2418, p 2419, - p 2420, p 2421, p 2422, p 2423, p 2424, p 2425, p 2426, p 2427, p 2428, - p 2429, p 2430, p 2431, p 2432, p 2433, p 2434, p 2435, p 2436, p 2437, - p 2438, p 2439, p 2440, p 2441, p 2442, p 2443, p 2444, p 2445, p 2446, - p 2447, p 2448, p 2449, p 2450, p 2451, p 2452, p 2453, p 2454, p 2455, - p 2456, p 2457, p 2458, p 2459, p 2460, p 2461, p 2462, p 2463, p 2464, - p 2465, p 2466, p 2467, p 2468, p 2469, p 2470, p 2471, p 2472, p 2473, - p 2474, p 2475, p 2476, p 2477, p 2478, p 2479, p 2480, p 2481, p 2482, - p 2483, p 2484, p 2485, p 2486, p 2487, p 2488, p 2489, p 2490, p 2491, - p 2492, p 2493, p 2494, p 2495, p 2496, p 2497, p 2498, p 2499, p 2500, - p 2501, p 2502, p 2503, p 2504, p 2505, p 2506, p 2507, p 2508, p 2509, - p 2510, p 2511, p 2512, p 2513, p 2514, p 2515, p 2516, p 2517, p 2518, - p 2519, p 2520, p 2521, p 2522, p 2523, p 2524, p 2525, p 2526, p 2527, - p 2528, p 2529, p 2530, p 2531, p 2532, p 2533, p 2534, p 2535, p 2536, - p 2537, p 2538, p 2539, p 2540, p 2541, p 2542, p 2543, p 2544, p 2545, - p 2546, p 2547, p 2548, p 2549, p 2550, p 2551, p 2552, p 2553, p 2554, - p 2555, p 2556, p 2557, p 2558, p 2559, p 2560, p 2561, p 2562, p 2563, - p 2564, p 2565, p 2566, p 2567, p 2568, p 2569, p 2570, p 2571, p 2572, - p 2573, p 2574, p 2575, p 2576, p 2577, p 2578, p 2579, p 2580, p 2581, - p 2582, p 2583, p 2584, p 2585, p 2586, p 2587, p 2588, p 2589, p 2590, - p 2591, p 2592, p 2593, p 2594, p 2595, p 2596, p 2597, p 2598, p 2599, - p 2600, p 2601, p 2602, p 2603, p 2604, p 2605, p 2606, p 2607, p 2608, - p 2609, p 2610, p 2611, p 2612, p 2613, p 2614, p 2615, p 2616, p 2617, - p 2618, p 2619, p 2620, p 2621, p 2622, p 2623, p 2624, p 2625, p 2626, - p 2627, p 2628, p 2629, p 2630, p 2631, p 2632, p 2633, p 2634, p 2635, - p 2636, p 2637, p 2638, p 2639, p 2640, p 2641, p 2642, p 2643, p 2644, - p 2645, p 2646, p 2647, p 2648, p 2649, p 2650, p 2651, p 2652, p 2653, - p 2654, p 2655, p 2656, p 2657, p 2658, p 2659, p 2660, p 2661, p 2662, - p 2663, p 2664, p 2665, p 2666, p 2667, p 2668, p 2669, p 2670, p 2671, - p 2672, p 2673, p 2674, p 2675, p 2676, p 2677, p 2678, p 2679, p 2680, - p 2681, p 2682, p 2683, p 2684, p 2685, p 2686, p 2687, p 2688, p 2689, - p 2690, p 2691, p 2692, p 2693, p 2694, p 2695, p 2696, p 2697, p 2698, - p 2699, p 2700, p 2701, p 2702, p 2703, p 2704, p 2705, p 2706, p 2707, - p 2708, p 2709, p 2710, p 2711, p 2712, p 2713, p 2714, p 2715, p 2716, - p 2717, p 2718, p 2719, p 2720, p 2721, p 2722, p 2723, p 2724, p 2725, - p 2726, p 2727, p 2728, p 2729, p 2730, p 2731, p 2732, p 2733, p 2734, - p 2735, p 2736, p 2737, p 2738, p 2739, p 2740, p 2741, p 2742, p 2743, - p 2744, p 2745, p 2746, p 2747, p 2748, p 2749, p 2750, p 2751, p 2752, - p 2753, p 2754, p 2755, p 2756, p 2757, p 2758, p 2759, p 2760, p 2761, - p 2762, p 2763, p 2764, p 2765, p 2766, p 2767, p 2768, p 2769, p 2770, - p 2771, p 2772, p 2773, p 2774, p 2775, p 2776, p 2777, p 2778, p 2779, - p 2780, p 2781, p 2782, p 2783, p 2784, p 2785, p 2786, p 2787, p 2788, - p 2789, p 2790, p 2791, p 2792, p 2793, p 2794, p 2795, p 2796, p 2797, - p 2798, p 2799, p 2800, p 2801, p 2802, p 2803, p 2804, p 2805, p 2806, - p 2807, p 2808, p 2809, p 2810, p 2811, p 2812, p 2813, p 2814, p 2815, - p 2816, p 2817, p 2818, p 2819, p 2820, p 2821, p 2822, p 2823, p 2824, - p 2825, p 2826, p 2827, p 2828, p 2829, p 2830, p 2831, p 2832, p 2833, - p 2834, p 2835, p 2836, p 2837, p 2838, p 2839, p 2840, p 2841, p 2842, - p 2843, p 2844, p 2845, p 2846, p 2847, p 2848, p 2849, p 2850, p 2851, - p 2852, p 2853, p 2854, p 2855, p 2856, p 2857, p 2858, p 2859, p 2860, - p 2861, p 2862, p 2863, p 2864, p 2865, p 2866, p 2867, p 2868, p 2869, - p 2870, p 2871, p 2872, p 2873, p 2874, p 2875, p 2876, p 2877, p 2878, - p 2879, p 2880, p 2881, p 2882, p 2883, p 2884, p 2885, p 2886, p 2887, - p 2888, p 2889, p 2890, p 2891, p 2892, p 2893, p 2894, p 2895, p 2896, - p 2897, p 2898, p 2899, p 2900, p 2901, p 2902, p 2903, p 2904, p 2905, - p 2906, p 2907, p 2908, p 2909, p 2910, p 2911, p 2912, p 2913, p 2914, - p 2915, p 2916, p 2917, p 2918, p 2919, p 2920, p 2921, p 2922, p 2923, - p 2924, p 2925, p 2926, p 2927, p 2928, p 2929, p 2930, p 2931, p 2932, - p 2933, p 2934, p 2935, p 2936, p 2937, p 2938, p 2939, p 2940, p 2941, - p 2942, p 2943, p 2944, p 2945, p 2946, p 2947, p 2948, p 2949, p 2950, - p 2951, p 2952, p 2953, p 2954, p 2955, p 2956, p 2957, p 2958, p 2959, - p 2960, p 2961, p 2962, p 2963, p 2964, p 2965, p 2966, p 2967, p 2968, - p 2969, p 2970, p 2971, p 2972, p 2973, p 2974, p 2975, p 2976, p 2977, - p 2978, p 2979, p 2980, p 2981, p 2982, p 2983, p 2984, p 2985, p 2986, - p 2987, p 2988, p 2989, p 2990, p 2991, p 2992, p 2993, p 2994, p 2995, - p 2996, p 2997, p 2998, p 2999, p 3000, p 3001, p 3002, p 3003, p 3004, - p 3005, p 3006, p 3007, p 3008, p 3009, p 3010, p 3011, p 3012, p 3013, - p 3014, p 3015, p 3016, p 3017, p 3018, p 3019, p 3020, p 3021, p 3022, - p 3023, p 3024, p 3025, p 3026, p 3027, p 3028, p 3029, p 3030, p 3031, - p 3032, p 3033, p 3034, p 3035, p 3036, p 3037, p 3038, p 3039, p 3040, - p 3041, p 3042, p 3043, p 3044, p 3045, p 3046, p 3047, p 3048, p 3049, - p 3050, p 3051, p 3052, p 3053, p 3054, p 3055, p 3056, p 3057, p 3058, - p 3059, p 3060, p 3061, p 3062, p 3063, p 3064, p 3065, p 3066, p 3067, - p 3068, p 3069, p 3070, p 3071, p 3072, p 3073, p 3074, p 3075, p 3076, - p 3077, p 3078, p 3079, p 3080, p 3081, p 3082, p 3083, p 3084, p 3085, - p 3086, p 3087, p 3088, p 3089, p 3090, p 3091, p 3092, p 3093, p 3094, - p 3095, p 3096, p 3097, p 3098, p 3099, p 3100, p 3101, p 3102, p 3103, - p 3104, p 3105, p 3106, p 3107, p 3108, p 3109, p 3110, p 3111, p 3112, - p 3113, p 3114, p 3115, p 3116, p 3117, p 3118, p 3119, p 3120, p 3121, - p 3122, p 3123, p 3124, p 3125, p 3126, p 3127, p 3128, p 3129, p 3130, - p 3131, p 3132, p 3133, p 3134, p 3135, p 3136, p 3137, p 3138, p 3139, - p 3140, p 3141, p 3142, p 3143, p 3144, p 3145, p 3146, p 3147, p 3148, - p 3149, p 3150, p 3151, p 3152, p 3153, p 3154, p 3155, p 3156, p 3157, - p 3158, p 3159, p 3160, p 3161, p 3162, p 3163, p 3164, p 3165, p 3166, - p 3167, p 3168, p 3169, p 3170, p 3171, p 3172, p 3173, p 3174, p 3175, - p 3176, p 3177, p 3178, p 3179, p 3180, p 3181, p 3182, p 3183, p 3184, - p 3185, p 3186, p 3187, p 3188, p 3189, p 3190, p 3191, p 3192, p 3193, - p 3194, p 3195, p 3196, p 3197, p 3198, p 3199, p 3200, p 3201, p 3202, - p 3203, p 3204, p 3205, p 3206, p 3207, p 3208, p 3209, p 3210, p 3211, - p 3212, p 3213, p 3214, p 3215, p 3216, p 3217, p 3218, p 3219, p 3220, - p 3221, p 3222, p 3223, p 3224, p 3225, p 3226, p 3227, p 3228, p 3229, - p 3230, p 3231, p 3232, p 3233, p 3234, p 3235, p 3236, p 3237, p 3238, - p 3239, p 3240, p 3241, p 3242, p 3243, p 3244, p 3245, p 3246, p 3247, - p 3248, p 3249, p 3250, p 3251, p 3252, p 3253, p 3254, p 3255, p 3256, - p 3257, p 3258, p 3259, p 3260, p 3261, p 3262, p 3263, p 3264, p 3265, - p 3266, p 3267, p 3268, p 3269, p 3270, p 3271, p 3272, p 3273, p 3274, - p 3275, p 3276, p 3277, p 3278, p 3279, p 3280, p 3281, p 3282, p 3283, - p 3284, p 3285, p 3286, p 3287, p 3288, p 3289, p 3290, p 3291, p 3292, - p 3293, p 3294, p 3295, p 3296, p 3297, p 3298, p 3299, p 3300, p 3301, - p 3302, p 3303, p 3304, p 3305, p 3306, p 3307, p 3308, p 3309, p 3310, - p 3311, p 3312, p 3313, p 3314, p 3315, p 3316, p 3317, p 3318, p 3319, - p 3320, p 3321, p 3322, p 3323, p 3324, p 3325, p 3326, p 3327, p 3328, - p 3329, p 3330, p 3331, p 3332, p 3333, p 3334, p 3335, p 3336, p 3337, - p 3338, p 3339, p 3340, p 3341, p 3342, p 3343, p 3344, p 3345, p 3346, - p 3347, p 3348, p 3349, p 3350, p 3351, p 3352, p 3353, p 3354, p 3355, - p 3356, p 3357, p 3358, p 3359, p 3360, p 3361, p 3362, p 3363, p 3364, - p 3365, p 3366, p 3367, p 3368, p 3369, p 3370, p 3371, p 3372, p 3373, - p 3374, p 3375, p 3376, p 3377, p 3378, p 3379, p 3380, p 3381, p 3382, - p 3383, p 3384, p 3385, p 3386, p 3387, p 3388, p 3389, p 3390, p 3391, - p 3392, p 3393, p 3394, p 3395, p 3396, p 3397, p 3398, p 3399, p 3400, - p 3401, p 3402, p 3403, p 3404, p 3405, p 3406, p 3407, p 3408, p 3409, - p 3410, p 3411, p 3412, p 3413, p 3414, p 3415, p 3416, p 3417, p 3418, - p 3419, p 3420, p 3421, p 3422, p 3423, p 3424, p 3425, p 3426, p 3427, - p 3428, p 3429, p 3430, p 3431, p 3432, p 3433, p 3434, p 3435, p 3436, - p 3437, p 3438, p 3439, p 3440, p 3441, p 3442, p 3443, p 3444, p 3445, - p 3446, p 3447, p 3448, p 3449, p 3450, p 3451, p 3452, p 3453, p 3454, - p 3455, p 3456, p 3457, p 3458, p 3459, p 3460, p 3461, p 3462, p 3463, - p 3464, p 3465, p 3466, p 3467, p 3468, p 3469, p 3470, p 3471, p 3472, - p 3473, p 3474, p 3475, p 3476, p 3477, p 3478, p 3479, p 3480, p 3481, - p 3482, p 3483, p 3484, p 3485, p 3486, p 3487, p 3488, p 3489, p 3490, - p 3491, p 3492, p 3493, p 3494, p 3495, p 3496, p 3497, p 3498, p 3499, - p 3500, p 3501, p 3502, p 3503, p 3504, p 3505, p 3506, p 3507, p 3508, - p 3509, p 3510, p 3511, p 3512, p 3513, p 3514, p 3515, p 3516, p 3517, - p 3518, p 3519, p 3520, p 3521, p 3522, p 3523, p 3524, p 3525, p 3526, - p 3527, p 3528, p 3529, p 3530, p 3531, p 3532, p 3533, p 3534, p 3535, - p 3536, p 3537, p 3538, p 3539, p 3540, p 3541, p 3542, p 3543, p 3544, - p 3545, p 3546, p 3547, p 3548, p 3549, p 3550, p 3551, p 3552, p 3553, - p 3554, p 3555, p 3556, p 3557, p 3558, p 3559, p 3560, p 3561, p 3562, - p 3563, p 3564, p 3565, p 3566, p 3567, p 3568, p 3569, p 3570, p 3571, - p 3572, p 3573, p 3574, p 3575, p 3576, p 3577, p 3578, p 3579, p 3580, - p 3581, p 3582, p 3583, p 3584, p 3585, p 3586, p 3587, p 3588, p 3589, - p 3590, p 3591, p 3592, p 3593, p 3594, p 3595, p 3596, p 3597, p 3598, - p 3599, p 3600, p 3601, p 3602, p 3603, p 3604, p 3605, p 3606, p 3607, - p 3608, p 3609, p 3610, p 3611, p 3612, p 3613, p 3614, p 3615, p 3616, - p 3617, p 3618, p 3619, p 3620, p 3621, p 3622, p 3623, p 3624, p 3625, - p 3626, p 3627, p 3628, p 3629, p 3630, p 3631, p 3632, p 3633, p 3634, - p 3635, p 3636, p 3637, p 3638, p 3639, p 3640, p 3641, p 3642, p 3643, - p 3644, p 3645, p 3646, p 3647, p 3648, p 3649, p 3650, p 3651, p 3652, - p 3653, p 3654, p 3655, p 3656, p 3657, p 3658, p 3659, p 3660, p 3661, - p 3662, p 3663, p 3664, p 3665, p 3666, p 3667, p 3668, p 3669, p 3670, - p 3671, p 3672, p 3673, p 3674, p 3675, p 3676, p 3677, p 3678, p 3679, - p 3680, p 3681, p 3682, p 3683, p 3684, p 3685, p 3686, p 3687, p 3688, - p 3689, p 3690, p 3691, p 3692, p 3693, p 3694, p 3695, p 3696, p 3697, - p 3698, p 3699, p 3700, p 3701, p 3702, p 3703, p 3704, p 3705, p 3706, - p 3707, p 3708, p 3709, p 3710] -Query assignments: - X1 = «x1» - X2 = «x2» - X3 = «x3» -Query assignments: - M = [[mode-ground], [mode-input]] -1 -1 -1.000000 -1.2 -Query assignments: - C1 = «Nat.add» - C2 = «times» - X1 = tt - X2 = ff -Query assignments: - C1 = «x» -Query assignments: - XX = «elpi.tests.test_API2.xx» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx» -Query assignments: - XX = «elpi.tests.test_API2.xx2» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx2» -Query assignments: - C1 = «x» - M = «elpi.tests.test_API2.xx3» -Query assignments: - X1_ = X0 - X2_ = X1 -Syntactic constraints: - evar (X1) (X2) (X1) /* suspended on X1 */ - evar X3 (sort (typ «elpi.tests.test_API2.6»)) (X2) /* suspended on X3, X2 */ - evar (X0) (X4) (X0) /* suspended on X0 */ - evar X5 (sort (typ «elpi.tests.test_API2.5»)) (X4) /* suspended on X5, X4 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.6 elpi.tests.test_API2.5} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α4 - α5 -WEAK CONSTRAINTS: - - -Non-discriminated database -Unfoldable variable definitions: all -Unfoldable constant definitions: all -Unfoldable projection definitions: all -Cut: emp -For any goal -> -For xeq -> exact xxx(level 0, pattern 0 = _, id 0) - -Query assignments: - X3_ = «elpi.tests.test_API2.7» -Universe constraints: -UNIVERSES: - -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API2.7} -FLEXIBLE UNIVERSES: - elpi.tests.test_API2.7 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - %arg1 = «elpi.tests.test_API2.T» -Query assignments: - GR = const const EXN PRINTING: Not_found -Query assignments: - %arg1 = «elpi.tests.test_API2.F» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.G» -Query assignments: - G = «elpi.tests.test_API2.G» -Module G : Sig Definition id : X.T -> X.T. End := (F X) -Query assignments: - %arg1 = «elpi.tests.test_API2.F» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.H» -Query assignments: - H = «elpi.tests.test_API2.H» -Module H : Sig Definition id : nat -> nat. End := (F X) -Query assignments: - %arg1 = «elpi.tests.test_API2.T» -Query assignments: - GR = const const EXN PRINTING: Not_found -Module Type FT = Funsig (P:T) Sig Parameter idT : P.T -> P.T. End -Query assignments: - %arg1 = «elpi.tests.test_API2.FT» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.GT» -Query assignments: - G = «elpi.tests.test_API2.GT» -Module Type GT = Sig Parameter idT : X.T -> X.T. End -Query assignments: - %arg1 = «elpi.tests.test_API2.FT» - %arg2 = «elpi.tests.test_API2.X» -«elpi.tests.test_API2.HT» -Query assignments: - H = «elpi.tests.test_API2.HT» -Module Type HT = Sig Parameter idT : nat -> nat. End -Query assignments: - L = [«elpi.tests.test_API2.8», «elpi.tests.test_API2.9»] - S = {{ elpi.tests.test_API2.8; elpi.tests.test_API2.9; }} - U = «elpi.tests.test_API2.8» - UV = «elpi.tests.test_API2.8» - V = «elpi.tests.test_API2.9» - VV = «elpi.tests.test_API2.9» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.9 elpi.tests.test_API2.8} |= -ALGEBRAIC UNIVERSES: - {elpi.tests.test_API2.9 elpi.tests.test_API2.8} -FLEXIBLE UNIVERSES: - elpi.tests.test_API2.9 - elpi.tests.test_API2.8 -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - X10_ = c0 \ -X0 c0 - X11_ = X1 - X12_ = c0 \ -X0 c0 - X13_ = X2 - X14_ = c0 \ -X3 c0 - X15_ = c0 \ c1 \ -X4 c0 c1 - X16_ = X5 - X17_ = c0 \ -X6 c0 - X18_ = c0 \ c1 \ -X7 c0 c1 - X19_ = X8 - X20_ = c0 \ -X9 c0 - X21_ = c0 \ c1 \ -X10 c0 c1 - X22_ = X8 - X4_ = X11 - X5_ = X11 - X6_ = X12 - X7_ = X13 - X8_ = c0 \ -X14 c0 - X9_ = X1 -Syntactic constraints: - evar X8 (sort (typ «elpi.tests.test_API2.25»)) X8 /* suspended on X8 */ - evar X8 (sort (typ «elpi.tests.test_API2.28»)) X8 /* suspended on X8 */ - {c0 c1} : decl c1 `x` (X9 c0), decl c0 `z` X8 - ?- evar (X10 c0 c1) (sort (typ «elpi.tests.test_API2.27»)) (X10 c0 c1) /* suspended on X10 */ - {c0} : decl c0 `z` X8 - ?- evar (X9 c0) (sort (typ «elpi.tests.test_API2.26»)) (X9 c0) /* suspended on X9 */ - {c0 c1} : decl c1 `x` (X6 c0), decl c0 `z` X5 - ?- evar (X7 c0 c1) (sort (typ «elpi.tests.test_API2.24»)) (X7 c0 c1) /* suspended on X7 */ - {c0} : decl c0 `z` X5 - ?- evar (X6 c0) (sort (typ «elpi.tests.test_API2.23»)) (X6 c0) /* suspended on X6 */ - evar (X5) (sort (typ «elpi.tests.test_API2.22»)) (X5) /* suspended on X5 */ - {c0 c1} : decl c1 `x` (X3 c0), decl c0 `z` X2 - ?- evar (X4 c0 c1) (sort (typ «elpi.tests.test_API2.21»)) (X4 c0 c1) /* suspended on X4 */ - {c0} : decl c0 `z` X2 - ?- evar (X3 c0) (sort (typ «elpi.tests.test_API2.20»)) (X3 c0) /* suspended on X3 */ - evar (X2) (sort (typ «elpi.tests.test_API2.19»)) (X2) /* suspended on X2 */ - evar X1 (sort (typ «elpi.tests.test_API2.15»)) X1 /* suspended on X1 */ - evar X1 (sort (typ «elpi.tests.test_API2.17»)) X1 /* suspended on X1 */ - {c0} : decl c0 `x` X1 - ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.16»)) (X0 c0) /* suspended on X0 */ - {c0} : decl c0 `x` X1 - ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.18»)) (X0 c0) /* suspended on X0 */ - {c0} : decl c0 `x` X13 - ?- evar (X14 c0) (sort (typ «elpi.tests.test_API2.14»)) (X14 c0) /* suspended on X14 */ - evar (X13) (sort (typ «elpi.tests.test_API2.13»)) (X13) /* suspended on X13 */ - evar (X12) (sort (typ «elpi.tests.test_API2.12»)) (X12) /* suspended on X12 */ - evar X11 (sort (typ «elpi.tests.test_API2.10»)) X11 /* suspended on X11 */ - evar X11 (sort (typ «elpi.tests.test_API2.11»)) X11 /* suspended on X11 */ -Universe constraints: -UNIVERSES: - {elpi.tests.test_API2.28 elpi.tests.test_API2.27 elpi.tests.test_API2.26 - elpi.tests.test_API2.25 elpi.tests.test_API2.24 elpi.tests.test_API2.23 - elpi.tests.test_API2.22 elpi.tests.test_API2.21 elpi.tests.test_API2.20 - elpi.tests.test_API2.19 elpi.tests.test_API2.18 elpi.tests.test_API2.17 - elpi.tests.test_API2.16 elpi.tests.test_API2.15 elpi.tests.test_API2.14 - elpi.tests.test_API2.13 elpi.tests.test_API2.12 elpi.tests.test_API2.11 - elpi.tests.test_API2.10} |= -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - α6 - α7 - α8 - α9 - α10 - α11 - α12 - α13 - α14 - α15 - α16 - α17 - α18 - α19 - α20 - α21 - α22 - α23 - α24 -WEAK CONSTRAINTS: - - -File "./tests/test_API2.v", line 127, characters 0-16: -Warning: Option Foo Bar is deprecated. elpi -[deprecated-option,deprecated,default] -File "./tests/test_API2.v", line 135, characters 0-14: -Warning: Option Foo Bar is deprecated. elpi -[deprecated-option,deprecated,default] -File "./tests/test_API2.v", line 216, characters 23-24: -Warning: -File "./tests/test_API2.v", line 216, characters 23-24 -M is linear: name it _M (discard) or M_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API2.v", line 224, characters 31-32: -Warning: -File "./tests/test_API2.v", line 224, characters 31-32 -T is linear: name it _T (discard) or T_ (fresh variable) -[elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API2.v", line 372, characters 0-228: -Warning: -Undeclared globals: -- File "./tests/test_API2.v", line 373, column 2, characters 8768-8778: test. -Please add the following text to your program: -type test term -> term -> prop. -[elpi.missing-types,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.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.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.test_API_env.18 elpi.tests.test_API_env.17 - elpi.tests.test_API_env.16 elpi.tests.test_API_env.15 - elpi.tests.test_API_env.14 elpi.tests.test_API_env.13 - elpi.tests.test_API_env.11} |= - tx.u0 < elpi.tests.test_API_env.11 - tx.u1 < elpi.tests.test_API_env.13 - Set <= elpi.tests.test_API_env.13 - Set <= elpi.tests.test_API_env.14 - Set <= elpi.tests.test_API_env.15 - Set <= elpi.tests.test_API_env.16 - Set <= elpi.tests.test_API_env.17 - Set <= elpi.tests.test_API_env.18 - tx.u0 <= elpi.tests.test_API_env.14 - tx.u1 <= elpi.tests.test_API_env.14 - elpi.tests.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.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.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi.tests.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.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.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi.tests.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.test_API_env.26» - UA = «elpi.tests.test_API_env.20» - UB1 = «ind1.u0» - UB2 = «ind1.u0» - UB3 = «ind1.u0» - UC = «elpi.tests.test_API_env.22» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_env.26} |= - Set <= elpi.tests.test_API_env.26 - ind1.u0 <= elpi.tests.test_API_env.26 -ALGEBRAIC UNIVERSES: - {} -FLEXIBLE UNIVERSES: - -SORTS: - -WEAK CONSTRAINTS: - - -Query assignments: - D = parameter A explicit (sort (typ «elpi.tests.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.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi.tests.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.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.test_API_env.22»)) c4 \ - prod `_` c4 c5 \ sort (typ «elpi.tests.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.test_API_env.27» - UA = «elpi.tests.test_API_env.20» - UB1 = «ind1.u0» - UB2 = «ind1.u0» - UB3 = «ind1.u0» - UC = «elpi.tests.test_API_env.22» -Universe constraints: -UNIVERSES: - {elpi.tests.test_API_env.27} |= - Set <= elpi.tests.test_API_env.27 - ind1.u0 <= elpi.tests.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.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; - ConstructiveExtra.Z_inj_nat_id; ConstructiveExtra.Z_inj_nat_rev; - ZArith_dec.Z_le_lt_eq_dec; ZArith_dec.Z_lt_dec; ZArith_dec.Z_lt_ge_dec; - ZArith_dec.Z_lt_le_dec; Znumtheory.Z_lt_neq; Zdiv.Z_mod_lt; - Zdiv.Z_mod_mult; Field_theory.Z_pos_sub_gt; BinNums.Z_rec; - BinNums.Z_rect; Zcompare.Zcompare_mult_compat; ZArith_dec.Zcompare_rec; -...TRUNCATED BY DUNE... - BinPos.Pos.add_succ_l; BinInt.Z.add_succ_l; BinNat.N.add_succ_r; - PeanoNat.Nat.add_succ_r; BinPos.Pos.add_succ_r; BinInt.Z.add_succ_r; - 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 = 0.695933 + p 768, p 769, p 770, p 771, p 772, p 773, p 774, p 775, p 776, p 777, + p 778, p 779, p 780, p 781, p 782, p 783, p 784, p 785, p 786, p 787, + p 788, p 789, p 790, p 791, p 792, p 793, p 794, p 795, p 796, p 797, + p 798, p 799, p 800, p 801, p 802, p 803, p 804, p 805, p 806, p 807, + p 808, p 809, p 810, p 811, p 812, p 813, p 814, p 815, p 816, p 817, + p 818, p 819, p 820, p 821, p 822, p 823, p 824, p 825, p 826, p 827, + p 828, p 829, p 830, p 831, p 832, p 833, p 834, p 835, p 836, p 837, + p 838, p 839, p 840, p 841, p 842, p 843, p 844, p 845, p 846, p 847, + p 848, p 849, p 850, p 851, p 852, p 853, p 854, p 855, p 856, p 857, + p 858, p 859, p 860, p 861, p 862, p 863, p 864, p 865, p 866, p 867, + p 868, p 869, p 870, p 871, p 872, p 873, p 874, p 875, p 876, p 877, + p 878, p 879, p 880, p 881, p 882, p 883, p 884, p 885, p 886, p 887, + p 888, p 889, p 890, p 891, p 892, p 893, p 894, p 895, p 896, p 897, + p 898, p 899, p 900, p 901, p 902, p 903, p 904, p 905, p 906, p 907, + p 908, p 909, p 910, p 911, p 912, p 913, p 914, p 915, p 916, p 917, + p 918, p 919, p 920, p 921, p 922, p 923, p 924, p 925, p 926, p 927, + p 928, p 929, p 930, p 931, p 932, p 933, p 934, p 935, p 936, p 937, + p 938, p 939, p 940, p 941, p 942, p 943, p 944, p 945, p 946, p 947, + p 948, p 949, p 950, p 951, p 952, p 953, p 954, p 955, p 956, p 957, + p 958, p 959, p 960, p 961, p 962, p 963, p 964, p 965, p 966, p 967, + p 968, p 969, p 970, p 971, p 972, p 973, p 974, p 975, p 976, p 977, + p 978, p 979, p 980, p 981, p 982, p 983, p 984, p 985, p 986, p 987, + p 988, p 989, p 990, p 991, p 992, p 993, p 994, p 995, p 996, p 997, + p 998, p 999, p 1000, p 1001, p 1002, p 1003, p 1004, p 1005, p 1006, + p 1007, p 1008, p 1009, p 1010, p 1011, p 1012, p 1013, p 1014, p 1015, + p 1016, p 1017, p 1018, p 1019, p 1020, p 1021, p 1022, p 1023, p 1024, + p 1025, p 1026, p 1027, p 1028, p 1029, p 1030, p 1031, p 1032, p 1033, + p 1034, p 1035, p 1036, p 1037, p 1038, p 1039, p 1040, p 1041, p 1042, + p 1043, p 1044, p 1045, p 1046, p 1047, p 1048, p 1049, p 1050, p 1051, + p 1052, p 1053, p 1054, p 1055, p 1056, p 1057, p 1058, p 1059, p 1060, + p 1061, p 1062, p 1063, p 1064, p 1065, p 1066, p 1067, p 1068, p 1069, + p 1070, p 1071, p 1072, p 1073, p 1074, p 1075, p 1076, p 1077, p 1078, + p 1079, p 1080, p 1081, p 1082, p 1083, p 1084, p 1085, p 1086, p 1087, + p 1088, p 1089, p 1090, p 1091, p 1092, p 1093, p 1094, p 1095, p 1096, + p 1097, p 1098, p 1099, p 1100, p 1101, p 1102, p 1103, p 1104, p 1105, + p 1106, p 1107, p 1108, p 1109, p 1110, p 1111, p 1112, p 1113, p 1114, + p 1115, p 1116, p 1117, p 1118, p 1119, p 1120, p 1121, p 1122, p 1123, + p 1124, p 1125, p 1126, p 1127, p 1128, p 1129, p 1130, p 1131, p 1132, + p 1133, p 1134, p 1135, p 1136, p 1137, p 1138, p 1139, p 1140, p 1141, + p 1142, p 1143, p 1144, p 1145, p 1146, p 1147, p 1148, p 1149, p 1150, + p 1151, p 1152, p 1153, p 1154, p 1155, p 1156, p 1157, p 1158, p 1159, + p 1160, p 1161, p 1162, p 1163, p 1164, p 1165, p 1166, p 1167, p 1168, + p 1169, p 1170, p 1171, p 1172, p 1173, p 1174, p 1175, p 1176, p 1177, + p 1178, p 1179, p 1180, p 1181, p 1182, p 1183, p 1184, p 1185, p 1186, + p 1187, p 1188, p 1189, p 1190, p 1191, p 1192, p 1193, p 1194, p 1195, + p 1196, p 1197, p 1198, p 1199, p 1200, p 1201, p 1202, p 1203, p 1204, + p 1205, p 1206, p 1207, p 1208, p 1209, p 1210, p 1211, p 1212, p 1213, + p 1214, p 1215, p 1216, p 1217, p 1218, p 1219, p 1220, p 1221, p 1222, + p 1223, p 1224, p 1225, p 1226, p 1227, p 1228, p 1229, p 1230, p 1231, + p 1232, p 1233, p 1234, p 1235, p 1236, p 1237, p 1238, p 1239, p 1240, + p 1241, p 1242, p 1243, p 1244, p 1245, p 1246, p 1247, p 1248, p 1249, + p 1250, p 1251, p 1252, p 1253, p 1254, p 1255, p 1256, p 1257, p 1258, + p 1259, p 1260, p 1261, p 1262, p 1263, p 1264, p 1265, p 1266, p 1267, + p 1268, p 1269, p 1270, p 1271, p 1272, p 1273, p 1274, p 1275, p 1276, + p 1277, p 1278, p 1279, p 1280, p 1281, p 1282, p 1283, p 1284, p 1285, + p 1286, p 1287, p 1288, p 1289, p 1290, p 1291, p 1292, p 1293, p 1294, + p 1295, p 1296, p 1297, p 1298, p 1299, p 1300, p 1301, p 1302, p 1303, + p 1304, p 1305, p 1306, p 1307, p 1308, p 1309, p 1310, p 1311, p 1312, + p 1313, p 1314, p 1315, p 1316, p 1317, p 1318, p 1319, p 1320, p 1321, + p 1322, p 1323, p 1324, p 1325, p 1326, p 1327, p 1328, p 1329, p 1330, + p 1331, p 1332, p 1333, p 1334, p 1335, p 1336, p 1337, p 1338, p 1339, + p 1340, p 1341, p 1342, p 1343, p 1344, p 1345, p 1346, p 1347, p 1348, + p 1349, p 1350, p 1351, p 1352, p 1353, p 1354, p 1355, p 1356, p 1357, + p 1358, p 1359, p 1360, p 1361, p 1362, p 1363, p 1364, p 1365, p 1366, + p 1367, p 1368, p 1369, p 1370, p 1371, p 1372, p 1373, p 1374, p 1375, + p 1376, p 1377, p 1378, p 1379, p 1380, p 1381, p 1382, p 1383, p 1384, + p 1385, p 1386, p 1387, p 1388, p 1389, p 1390, p 1391, p 1392, p 1393, + p 1394, p 1395, p 1396, p 1397, p 1398, p 1399, p 1400, p 1401, p 1402, + p 1403, p 1404, p 1405, p 1406, p 1407, p 1408, p 1409, p 1410, p 1411, + p 1412, p 1413, p 1414, p 1415, p 1416, p 1417, p 1418, p 1419, p 1420, + p 1421, p 1422, p 1423, p 1424, p 1425, p 1426, p 1427, p 1428, p 1429, + p 1430, p 1431, p 1432, p 1433, p 1434, p 1435, p 1436, p 1437, p 1438, + p 1439, p 1440, p 1441, p 1442, p 1443, p 1444, p 1445, p 1446, p 1447, + p 1448, p 1449, p 1450, p 1451, p 1452, p 1453, p 1454, p 1455, p 1456, + p 1457, p 1458, p 1459, p 1460, p 1461, p 1462, p 1463, p 1464, p 1465, + p 1466, p 1467, p 1468, p 1469, p 1470, p 1471, p 1472, p 1473, p 1474, + p 1475, p 1476, p 1477, p 1478, p 1479, p 1480, p 1481, p 1482, p 1483, + p 1484, p 1485, p 1486, p 1487, p 1488, p 1489, p 1490, p 1491, p 1492, + p 1493, p 1494, p 1495, p 1496, p 1497, p 1498, p 1499, p 1500, p 1501, + p 1502, p 1503, p 1504, p 1505, p 1506, p 1507, p 1508, p 1509, p 1510, + p 1511, p 1512, p 1513, p 1514, p 1515, p 1516, p 1517, p 1518, p 1519, + p 1520, p 1521, p 1522, p 1523, p 1524, p 1525, p 1526, p 1527, p 1528, + p 1529, p 1530, p 1531, p 1532, p 1533, p 1534, p 1535, p 1536, p 1537, + p 1538, p 1539, p 1540, p 1541, p 1542, p 1543, p 1544, p 1545, p 1546, + p 1547, p 1548, p 1549, p 1550, p 1551, p 1552, p 1553, p 1554, p 1555, + p 1556, p 1557, p 1558, p 1559, p 1560, p 1561, p 1562, p 1563, p 1564, + p 1565, p 1566, p 1567, p 1568, p 1569, p 1570, p 1571, p 1572, p 1573, + p 1574, p 1575, p 1576, p 1577, p 1578, p 1579, p 1580, p 1581, p 1582, + p 1583, p 1584, p 1585, p 1586, p 1587, p 1588, p 1589, p 1590, p 1591, + p 1592, p 1593, p 1594, p 1595, p 1596, p 1597, p 1598, p 1599, p 1600, + p 1601, p 1602, p 1603, p 1604, p 1605, p 1606, p 1607, p 1608, p 1609, + p 1610, p 1611, p 1612, p 1613, p 1614, p 1615, p 1616, p 1617, p 1618, + p 1619, p 1620, p 1621, p 1622, p 1623, p 1624, p 1625, p 1626, p 1627, + p 1628, p 1629, p 1630, p 1631, p 1632, p 1633, p 1634, p 1635, p 1636, + p 1637, p 1638, p 1639, p 1640, p 1641, p 1642, p 1643, p 1644, p 1645, + p 1646, p 1647, p 1648, p 1649, p 1650, p 1651, p 1652, p 1653, p 1654, + p 1655, p 1656, p 1657, p 1658, p 1659, p 1660, p 1661, p 1662, p 1663, + p 1664, p 1665, p 1666, p 1667, p 1668, p 1669, p 1670, p 1671, p 1672, + p 1673, p 1674, p 1675, p 1676, p 1677, p 1678, p 1679, p 1680, p 1681, + p 1682, p 1683, p 1684, p 1685, p 1686, p 1687, p 1688, p 1689, p 1690, + p 1691, p 1692, p 1693, p 1694, p 1695, p 1696, p 1697, p 1698, p 1699, + p 1700, p 1701, p 1702, p 1703, p 1704, p 1705, p 1706, p 1707, p 1708, + p 1709, p 1710, p 1711, p 1712, p 1713, p 1714, p 1715, p 1716, p 1717, + p 1718, p 1719, p 1720, p 1721, p 1722, p 1723, p 1724, p 1725, p 1726, + p 1727, p 1728, p 1729, p 1730, p 1731, p 1732, p 1733, p 1734, p 1735, + p 1736, p 1737, p 1738, p 1739, p 1740, p 1741, p 1742, p 1743, p 1744, + p 1745, p 1746, p 1747, p 1748, p 1749, p 1750, p 1751, p 1752, p 1753, + p 1754, p 1755, p 1756, p 1757, p 1758, p 1759, p 1760, p 1761, p 1762, + p 1763, p 1764, p 1765, p 1766, p 1767, p 1768, p 1769, p 1770, p 1771, + p 1772, p 1773, p 1774, p 1775, p 1776, p 1777, p 1778, p 1779, p 1780, + p 1781, p 1782, p 1783, p 1784, p 1785, p 1786, p 1787, p 1788, p 1789, + p 1790, p 1791, p 1792, p 1793, p 1794, p 1795, p 1796, p 1797, p 1798, + p 1799, p 1800, p 1801, p 1802, p 1803, p 1804, p 1805, p 1806, p 1807, + p 1808, p 1809, p 1810, p 1811, p 1812, p 1813, p 1814, p 1815, p 1816, + p 1817, p 1818, p 1819, p 1820, p 1821, p 1822, p 1823, p 1824, p 1825, + p 1826, p 1827, p 1828, p 1829, p 1830, p 1831, p 1832, p 1833, p 1834, + p 1835, p 1836, p 1837, p 1838, p 1839, p 1840, p 1841, p 1842, p 1843, + p 1844, p 1845, p 1846, p 1847, p 1848, p 1849, p 1850, p 1851, p 1852, + p 1853, p 1854, p 1855, p 1856, p 1857, p 1858, p 1859, p 1860, p 1861, + p 1862, p 1863, p 1864, p 1865, p 1866, p 1867, p 1868, p 1869, p 1870, + p 1871, p 1872, p 1873, p 1874, p 1875, p 1876, p 1877, p 1878, p 1879, + p 1880, p 1881, p 1882, p 1883, p 1884, p 1885, p 1886, p 1887, p 1888, + p 1889, p 1890, p 1891, p 1892, p 1893, p 1894, p 1895, p 1896, p 1897, + p 1898, p 1899, p 1900, p 1901, p 1902, p 1903, p 1904, p 1905, p 1906, + p 1907, p 1908, p 1909, p 1910, p 1911, p 1912, p 1913, p 1914, p 1915, + p 1916, p 1917, p 1918, p 1919, p 1920, p 1921, p 1922, p 1923, p 1924, + p 1925, p 1926, p 1927, p 1928, p 1929, p 1930, p 1931, p 1932, p 1933, + p 1934, p 1935, p 1936, p 1937, p 1938, p 1939, p 1940, p 1941, p 1942, + p 1943, p 1944, p 1945, p 1946, p 1947, p 1948, p 1949, p 1950, p 1951, + p 1952, p 1953, p 1954, p 1955, p 1956, p 1957, p 1958, p 1959, p 1960, + p 1961, p 1962, p 1963, p 1964, p 1965, p 1966, p 1967, p 1968, p 1969, + p 1970, p 1971, p 1972, p 1973, p 1974, p 1975, p 1976, p 1977, p 1978, + p 1979, p 1980, p 1981, p 1982, p 1983, p 1984, p 1985, p 1986, p 1987, + p 1988, p 1989, p 1990, p 1991, p 1992, p 1993, p 1994, p 1995, p 1996, + p 1997, p 1998, p 1999, p 2000, p 2001, p 2002, p 2003, p 2004, p 2005, + p 2006, p 2007, p 2008, p 2009, p 2010, p 2011, p 2012, p 2013, p 2014, + p 2015, p 2016, p 2017, p 2018, p 2019, p 2020, p 2021, p 2022, p 2023, + p 2024, p 2025, p 2026, p 2027, p 2028, p 2029, p 2030, p 2031, p 2032, + p 2033, p 2034, p 2035, p 2036, p 2037, p 2038, p 2039, p 2040, p 2041, + p 2042, p 2043, p 2044, p 2045, p 2046, p 2047, p 2048, p 2049, p 2050, + p 2051, p 2052, p 2053, p 2054, p 2055, p 2056, p 2057, p 2058, p 2059, + p 2060, p 2061, p 2062, p 2063, p 2064, p 2065, p 2066, p 2067, p 2068, + p 2069, p 2070, p 2071, p 2072, p 2073, p 2074, p 2075, p 2076, p 2077, + p 2078, p 2079, p 2080, p 2081, p 2082, p 2083, p 2084, p 2085, p 2086, + p 2087, p 2088, p 2089, p 2090, p 2091, p 2092, p 2093, p 2094, p 2095, + p 2096, p 2097, p 2098, p 2099, p 2100, p 2101, p 2102, p 2103, p 2104, + p 2105, p 2106, p 2107, p 2108, p 2109, p 2110, p 2111, p 2112, p 2113, + p 2114, p 2115, p 2116, p 2117, p 2118, p 2119, p 2120, p 2121, p 2122, + p 2123, p 2124, p 2125, p 2126, p 2127, p 2128, p 2129, p 2130, p 2131, + p 2132, p 2133, p 2134, p 2135, p 2136, p 2137, p 2138, p 2139, p 2140, + p 2141, p 2142, p 2143, p 2144, p 2145, p 2146, p 2147, p 2148, p 2149, + p 2150, p 2151, p 2152, p 2153, p 2154, p 2155, p 2156, p 2157, p 2158, + p 2159, p 2160, p 2161, p 2162, p 2163, p 2164, p 2165, p 2166, p 2167, + p 2168, p 2169, p 2170, p 2171, p 2172, p 2173, p 2174, p 2175, p 2176, + p 2177, p 2178, p 2179, p 2180, p 2181, p 2182, p 2183, p 2184, p 2185, + p 2186, p 2187, p 2188, p 2189, p 2190, p 2191, p 2192, p 2193, p 2194, + p 2195, p 2196, p 2197, p 2198, p 2199, p 2200, p 2201, p 2202, p 2203, + p 2204, p 2205, p 2206, p 2207, p 2208, p 2209, p 2210, p 2211, p 2212, + p 2213, p 2214, p 2215, p 2216, p 2217, p 2218, p 2219, p 2220, p 2221, + p 2222, p 2223, p 2224, p 2225, p 2226, p 2227, p 2228, p 2229, p 2230, + p 2231, p 2232, p 2233, p 2234, p 2235, p 2236, p 2237, p 2238, p 2239, + p 2240, p 2241, p 2242, p 2243, p 2244, p 2245, p 2246, p 2247, p 2248, + p 2249, p 2250, p 2251, p 2252, p 2253, p 2254, p 2255, p 2256, p 2257, + p 2258, p 2259, p 2260, p 2261, p 2262, p 2263, p 2264, p 2265, p 2266, + p 2267, p 2268, p 2269, p 2270, p 2271, p 2272, p 2273, p 2274, p 2275, + p 2276, p 2277, p 2278, p 2279, p 2280, p 2281, p 2282, p 2283, p 2284, + p 2285, p 2286, p 2287, p 2288, p 2289, p 2290, p 2291, p 2292, p 2293, + p 2294, p 2295, p 2296, p 2297, p 2298, p 2299, p 2300, p 2301, p 2302, + p 2303, p 2304, p 2305, p 2306, p 2307, p 2308, p 2309, p 2310, p 2311, + p 2312, p 2313, p 2314, p 2315, p 2316, p 2317, p 2318, p 2319, p 2320, + p 2321, p 2322, p 2323, p 2324, p 2325, p 2326, p 2327, p 2328, p 2329, + p 2330, p 2331, p 2332, p 2333, p 2334, p 2335, p 2336, p 2337, p 2338, + p 2339, p 2340, p 2341, p 2342, p 2343, p 2344, p 2345, p 2346, p 2347, + p 2348, p 2349, p 2350, p 2351, p 2352, p 2353, p 2354, p 2355, p 2356, + p 2357, p 2358, p 2359, p 2360, p 2361, p 2362, p 2363, p 2364, p 2365, + p 2366, p 2367, p 2368, p 2369, p 2370, p 2371, p 2372, p 2373, p 2374, + p 2375, p 2376, p 2377, p 2378, p 2379, p 2380, p 2381, p 2382, p 2383, + p 2384, p 2385, p 2386, p 2387, p 2388, p 2389, p 2390, p 2391, p 2392, + p 2393, p 2394, p 2395, p 2396, p 2397, p 2398, p 2399, p 2400, p 2401, + p 2402, p 2403, p 2404, p 2405, p 2406, p 2407, p 2408, p 2409, p 2410, + p 2411, p 2412, p 2413, p 2414, p 2415, p 2416, p 2417, p 2418, p 2419, + p 2420, p 2421, p 2422, p 2423, p 2424, p 2425, p 2426, p 2427, p 2428, + p 2429, p 2430, p 2431, p 2432, p 2433, p 2434, p 2435, p 2436, p 2437, + p 2438, p 2439, p 2440, p 2441, p 2442, p 2443, p 2444, p 2445, p 2446, + p 2447, p 2448, p 2449, p 2450, p 2451, p 2452, p 2453, p 2454, p 2455, + p 2456, p 2457, p 2458, p 2459, p 2460, p 2461, p 2462, p 2463, p 2464, + p 2465, p 2466, p 2467, p 2468, p 2469, p 2470, p 2471, p 2472, p 2473, + p 2474, p 2475, p 2476, p 2477, p 2478, p 2479, p 2480, p 2481, p 2482, + p 2483, p 2484, p 2485, p 2486, p 2487, p 2488, p 2489, p 2490, p 2491, + p 2492, p 2493, p 2494, p 2495, p 2496, p 2497, p 2498, p 2499, p 2500, + p 2501, p 2502, p 2503, p 2504, p 2505, p 2506, p 2507, p 2508, p 2509, + p 2510, p 2511, p 2512, p 2513, p 2514, p 2515, p 2516, p 2517, p 2518, + p 2519, p 2520, p 2521, p 2522, p 2523, p 2524, p 2525, p 2526, p 2527, + p 2528, p 2529, p 2530, p 2531, p 2532, p 2533, p 2534, p 2535, p 2536, + p 2537, p 2538, p 2539, p 2540, p 2541, p 2542, p 2543, p 2544, p 2545, + p 2546, p 2547, p 2548, p 2549, p 2550, p 2551, p 2552, p 2553, p 2554, + p 2555, p 2556, p 2557, p 2558, p 2559, p 2560, p 2561, p 2562, p 2563, + p 2564, p 2565, p 2566, p 2567, p 2568, p 2569, p 2570, p 2571, p 2572, + p 2573, p 2574, p 2575, p 2576, p 2577, p 2578, p 2579, p 2580, p 2581, + p 2582, p 2583, p 2584, p 2585, p 2586, p 2587, p 2588, p 2589, p 2590, + p 2591, p 2592, p 2593, p 2594, p 2595, p 2596, p 2597, p 2598, p 2599, + p 2600, p 2601, p 2602, p 2603, p 2604, p 2605, p 2606, p 2607, p 2608, + p 2609, p 2610, p 2611, p 2612, p 2613, p 2614, p 2615, p 2616, p 2617, + p 2618, p 2619, p 2620, p 2621, p 2622, p 2623, p 2624, p 2625, p 2626, + p 2627, p 2628, p 2629, p 2630, p 2631, p 2632, p 2633, p 2634, p 2635, + p 2636, p 2637, p 2638, p 2639, p 2640, p 2641, p 2642, p 2643, p 2644, + p 2645, p 2646, p 2647, p 2648, p 2649, p 2650, p 2651, p 2652, p 2653, + p 2654, p 2655, p 2656, p 2657, p 2658, p 2659, p 2660, p 2661, p 2662, + p 2663, p 2664, p 2665, p 2666, p 2667, p 2668, p 2669, p 2670, p 2671, + p 2672, p 2673, p 2674, p 2675, p 2676, p 2677, p 2678, p 2679, p 2680, + p 2681, p 2682, p 2683, p 2684, p 2685, p 2686, p 2687, p 2688, p 2689, + p 2690, p 2691, p 2692, p 2693, p 2694, p 2695, p 2696, p 2697, p 2698, + p 2699, p 2700, p 2701, p 2702, p 2703, p 2704, p 2705, p 2706, p 2707, + p 2708, p 2709, p 2710, p 2711, p 2712, p 2713, p 2714, p 2715, p 2716, + p 2717, p 2718, p 2719, p 2720, p 2721, p 2722, p 2723, p 2724, p 2725, + p 2726, p 2727, p 2728, p 2729, p 2730, p 2731, p 2732, p 2733, p 2734, + p 2735, p 2736, p 2737, p 2738, p 2739, p 2740, p 2741, p 2742, p 2743, + p 2744, p 2745, p 2746, p 2747, p 2748, p 2749, p 2750, p 2751, p 2752, + p 2753, p 2754, p 2755, p 2756, p 2757, p 2758, p 2759, p 2760, p 2761, + p 2762, p 2763, p 2764, p 2765, p 2766, p 2767, p 2768, p 2769, p 2770, + p 2771, p 2772, p 2773, p 2774, p 2775, p 2776, p 2777, p 2778, p 2779, + p 2780, p 2781, p 2782, p 2783, p 2784, p 2785, p 2786, p 2787, p 2788, + p 2789, p 2790, p 2791, p 2792, p 2793, p 2794, p 2795, p 2796, p 2797, + p 2798, p 2799, p 2800, p 2801, p 2802, p 2803, p 2804, p 2805, p 2806, + p 2807, p 2808, p 2809, p 2810, p 2811, p 2812, p 2813, p 2814, p 2815, + p 2816, p 2817, p 2818, p 2819, p 2820, p 2821, p 2822, p 2823, p 2824, + p 2825, p 2826, p 2827, p 2828, p 2829, p 2830, p 2831, p 2832, p 2833, + p 2834, p 2835, p 2836, p 2837, p 2838, p 2839, p 2840, p 2841, p 2842, + p 2843, p 2844, p 2845, p 2846, p 2847, p 2848, p 2849, p 2850, p 2851, + p 2852, p 2853, p 2854, p 2855, p 2856, p 2857, p 2858, p 2859, p 2860, + p 2861, p 2862, p 2863, p 2864, p 2865, p 2866, p 2867, p 2868, p 2869, + p 2870, p 2871, p 2872, p 2873, p 2874, p 2875, p 2876, p 2877, p 2878, + p 2879, p 2880, p 2881, p 2882, p 2883, p 2884, p 2885, p 2886, p 2887, + p 2888, p 2889, p 2890, p 2891, p 2892, p 2893, p 2894, p 2895, p 2896, + p 2897, p 2898, p 2899, p 2900, p 2901, p 2902, p 2903, p 2904, p 2905, + p 2906, p 2907, p 2908, p 2909, p 2910, p 2911, p 2912, p 2913, p 2914, + p 2915, p 2916, p 2917, p 2918, p 2919, p 2920, p 2921, p 2922, p 2923, + p 2924, p 2925, p 2926, p 2927, p 2928, p 2929, p 2930, p 2931, p 2932, + p 2933, p 2934, p 2935, p 2936, p 2937, p 2938, p 2939, p 2940, p 2941, + p 2942, p 2943, p 2944, p 2945, p 2946, p 2947, p 2948, p 2949, p 2950, + p 2951, p 2952, p 2953, p 2954, p 2955, p 2956, p 2957, p 2958, p 2959, + p 2960, p 2961, p 2962, p 2963, p 2964, p 2965, p 2966, p 2967, p 2968, + p 2969, p 2970, p 2971, p 2972, p 2973, p 2974, p 2975, p 2976, p 2977, + p 2978, p 2979, p 2980, p 2981, p 2982, p 2983, p 2984, p 2985, p 2986, + p 2987, p 2988, p 2989, p 2990, p 2991, p 2992, p 2993, p 2994, p 2995, + p 2996, p 2997, p 2998, p 2999, p 3000, p 3001, p 3002, p 3003, p 3004, + p 3005, p 3006, p 3007, p 3008, p 3009, p 3010, p 3011, p 3012, p 3013, + p 3014, p 3015, p 3016, p 3017, p 3018, p 3019, p 3020, p 3021, p 3022, + p 3023, p 3024, p 3025, p 3026, p 3027, p 3028, p 3029, p 3030, p 3031, + p 3032, p 3033, p 3034, p 3035, p 3036, p 3037, p 3038, p 3039, p 3040, + p 3041, p 3042, p 3043, p 3044, p 3045, p 3046, p 3047, p 3048, p 3049, + p 3050, p 3051, p 3052, p 3053, p 3054, p 3055, p 3056, p 3057, p 3058, + p 3059, p 3060, p 3061, p 3062, p 3063, p 3064, p 3065, p 3066, p 3067, + p 3068, p 3069, p 3070, p 3071, p 3072, p 3073, p 3074, p 3075, p 3076, + p 3077, p 3078, p 3079, p 3080, p 3081, p 3082, p 3083, p 3084, p 3085, + p 3086, p 3087, p 3088, p 3089, p 3090, p 3091, p 3092, p 3093, p 3094, + p 3095, p 3096, p 3097, p 3098, p 3099, p 3100, p 3101, p 3102, p 3103, + p 3104, p 3105, p 3106, p 3107, p 3108, p 3109, p 3110, p 3111, p 3112, + p 3113, p 3114, p 3115, p 3116, p 3117, p 3118, p 3119, p 3120, p 3121, + p 3122, p 3123, p 3124, p 3125, p 3126, p 3127, p 3128, p 3129, p 3130, + p 3131, p 3132, p 3133, p 3134, p 3135, p 3136, p 3137, p 3138, p 3139, + p 3140, p 3141, p 3142, p 3143, p 3144, p 3145, p 3146, p 3147, p 3148, + p 3149, p 3150, p 3151, p 3152, p 3153, p 3154, p 3155, p 3156, p 3157, + p 3158, p 3159, p 3160, p 3161, p 3162, p 3163, p 3164, p 3165, p 3166, + p 3167, p 3168, p 3169, p 3170, p 3171, p 3172, p 3173, p 3174, p 3175, + p 3176, p 3177, p 3178, p 3179, p 3180, p 3181, p 3182, p 3183, p 3184, + p 3185, p 3186, p 3187, p 3188, p 3189, p 3190, p 3191, p 3192, p 3193, + p 3194, p 3195, p 3196, p 3197, p 3198, p 3199, p 3200, p 3201, p 3202, + p 3203, p 3204, p 3205, p 3206, p 3207, p 3208, p 3209, p 3210, p 3211, + p 3212, p 3213, p 3214, p 3215, p 3216, p 3217, p 3218, p 3219, p 3220, + p 3221, p 3222, p 3223, p 3224, p 3225, p 3226, p 3227, p 3228, p 3229, + p 3230, p 3231, p 3232, p 3233, p 3234, p 3235, p 3236, p 3237, p 3238, + p 3239, p 3240, p 3241, p 3242, p 3243, p 3244, p 3245, p 3246, p 3247, + p 3248, p 3249, p 3250, p 3251, p 3252, p 3253, p 3254, p 3255, p 3256, + p 3257, p 3258, p 3259, p 3260, p 3261, p 3262, p 3263, p 3264, p 3265, + p 3266, p 3267, p 3268, p 3269, p 3270, p 3271, p 3272, p 3273, p 3274, + p 3275, p 3276, p 3277, p 3278, p 3279, p 3280, p 3281, p 3282, p 3283, + p 3284, p 3285, p 3286, p 3287, p 3288, p 3289, p 3290, p 3291, p 3292, + p 3293, p 3294, p 3295, p 3296, p 3297, p 3298, p 3299, p 3300, p 3301, + p 3302, p 3303, p 3304, p 3305, p 3306, p 3307, p 3308, p 3309, p 3310, + p 3311, p 3312, p 3313, p 3314, p 3315, p 3316, p 3317, p 3318, p 3319, + p 3320, p 3321, p 3322, p 3323, p 3324, p 3325, p 3326, p 3327, p 3328, + p 3329, p 3330, p 3331, p 3332, p 3333, p 3334, p 3335, p 3336, p 3337, + p 3338, p 3339, p 3340, p 3341, p 3342, p 3343, p 3344, p 3345, p 3346, + p 3347, p 3348, p 3349, p 3350, p 3351, p 3352, p 3353, p 3354, p 3355, + p 3356, p 3357, p 3358, p 3359, p 3360, p 3361, p 3362, p 3363, p 3364, + p 3365, p 3366, p 3367, p 3368, p 3369, p 3370, p 3371, p 3372, p 3373, + p 3374, p 3375, p 3376, p 3377, p 3378, p 3379, p 3380, p 3381, p 3382, + p 3383, p 3384, p 3385, p 3386, p 3387, p 3388, p 3389, p 3390, p 3391, + p 3392, p 3393, p 3394, p 3395, p 3396, p 3397, p 3398, p 3399, p 3400, + p 3401, p 3402, p 3403, p 3404, p 3405, p 3406, p 3407, p 3408, p 3409, + p 3410, p 3411, p 3412, p 3413, p 3414, p 3415, p 3416, p 3417, p 3418, + p 3419, p 3420, p 3421, p 3422, p 3423, p 3424, p 3425, p 3426, p 3427, + p 3428, p 3429, p 3430, p 3431, p 3432, p 3433, p 3434, p 3435, p 3436, + p 3437, p 3438, p 3439, p 3440, p 3441, p 3442, p 3443, p 3444, p 3445, + p 3446, p 3447, p 3448, p 3449, p 3450, p 3451, p 3452, p 3453, p 3454, + p 3455, p 3456, p 3457, p 3458, p 3459, p 3460, p 3461, p 3462, p 3463, + p 3464, p 3465, p 3466, p 3467, p 3468, p 3469, p 3470, p 3471, p 3472, + p 3473, p 3474, p 3475, p 3476, p 3477, p 3478, p 3479, p 3480, p 3481, + p 3482, p 3483, p 3484, p 3485, p 3486, p 3487, p 3488, p 3489, p 3490, + p 3491, p 3492, p 3493, p 3494, p 3495, p 3496, p 3497, p 3498, p 3499, + p 3500, p 3501, p 3502, p 3503, p 3504, p 3505, p 3506, p 3507, p 3508, + p 3509, p 3510, p 3511, p 3512, p 3513, p 3514, p 3515, p 3516, p 3517, + p 3518, p 3519, p 3520, p 3521, p 3522, p 3523, p 3524, p 3525, p 3526, + p 3527, p 3528, p 3529, p 3530, p 3531, p 3532, p 3533, p 3534, p 3535, + p 3536, p 3537, p 3538, p 3539, p 3540, p 3541, p 3542, p 3543, p 3544, + p 3545, p 3546, p 3547, p 3548, p 3549, p 3550, p 3551, p 3552, p 3553, + p 3554, p 3555, p 3556, p 3557, p 3558, p 3559, p 3560, p 3561, p 3562, + p 3563, p 3564, p 3565, p 3566, p 3567, p 3568, p 3569, p 3570, p 3571, + p 3572, p 3573, p 3574, p 3575, p 3576, p 3577, p 3578, p 3579, p 3580, + p 3581, p 3582, p 3583, p 3584, p 3585, p 3586, p 3587, p 3588, p 3589, + p 3590, p 3591, p 3592, p 3593, p 3594, p 3595, p 3596, p 3597, p 3598, + p 3599, p 3600, p 3601, p 3602, p 3603, p 3604, p 3605, p 3606, p 3607, + p 3608, p 3609, p 3610, p 3611, p 3612, p 3613, p 3614, p 3615, p 3616, + p 3617, p 3618, p 3619, p 3620, p 3621, p 3622, p 3623, p 3624, p 3625, + p 3626, p 3627, p 3628, p 3629, p 3630, p 3631, p 3632, p 3633, p 3634, + p 3635, p 3636, p 3637, p 3638, p 3639, p 3640, p 3641, p 3642, p 3643, + p 3644, p 3645, p 3646, p 3647, p 3648, p 3649, p 3650, p 3651, p 3652, + p 3653, p 3654, p 3655, p 3656, p 3657, p 3658, p 3659, p 3660, p 3661, + p 3662, p 3663, p 3664, p 3665, p 3666, p 3667, p 3668, p 3669, p 3670, + p 3671, p 3672, p 3673, p 3674, p 3675, p 3676, p 3677, p 3678, p 3679, + p 3680, p 3681, p 3682, p 3683, p 3684, p 3685, p 3686, p 3687, p 3688, + p 3689, p 3690, p 3691, p 3692, p 3693, p 3694, p 3695, p 3696, p 3697, + p 3698, p 3699, p 3700, p 3701, p 3702, p 3703, p 3704, p 3705, p 3706, + p 3707, p 3708, p 3709, p 3710] +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 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 + X1 = «x1» + X2 = «x2» + X3 = «x3» +Query assignments: + M = [[mode-ground], [mode-input]] +1 +1 +1.000000 +1.2 +Query assignments: + C1 = «Nat.add» + C2 = «times» + X1 = tt + X2 = ff +Query assignments: + C1 = «x» +Query assignments: + XX = «elpi.tests.test_API2.xx» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx» +Query assignments: + XX = «elpi.tests.test_API2.xx2» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx2» +Query assignments: + C1 = «x» + M = «elpi.tests.test_API2.xx3» +Query assignments: + X1_ = X0 + X2_ = X1 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.test_API_env.30»)) (X1 c0) /* suspended on X2, X1 */ + evar (X1) (X2) (X1) /* suspended on X1 */ + evar X3 (sort (typ «elpi.tests.test_API2.6»)) (X2) /* suspended on X3, X2 */ + evar (X0) (X4) (X0) /* suspended on X0 */ + evar X5 (sort (typ «elpi.tests.test_API2.5»)) (X4) /* suspended on X5, X4 */ Universe constraints: UNIVERSES: - {elpi.tests.test_API_env.30} |= + {elpi.tests.test_API2.6 elpi.tests.test_API2.5} |= ALGEBRAIC UNIVERSES: {} FLEXIBLE UNIVERSES: SORTS: - α13 + α4 + α5 WEAK CONSTRAINTS: +Non-discriminated database +Unfoldable variable definitions: all +Unfoldable constant definitions: all +Unfoldable projection definitions: all +Cut: emp +For any goal -> +For xeq -> exact xxx(level 0, pattern 0 = _, id 0) + Query assignments: - Decl = record Rec (sort (typ «elpi.tests.test_API_env.31»)) BuildRec - (field [] f (sort (typ «elpi.tests.test_API_env.32»)) c0 \ end-record) - X11_ = «elpi.tests.test_API_env.31» - X12_ = «elpi.tests.test_API_env.32» + X3_ = «elpi.tests.test_API2.7» Universe constraints: UNIVERSES: - {elpi.tests.test_API_env.32 elpi.tests.test_API_env.31} |= + ALGEBRAIC UNIVERSES: - {elpi.tests.test_API_env.32 elpi.tests.test_API_env.31} + {elpi.tests.test_API2.7} FLEXIBLE UNIVERSES: - elpi.tests.test_API_env.32 - elpi.tests.test_API_env.31 + elpi.tests.test_API2.7 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.test_API_env.33 -elpi.tests.test_API_env.34} - : Test.Rec@{elpi.tests.test_API_env.33 elpi.tests.test_API_env.34} -> - Type@{elpi.tests.test_API_env.34} -(* {elpi.tests.test_API_env.34 elpi.tests.test_API_env.33} |= - elpi.tests.test_API_env.34 < elpi.tests.test_API_env.33 *) Query assignments: - LP = «Coq.ZArith.Znat» - MP = «Coq.ZArith.Znat.N2Z» -File "./tests/test_API_env.v", line 2, characters 0-24: -Warning: Using Vector.t is known to be technically difficult, see -. -[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] -File "./tests/test_API_env.v", line 26, characters 24-26: -Warning: -File "./tests/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/test_API_env.v", line 82, characters 23-25: -Warning: -File "./tests/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/test_API_env.v", line 215, characters 71-72: -Warning: -File "./tests/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/test_API_env.v", line 209, characters 39-41: -Warning: -File "./tests/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/test_API_env.v", line 212, characters 45-48: -Warning: -File "./tests/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/test_API_env.v", line 218, characters 40-43: -Warning: -File "./tests/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/test_API_env.v", line 225, characters 40-43: -Warning: -File "./tests/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/test_API_env.v", line 215, characters 34-36: -Warning: -File "./tests/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/test_API_env.v", line 246, characters 71-72: -Warning: -File "./tests/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/test_API_env.v", line 240, characters 39-41: -Warning: -File "./tests/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/test_API_env.v", line 243, characters 45-48: -Warning: -File "./tests/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/test_API_env.v", line 249, characters 40-43: -Warning: -File "./tests/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/test_API_env.v", line 256, characters 40-43: -Warning: -File "./tests/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/test_API_env.v", line 246, characters 34-36: -Warning: -File "./tests/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/test_API_env.v", line 273, characters 39-41: -Warning: -File "./tests/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/test_API_env.v", line 275, characters 30-32: + %arg1 = «elpi.tests.test_API2.T» +Query assignments: + GR = const const EXN PRINTING: Not_found +Query assignments: + %arg1 = «elpi.tests.test_API2.F» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.G» +Query assignments: + G = «elpi.tests.test_API2.G» +Module G : Sig Definition id : X.T -> X.T. End := (F X) +Query assignments: + %arg1 = «elpi.tests.test_API2.F» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.H» +Query assignments: + H = «elpi.tests.test_API2.H» +Module H : Sig Definition id : nat -> nat. End := (F X) +Query assignments: + %arg1 = «elpi.tests.test_API2.T» +Query assignments: + GR = const const EXN PRINTING: Not_found +Module Type FT = Funsig (P:T) Sig Parameter idT : P.T -> P.T. End +Query assignments: + %arg1 = «elpi.tests.test_API2.FT» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.GT» +Query assignments: + G = «elpi.tests.test_API2.GT» +Module Type GT = Sig Parameter idT : X.T -> X.T. End +Query assignments: + %arg1 = «elpi.tests.test_API2.FT» + %arg2 = «elpi.tests.test_API2.X» +«elpi.tests.test_API2.HT» +Query assignments: + H = «elpi.tests.test_API2.HT» +Module Type HT = Sig Parameter idT : nat -> nat. End +Query assignments: + L = [«elpi.tests.test_API2.8», «elpi.tests.test_API2.9»] + S = {{ elpi.tests.test_API2.8; elpi.tests.test_API2.9; }} + U = «elpi.tests.test_API2.8» + UV = «elpi.tests.test_API2.8» + V = «elpi.tests.test_API2.9» + VV = «elpi.tests.test_API2.9» +Universe constraints: +UNIVERSES: + {elpi.tests.test_API2.9 elpi.tests.test_API2.8} |= +ALGEBRAIC UNIVERSES: + {elpi.tests.test_API2.9 elpi.tests.test_API2.8} +FLEXIBLE UNIVERSES: + elpi.tests.test_API2.9 + elpi.tests.test_API2.8 +SORTS: + +WEAK CONSTRAINTS: + + +Query assignments: + X10_ = c0 \ +X0 c0 + X11_ = X1 + X12_ = c0 \ +X0 c0 + X13_ = X2 + X14_ = c0 \ +X3 c0 + X15_ = c0 \ c1 \ +X4 c0 c1 + X16_ = X5 + X17_ = c0 \ +X6 c0 + X18_ = c0 \ c1 \ +X7 c0 c1 + X19_ = X8 + X20_ = c0 \ +X9 c0 + X21_ = c0 \ c1 \ +X10 c0 c1 + X22_ = X8 + X4_ = X11 + X5_ = X11 + X6_ = X12 + X7_ = X13 + X8_ = c0 \ +X14 c0 + X9_ = X1 +Syntactic constraints: + evar X8 (sort (typ «elpi.tests.test_API2.25»)) X8 /* suspended on X8 */ + evar X8 (sort (typ «elpi.tests.test_API2.28»)) X8 /* suspended on X8 */ + {c0 c1} : decl c1 `x` (X9 c0), decl c0 `z` X8 + ?- evar (X10 c0 c1) (sort (typ «elpi.tests.test_API2.27»)) (X10 c0 c1) /* suspended on X10 */ + {c0} : decl c0 `z` X8 + ?- evar (X9 c0) (sort (typ «elpi.tests.test_API2.26»)) (X9 c0) /* suspended on X9 */ + {c0 c1} : decl c1 `x` (X6 c0), decl c0 `z` X5 + ?- evar (X7 c0 c1) (sort (typ «elpi.tests.test_API2.24»)) (X7 c0 c1) /* suspended on X7 */ + {c0} : decl c0 `z` X5 + ?- evar (X6 c0) (sort (typ «elpi.tests.test_API2.23»)) (X6 c0) /* suspended on X6 */ + evar (X5) (sort (typ «elpi.tests.test_API2.22»)) (X5) /* suspended on X5 */ + {c0 c1} : decl c1 `x` (X3 c0), decl c0 `z` X2 + ?- evar (X4 c0 c1) (sort (typ «elpi.tests.test_API2.21»)) (X4 c0 c1) /* suspended on X4 */ + {c0} : decl c0 `z` X2 + ?- evar (X3 c0) (sort (typ «elpi.tests.test_API2.20»)) (X3 c0) /* suspended on X3 */ + evar (X2) (sort (typ «elpi.tests.test_API2.19»)) (X2) /* suspended on X2 */ + evar X1 (sort (typ «elpi.tests.test_API2.15»)) X1 /* suspended on X1 */ + evar X1 (sort (typ «elpi.tests.test_API2.17»)) X1 /* suspended on X1 */ + {c0} : decl c0 `x` X1 + ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.16»)) (X0 c0) /* suspended on X0 */ + {c0} : decl c0 `x` X1 + ?- evar (X0 c0) (sort (typ «elpi.tests.test_API2.18»)) (X0 c0) /* suspended on X0 */ + {c0} : decl c0 `x` X13 + ?- evar (X14 c0) (sort (typ «elpi.tests.test_API2.14»)) (X14 c0) /* suspended on X14 */ + evar (X13) (sort (typ «elpi.tests.test_API2.13»)) (X13) /* suspended on X13 */ + evar (X12) (sort (typ «elpi.tests.test_API2.12»)) (X12) /* suspended on X12 */ + evar X11 (sort (typ «elpi.tests.test_API2.10»)) X11 /* suspended on X11 */ + evar X11 (sort (typ «elpi.tests.test_API2.11»)) X11 /* suspended on X11 */ +Universe constraints: +UNIVERSES: + {elpi.tests.test_API2.28 elpi.tests.test_API2.27 elpi.tests.test_API2.26 + elpi.tests.test_API2.25 elpi.tests.test_API2.24 elpi.tests.test_API2.23 + elpi.tests.test_API2.22 elpi.tests.test_API2.21 elpi.tests.test_API2.20 + elpi.tests.test_API2.19 elpi.tests.test_API2.18 elpi.tests.test_API2.17 + elpi.tests.test_API2.16 elpi.tests.test_API2.15 elpi.tests.test_API2.14 + elpi.tests.test_API2.13 elpi.tests.test_API2.12 elpi.tests.test_API2.11 + elpi.tests.test_API2.10} |= +ALGEBRAIC UNIVERSES: + {} +FLEXIBLE UNIVERSES: + +SORTS: + α6 + α7 + α8 + α9 + α10 + α11 + α12 + α13 + α14 + α15 + α16 + α17 + α18 + α19 + α20 + α21 + α22 + α23 + α24 +WEAK CONSTRAINTS: + + +File "./tests/test_API2.v", line 127, characters 0-16: +Warning: Option Foo Bar is deprecated. elpi +[deprecated-option,deprecated,default] +File "./tests/test_API2.v", line 135, characters 0-14: +Warning: Option Foo Bar is deprecated. elpi +[deprecated-option,deprecated,default] +File "./tests/test_API2.v", line 216, characters 23-24: Warning: -File "./tests/test_API_env.v", line 275, characters 30-32 -UR is linear: name it _UR (discard) or UR_ (fresh variable) +File "./tests/test_API2.v", line 216, characters 23-24 +M is linear: name it _M (discard) or M_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_env.v", line 291, characters 39-41: +File "./tests/test_API2.v", line 224, characters 31-32: Warning: -File "./tests/test_API_env.v", line 291, characters 39-41 -UP is linear: name it _UP (discard) or UP_ (fresh variable) +File "./tests/test_API2.v", line 224, characters 31-32 +T is linear: name it _T (discard) or T_ (fresh variable) [elpi.linear-variable,elpi.typecheck,elpi,default] -File "./tests/test_API_env.v", line 293, characters 30-32: +File "./tests/test_API2.v", line 372, characters 0-228: Warning: -File "./tests/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] +Undeclared globals: +- File "./tests/test_API2.v", line 373, column 2, characters 8768-8778: test. +Please add the following text to your program: +type test term -> term -> prop. +[elpi.missing-types,elpi.typecheck,elpi,default] global (indc «O») app [global (indc «S»), app [global (indc «S»), app [global (indc «S»), global (indc «O»)]]] +test1 +str hello +str x +test1 +too many arguments +[attribute elpi.loc + (leaf-loc + File "./tests/test_vernacular2.v", line 10, column 24, characters 326-329:), + attribute elpi.phase (leaf-str interp), + attribute fwd_compat_attr (leaf-str )] +[attribute elpi.loc + (leaf-loc + File "./tests/test_vernacular2.v", line 11, column 0, characters 331-354:), + attribute elpi.phase (leaf-str interp), + attribute fwd_compat_attr (leaf-str )] +File "./tests/test_vernacular2.v", line 6, characters 2-17: +Warning: This command does not support this attribute: fwd_compat_attr. +[unsupported-attributes,parsing,default] +File "./tests/test_vernacular2.v", line 7, characters 2-17: +Warning: This command does not support this attribute: fwd_compat_attr. +[unsupported-attributes,parsing,default] +File "./tests/test_vernacular2.v", line 8, characters 2-17: +Warning: This command does not support this attribute: fwd_compat_attr. +[unsupported-attributes,parsing,default] +File "./tests/test_vernacular2.v", line 9, characters 2-17: +Warning: This command does not support this attribute: fwd_compat_attr. +[unsupported-attributes,parsing,default] +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] program [p] -Finished transaction in 1.031 secs (0.967u,0.064s) (successful) -Finished transaction in 15.432 secs (15.135u,0.284s) (successful) -Finished transaction in 0.225 secs (0.223u,0.s) (successful) +Finished transaction in 3.471 secs (2.916u,0.28s) (successful) +Finished transaction in 34.021 secs (33.646u,0.348s) (successful) +Finished transaction in 0.388 secs (0.385u,0.s) (successful) dune build $(find apps -type d -name tests) trying i = i trying elpi_ctx_entry_2_ = elpi_ctx_entry_2_ @@ -22629,147 +22665,6 @@ : nat Cats.And.Dogs.x = 42 : nat -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, - PA a -> - forall xs : list A, - listR_inv A PA xs -> - idx0 = (a :: xs)%list -> listR_inv A PA idx0. - -Arguments listR_inv A%type_scope PA%function_scope idx0%list_scope -Arguments nilR_inv A%type_scope PA%function_scope idx0%list_scope _ -Arguments consR_inv A%type_scope PA%function_scope - idx0%list_scope a _ xs%list_scope _ _ -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 -File "./apps/eltac/tests/test_injection.v", line 15, characters 0-15: -Warning: Using Vector.t is known to be technically difficult, see -. -[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] -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__Coq_elpi_builtins.add_axiom_or_variable in file "src/coq_elpi_builtins.ml", line 908, characters 14-82 -Called from Elpi_plugin__Coq_elpi_builtins.coq_rest_builtins.(fun) in file "src/coq_elpi_builtins.ml", line 2040, characters 20-86 -Called from Elpi_plugin__Coq_elpi_builtins.grab_global_env.(fun) in file "src/coq_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__Coq_elpi_vernacular.Compiler.run in file "src/coq_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__Coq_elpi_vernacular.Compiler.run_and_print in file "src/coq_elpi_vernacular.ml", line 166, characters 8-38 -Called from Elpi_plugin__Coq_elpi_vernacular.Interp.run_program.(fun) in file "src/coq_elpi_vernacular.ml", line 557, characters 34-90 - nth_R = fun (T T0 : Type) (T1 : T -> T0 -> Type) (x0 : T) (x1 : T0) (x2 : T1 x0 x1) => @@ -22915,43 +22810,57 @@ Arguments pred_R (n n)%nat_scope n File "./apps/derive/tests/test_param2.v", line 85, characters 0-30: Warning: Not a truly recursive fixpoint. [non-recursive,fixpoints,default] -[TC] For indt «C» : - elpi predicate : tc-C - search mode is : tc.deterministic - modes are : [o, o] -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 2) without backtracking -Debug: 2: no match for (E 2), 0 possibilities -Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 1) without backtracking -Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (E 2) without backtracking -Debug: 1: no match for (E 2), 0 possibilities -Debug: 1: looking for (C ?i) with backtracking -Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 2) without backtracking -Debug: 2: no match for (E 2), 0 possibilities -Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) -Debug: 2: looking for (E 1) without backtracking -Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) -[seal (goal [] (X0) (app [global (indt «C»), X1]) (X2) []), - seal (goal [] (X3) (app [global (indt «E»), X1]) (X4) [])] -Goal is C ?i -Solution for C 2 is i2 -Goal is E 2 -Solution for C 1 is i1 -Goal is E 1 -Solution for E 1 is e1 -ok +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 +File "./apps/eltac/tests/test_injection.v", line 15, characters 0-15: +Warning: Using Vector.t is known to be technically difficult, see +. +[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] +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, + PA a -> + forall xs : list A, + listR_inv A PA xs -> + idx0 = (a :: xs)%list -> listR_inv A PA idx0. + +Arguments listR_inv A%type_scope PA%function_scope idx0%list_scope +Arguments nilR_inv A%type_scope PA%function_scope idx0%list_scope _ +Arguments consR_inv A%type_scope PA%function_scope + idx0%list_scope a _ xs%list_scope _ _ In tc-A In tc-A In tc-B @@ -22984,6 +22893,100 @@ WEAK CONSTRAINTS: +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__Coq_elpi_builtins.add_axiom_or_variable in file "src/coq_elpi_builtins.ml", line 908, characters 14-82 +Called from Elpi_plugin__Coq_elpi_builtins.coq_rest_builtins.(fun) in file "src/coq_elpi_builtins.ml", line 2040, characters 20-86 +Called from Elpi_plugin__Coq_elpi_builtins.grab_global_env.(fun) in file "src/coq_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__Coq_elpi_vernacular.Compiler.run in file "src/coq_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__Coq_elpi_vernacular.Compiler.run_and_print in file "src/coq_elpi_vernacular.ml", line 166, characters 8-38 +Called from Elpi_plugin__Coq_elpi_vernacular.Interp.run_program.(fun) in file "src/coq_elpi_vernacular.ml", line 557, characters 34-90 + +[TC] For indt «C» : + elpi predicate : tc-C + search mode is : tc.deterministic + modes are : [o, o] All the remaining goals are on the shelf. 1 goal @@ -23004,354 +23007,45 @@ ============================ C -((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 -(fun x : tele => tele_fmap) -Query assignments: - EqP = const «eqU» -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (RelationClasses.equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || - Init.class_apply @Morphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (Morphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (CMorphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @CMorphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @Morphisms.complement_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @Morphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Morphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply RelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CRelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply CRelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) Init.unconvertible -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || - Init.class_apply @CMorphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: -Warning: -There is an hint extern in the typeclass db: -(*external*) (Morphisms.reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 2) without backtracking +Debug: 2: no match for (E 2), 0 possibilities +Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 1) without backtracking +Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (E 2) without backtracking +Debug: 1: no match for (E 2), 0 possibilities +Debug: 1: looking for (C ?i) with backtracking +Debug: 1.1: exact i2 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 2) without backtracking +Debug: 2: no match for (E 2), 0 possibilities +Debug: 1.2: exact i1 on (C ?i), 0 subgoal(s) +Debug: 2: looking for (E 1) without backtracking +Debug: 2.1: exact e1 on (E 1), 0 subgoal(s) +[seal (goal [] (X0) (app [global (indt «C»), X1]) (X2) []), + seal (goal [] (X3) (app [global (indt «E»), X1]) (X4) [])] +Goal is C ?i +Solution for C 2 is i2 +Goal is E 2 +Solution for C 1 is i1 +Goal is E 1 +Solution for E 1 is e1 +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 => + ex_intro (fun T : Type -> Type => forall R : Type -> Type, C R -> C T) Q + (fun (R : Type -> Type) (_ : C R) => let H1 : C Q := H in H1)) +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". File "./apps/tc/tests/test_tc.v", line 10, characters 0-19: Warning: There is an hint extern in the typeclass db: @@ -23674,338 +23368,6 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -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 => - ex_intro (fun T : Type -> Type => forall R : Type -> Type, C R -> C T) Q - (fun (R : Type -> Type) (_ : C R) => let H1 : C Q := H in H1)) -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". -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»)] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) rewrite_relation_fun -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (equiv_rewrite_relation R) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (eq_rewrite_relation A) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @eq_proper_proxy || - class_apply @reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip2) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.flip1) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (CMorphisms.subrelation_tac T U) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.subrelation_symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @CMorphisms.flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Transitive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply @complement_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @proper_flip_proper) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) partial_application_tactic -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) proper_subrelation -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) proper_normalization -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) proper_reflexive -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.complement_Irreflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.flip_Asymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CRelationClasses.irreflexivity) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (apply CRelationClasses.flip_Reflexive) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) unconvertible -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @CMorphisms.eq_proper_proxy || - class_apply @CMorphisms.reflexive_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) CMorphisms.normalizes -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Antisymmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @flip_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (class_apply @complement_Symmetric) -[elpi.TC.hints,elpi,default] -File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: -Warning: -There is an hint extern in the typeclass db: -(*external*) (reflexive_proxy_tac A R) -[elpi.TC.hints,elpi,default] Query assignments: Len = 288 Rules = [tc.instance [] (const «RelationClasses.iff_Symmetric») @@ -24551,11 +23913,355 @@ (indt «RelationClasses.PER») [], tc.instance [] (const «ssrsetoid.compat_Reflexive») (const «ssrclasses.Reflexive») []] -Query assignments: - S = app - [global (const «IsAnimal»), global (indc «Fly»), global (const «dove»)] -Query assignments: - S = X0 +((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 +(fun x : tele => tele_fmap) +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @eq_proper_proxy || + class_apply @reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; class_apply @proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (CMorphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @CMorphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CRelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply CRelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) unconvertible +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @CMorphisms.eq_proper_proxy || + class_apply @CMorphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; class_apply @CMorphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (class_apply @complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/stdppInj.v", line 11, characters 0-24: +Warning: +There is an hint extern in the typeclass db: +(*external*) (reflexive_proxy_tac A R) +[elpi.TC.hints,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»)] File "./apps/tc/tests/test_tc_declare.v", line 8, characters 2-36: Warning: This command does not fully mirror the watned behavior if the class has methods @@ -24576,6 +24282,336 @@ 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] +ok +Query assignments: + EqP = const «eqU» +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.rewrite_relation_fun +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (RelationClasses.equiv_rewrite_relation R) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.eq_rewrite_relation A) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.eq_proper_proxy || + Init.class_apply @Morphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (Morphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip2) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.flip1) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (CMorphisms.subrelation_tac T U) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply (CMorphisms.forall_subrelation B R S); intro) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @CMorphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Transitive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply @Morphisms.complement_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @Morphisms.proper_flip_proper) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.partial_application_tactic +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_subrelation +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_normalization +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Morphisms.proper_reflexive +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply RelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CRelationClasses.irreflexivity) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (apply CRelationClasses.flip_Reflexive) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) Init.unconvertible +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || + Init.class_apply @CMorphisms.reflexive_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) CMorphisms.normalizes +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.flip_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Init.class_apply @RelationClasses.complement_Symmetric) +[elpi.TC.hints,elpi,default] +File "./apps/tc/tests/test_commands_API.v", line 52, characters 2-25: +Warning: +There is an hint extern in the typeclass db: +(*external*) (Morphisms.reflexive_proxy_tac A R) +[elpi.TC.hints,elpi,default] +Query assignments: + S = app + [global (const «IsAnimal»), global (indc «Fly»), global (const «dove»)] +Query assignments: + S = X0 File "./apps/tc/tests/importOrder/f1.v", line 5, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -24898,6 +24934,14 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] +Debug: [elpitime] Elpi: get_and_compile 0.0005 +Debug: [TC] - Time of instance search is 0.000902 +Debug: [TC] - Time of refine.typecheck is 0.002042 +Debug: +[elpitime] + Elpi: query-compilation:0.0007 static-check:0.0000 optimization:0.0006 runtime:0.0173 (with success) + +Finished transaction in 0.023 secs (0.021u,0.s) (successful) Inductive peano : Set := Zero : peano | Succ : peano -> peano. Arguments Succ p @@ -25086,1622 +25130,1726 @@ : bool Peano.eqb_OK : forall x1 x2 : Peano.peano, reflect (x1 = x2) (Peano.eqb x1 x2) -Debug: [elpitime] Elpi: get_and_compile 0.0001 -Debug: [TC] - Time of instance search is 0.000084 -Debug: [TC] - Time of refine.typecheck is 0.000213 -Debug: -[elpitime] - Elpi: query-compilation:0.0001 static-check:0.0000 optimization:0.0001 runtime:0.0019 (with success) - -Finished transaction in 0.002 secs (0.002u,0.s) (successful) -Received the following event -[str new_instance, str I4, str A, str Export, int -1] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.eq_proper_proxy || Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.eq_proper_proxy || Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: +File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.eq_proper_proxy || Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 7, characters 2-23: +File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +(fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => partial_app T (p 0) x) +eq_refl +: +ex1 = +(fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => partial_app T (p 0) x) + : ex1 = + (fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => + partial_app T (p 0) x) +eq_refl +: +ex2 = +(fun (T : Type) (p : nat -> T -> T -> Prop) (y : T) => partial_app T (p 0) y) + : ex2 = + (fun (T : Type) (p : nat -> T -> T -> Prop) (y : T) => + partial_app T (p 0) y) +(ex_intro + (fun R : Type -> Type => C (fun _ : Type => R nat) /\ R bool = f nat) f + (conj I ?Goal)) +eq_refl : ex1 = fun_1 nat (fun _ : nat => nat) + : ex1 = fun_1 nat (fun _ : nat => nat) +eq_refl : ex2 = fun_1 nat (fun a : nat => a = a + 1) + : ex2 = fun_1 nat (fun a : nat => a = a + 1) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for (Decision (Exists (?P z y) l)) with backtracking +Debug: 1.1: simple apply Exists_dec on +(Decision (Exists (?P z y) l)), 1 subgoal(s) +Debug: 1.1-1 : (forall x : A, Decision (?P z y x)) +Debug: +1.1-1: looking for (forall x : A, Decision (?P z y x)) with backtracking +Debug: 1.1-1.1: simple apply H on +(forall x : A, Decision (?P z y x)), 0 subgoal(s) +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: [tactic-unification] Starting unification: Prop ~= Type +Debug: [tactic-unification] Leaving unification with success +Debug: [tactic-unification] Starting unification: ?T ~= D +Debug: [tactic-unification] ?T ~= D +Debug: [tactic-unification] Leaving unification with success +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: 1: looking for D without backtracking +Debug: [tactic-unification] Starting unification: D ~= D +Debug: [tactic-unification] Leaving unification with success +Debug: 1.1: simple eapply I on D, 1 subgoal(s) +Debug: 1.1-1 : (C1 ?T (fun x : Type => ?H x)) +Debug: 1.1-1: looking for (C1 ?T (fun x : Type => ?H x)) with backtracking +Debug: +[tactic-unification] + Starting unification: + C1 T H + ~= + C1 ?T (fun x : Type => ?H x) +Debug: [tactic-unification] C1 T H ~= C1 ?T (fun x : Type => ?H x) +Debug: [tactic-unification] C1 ~= C1 +Debug: [tactic-unification] T ~= ?T +Debug: [tactic-unification] H ~= fun x : Type => ?H x +Debug: [tactic-unification] Leaving unification with failure +Debug: 1.1-1: no match for (C1 ?T (fun x : Type => ?H x)), 1 possibilities +Debug: [tactic-unification] Starting unification: Prop ~= Type +Debug: [tactic-unification] Leaving unification with success +Debug: [tactic-unification] Starting unification: ?T ~= D +Debug: [tactic-unification] ?T ~= D +Debug: [tactic-unification] Leaving unification with success +Debug: +Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true +Debug: [tactic-unification] Starting unification: Prop ~= Type +Debug: [tactic-unification] Leaving unification with success +Debug: [tactic-unification] Starting unification: ?T ~= D +Debug: [tactic-unification] ?T ~= D +Debug: [tactic-unification] Leaving unification with success +Debug: [tactic-unification] Starting unification: D ~= D +Debug: [tactic-unification] Leaving unification with success +Debug: +[tactic-unification] + Starting unification: + C2 T (fun x : Type => H x) + ~= + C2 ?T ?H +Debug: [tactic-unification] C2 T (fun x : Type => H x) ~= C2 ?T ?H +Debug: [tactic-unification] C2 ~= C2 +Debug: [tactic-unification] T ~= ?T +Debug: [tactic-unification] fun x : Type => H x ~= ?H +Debug: [tactic-unification] Leaving unification with success +Debug: [tactic-unification] Starting unification: Prop ~= Type +Debug: [tactic-unification] Leaving unification with success +Debug: +[tactic-unification] + Starting unification: + ?T + ~= + forall (T : Type -> Type) (H : forall x : Type, T x), + C2 T (fun x : Type => H x) -> D +Debug: +[tactic-unification] + ?T + ~= + forall (T : Type -> Type) (H : forall x : Type, T x), + C2 T (fun x : Type => H x) -> D +Debug: [tactic-unification] Leaving unification with success +Debug: +[tactic-unification] + Starting unification: + forall (T : Type -> Type) (H : forall x : Type, T x), C2 T H -> D + ~= + forall (T : Type -> Type) (H : forall x : Type, T x), + C2 T (fun x : Type => H x) -> D +Debug: [tactic-unification] Leaving unification with success +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.eq_proper_proxy || Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 15, characters 2-23: +File "./apps/tc/tests/importOrder/f2a.v", line 10, characters 0-21: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.rewrite_relation_fun [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (RelationClasses.equiv_rewrite_relation R) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.eq_rewrite_relation A) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.PartialOrder_StrictOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PreOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.eq_proper_proxy || Init.class_apply @Morphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @Morphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (Morphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.PartialOrder_inverse) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.StrictOrder_PartialOrder) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip2) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.flip1) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (CMorphisms.subrelation_tac T U) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply (CMorphisms.forall_subrelation B R S); intro) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.subrelation_symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @CMorphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Transitive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply @Morphisms.complement_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @Morphisms.proper_flip_proper) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.partial_application_tactic [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_subrelation [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_normalization [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Morphisms.proper_reflexive [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.complement_Irreflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.flip_Asymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply RelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CRelationClasses.irreflexivity) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (apply CRelationClasses.flip_Reflexive) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) Init.unconvertible [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @CMorphisms.eq_proper_proxy || Init.class_apply @CMorphisms.reflexive_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (not_evar R; Init.class_apply @CMorphisms.proper_proper_proxy) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) CMorphisms.normalizes [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Antisymmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.flip_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Init.class_apply @RelationClasses.complement_Symmetric) [elpi.TC.hints,elpi,default] -File "./apps/tc/tests/importOrder/f3f.v", line 17, characters 0-21: +File "./apps/tc/tests/importOrder/f3g.v", line 8, characters 2-23: Warning: There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) @@ -28960,120 +29108,313 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] -(fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => partial_app T (p 0) x) -eq_refl -: -ex1 = -(fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => partial_app T (p 0) x) - : ex1 = - (fun (T : Type) (p : nat -> T -> T -> Prop) (x : T) => - partial_app T (p 0) x) -eq_refl -: -ex2 = -(fun (T : Type) (p : nat -> T -> T -> Prop) (y : T) => partial_app T (p 0) y) - : ex2 = - (fun (T : Type) (p : nat -> T -> T -> Prop) (y : T) => - partial_app T (p 0) y) -(ex_intro - (fun R : Type -> Type => C (fun _ : Type => R nat) /\ R bool = f nat) f - (conj I ?Goal)) -eq_refl : ex1 = fun_1 nat (fun _ : nat => nat) - : ex1 = fun_1 nat (fun _ : nat => nat) -eq_refl : ex2 = fun_1 nat (fun a : nat => a = a + 1) - : ex2 = fun_1 nat (fun a : nat => a = a + 1) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for (Decision (Exists (?P z y) l)) with backtracking -Debug: 1.1: simple apply Exists_dec on -(Decision (Exists (?P z y) l)), 1 subgoal(s) -Debug: 1.1-1 : (forall x : A, Decision (?P z y x)) -Debug: -1.1-1: looking for (forall x : A, Decision (?P z y x)) with backtracking -Debug: 1.1-1.1: simple apply H on -(forall x : A, Decision (?P z y x)), 0 subgoal(s) -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: [tactic-unification] Starting unification: Prop ~= Type -Debug: [tactic-unification] Leaving unification with success -Debug: [tactic-unification] Starting unification: ?T ~= D -Debug: [tactic-unification] ?T ~= D -Debug: [tactic-unification] Leaving unification with success -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: 1: looking for D without backtracking -Debug: [tactic-unification] Starting unification: D ~= D -Debug: [tactic-unification] Leaving unification with success -Debug: 1.1: simple eapply I on D, 1 subgoal(s) -Debug: 1.1-1 : (C1 ?T (fun x : Type => ?H x)) -Debug: 1.1-1: looking for (C1 ?T (fun x : Type => ?H x)) with backtracking -Debug: -[tactic-unification] - Starting unification: - C1 T H - ~= - C1 ?T (fun x : Type => ?H x) -Debug: [tactic-unification] C1 T H ~= C1 ?T (fun x : Type => ?H x) -Debug: [tactic-unification] C1 ~= C1 -Debug: [tactic-unification] T ~= ?T -Debug: [tactic-unification] H ~= fun x : Type => ?H x -Debug: [tactic-unification] Leaving unification with failure -Debug: 1.1-1: no match for (C1 ?T (fun x : Type => ?H x)), 1 possibilities -Debug: [tactic-unification] Starting unification: Prop ~= Type -Debug: [tactic-unification] Leaving unification with success -Debug: [tactic-unification] Starting unification: ?T ~= D -Debug: [tactic-unification] ?T ~= D -Debug: [tactic-unification] Leaving unification with success -Debug: -Calling typeclass resolution with flags: depth = ∞,unique = false,fail = true -Debug: [tactic-unification] Starting unification: Prop ~= Type -Debug: [tactic-unification] Leaving unification with success -Debug: [tactic-unification] Starting unification: ?T ~= D -Debug: [tactic-unification] ?T ~= D -Debug: [tactic-unification] Leaving unification with success -Debug: [tactic-unification] Starting unification: D ~= D -Debug: [tactic-unification] Leaving unification with success -Debug: -[tactic-unification] - Starting unification: - C2 T (fun x : Type => H x) - ~= - C2 ?T ?H -Debug: [tactic-unification] C2 T (fun x : Type => H x) ~= C2 ?T ?H -Debug: [tactic-unification] C2 ~= C2 -Debug: [tactic-unification] T ~= ?T -Debug: [tactic-unification] fun x : Type => H x ~= ?H -Debug: [tactic-unification] Leaving unification with success -Debug: [tactic-unification] Starting unification: Prop ~= Type -Debug: [tactic-unification] Leaving unification with success -Debug: -[tactic-unification] - Starting unification: - ?T - ~= - forall (T : Type -> Type) (H : forall x : Type, T x), - C2 T (fun x : Type => H x) -> D -Debug: -[tactic-unification] - ?T - ~= - forall (T : Type -> Type) (H : forall x : Type, T x), - C2 T (fun x : Type => H x) -> D -Debug: [tactic-unification] Leaving unification with success -Debug: -[tactic-unification] - Starting unification: - forall (T : Type -> Type) (H : forall x : Type, T x), C2 T H -> D - ~= - forall (T : Type -> Type) (H : forall x : Type, T x), - C2 T (fun x : Type => H x) -> D -Debug: [tactic-unification] Leaving unification with success +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.167 secs (0.13u,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] File "./apps/tc/tests/importOrder/f3a.v", line 4, characters 0-21: Warning: There is an hint extern in the typeclass db: @@ -31972,6 +32313,98 @@ There is an hint extern in the typeclass db: (*external*) (Morphisms.reflexive_proxy_tac A R) [elpi.TC.hints,elpi,default] +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 +. It does not look like a unary parametricity translation of an inductive with no indexes. +Debug: Cannot enforce elpi.apps.derive.tests.test_derive.3246 <= Set +Skipping derivation map on indt «nat» since it has been already run +Derivation lens on indt «nat» +Derivation lens on indt «nat» failed, continuing +Skipping derivation param1 on indt «nat» since it has been already run +Skipping derivation param2 on indt «nat» since it has been already run +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.002937 +Derivation isK on indt «nat» +Derivation isK on indt «nat» took 0.002811 +Derivation eq on indt «nat» +Derivation eq on indt «nat» took 0.003054 +Derivation invert on indt «nat» +Derivation invert on indt «nat» took 0.002410 +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 +Skipping derivation param1_inhab on indt «nat» +since it has been already run +Skipping derivation param1_functor on indt «nat» +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.005529 +Derivation idx2inv on indt «nat» +Derivation idx2inv on indt «nat» failed, continuing +Skipping derivation param1_trivial on indt «nat» +since it has been already run +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.005813 +Skipping derivation eqbcorrect on indt «nat» since it has been already run +Derivation eqcorrect on indt «nat» +Derivation eqcorrect on indt «nat» took 0.001826 +Skipping derivation eqbOK on indt «nat» since it has been already run +Derivation eqOK on indt «nat» +Derivation eqOK on indt «nat» took 0.000836 +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 +Skipping derivation param2 on indt «nat» since the user did not select it +Skipping derivation tag on indt «nat» since the user did not select it +Skipping derivation eqType_ast on indt «nat» +since the user did not select it +Skipping derivation projK on indt «nat» since it has been already run +Skipping derivation isK on indt «nat» since it has been already run +Skipping derivation eq on indt «nat» since it has been already run +Skipping derivation invert on indt «nat» since the user did not select it +Skipping derivation lens_laws on indt «nat» +since the user did not select it +Skipping derivation param1_congr on indt «nat» +since it has been already run +Skipping derivation param1_inhab on indt «nat» +since it has been already run +Skipping derivation param1_functor on indt «nat» +since it has been already run +Skipping derivation fields on indt «nat» since the user did not select it +Skipping derivation bcongr on indt «nat» since it has been already run +Skipping derivation idx2inv on indt «nat» since the user did not select it +Skipping derivation param1_trivial on indt «nat» +since it has been already run +Skipping derivation induction on indt «nat» since it has been already run +Skipping derivation eqb on indt «nat» since the user did not select it +Skipping derivation eqK on indt «nat» since it has been already run +Skipping derivation eqbcorrect on indt «nat» +since the user did not select it +Skipping derivation eqcorrect on indt «nat» since it has been already run +Skipping derivation eqbOK on indt «nat» since the user did not select it +Skipping derivation eqOK on indt «nat» since it has been already run +derive.param1_trivial: wrong shape is_t A PA +. It does not look like a unary parametricity translation of an inductive with no indexes. +derive.param1_trivial: wrong shape is_triv +. It does not look like a unary parametricity translation of an inductive with no indexes. +Debug: Cannot enforce elpi.apps.derive.tests.test_derive.4292 <= Set +derive.param1_trivial: wrong shape is_Pred +. It does not look like a unary parametricity translation of an inductive with no indexes. +wimpls.wimpls not a defined object. +wimpls.Kwi not a defined object. +File "./apps/derive/tests/test_derive.v", line 33, characters 2-9: +Warning: This command does not support this attribute: verbose. +[unsupported-attributes,parsing,default] +File "./apps/derive/tests/test_derive.v", line 70, characters 0-15: +Warning: Using Vector.t is known to be technically difficult, see +. +[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] 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) @@ -32297,403 +32730,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.052 secs (0.052u,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] -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 -. It does not look like a unary parametricity translation of an inductive with no indexes. -Debug: Cannot enforce elpi.apps.derive.tests.test_derive.3246 <= Set -Skipping derivation map on indt «nat» since it has been already run -Derivation lens on indt «nat» -Derivation lens on indt «nat» failed, continuing -Skipping derivation param1 on indt «nat» since it has been already run -Skipping derivation param2 on indt «nat» since it has been already run -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.001182 -Derivation isK on indt «nat» -Derivation isK on indt «nat» took 0.001404 -Derivation eq on indt «nat» -Derivation eq on indt «nat» took 0.001414 -Derivation invert on indt «nat» -Derivation invert on indt «nat» took 0.001302 -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 -Skipping derivation param1_inhab on indt «nat» -since it has been already run -Skipping derivation param1_functor on indt «nat» -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.002413 -Derivation idx2inv on indt «nat» -Derivation idx2inv on indt «nat» failed, continuing -Skipping derivation param1_trivial on indt «nat» -since it has been already run -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.002637 -Skipping derivation eqbcorrect on indt «nat» since it has been already run -Derivation eqcorrect on indt «nat» -Derivation eqcorrect on indt «nat» took 0.000795 -Skipping derivation eqbOK on indt «nat» since it has been already run -Derivation eqOK on indt «nat» -Derivation eqOK on indt «nat» took 0.000418 -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 -Skipping derivation param2 on indt «nat» since the user did not select it -Skipping derivation tag on indt «nat» since the user did not select it -Skipping derivation eqType_ast on indt «nat» -since the user did not select it -Skipping derivation projK on indt «nat» since it has been already run -Skipping derivation isK on indt «nat» since it has been already run -Skipping derivation eq on indt «nat» since it has been already run -Skipping derivation invert on indt «nat» since the user did not select it -Skipping derivation lens_laws on indt «nat» -since the user did not select it -Skipping derivation param1_congr on indt «nat» -since it has been already run -Skipping derivation param1_inhab on indt «nat» -since it has been already run -Skipping derivation param1_functor on indt «nat» -since it has been already run -Skipping derivation fields on indt «nat» since the user did not select it -Skipping derivation bcongr on indt «nat» since it has been already run -Skipping derivation idx2inv on indt «nat» since the user did not select it -Skipping derivation param1_trivial on indt «nat» -since it has been already run -Skipping derivation induction on indt «nat» since it has been already run -Skipping derivation eqb on indt «nat» since the user did not select it -Skipping derivation eqK on indt «nat» since it has been already run -Skipping derivation eqbcorrect on indt «nat» -since the user did not select it -Skipping derivation eqcorrect on indt «nat» since it has been already run -Skipping derivation eqbOK on indt «nat» since the user did not select it -Skipping derivation eqOK on indt «nat» since it has been already run -derive.param1_trivial: wrong shape is_t A PA -. It does not look like a unary parametricity translation of an inductive with no indexes. -derive.param1_trivial: wrong shape is_triv -. It does not look like a unary parametricity translation of an inductive with no indexes. -Debug: Cannot enforce elpi.apps.derive.tests.test_derive.4292 <= Set -derive.param1_trivial: wrong shape is_Pred -. It does not look like a unary parametricity translation of an inductive with no indexes. -wimpls.wimpls not a defined object. -wimpls.Kwi not a defined object. -File "./apps/derive/tests/test_derive.v", line 33, characters 2-9: -Warning: This command does not support this attribute: verbose. -[unsupported-attributes,parsing,default] -File "./apps/derive/tests/test_derive.v", line 70, characters 0-15: -Warning: Using Vector.t is known to be technically difficult, see -. -[warn-library-file-stdlib-vector,stdlib-vector,warn-library-file,user-warn,default] File "./apps/tc/tests/bigTest.v", line 20, characters 0-19: Warning: There is an hint extern in the typeclass db: @@ -33114,7 +33150,7 @@ dune install coq-elpi --destdir=/build/reproducible-path/coq-elpi-2.4.0/debian/tmp --prefix=/usr --libdir=/usr/lib/x86_64-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.4.0/debian/tmp/usr/doc/coq-elpi make[1]: Leaving directory '/build/reproducible-path/coq-elpi-2.4.0' @@ -33162,12 +33198,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/800704/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/800704/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/2173995 and its subdirectories -I: Current time: Sun Mar 22 18:40:02 -12 2026 -I: pbuilder-time-stamp: 1774248002 +I: removing directory /srv/workspace/pbuilder/800704 and its subdirectories +I: Current time: Tue Feb 18 14:21:18 +14 2025 +I: pbuilder-time-stamp: 1739838078