diff --git a/.github/workflows/basic-checks.yml b/.github/workflows/basic-checks.yml new file mode 100644 index 0000000000..4db79eda06 --- /dev/null +++ b/.github/workflows/basic-checks.yml @@ -0,0 +1,14 @@ +name: Basic checks +on: + pull_request: + push: + branches: + - master +jobs: + basic-checks: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Check for duplicate files + run: dev/tools/check-duplicate-files.sh diff --git a/.github/workflows/nix-action-rocq-9.0.yml b/.github/workflows/nix-action-rocq-9.0.yml index af9570649b..0edf9330a7 100644 --- a/.github/workflows/nix-action-rocq-9.0.yml +++ b/.github/workflows/nix-action-rocq-9.0.yml @@ -7190,6 +7190,64 @@ jobs: name: Building/fetching current CI target run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-9.0" --argstr job "stdlib-refman-html" + stdlib-subcomponents: + needs: + - coq + runs-on: ubuntu-latest + steps: + - name: Determine which commit to initially checkout + run: "if [ ${{ github.event_name }} = \"push\" ]; then\n echo \"target_commit=${{ + github.sha }}\" >> $GITHUB_ENV\nelse\n echo \"target_commit=${{ github.event.pull_request.head.sha + }}\" >> $GITHUB_ENV\nfi\n" + - name: Git checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ env.target_commit }} + - name: Determine which commit to test + run: "if [ ${{ github.event_name }} = \"push\" ]; then\n echo \"tested_commit=${{ + github.sha }}\" >> $GITHUB_ENV\nelse\n merge_commit=$(git ls-remote ${{ github.event.repository.html_url + }} refs/pull/${{ github.event.number }}/merge | cut -f1)\n mergeable=$(git + merge --no-commit --no-ff ${{ github.event.pull_request.base.sha }} > /dev/null + 2>&1; echo $?; git merge --abort > /dev/null 2>&1 || true)\n if [ -z \"$merge_commit\"\ + \ -o \"x$mergeable\" != \"x0\" ]; then\n echo \"tested_commit=${{ github.event.pull_request.head.sha + }}\" >> $GITHUB_ENV\n else\n echo \"tested_commit=$merge_commit\" >> $GITHUB_ENV\n\ + \ fi\nfi\n" + - name: Git checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ env.tested_commit }} + - name: Cachix install + uses: cachix/install-nix-action@v30 + with: + nix_path: nixpkgs=channel:nixpkgs-unstable + - name: Cachix setup coq + uses: cachix/cachix-action@v15 + with: + authToken: ${{ secrets.CACHIX_AUTH_TOKEN }} + extraPullNames: coq-community, math-comp + name: coq + - id: stepGetDerivation + name: Getting derivation for current job (stdlib-subcomponents) + run: "NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link \\\n --argstr bundle + \"rocq-9.0\" --argstr job \"stdlib-subcomponents\" \\\n --dry-run 2> err + > out || (touch fail; true)\n" + - name: Error reporting + run: "echo \"out=\"; cat out\necho \"err=\"; cat err\n" + - name: Failure check + run: if [ -e fail ]; then exit 1; else exit 0; fi; + - id: stepCheck + name: Checking presence of CI target for current job + run: (echo -n status=; cat out err | grep "built:" | sed "s/.*/built/") >> $GITHUB_OUTPUT + - if: steps.stepCheck.outputs.status == 'built' + name: 'Building/fetching previous CI target: coq' + run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-9.0" + --argstr job "coq" + - if: steps.stepCheck.outputs.status == 'built' + name: Building/fetching current CI target + run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-9.0" + --argstr job "stdlib-subcomponents" stdlib-test: needs: - coq diff --git a/.github/workflows/nix-action-rocq-master.yml b/.github/workflows/nix-action-rocq-master.yml index 8c26afaf2d..83480361c2 100644 --- a/.github/workflows/nix-action-rocq-master.yml +++ b/.github/workflows/nix-action-rocq-master.yml @@ -7316,6 +7316,64 @@ jobs: name: Building/fetching current CI target run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-master" --argstr job "stdlib-refman-html" + stdlib-subcomponents: + needs: + - coq + runs-on: ubuntu-latest + steps: + - name: Determine which commit to initially checkout + run: "if [ ${{ github.event_name }} = \"push\" ]; then\n echo \"target_commit=${{ + github.sha }}\" >> $GITHUB_ENV\nelse\n echo \"target_commit=${{ github.event.pull_request.head.sha + }}\" >> $GITHUB_ENV\nfi\n" + - name: Git checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ env.target_commit }} + - name: Determine which commit to test + run: "if [ ${{ github.event_name }} = \"push\" ]; then\n echo \"tested_commit=${{ + github.sha }}\" >> $GITHUB_ENV\nelse\n merge_commit=$(git ls-remote ${{ github.event.repository.html_url + }} refs/pull/${{ github.event.number }}/merge | cut -f1)\n mergeable=$(git + merge --no-commit --no-ff ${{ github.event.pull_request.base.sha }} > /dev/null + 2>&1; echo $?; git merge --abort > /dev/null 2>&1 || true)\n if [ -z \"$merge_commit\"\ + \ -o \"x$mergeable\" != \"x0\" ]; then\n echo \"tested_commit=${{ github.event.pull_request.head.sha + }}\" >> $GITHUB_ENV\n else\n echo \"tested_commit=$merge_commit\" >> $GITHUB_ENV\n\ + \ fi\nfi\n" + - name: Git checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ env.tested_commit }} + - name: Cachix install + uses: cachix/install-nix-action@v30 + with: + nix_path: nixpkgs=channel:nixpkgs-unstable + - name: Cachix setup coq + uses: cachix/cachix-action@v15 + with: + authToken: ${{ secrets.CACHIX_AUTH_TOKEN }} + extraPullNames: coq-community, math-comp + name: coq + - id: stepGetDerivation + name: Getting derivation for current job (stdlib-subcomponents) + run: "NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link \\\n --argstr bundle + \"rocq-master\" --argstr job \"stdlib-subcomponents\" \\\n --dry-run 2> + err > out || (touch fail; true)\n" + - name: Error reporting + run: "echo \"out=\"; cat out\necho \"err=\"; cat err\n" + - name: Failure check + run: if [ -e fail ]; then exit 1; else exit 0; fi; + - id: stepCheck + name: Checking presence of CI target for current job + run: (echo -n status=; cat out err | grep "built:" | sed "s/.*/built/") >> $GITHUB_OUTPUT + - if: steps.stepCheck.outputs.status == 'built' + name: 'Building/fetching previous CI target: coq' + run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-master" + --argstr job "coq" + - if: steps.stepCheck.outputs.status == 'built' + name: Building/fetching current CI target + run: NIXPKGS_ALLOW_UNFREE=1 nix-build --no-out-link --argstr bundle "rocq-master" + --argstr job "stdlib-subcomponents" stdlib-test: needs: - coq diff --git a/.nix/config.nix b/.nix/config.nix index 5f97dfa6d4..0692031ca6 100644 --- a/.nix/config.nix +++ b/.nix/config.nix @@ -202,6 +202,7 @@ with builtins; with (import {}).lib; stdlib-html.job = true; stdlib-refman-html.job = true; stdlib-test.job = true; + stdlib-subcomponents.job = true; }; in { "rocq-master".coqPackages = common-bundles // { diff --git a/.nix/coq-overlays/stdlib-html/default.nix b/.nix/coq-overlays/stdlib-html/default.nix index 64964732db..9f048cfd39 100644 --- a/.nix/coq-overlays/stdlib-html/default.nix +++ b/.nix/coq-overlays/stdlib-html/default.nix @@ -8,6 +8,9 @@ coqPackages.lib.overrideCoqDerivation { buildPhase = '' patchShebangs doc/stdlib/make-library-index dev/with-rocq-wrap.sh dune build @stdlib-html ''${enableParallelBuilding:+-j $NIX_BUILD_CORES} + # check that the make-depend script still runs + patchShebangs dev/tools/make-depends.sh + dev/tools/make-depends.sh ''; installPhase = '' diff --git a/.nix/coq-overlays/stdlib-subcomponents/default.nix b/.nix/coq-overlays/stdlib-subcomponents/default.nix new file mode 100644 index 0000000000..3722a6857c --- /dev/null +++ b/.nix/coq-overlays/stdlib-subcomponents/default.nix @@ -0,0 +1,76 @@ +# CI job to test that we don't break the subcomponent structure of the stdlib, +# as described in the graph doc/stdlib/depends + +{ coq, stdlib, coqPackages }: + +let + # stdlib subcomponents with their dependencies + # when editing this, ensure to keep doc/stdlib/depends in sync + components = { + "corelib-wrapper" = [ ]; + "logic" = [ ]; + "relations" = [ "corelib-wrapper" ]; + "program" = [ "corelib-wrapper" "logic" ]; + "classes" = [ "program" "relations" ]; + "bool" = [ "classes" ]; + "structures" = [ "bool" ]; + "arith-base" = [ "structures" ]; + "positive" = [ "arith-base" ]; + "narith" = [ "positive" ]; + "zarith-base" = [ "narith" ]; + "lists" = [ "arith-base" ]; + "ring" = [ "zarith-base" "lists" ]; + "arith" = [ "ring" ]; + "strings" = [ "arith" ]; + "lia" = [ "arith" ]; + "zarith" = [ "lia" ]; + "qarith-base" = [ "ring" ]; + "field" = [ "qarith-base" "zarith" ]; + "lqa" = [ "field" ]; + "qarith" = [ "field" ]; + "nsatz" = [ "zarith" "qarith-base" ]; + "classical-logic" = [ "arith" ]; + "sets" = [ "classical-logic" ]; + "vectors" = [ "lists" ]; + "sorting" = [ "lia" "sets" "vectors" ]; + "orders-ex" = [ "strings" "sorting" ]; + "unicode" = [ ]; + "primitive-int" = [ "unicode" "zarith" ]; + "primitive-floats" = [ "primitive-int" ]; + "primitive-array" = [ "primitive-int" ]; + "primitive-string" = [ "primitive-int" "orders-ex" ]; + "reals" = [ "nsatz" "lqa" "qarith" "classical-logic" "vectors" ]; + "fmaps-fsets-msets" = [ "orders-ex" "zarith" ]; + "extraction" = [ "primitive-string" "primitive-array" "primitive-floats" ]; + "funind" = [ "arith-base" ]; + "wellfounded" = [ "lists" ]; + "streams" = [ "logic" ]; + "rtauto" = [ "positive" "lists" ]; + "compat" = [ "rtauto" "fmaps-fsets-msets" "funind" "extraction" "reals" "wellfounded" "streams" ]; + "all" = [ "compat" ]; + }; + + stdlib_ = component: let + pname = "stdlib-${component}"; + stdlib-deps = map stdlib_ components.${component}; + in coqPackages.lib.overrideCoqDerivation ({ + inherit pname; + propagatedBuildInputs = stdlib-deps; + useDune = false; + mlPlugin = true; + } // (if component != "all" then { + buildPhase = '' + make ''${enableParallelBuilding:+-j $NIX_BUILD_CORES} build-${component} + ''; + installPhase = '' + make COQLIBINSTALL=$out/lib/coq/${coq.coq-version}/user-contrib install-${component} + ''; + } else { + buildPhase = '' + echo "nothing left to build" + ''; + installPhase = '' + echo "nothing left to install" + ''; + })) stdlib; +in stdlib_ "all" diff --git a/Makefile b/Makefile index bcf0caa5e3..3cfc9a3ed1 100644 --- a/Makefile +++ b/Makefile @@ -6,6 +6,9 @@ all: install: $(DUNE) install --root . rocq-stdlib +build-% install-%: + +$(MAKE) -C theories $@ + # Make of individual .vo theories/%.vo: $(DUNE) build $@ diff --git a/dev/doc/structure.md b/dev/doc/structure.md new file mode 100644 index 0000000000..8e7ad1f203 --- /dev/null +++ b/dev/doc/structure.md @@ -0,0 +1,49 @@ +Internal Structure of Stdlib +============================ + +For historical reasons, the internal dependency structure of the +Stdlib library does not match its directory structure. That is, one +can find many exmaples of files in some directory `A` that depends +from files in another directory `B`, whereas other files in `B` +depends from files in `A`. This makes it difficult to understand what +are the acceptable dependencies in a given file, with developers left +trying adding dependencies until a circular dependency appears, +further worsening the current mess. + +For backward compatibility reasons, that unfortunate state of affairs +cannot be easily fixed. However, to better understand the current +dependencies and mitigate the issue, we document here current tools to +help somewhat master that situation. + +Documentation +------------- + +One can find a graph of dependencies in file +`doc/stdlib/depends`. This graph is included in the documentation +built by `make stdlib-html` in directory +`_build/default/doc/stdlib/html/`. To find the exact files contained +in each node `` of this graph, one can look at the corresponding +`theories/Make.` file. + +CI testing +---------- + +A CI job `stdlib-subcomponents` checks that the above documented +structure remains valid. + +How to Modify the Structure +--------------------------- + +When adding a file, it is enough to list it in the appropriate +`theories/Make.*` file. Note that, for historical reasons, some +directories are split between different subcomponents. In this case, a +symlink must be added in the appropriate `_SubComponent` subdirectory +and only the symlink must be listed in `theories/Make.*`. Look at +`theories/Make.lists` for an example. + +To add or remove a subcomponent, just add or remove the corresponding +`theories/Make.*` file and adapt `doc/stdlib/depends` and +`.nix/coq-overlays/stdlib-subcomponents/default.nix`. One can use the +`dev/tools/make-depends.sh` script to help update the graph (the line +below `File dependencies` can be uncommented to better understand +which files are responsible for some subcomponent dependency). diff --git a/dev/tools/check-duplicate-files.sh b/dev/tools/check-duplicate-files.sh new file mode 100755 index 0000000000..8f6c91623d --- /dev/null +++ b/dev/tools/check-duplicate-files.sh @@ -0,0 +1,30 @@ +#!/bin/sh + +# Check for duplicate files +# Those would yield ambiguity when doing "From Stdlib Require File.". +# There are already a few in the prelude, let's not add more. + +# Files that are already duplicate +DUPLICATE_FILES=" \ + Byte.v \ + Tactics.v \ + Tauto.v \ + Wf.v \ +" + +ALL_FILES=all_files__ +ALL_FILES_UNIQ=all_files_uniq__ + +rm -f ${ALL_FILES} ${ALL_FILES_UNIQ} +(for f in $(find theories -name "*.v" -type f) ; do basename $f ; done) | sort > ${ALL_FILES} +(uniq ${ALL_FILES} ; for f in ${DUPLICATE_FILES} ; do echo $f ; done) | sort > ${ALL_FILES_UNIQ} + +if $(diff -q ${ALL_FILES_UNIQ} ${ALL_FILES} > /dev/null) ; then + echo "No files with duplicate name." +else + echo "Error: Some files bear the same name:" + diff ${ALL_FILES_UNIQ} ${ALL_FILES} + exit 1 +fi + +rm -f ${ALL_FILES} ${ALL_FILES_UNIQ} diff --git a/dev/tools/make-depends.sh b/dev/tools/make-depends.sh new file mode 100755 index 0000000000..92fbd5a9f3 --- /dev/null +++ b/dev/tools/make-depends.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +# this should be called from root as +# % dune build -p rocq-stdlib +# % dev/tools/make-depends.sh + +THEORIES="_build/default/theories" +if [ ! -d ${THEORIES} ] ; then + echo "Error: ${THEORIES} doesn't exist, run first" + echo "% dune build -p rocq-stdlib" + exit 1 +fi + +declare -A FILE_PKG + +# Associate each *.v source file to its corresponding , +# according to theories/Make. +FILE_PKG["All.v"]="all" +for makefile in theories/Make.* ; do + PKG=${makefile#theories/Make.} + for f in $(cat ${makefile} | sed -e 's/#.*//;s/-.*//' | grep -v '^[ \t]*$') ; do + f=$(echo ${f} | sed -e 's,/_[^/]*,,') + if [ -n ${FILE_PKG[${f}]:-""} ] ; then + echo "Error: File ${f} appears in both theories/Make.${FILE_PKG[${f}]} and theories/Make.${PKG}." + exit 1 + fi + FILE_PKG[${f}]=${PKG} + done +done + +# Check that each *.v file in theories appears in some +for f in $(find ${THEORIES} -name "*.v") ; do + f=$(echo ${f} | sed -e "s,${THEORIES}/,,") + if [ -z ${FILE_PKG[${f}]} ] ; then + echo "Error: File ${f} is not listed in any theories/Make.* file." + exit 1 + fi +done + +# Retrieve dependencies and build graph +(echo "digraph stdlib_deps {"; +echo "node [shape=rectangle, style=filled, color=\"#ff540a\", URL=\"#\\N\"];"; +rocq dep -Q ${THEORIES} Stdlib ${THEORIES} | sed -n -e 's,/,.,g;s/[.]vo.*: [^ ]*v//p' | \ + while read src dst; do + src=${src#_build.default.theories.} + srcf="$(echo ${src%.vo} | tr '.' '/').v" + for d in $dst; do + d=${d#_build.default.theories.} + df="$(echo ${d%.vo} | tr '.' '/').v" + if [ -z ${FILE_PKG[${df}]:-""} ] ; then continue ; fi + # File dependencies + # echo "\"(${src}) ${FILE_PKG[${srcf}]}\" -> \"${FILE_PKG[${df}]} (${d%.vo})\" ;" + # Subcomponent dependencies + echo "\"${FILE_PKG[${srcf}]}\" -> \"${FILE_PKG[${df}]}\" ;" + done + done +echo "}") | tred diff --git a/doc/stdlib/depends.dot b/doc/stdlib/depends.dot new file mode 100644 index 0000000000..5515e36f58 --- /dev/null +++ b/doc/stdlib/depends.dot @@ -0,0 +1,73 @@ +# this has been mostly automatically generated by dev/tools/make-depends.sh +# when editing this, ensure to keep .nix/coq-overlays/stdlib-subcomponents +# in sync +digraph stdlib_deps { + node [color="#ff540a", + shape=rectangle, + style=filled + URL="#\N" + ]; + bool -> classes; + classes -> program; + classes -> relations; + program -> "corelib-wrapper"; + program -> logic; + strings -> arith; + reals -> qarith; + reals -> vectors; + reals -> lqa; + reals -> "classical-logic"; + reals -> nsatz; + "arith-base" -> structures; + zarith -> lia; + qarith -> field; + positive -> "arith-base"; + narith -> positive; + ring -> lists; + ring -> "zarith-base"; + arith -> ring; + structures -> bool; + lists -> "arith-base"; + "zarith-base" -> narith; + "primitive-int" -> zarith; + "primitive-int" -> unicode; + lia -> arith; + "fmaps-fsets-msets" -> zarith; + "fmaps-fsets-msets" -> "orders-ex"; + "orders-ex" -> strings; + "orders-ex" -> sorting; + sets -> "classical-logic"; + sorting -> lia; + sorting -> sets; + sorting -> vectors; + "primitive-floats" -> "primitive-int"; + wellfounded -> lists; + relations -> "corelib-wrapper"; + "primitive-string" -> "primitive-int"; + "primitive-string" -> "orders-ex"; + vectors -> lists; + field -> zarith; + field -> "qarith-base"; + lqa -> field; + "qarith-base" -> ring; + "classical-logic" -> arith; + nsatz -> zarith; + nsatz -> "qarith-base"; + extraction -> "primitive-string"; + extraction -> "primitive-floats"; + extraction -> "primitive-array"; + "primitive-array" -> "primitive-int"; + streams -> logic; + funind -> "arith-base"; + rtauto -> positive; + rtauto -> lists; + compat -> reals; + compat -> "fmaps-fsets-msets"; + compat -> wellfounded; + compat -> "primitive-string"; + compat -> extraction; + compat -> streams; + compat -> funind; + compat -> rtauto; + all -> compat +} diff --git a/doc/stdlib/dune b/doc/stdlib/dune index 5772678c11..3e11c11dca 100644 --- a/doc/stdlib/dune +++ b/doc/stdlib/dune @@ -3,13 +3,18 @@ (rule (targets index-list.html) (deps - make-library-index index-list.html.template hidden-files + make-library-index index-list.html.template hidden-files depends.svg (source_tree %{project_root}/theories)) (action (chdir %{project_root} ; On windows run will fail (bash "doc/stdlib/make-library-index doc/stdlib/index-list.html doc/stdlib/hidden-files")))) +(rule + (targets depends.svg) + (deps depends.dot) + (action (bash "dot -T svg depends.dot | sed -e 's/width=\".*\"/width=\"100%\"/' > depends.svg"))) + (rule (targets (dir html)) (alias stdlib-html) @@ -25,11 +30,12 @@ (action (progn (run mkdir -p html) - (bash "%{bin:coqdoc} -q -d html --with-header %{header} --with-footer %{footer} --multi-index --html -g -R %{project_root}/theories Stdlib $(find %{project_root}/theories -name *.v)") + (bash "%{bin:coqdoc} -q -d html --with-header %{header} --with-footer %{footer} --multi-index --html -g -Q %{project_root}/theories Stdlib $(find %{project_root}/theories -name *.v)") (run mv html/index.html html/genindex.html) (with-stdout-to _index.html (progn (cat %{header}) (cat index-list.html) (cat %{footer}))) + (run cp depends.svg html/depends.svg) (run cp _index.html html/index.html)))) ; Installable directories are not yet fully supported by Dune. See diff --git a/doc/stdlib/hidden-files b/doc/stdlib/hidden-files index 60af7ce41b..8405a99f26 100644 --- a/doc/stdlib/hidden-files +++ b/doc/stdlib/hidden-files @@ -29,6 +29,7 @@ theories/funind/Recdef.v theories/ltac/Ltac.v theories/micromega/Ztac.v theories/micromega/DeclConstant.v +theories/micromega/DeclConstantZ.v theories/micromega/Env.v theories/micromega/EnvRing.v theories/micromega/Fourier.v @@ -36,7 +37,6 @@ theories/micromega/Fourier_util.v theories/micromega/Lia.v theories/micromega/Lqa.v theories/micromega/Lra.v -theories/micromega/MExtraction.v theories/micromega/OrderedRing.v theories/micromega/Psatz.v theories/micromega/QMicromega.v @@ -60,7 +60,6 @@ theories/micromega/ZifyClasses.v theories/micromega/ZifyPow.v theories/micromega/Zify.v theories/nsatz/NsatzTactic.v -theories/nsatz/Nsatz.v theories/omega/OmegaLemmas.v theories/omega/PreOmega.v theories/quote/Quote.v @@ -97,6 +96,7 @@ theories/ssr/ssrsetoid.v theories/Reals/Cauchy/ConstructiveExtra.v theories/Reals/Cauchy/PosExtra.v theories/Reals/Cauchy/QExtra.v +theories/Reals/Nsatz.v theories/Numbers/Natural/Binary/NBinary.v theories/Numbers/Integer/Binary/ZBinary.v theories/Numbers/Integer/NatPairs/ZNatPairs.v diff --git a/doc/stdlib/index-list.html.template b/doc/stdlib/index-list.html.template index 4e68a721a5..8b2ece5441 100644 --- a/doc/stdlib/index-list.html.template +++ b/doc/stdlib/index-list.html.template @@ -3,90 +3,103 @@

This is the index of the Rocq standard library. It provides a set of modules directly available -through the Require Import Stdlib command. -The standard library is composed of the following subdirectories:

+through the From Stdlib Require Import command.

+ + + +

The standard library is composed of the following subdirectories:

-
Logic: - Classical logic, dependent equality, extensionality, choice axioms +
Logic: + Logic, dependent equality, extensionality, choice axioms. + Look at classical-logic for more elaborate results.
theories/Logic/SetIsType.v theories/Logic/StrictProp.v - theories/Logic/Classical_Pred_Type.v - theories/Logic/Classical_Prop.v - (theories/Logic/Classical.v) - theories/Logic/ClassicalFacts.v theories/Logic/Decidable.v theories/Logic/Eqdep_dec.v theories/Logic/EqdepFacts.v theories/Logic/Eqdep.v theories/Logic/JMeq.v - theories/Logic/ChoiceFacts.v theories/Logic/RelationalChoice.v - theories/Logic/ClassicalChoice.v - theories/Logic/ClassicalDescription.v - theories/Logic/ClassicalEpsilon.v - theories/Logic/ClassicalUniqueChoice.v - theories/Logic/SetoidChoice.v theories/Logic/Berardi.v - theories/Logic/Diaconescu.v theories/Logic/Hurkens.v theories/Logic/ProofIrrelevance.v theories/Logic/ProofIrrelevanceFacts.v theories/Logic/ConstructiveEpsilon.v - theories/Logic/Description.v - theories/Logic/Epsilon.v - theories/Logic/IndefiniteDescription.v - theories/Logic/PropExtensionality.v theories/Logic/PropExtensionalityFacts.v theories/Logic/FunctionalExtensionality.v theories/Logic/ExtensionalFunctionRepresentative.v theories/Logic/ExtensionalityFacts.v theories/Logic/WeakFan.v - theories/Logic/WKL.v - theories/Logic/FinFun.v theories/Logic/PropFacts.v theories/Logic/HLevels.v theories/Logic/Adjointification.v
-
Structures: - Algebraic structures (types with equality, with order, ...). - DecidableType* and OrderedType* are there only for compatibility. +
Program: + Support for dependently-typed programming + Beware that there are also Tactics.v and Wf.v files in Init.
- theories/Structures/Equalities.v - theories/Structures/EqualitiesFacts.v - theories/Structures/Orders.v - theories/Structures/OrdersTac.v - theories/Structures/OrdersAlt.v - theories/Structures/OrdersEx.v - theories/Structures/OrdersFacts.v - theories/Structures/OrdersLists.v - theories/Structures/GenericMinMax.v - theories/Structures/DecidableType.v - theories/Structures/DecidableTypeEx.v - theories/Structures/OrderedType.v - theories/Structures/OrderedTypeAlt.v - theories/Structures/OrderedTypeEx.v + theories/Program/Subset.v + theories/Program/Equality.v + theories/Program/Syntax.v + theories/Program/WfExtensionality.v + theories/Program/Program.v + theories/Program/Combinators.v +
+ +
Relations: + Relations (definitions and basic results) +
+
+ theories/Relations/Relation_Operators.v + theories/Relations/Relations.v + theories/Relations/Operators_Properties.v
-
Bool: - Booleans (basic functions and results) +
Classes: +
+
+ theories/Classes/Morphisms_Relations.v + theories/Classes/CEquivalence.v + theories/Classes/SetoidClass.v + theories/Classes/RelationPairs.v + theories/Classes/DecidableClass.v +
+ +
Bool: + Booleans (basic functions and results)
theories/Bool/Bool.v theories/Bool/BoolEq.v - theories/Bool/BoolOrder.v theories/Bool/DecBool.v theories/Bool/IfProp.v - theories/Bool/Zerob.v - theories/Bool/Bvector.v
-
Arith: - Basic Peano arithmetic +
Structures: + Basic "algebraic" structures: types with decidable equality and with order. + Common instances can be found in orders-ex. + More developped algebra can be found in the + mathematical components + library. +
+
+ theories/Structures/Equalities.v + theories/Structures/Orders.v + theories/Structures/OrdersTac.v + theories/Structures/OrdersFacts.v + theories/Structures/GenericMinMax.v +
+ +
Arith-base: + Basic Peano Arithmetic. + Everything can be loaded with From Stdlib Require Import Arith_base. + To enjoy the ring and lia automatic tactic, you additionally need to load + arith below, using From Stdlib Require Import Arith Lia.
theories/Arith/PeanoNat.v @@ -94,19 +107,79 @@ The standard library is composed of the following subdirectories:

theories/Arith/Peano_dec.v theories/Arith/Compare_dec.v (theories/Arith/Arith_base.v) - (theories/Arith/Arith.v) theories/Arith/Compare.v theories/Arith/EqNat.v theories/Arith/Euclid.v theories/Arith/Factorial.v theories/Arith/Wf_nat.v theories/Arith/Cantor.v + theories/Arith/Zerob.v + theories/Numbers/NumPrelude.v + theories/Numbers/NatInt/NZAdd.v + theories/Numbers/NatInt/NZAddOrder.v + theories/Numbers/NatInt/NZAxioms.v + theories/Numbers/NatInt/NZBase.v + theories/Numbers/NatInt/NZMul.v + theories/Numbers/NatInt/NZDiv.v + theories/Numbers/NatInt/NZMulOrder.v + theories/Numbers/NatInt/NZOrder.v + theories/Numbers/NatInt/NZParity.v + theories/Numbers/NatInt/NZPow.v + theories/Numbers/NatInt/NZSqrt.v + theories/Numbers/NatInt/NZLog.v + theories/Numbers/NatInt/NZGcd.v + theories/Numbers/NatInt/NZBits.v + theories/Numbers/Natural/Abstract/NAdd.v + theories/Numbers/Natural/Abstract/NAddOrder.v + theories/Numbers/Natural/Abstract/NAxioms.v + theories/Numbers/Natural/Abstract/NBase.v + theories/Numbers/Natural/Abstract/NMulOrder.v + theories/Numbers/Natural/Abstract/NOrder.v + theories/Numbers/Natural/Abstract/NStrongRec.v + theories/Numbers/Natural/Abstract/NSub.v + theories/Numbers/Natural/Abstract/NDiv.v + theories/Numbers/Natural/Abstract/NDiv0.v + theories/Numbers/Natural/Abstract/NMaxMin.v + theories/Numbers/Natural/Abstract/NParity.v + theories/Numbers/Natural/Abstract/NPow.v + theories/Numbers/Natural/Abstract/NSqrt.v + theories/Numbers/Natural/Abstract/NLog.v + theories/Numbers/Natural/Abstract/NGcd.v + theories/Numbers/Natural/Abstract/NLcm.v + theories/Numbers/Natural/Abstract/NLcm0.v + theories/Numbers/Natural/Abstract/NBits.v + theories/Numbers/Natural/Abstract/NProperties.v + theories/Classes/SetoidDec.v +
+ +
Lists: + Polymorphic lists +
+
+ theories/Lists/List.v + theories/Lists/ListDec.v + theories/Lists/ListSet.v + theories/Lists/ListTactics.v + theories/Numbers/NaryFunctions.v + theories/Logic/WKL.v + theories/Classes/EquivDec.v
-
PArith: - Binary positive integers +
Streams: + Streams (infinite sequences)
+ theories/Streams/Streams.v + theories/Streams/StreamMemo.v +
+ +
PArith: + Binary representation of positive integers for effective computation. + You may also want narith and zarith below for N and Z + built on top of positive. +
+
+ theories/Numbers/AltBinNotations.v theories/PArith/BinPosDef.v theories/PArith/BinPos.v theories/PArith/Pnat.v @@ -114,7 +187,7 @@ The standard library is composed of the following subdirectories:

(theories/PArith/PArith.v)
-
NArith: +
NArith: Binary natural numbers
@@ -128,10 +201,27 @@ The standard library is composed of the following subdirectories:

(theories/NArith/NArith.v)
-
ZArith: - Binary integers +
ZArith-base: + Basic binary integers
+ theories/Numbers/Integer/Abstract/ZAdd.v + theories/Numbers/Integer/Abstract/ZAddOrder.v + theories/Numbers/Integer/Abstract/ZAxioms.v + theories/Numbers/Integer/Abstract/ZBase.v + theories/Numbers/Integer/Abstract/ZLt.v + theories/Numbers/Integer/Abstract/ZMul.v + theories/Numbers/Integer/Abstract/ZMulOrder.v + theories/Numbers/Integer/Abstract/ZSgnAbs.v + theories/Numbers/Integer/Abstract/ZMaxMin.v + theories/Numbers/Integer/Abstract/ZParity.v + theories/Numbers/Integer/Abstract/ZPow.v + theories/Numbers/Integer/Abstract/ZGcd.v + theories/Numbers/Integer/Abstract/ZLcm.v + theories/Numbers/Integer/Abstract/ZBits.v + theories/Numbers/Integer/Abstract/ZProperties.v + theories/Numbers/Integer/Abstract/ZDivFloor.v + theories/Numbers/Integer/Abstract/ZDivTrunc.v theories/ZArith/BinIntDef.v theories/ZArith/BinInt.v theories/ZArith/Zorder.v @@ -149,94 +239,74 @@ The standard library is composed of the following subdirectories:

theories/ZArith/Wf_Z.v theories/ZArith/Zhints.v (theories/ZArith/ZArith_base.v) + theories/ZArith/Zpow_alt.v + theories/ZArith/Int.v +
+ +
Ring: + Ring tactic. +
+
theories/ZArith/Zcomplements.v theories/ZArith/Zpow_def.v - theories/ZArith/Zpow_alt.v - theories/ZArith/Zpower.v theories/ZArith/Zdiv.v - theories/ZArith/Zquot.v - (theories/ZArith/ZArith.v) - theories/ZArith/Zgcd_alt.v - theories/ZArith/Zwf.v theories/ZArith/Znumtheory.v - theories/ZArith/Int.v - theories/ZArith/Zpow_facts.v - theories/ZArith/Zdiv_facts.v - theories/ZArith/Zbitwise.v
-
QArith: - Rational numbers +
Arith: + Basic Peano arithmetic
- theories/QArith/QArith_base.v - theories/QArith/Qabs.v - theories/QArith/Qpower.v - theories/QArith/Qreduction.v - theories/QArith/Qring.v - theories/QArith/Qfield.v - (theories/QArith/QArith.v) - theories/QArith/Qreals.v - theories/QArith/Qcanon.v - theories/QArith/Qcabs.v - theories/QArith/Qround.v - theories/QArith/QOrderedType.v - theories/QArith/Qminmax.v + (theories/Arith/Arith.v)
-
Numbers: - An experimental modular architecture for arithmetic +
ZArith: + Binary encoding of integers. + This binary encoding was initially developped to enable effective + computations, compared to the unary encoding of nat. Proofs were then added + making the types usable for mathematical proofs, although this was not + the initial intent. If even-more efficient computations are needed, look + at the primitive-int package below for 63 bits machine arithmetic + or the coq-bignums package for arbitrary precision machine arithmetic. + Everything can be imported with From Stdlib Require Import ZArith. + Also contains the migromega tactic that can be loaded with + From Stdlib Require Import Lia.
-
-
  Prelude: -
-
- theories/Numbers/NumPrelude.v - theories/Numbers/NaryFunctions.v - theories/Numbers/AltBinNotations.v + theories/ZArith/Zpower.v + theories/ZArith/Zquot.v + (theories/ZArith/ZArith.v) + theories/ZArith/Zgcd_alt.v + theories/ZArith/Zwf.v + theories/ZArith/Zpow_facts.v + theories/ZArith/Zdiv_facts.v + theories/ZArith/Zbitwise.v theories/Numbers/DecimalFacts.v theories/Numbers/DecimalNat.v theories/Numbers/DecimalPos.v theories/Numbers/DecimalN.v theories/Numbers/DecimalZ.v - theories/Numbers/DecimalQ.v - theories/Numbers/DecimalR.v - theories/Numbers/DecimalString.v theories/Numbers/HexadecimalFacts.v theories/Numbers/HexadecimalNat.v theories/Numbers/HexadecimalPos.v theories/Numbers/HexadecimalN.v theories/Numbers/HexadecimalZ.v - theories/Numbers/HexadecimalQ.v - theories/Numbers/HexadecimalR.v - theories/Numbers/HexadecimalString.v -
+
-
  NatInt: - Abstract mixed natural/integer/cyclic arithmetic -
-
- theories/Numbers/NatInt/NZAdd.v - theories/Numbers/NatInt/NZAddOrder.v - theories/Numbers/NatInt/NZAxioms.v - theories/Numbers/NatInt/NZBase.v - theories/Numbers/NatInt/NZMul.v - theories/Numbers/NatInt/NZDiv.v - theories/Numbers/NatInt/NZMulOrder.v - theories/Numbers/NatInt/NZOrder.v - theories/Numbers/NatInt/NZParity.v - theories/Numbers/NatInt/NZPow.v - theories/Numbers/NatInt/NZSqrt.v - theories/Numbers/NatInt/NZLog.v - theories/Numbers/NatInt/NZGcd.v - theories/Numbers/NatInt/NZBits.v -
+
Unicode: + Unicode-based alternative notations +
+
+ theories/Unicode/Utf8_core.v + theories/Unicode/Utf8.v +
-
  Cyclic: - Abstract and 63-bits-based cyclic arithmetic -
-
+
Primitive Integers: + Interface for hardware integers (63 rather than 64 bits due to OCaml + garbage collector). This enables very efficient arithmetic, for developing + tactics for proofs by reflection for instance. +
+
theories/Numbers/Cyclic/Abstract/CyclicAxioms.v theories/Numbers/Cyclic/Abstract/NZCyclic.v theories/Numbers/Cyclic/Abstract/DoubleType.v @@ -244,79 +314,85 @@ The standard library is composed of the following subdirectories:

theories/Numbers/Cyclic/Int63/Uint63.v theories/Numbers/Cyclic/Int63/Sint63.v theories/Numbers/Cyclic/Int63/Ring63.v -
- -
  Natural: - Abstract and 63-bits-words-based natural arithmetic -
-
- theories/Numbers/Natural/Abstract/NAdd.v - theories/Numbers/Natural/Abstract/NAddOrder.v - theories/Numbers/Natural/Abstract/NAxioms.v - theories/Numbers/Natural/Abstract/NBase.v - theories/Numbers/Natural/Abstract/NMulOrder.v - theories/Numbers/Natural/Abstract/NOrder.v - theories/Numbers/Natural/Abstract/NStrongRec.v - theories/Numbers/Natural/Abstract/NSub.v - theories/Numbers/Natural/Abstract/NDiv.v - theories/Numbers/Natural/Abstract/NDiv0.v - theories/Numbers/Natural/Abstract/NMaxMin.v - theories/Numbers/Natural/Abstract/NParity.v - theories/Numbers/Natural/Abstract/NPow.v - theories/Numbers/Natural/Abstract/NSqrt.v - theories/Numbers/Natural/Abstract/NLog.v - theories/Numbers/Natural/Abstract/NGcd.v - theories/Numbers/Natural/Abstract/NLcm.v - theories/Numbers/Natural/Abstract/NLcm0.v - theories/Numbers/Natural/Abstract/NBits.v - theories/Numbers/Natural/Abstract/NProperties.v -
- -
  Integer: - Abstract and concrete (especially 63-bits-words-based) integer - arithmetic -
-
- theories/Numbers/Integer/Abstract/ZAdd.v - theories/Numbers/Integer/Abstract/ZAddOrder.v - theories/Numbers/Integer/Abstract/ZAxioms.v - theories/Numbers/Integer/Abstract/ZBase.v - theories/Numbers/Integer/Abstract/ZLt.v - theories/Numbers/Integer/Abstract/ZMul.v - theories/Numbers/Integer/Abstract/ZMulOrder.v - theories/Numbers/Integer/Abstract/ZSgnAbs.v - theories/Numbers/Integer/Abstract/ZMaxMin.v - theories/Numbers/Integer/Abstract/ZParity.v - theories/Numbers/Integer/Abstract/ZPow.v - theories/Numbers/Integer/Abstract/ZGcd.v - theories/Numbers/Integer/Abstract/ZLcm.v - theories/Numbers/Integer/Abstract/ZBits.v - theories/Numbers/Integer/Abstract/ZProperties.v - theories/Numbers/Integer/Abstract/ZDivFloor.v - theories/Numbers/Integer/Abstract/ZDivTrunc.v -
+ -
  Floats: - Floating-point arithmetic -
-
+
Floats: + Efficient machine floating-point arithmetic + Interface to hardware floating-point arithmetic for efficient computations. + This offers a basic model of floating-point arithmetic but is not very + usable alone. Look at the coq-flocq package for an actual model of + floating-point arithmetic, including links to Stdlib reals and the current + Floats. +
+
theories/Floats/FloatLemmas.v (theories/Floats/Floats.v) -
-
-
Relations: - Relations (definitions and basic results) +
Primitive Arrays: + Persistent native arrays, enabling efficient computations with arrays.
- theories/Relations/Relation_Operators.v - theories/Relations/Relations.v - theories/Relations/Operators_Properties.v + theories/Array/PArray.v +
+ +
Vectors: + Dependent datastructures storing their length. + This is known to be technically difficult to use. It is often much better + to use a dependent pair with a list and a proof about its length, + as provided by the tuple type in package coq-mathcomp-ssreflect, + allowing almost transparent mixing with lists. +
+
+ theories/Vectors/Fin.v + theories/Vectors/VectorDef.v + theories/Vectors/VectorSpec.v + theories/Vectors/VectorEq.v + (theories/Vectors/Vector.v) + theories/Vectors/FinFun.v + theories/Vectors/Bvector.v +
+ +
Strings + Implementation of string as list of ASCII characters + Beware that there is also a Byte.v file in Init. +
+
+ theories/Strings/Byte.v + theories/Strings/Ascii.v + theories/Strings/String.v + theories/Strings/BinaryString.v + theories/Strings/HexString.v + theories/Strings/OctalString.v + theories/Numbers/DecimalString.v + theories/Numbers/HexadecimalString.v +
+ +
Classical Logic: + Classical logic, dependent equality, extensionality, choice axioms +
+
+ theories/Logic/Classical_Pred_Type.v + theories/Logic/Classical_Prop.v + (theories/Logic/Classical.v) + theories/Logic/ClassicalFacts.v + theories/Logic/ChoiceFacts.v + theories/Logic/ClassicalChoice.v + theories/Logic/ClassicalDescription.v + theories/Logic/ClassicalEpsilon.v + theories/Logic/ClassicalUniqueChoice.v + theories/Logic/SetoidChoice.v + theories/Logic/Diaconescu.v + theories/Logic/Description.v + theories/Logic/Epsilon.v + theories/Logic/IndefiniteDescription.v + theories/Logic/PropExtensionality.v
-
Sets: - Sets (classical, constructive, finite, infinite, powerset, etc.) +
Sets: + Classical sets. This is known to be outdated. More modern alternatives + can be found in coq-mathcomp-ssreflect (for finite sets) + and coq-mathcomp-classical (for classical sets) or coq-stdpp.
theories/Sets/Classical_sets.v @@ -343,47 +419,12 @@ The standard library is composed of the following subdirectories:

theories/Sets/Uniset.v
-
Classes: -
-
- theories/Classes/Morphisms_Relations.v - theories/Classes/CEquivalence.v - theories/Classes/EquivDec.v - theories/Classes/SetoidClass.v - theories/Classes/SetoidDec.v - theories/Classes/RelationPairs.v - theories/Classes/DecidableClass.v -
- -
Lists: - Polymorphic lists, Streams (infinite sequences) -
-
- theories/Lists/List.v - theories/Lists/ListDec.v - theories/Lists/ListSet.v - theories/Lists/SetoidList.v - theories/Lists/SetoidPermutation.v - theories/Lists/Streams.v - theories/Lists/StreamMemo.v - theories/Lists/ListTactics.v -
- -
Vectors: - Dependent datastructures storing their length -
-
- theories/Vectors/Fin.v - theories/Vectors/VectorDef.v - theories/Vectors/VectorSpec.v - theories/Vectors/VectorEq.v - (theories/Vectors/Vector.v) -
- -
Sorting: +
Sorting: Axiomatizations of sorts
+ theories/Sorting/SetoidList.v + theories/Sorting/SetoidPermutation.v theories/Sorting/Heap.v theories/Sorting/Permutation.v theories/Sorting/Sorting.v @@ -394,88 +435,81 @@ The standard library is composed of the following subdirectories:

theories/Sorting/CPermutation.v
-
Wellfounded: - Well-founded Relations +
Structure Instances: + Instances of order structures from Structures above. + DecidableType* and OrderedType* are there only for compatibility.
- theories/Wellfounded/Disjoint_Union.v - theories/Wellfounded/Inclusion.v - theories/Wellfounded/Inverse_Image.v - theories/Wellfounded/Lexicographic_Exponentiation.v - theories/Wellfounded/Lexicographic_Product.v - theories/Wellfounded/List_Extension.v - theories/Wellfounded/Transitive_Closure.v - theories/Wellfounded/Union.v - theories/Wellfounded/Wellfounded.v - theories/Wellfounded/Well_Ordering.v + theories/Structures/EqualitiesFacts.v + theories/Structures/OrdersAlt.v + theories/Structures/OrdersEx.v + theories/Structures/OrdersLists.v + theories/Structures/DecidableType.v + theories/Structures/DecidableTypeEx.v + theories/Structures/OrderedType.v + theories/Structures/OrderedTypeAlt.v + theories/Structures/OrderedTypeEx.v + theories/Structures/BoolOrder.v
-
MSets: - Modular implementation of finite sets using lists or - efficient trees. This is a modernization of FSets. +
Primitive Strings + Native string type
- theories/MSets/MSetInterface.v - theories/MSets/MSetFacts.v - theories/MSets/MSetDecide.v - theories/MSets/MSetProperties.v - theories/MSets/MSetEqProperties.v - theories/MSets/MSetWeakList.v - theories/MSets/MSetList.v - theories/MSets/MSetGenTree.v - theories/MSets/MSetAVL.v - theories/MSets/MSetRBT.v - theories/MSets/MSetPositive.v - theories/MSets/MSetToFiniteSet.v - (theories/MSets/MSets.v) + theories/Strings/PString.v
-
FSets: - Modular implementation of finite sets/maps using lists or - efficient trees. For sets, please consider the more - modern MSets. +
QArith-base: + Basic binary rational numbers. + Look at qarith below for more functionalities with the field + and Lqa tactics.
- theories/FSets/FSetInterface.v - theories/FSets/FSetBridge.v - theories/FSets/FSetFacts.v - theories/FSets/FSetDecide.v - theories/FSets/FSetProperties.v - theories/FSets/FSetEqProperties.v - theories/FSets/FSetList.v - theories/FSets/FSetWeakList.v - theories/FSets/FSetCompat.v - theories/FSets/FSetAVL.v - theories/FSets/FSetPositive.v - (theories/FSets/FSets.v) - theories/FSets/FSetToFiniteSet.v - theories/FSets/FMapInterface.v - theories/FSets/FMapWeakList.v - theories/FSets/FMapList.v - theories/FSets/FMapPositive.v - theories/FSets/FMapFacts.v - (theories/FSets/FMaps.v) - theories/FSets/FMapAVL.v - theories/FSets/FMapFullAVL.v + theories/QArith/QArith_base.v + theories/QArith/Qreduction.v + theories/QArith/QOrderedType.v + theories/QArith/Qminmax.v
-
Strings - Implementation of string as list of ascii characters +
Field: + Field tactic.
- theories/Strings/Byte.v - theories/Strings/Ascii.v - theories/Strings/String.v - theories/Strings/BinaryString.v - theories/Strings/HexString.v - theories/Strings/OctalString.v + theories/QArith/Qpower.v + theories/QArith/Qring.v + theories/QArith/Qfield.v + theories/QArith/Qcanon.v + theories/QArith/Qround.v +
+ +
QArith: + Binary rational numbers, made on top of zarith. + Those enable effective computations in arbitrary precision exact rational + arithmetic. Those rationals are known to be difficult to use for + mathematical proofs because there is no canonical representation + (2/3 and 4/6 are not equal for instance). For even more efficient + computation, look at the coq-bignums package which uses machine integers. + For mathematical proofs, the rat type of the coq-mathcomp-algebra package + are much more comfortable, although they don't enjoy efficient computation + (coq-coqeal offers a refinement with coq-bignums that enables to enjoy + both aspects). +
+
+ theories/QArith/Qabs.v + (theories/QArith/QArith.v) + theories/QArith/Qcabs.v + theories/Numbers/DecimalQ.v + theories/Numbers/HexadecimalQ.v
-
Reals: - Formalization of real numbers +
Reals: + Formalization of real numbers. + Most of it can be loaded with From Stdlib Require Import Reals. + Also contains the micromega tactics, loadable with + From Stdlib Require Import Lra. and From Stdlib Require Import Psatz.
-
+
Classical Reals: Real numbers with excluded middle, total order and least upper bounds
@@ -560,7 +594,7 @@ The standard library is composed of the following subdirectories:

theories/Reals/Abstract/ConstructiveLimits.v theories/Reals/Abstract/ConstructiveMinMax.v theories/Reals/Abstract/ConstructivePower.v - theories/Reals/Abstract/ConstructiveSum.v + theories/Reals/Abstract/ConstructiveSum.v
Constructive Cauchy Reals: Cauchy sequences of rational numbers, implementation of the interface. EXPERIMENTAL @@ -570,50 +604,84 @@ The standard library is composed of the following subdirectories:

theories/Reals/Cauchy/ConstructiveCauchyReals.v theories/Reals/Cauchy/ConstructiveCauchyRealsMult.v theories/Reals/Cauchy/ConstructiveCauchyAbs.v + theories/Reals/Qreals.v + theories/Numbers/DecimalR.v + theories/Numbers/HexadecimalR.v -
Program: - Support for dependently-typed programming -
-
- theories/Program/Subset.v - theories/Program/Equality.v - theories/Program/Syntax.v - theories/Program/WfExtensionality.v - theories/Program/Program.v - theories/Program/Combinators.v -
- -
Unicode: - Unicode-based notations +
MSets: + Modular implementation of finite sets using lists or + efficient trees. This is a modernization of FSets.
- theories/Unicode/Utf8_core.v - theories/Unicode/Utf8.v + theories/MSets/MSetInterface.v + theories/MSets/MSetFacts.v + theories/MSets/MSetDecide.v + theories/MSets/MSetProperties.v + theories/MSets/MSetEqProperties.v + theories/MSets/MSetWeakList.v + theories/MSets/MSetList.v + theories/MSets/MSetGenTree.v + theories/MSets/MSetAVL.v + theories/MSets/MSetRBT.v + theories/MSets/MSetPositive.v + theories/MSets/MSetToFiniteSet.v + (theories/MSets/MSets.v)
-
Compat: - Compatibility wrappers for previous versions of Rocq +
FSets: + Modular implementation of finite sets/maps using lists or + efficient trees. For sets, please consider the more + modern MSets.
- theories/Compat/AdmitAxiom.v - theories/Compat/Stdlib818.v + theories/FSets/FSetInterface.v + theories/FSets/FSetBridge.v + theories/FSets/FSetFacts.v + theories/FSets/FSetDecide.v + theories/FSets/FSetProperties.v + theories/FSets/FSetEqProperties.v + theories/FSets/FSetList.v + theories/FSets/FSetWeakList.v + theories/FSets/FSetCompat.v + theories/FSets/FSetAVL.v + theories/FSets/FSetPositive.v + (theories/FSets/FSets.v) + theories/FSets/FSetToFiniteSet.v + theories/FSets/FMapInterface.v + theories/FSets/FMapWeakList.v + theories/FSets/FMapList.v + theories/FSets/FMapPositive.v + theories/FSets/FMapFacts.v + (theories/FSets/FMaps.v) + theories/FSets/FMapAVL.v + theories/FSets/FMapFullAVL.v
-
Array: - Persistent native arrays +
Wellfounded: + Well-founded Relations
- theories/Array/PArray.v + theories/Wellfounded/Disjoint_Union.v + theories/Wellfounded/Inclusion.v + theories/Wellfounded/Inverse_Image.v + theories/Wellfounded/Lexicographic_Exponentiation.v + theories/Wellfounded/Lexicographic_Product.v + theories/Wellfounded/List_Extension.v + theories/Wellfounded/Transitive_Closure.v + theories/Wellfounded/Union.v + theories/Wellfounded/Wellfounded.v + theories/Wellfounded/Well_Ordering.v
-
Primitive strings - Native string type +
Compat: + Compatibility wrappers for previous versions of Stdlib
- theories/Strings/PString.v + theories/Compat/AdmitAxiom.v + theories/Compat/Stdlib818.v
diff --git a/doc/stdlib/make-library-index b/doc/stdlib/make-library-index index c06797a3d0..b7361819d9 100755 --- a/doc/stdlib/make-library-index +++ b/doc/stdlib/make-library-index @@ -9,7 +9,7 @@ HIDDEN=$2 tmp=$(mktemp) tmp2=$(mktemp) -cp -f "$FILE.template" "$tmp" +sed -e '/#include depends.svg/r doc/stdlib/depends.svg' "$FILE.template" > "$tmp" echo -n "Building file index-list.prehtml... " LIBDIRS=$(find theories/* -type d ! -name .coq-native) diff --git a/test-suite/output/MExtraction.out b/test-suite/output/MExtraction.out index 179e588c09..7a08d63147 100644 --- a/test-suite/output/MExtraction.out +++ b/test-suite/output/MExtraction.out @@ -2142,59 +2142,6 @@ let simpl_cone cO cI ctimes ceqb e = match e with | _ -> PsatzAdd (t1, t2))) | _ -> e -type q = { qnum : z; qden : positive } - -(** val qeq_bool : q -> q -> bool **) - -let qeq_bool x y = - Z.eqb (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden)) - -(** val qle_bool : q -> q -> bool **) - -let qle_bool x y = - Z.leb (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden)) - -(** val qplus : q -> q -> q **) - -let qplus x y = - { qnum = (Z.add (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden))); - qden = (Coq_Pos.mul x.qden y.qden) } - -(** val qmult : q -> q -> q **) - -let qmult x y = - { qnum = (Z.mul x.qnum y.qnum); qden = (Coq_Pos.mul x.qden y.qden) } - -(** val qopp : q -> q **) - -let qopp x = - { qnum = (Z.opp x.qnum); qden = x.qden } - -(** val qminus : q -> q -> q **) - -let qminus x y = - qplus x (qopp y) - -(** val qinv : q -> q **) - -let qinv x = - match x.qnum with - | Z0 -> { qnum = Z0; qden = XH } - | Zpos p -> { qnum = (Zpos x.qden); qden = p } - | Zneg p -> { qnum = (Zneg x.qden); qden = p } - -(** val qpower_positive : q -> positive -> q **) - -let qpower_positive = - pow_pos qmult - -(** val qpower : q -> z -> q **) - -let qpower q0 = function -| Z0 -> { qnum = (Zpos XH); qden = XH } -| Zpos p -> qpower_positive q0 p -| Zneg p -> qinv (qpower_positive q0 p) - type 'a t = | Empty | Elt of 'a @@ -2525,6 +2472,59 @@ let zTautoChecker f w = tauto_checker zunsat zdeduce normalise0 negate (fun cl -> zChecker (map fst cl)) f w +type q = { qnum : z; qden : positive } + +(** val qeq_bool : q -> q -> bool **) + +let qeq_bool x y = + Z.eqb (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden)) + +(** val qle_bool : q -> q -> bool **) + +let qle_bool x y = + Z.leb (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden)) + +(** val qplus : q -> q -> q **) + +let qplus x y = + { qnum = (Z.add (Z.mul x.qnum (Zpos y.qden)) (Z.mul y.qnum (Zpos x.qden))); + qden = (Coq_Pos.mul x.qden y.qden) } + +(** val qmult : q -> q -> q **) + +let qmult x y = + { qnum = (Z.mul x.qnum y.qnum); qden = (Coq_Pos.mul x.qden y.qden) } + +(** val qopp : q -> q **) + +let qopp x = + { qnum = (Z.opp x.qnum); qden = x.qden } + +(** val qminus : q -> q -> q **) + +let qminus x y = + qplus x (qopp y) + +(** val qinv : q -> q **) + +let qinv x = + match x.qnum with + | Z0 -> { qnum = Z0; qden = XH } + | Zpos p -> { qnum = (Zpos x.qden); qden = p } + | Zneg p -> { qnum = (Zneg x.qden); qden = p } + +(** val qpower_positive : q -> positive -> q **) + +let qpower_positive = + pow_pos qmult + +(** val qpower : q -> z -> q **) + +let qpower q0 = function +| Z0 -> { qnum = (Zpos XH); qden = XH } +| Zpos p -> qpower_positive q0 p +| Zneg p -> qinv (qpower_positive q0 p) + type qWitness = q psatz (** val qWeakChecker : q nFormula list -> q psatz -> bool **) diff --git a/theories/Arith/Arith.v b/theories/Arith/Arith.v index 0e21b61d17..7d437dd3b1 100644 --- a/theories/Arith/Arith.v +++ b/theories/Arith/Arith.v @@ -8,5 +8,5 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Arith_base. -Require Export ArithRing. +From Stdlib Require Export Arith_base. +From Stdlib Require Export ArithRing. diff --git a/theories/Arith/Arith_base.v b/theories/Arith/Arith_base.v index 3f881e0f80..3e79a7fe6c 100644 --- a/theories/Arith/Arith_base.v +++ b/theories/Arith/Arith_base.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export PeanoNat. -Require Export Factorial. -Require Export Between. -Require Export Peano_dec. -Require Export Compare_dec. -Require Export EqNat. -Require Export Wf_nat. +From Stdlib Require Export PeanoNat. +From Stdlib Require Export Factorial. +From Stdlib Require Export Between. +From Stdlib Require Export Peano_dec. +From Stdlib Require Export Compare_dec. +From Stdlib Require Export EqNat. +From Stdlib Require Export Wf_nat. (** * [arith] hint database *) diff --git a/theories/Arith/Between.v b/theories/Arith/Between.v index 9a714b564e..40b93b166b 100644 --- a/theories/Arith/Between.v +++ b/theories/Arith/Between.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. +From Stdlib Require Import PeanoNat. Local Open Scope nat_scope. diff --git a/theories/Arith/Bool_nat.v b/theories/Arith/Bool_nat.v index c8d4fe3075..b0a92d1731 100644 --- a/theories/Arith/Bool_nat.v +++ b/theories/Arith/Bool_nat.v @@ -9,9 +9,9 @@ (************************************************************************) Attributes deprecated(since="8.20"). -Require Export Compare_dec. -Require Export Peano_dec. -Require Import Sumbool. +From Stdlib Require Export Compare_dec. +From Stdlib Require Export Peano_dec. +From Stdlib Require Import Sumbool. #[local] Set Warnings "-deprecated". diff --git a/theories/Arith/Cantor.v b/theories/Arith/Cantor.v index 850f822f9b..f662ac4ed7 100644 --- a/theories/Arith/Cantor.v +++ b/theories/Arith/Cantor.v @@ -10,7 +10,7 @@ (** Implementation of the Cantor pairing and its inverse function *) -Require Import PeanoNat Lia. +From Stdlib Require Import PeanoNat. (** Bijections between [nat * nat] and [nat] *) @@ -71,7 +71,14 @@ Qed. Lemma to_nat_spec x y : to_nat (x, y) * 2 = y * 2 + (y + x) * S (y + x). Proof. - cbn. induction (y + x) as [|n IHn]; cbn; lia. + cbn; induction (y + x) as [|n IHn]; cbn; [now rewrite !Nat.add_0_r|]. + rewrite <-plus_Sn_m, Nat.add_assoc, (Nat.add_comm y), <-Nat.add_assoc. + rewrite Nat.mul_add_distr_r, IHn, Nat.add_comm, <-Nat.add_assoc. + apply f_equal2; [reflexivity|]. + rewrite Nat.mul_comm, <-Nat.mul_add_distr_l. + rewrite <-!plus_Sn_m, <-(Nat.mul_1_l (S (S n))) at 1. + rewrite <-Nat.mul_add_distr_r. + now change 2 with (1 + 1); rewrite Nat.add_assoc, !Nat.add_1_r. Qed. Lemma to_nat_spec2 x y : @@ -84,5 +91,13 @@ Qed. Lemma to_nat_non_decreasing x y : y + x <= to_nat (x, y). Proof. - pose proof (to_nat_spec x y). nia. + pose proof (to_nat_spec x y). + rewrite (Nat.mul_le_mono_pos_r _ _ 2 Nat.lt_0_2), H. + rewrite Nat.mul_add_distr_r, <-Nat.add_le_mono_l. + case x as [|x]; [now rewrite Nat.mul_0_l; apply le_0_n|]. + rewrite Nat.mul_add_distr_r, <-(Nat.add_0_l (S x * 2)); apply Nat.add_le_mono. + now apply le_0_n. + apply Nat.mul_le_mono_l. + rewrite <-(Nat.add_1_r (y + _)), <-(Nat.add_1_r x). + now rewrite Nat.add_assoc, <-Nat.add_assoc; apply Nat.le_add_l. Qed. diff --git a/theories/Arith/Compare.v b/theories/Arith/Compare.v index baeac36acc..a2908d5b81 100644 --- a/theories/Arith/Compare.v +++ b/theories/Arith/Compare.v @@ -16,9 +16,9 @@ Notation not_eq_sym := not_eq_sym (only parsing). Implicit Types m n p q : nat. -Require Import Arith_base. -Require Import Peano_dec. -Require Import Compare_dec. +From Stdlib Require Import Arith_base. +From Stdlib Require Import Peano_dec. +From Stdlib Require Import Compare_dec. Definition le_or_le_S := le_le_S_dec. @@ -55,4 +55,4 @@ Proof. symmetry; apply Nat.add_0_r. Qed. -Require Export Wf_nat. +From Stdlib Require Export Wf_nat. diff --git a/theories/Arith/Compare_dec.v b/theories/Arith/Compare_dec.v index 5ffb34f64f..e560d97c67 100644 --- a/theories/Arith/Compare_dec.v +++ b/theories/Arith/Compare_dec.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat Decidable. +From Stdlib Require Import PeanoNat Decidable. Local Open Scope nat_scope. diff --git a/theories/Arith/EqNat.v b/theories/Arith/EqNat.v index 90d14d9641..a0143d75e5 100644 --- a/theories/Arith/EqNat.v +++ b/theories/Arith/EqNat.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. +From Stdlib Require Import PeanoNat. Local Open Scope nat_scope. (** Equality on natural numbers *) diff --git a/theories/Arith/Euclid.v b/theories/Arith/Euclid.v index 4ca69e5550..9d14295a16 100644 --- a/theories/Arith/Euclid.v +++ b/theories/Arith/Euclid.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. -Require Import Compare_dec. -Require Import Wf_nat. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import Compare_dec. +From Stdlib Require Import Wf_nat. Local Open Scope nat_scope. diff --git a/theories/Arith/Factorial.v b/theories/Arith/Factorial.v index c8ea17ca79..bb219a3ec3 100644 --- a/theories/Arith/Factorial.v +++ b/theories/Arith/Factorial.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. +From Stdlib Require Import PeanoNat. Local Open Scope nat_scope. (** Factorial *) diff --git a/theories/Arith/PeanoNat.v b/theories/Arith/PeanoNat.v index 556ae52d5e..b64bfe7b93 100644 --- a/theories/Arith/PeanoNat.v +++ b/theories/Arith/PeanoNat.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Import NAxioms NProperties OrdersFacts DecidableClass. +From Stdlib Require Import NAxioms NProperties OrdersFacts DecidableClass. (** Implementation of [NAxiomsSig] by [nat] *) diff --git a/theories/Arith/Peano_dec.v b/theories/Arith/Peano_dec.v index 893e6b8af3..38fac99899 100644 --- a/theories/Arith/Peano_dec.v +++ b/theories/Arith/Peano_dec.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Decidable PeanoNat. -Require Eqdep_dec. +From Stdlib Require Import Decidable PeanoNat. +From Stdlib Require Eqdep_dec. Local Open Scope nat_scope. Implicit Types m n x y : nat. diff --git a/theories/Arith/Wf_nat.v b/theories/Arith/Wf_nat.v index 5701f95846..c68fa0ae25 100644 --- a/theories/Arith/Wf_nat.v +++ b/theories/Arith/Wf_nat.v @@ -10,7 +10,7 @@ (** Well-founded relations and natural numbers *) -Require Import PeanoNat. +From Stdlib Require Import PeanoNat. Local Open Scope nat_scope. @@ -241,8 +241,8 @@ Qed. Set Implicit Arguments. -Require Import Compare_dec. -Require Import Decidable. +From Stdlib Require Import Compare_dec. +From Stdlib Require Import Decidable. Definition has_unique_least_element (A:Type) (R:A->A->Prop) (P:A->Prop) := exists! x, P x /\ forall x', P x' -> R x x'. diff --git a/theories/Bool/Zerob.v b/theories/Arith/Zerob.v similarity index 95% rename from theories/Bool/Zerob.v rename to theories/Arith/Zerob.v index c11822e0d3..cb104f566f 100644 --- a/theories/Bool/Zerob.v +++ b/theories/Arith/Zerob.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Arith. -Require Import Bool. +From Stdlib Require Import Arith_base. +From Stdlib Require Import Bool. Local Open Scope nat_scope. diff --git a/theories/Arith/_All/Arith.v b/theories/Arith/_All/Arith.v new file mode 120000 index 0000000000..d84b706124 --- /dev/null +++ b/theories/Arith/_All/Arith.v @@ -0,0 +1 @@ +../Arith.v \ No newline at end of file diff --git a/theories/Arith/_Base/Arith_base.v b/theories/Arith/_Base/Arith_base.v new file mode 120000 index 0000000000..4d110e5061 --- /dev/null +++ b/theories/Arith/_Base/Arith_base.v @@ -0,0 +1 @@ +../Arith_base.v \ No newline at end of file diff --git a/theories/Arith/_Base/Between.v b/theories/Arith/_Base/Between.v new file mode 120000 index 0000000000..dc0ee7986e --- /dev/null +++ b/theories/Arith/_Base/Between.v @@ -0,0 +1 @@ +../Between.v \ No newline at end of file diff --git a/theories/Arith/_Base/Bool_nat.v b/theories/Arith/_Base/Bool_nat.v new file mode 120000 index 0000000000..235f6c87a2 --- /dev/null +++ b/theories/Arith/_Base/Bool_nat.v @@ -0,0 +1 @@ +../Bool_nat.v \ No newline at end of file diff --git a/theories/Arith/_Base/Cantor.v b/theories/Arith/_Base/Cantor.v new file mode 120000 index 0000000000..62c6ca75b5 --- /dev/null +++ b/theories/Arith/_Base/Cantor.v @@ -0,0 +1 @@ +../Cantor.v \ No newline at end of file diff --git a/theories/Arith/_Base/Compare.v b/theories/Arith/_Base/Compare.v new file mode 120000 index 0000000000..b1cd8ddf47 --- /dev/null +++ b/theories/Arith/_Base/Compare.v @@ -0,0 +1 @@ +../Compare.v \ No newline at end of file diff --git a/theories/Arith/_Base/Compare_dec.v b/theories/Arith/_Base/Compare_dec.v new file mode 120000 index 0000000000..ca607846f4 --- /dev/null +++ b/theories/Arith/_Base/Compare_dec.v @@ -0,0 +1 @@ +../Compare_dec.v \ No newline at end of file diff --git a/theories/Arith/_Base/EqNat.v b/theories/Arith/_Base/EqNat.v new file mode 120000 index 0000000000..ae004fa39f --- /dev/null +++ b/theories/Arith/_Base/EqNat.v @@ -0,0 +1 @@ +../EqNat.v \ No newline at end of file diff --git a/theories/Arith/_Base/Euclid.v b/theories/Arith/_Base/Euclid.v new file mode 120000 index 0000000000..9a5f3ea38b --- /dev/null +++ b/theories/Arith/_Base/Euclid.v @@ -0,0 +1 @@ +../Euclid.v \ No newline at end of file diff --git a/theories/Arith/_Base/Factorial.v b/theories/Arith/_Base/Factorial.v new file mode 120000 index 0000000000..9778decb08 --- /dev/null +++ b/theories/Arith/_Base/Factorial.v @@ -0,0 +1 @@ +../Factorial.v \ No newline at end of file diff --git a/theories/Arith/_Base/PeanoNat.v b/theories/Arith/_Base/PeanoNat.v new file mode 120000 index 0000000000..b702831635 --- /dev/null +++ b/theories/Arith/_Base/PeanoNat.v @@ -0,0 +1 @@ +../PeanoNat.v \ No newline at end of file diff --git a/theories/Arith/_Base/Peano_dec.v b/theories/Arith/_Base/Peano_dec.v new file mode 120000 index 0000000000..e8b931da27 --- /dev/null +++ b/theories/Arith/_Base/Peano_dec.v @@ -0,0 +1 @@ +../Peano_dec.v \ No newline at end of file diff --git a/theories/Arith/_Base/Wf_nat.v b/theories/Arith/_Base/Wf_nat.v new file mode 120000 index 0000000000..8012ddf208 --- /dev/null +++ b/theories/Arith/_Base/Wf_nat.v @@ -0,0 +1 @@ +../Wf_nat.v \ No newline at end of file diff --git a/theories/Arith/_Base/Zerob.v b/theories/Arith/_Base/Zerob.v new file mode 120000 index 0000000000..090aaf9523 --- /dev/null +++ b/theories/Arith/_Base/Zerob.v @@ -0,0 +1 @@ +../Zerob.v \ No newline at end of file diff --git a/theories/Array/_All/PArray.v b/theories/Array/_All/PArray.v new file mode 120000 index 0000000000..d5b4df3102 --- /dev/null +++ b/theories/Array/_All/PArray.v @@ -0,0 +1 @@ +../PArray.v \ No newline at end of file diff --git a/theories/Array/_CorelibWrapper/ArrayAxioms.v b/theories/Array/_CorelibWrapper/ArrayAxioms.v new file mode 120000 index 0000000000..a4b12e405b --- /dev/null +++ b/theories/Array/_CorelibWrapper/ArrayAxioms.v @@ -0,0 +1 @@ +../ArrayAxioms.v \ No newline at end of file diff --git a/theories/Array/_CorelibWrapper/PrimArray.v b/theories/Array/_CorelibWrapper/PrimArray.v new file mode 120000 index 0000000000..74c2863442 --- /dev/null +++ b/theories/Array/_CorelibWrapper/PrimArray.v @@ -0,0 +1 @@ +../PrimArray.v \ No newline at end of file diff --git a/theories/BinNums/_CorelibWrapper/IntDef.v b/theories/BinNums/_CorelibWrapper/IntDef.v new file mode 120000 index 0000000000..ee7bf8eaa0 --- /dev/null +++ b/theories/BinNums/_CorelibWrapper/IntDef.v @@ -0,0 +1 @@ +../IntDef.v \ No newline at end of file diff --git a/theories/BinNums/_CorelibWrapper/NatDef.v b/theories/BinNums/_CorelibWrapper/NatDef.v new file mode 120000 index 0000000000..42f9f680f6 --- /dev/null +++ b/theories/BinNums/_CorelibWrapper/NatDef.v @@ -0,0 +1 @@ +../NatDef.v \ No newline at end of file diff --git a/theories/BinNums/_CorelibWrapper/PosDef.v b/theories/BinNums/_CorelibWrapper/PosDef.v new file mode 120000 index 0000000000..1d52870e98 --- /dev/null +++ b/theories/BinNums/_CorelibWrapper/PosDef.v @@ -0,0 +1 @@ +../PosDef.v \ No newline at end of file diff --git a/theories/Bool/Bool.v b/theories/Bool/Bool.v index 2cedc26b9c..bf70f69a36 100644 --- a/theories/Bool/Bool.v +++ b/theories/Bool/Bool.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import DecidableClass. +From Stdlib Require Import DecidableClass. (** The type [bool] is defined in the prelude as [[ diff --git a/theories/Bool/BoolEq.v b/theories/Bool/BoolEq.v index f2d654d749..501ba2db3d 100644 --- a/theories/Bool/BoolEq.v +++ b/theories/Bool/BoolEq.v @@ -13,7 +13,7 @@ (** Properties of a boolean equality *) -Require Export Bool. +From Stdlib Require Export Bool. Section Bool_eq_dec. diff --git a/theories/Bool/IfProp.v b/theories/Bool/IfProp.v index b4149538ad..f608aa249c 100644 --- a/theories/Bool/IfProp.v +++ b/theories/Bool/IfProp.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool. +From Stdlib Require Import Bool. Inductive IfProp (A B:Prop) : bool -> Prop := | Iftrue : A -> IfProp A B true diff --git a/theories/Classes/CEquivalence.v b/theories/Classes/CEquivalence.v index 6d815610fd..ef47a821ae 100644 --- a/theories/Classes/CEquivalence.v +++ b/theories/Classes/CEquivalence.v @@ -14,13 +14,13 @@ Institution: LRI, CNRS UMR 8623 - University Paris Sud *) -Require Import Stdlib.Program.Basics. -Require Import Stdlib.Program.Tactics. +From Stdlib.Program Require Import Basics. +From Stdlib.Program Require Import Tactics. -Require Import Stdlib.Classes.Init. -Require Import Relation_Definitions. -Require Export Stdlib.Classes.CRelationClasses. -Require Import Stdlib.Classes.CMorphisms. +From Stdlib.Classes Require Import Init. +From Stdlib Require Import Relation_Definitions. +From Stdlib.Classes Require Export CRelationClasses. +From Stdlib.Classes Require Import CMorphisms. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Classes/EquivDec.v b/theories/Classes/EquivDec.v index bd8ae905aa..b3202e2353 100644 --- a/theories/Classes/EquivDec.v +++ b/theories/Classes/EquivDec.v @@ -16,15 +16,15 @@ (** Export notations. *) -Require Export Stdlib.Classes.Equivalence. +From Stdlib.Classes Require Export Equivalence. (** The [DecidableSetoid] class asserts decidability of a [Setoid]. It can be useful in proofs to reason more classically. *) -Require Import Stdlib.Logic.Decidable. -Require Import Stdlib.Bool.Bool. -Require Import Stdlib.Arith.Peano_dec. -Require Import Stdlib.Program.Program. +From Stdlib.Logic Require Import Decidable. +From Stdlib.Bool Require Import Bool. +From Stdlib.Arith Require Import Peano_dec. +From Stdlib.Program Require Import Program. Generalizable Variables A B R. @@ -135,7 +135,7 @@ Program Instance bool_function_eqdec `(EqDec A eq) : EqDec (bool -> A) eq := destruct x ; auto. Qed. -Require Import List. +From Stdlib Require Import List. #[global] Program Instance list_eqdec `(eqa : EqDec A eq) : EqDec (list A) eq := diff --git a/theories/Classes/Morphisms_Relations.v b/theories/Classes/Morphisms_Relations.v index c38d34cefb..ff6cfc4277 100644 --- a/theories/Classes/Morphisms_Relations.v +++ b/theories/Classes/Morphisms_Relations.v @@ -14,9 +14,9 @@ Institution: LRI, CNRS UMR 8623 - University Paris Sud *) -Require Import Relation_Definitions. -Require Import Stdlib.Classes.Morphisms. -Require Import Stdlib.Program.Program. +From Stdlib Require Import Relation_Definitions. +From Stdlib.Classes Require Import Morphisms. +From Stdlib.Program Require Import Program. Generalizable Variables A l. diff --git a/theories/Classes/RelationPairs.v b/theories/Classes/RelationPairs.v index cd0b778c61..97d95a5f50 100644 --- a/theories/Classes/RelationPairs.v +++ b/theories/Classes/RelationPairs.v @@ -11,8 +11,7 @@ (** * Relations over pairs *) -Require Import SetoidList. -Require Import Relations Morphisms. +From Stdlib Require Import Relations Morphisms. (* NB: This should be system-wide someday, but for that we need to fix the simpl tactic, since "simpl fst" would be refused for the moment. diff --git a/theories/Classes/SetoidClass.v b/theories/Classes/SetoidClass.v index b17be64726..1b7a926673 100644 --- a/theories/Classes/SetoidClass.v +++ b/theories/Classes/SetoidClass.v @@ -19,11 +19,11 @@ Unset Strict Implicit. Generalizable Variables A. -Require Import Stdlib.Program.Program. +From Stdlib.Program Require Import Program. -Require Import Relation_Definitions. -Require Export Stdlib.Classes.RelationClasses. -Require Export Stdlib.Classes.Morphisms. +From Stdlib Require Import Relation_Definitions. +From Stdlib.Classes Require Export RelationClasses. +From Stdlib.Classes Require Export Morphisms. (** A setoid wraps an equivalence. *) diff --git a/theories/Classes/SetoidDec.v b/theories/Classes/SetoidDec.v index 7e6d9282d0..3c72131270 100644 --- a/theories/Classes/SetoidDec.v +++ b/theories/Classes/SetoidDec.v @@ -22,12 +22,12 @@ Generalizable Variables A B . (** Export notations. *) -Require Export Stdlib.Classes.SetoidClass. +From Stdlib.Classes Require Export SetoidClass. (** The [DecidableSetoid] class asserts decidability of a [Setoid]. It can be useful in proofs to reason more classically. *) -Require Import Stdlib.Logic.Decidable. +From Stdlib.Logic Require Import Decidable. Class DecidableSetoid `(S : Setoid A) := setoid_decidable : forall x y : A, decidable (x == y). @@ -50,7 +50,7 @@ Definition swap_sumbool {A B} (x : { A } + { B }) : { B } + { A } := | right H => @left _ _ H end. -Require Import Stdlib.Program.Program. +From Stdlib.Program Require Import Program. Local Open Scope program_scope. @@ -75,7 +75,7 @@ Infix "<>b" := nequiv_decb (no associativity, at level 70). (** Decidable leibniz equality instances. *) -Require Import Stdlib.Arith.Arith. +From Stdlib.Arith Require Import Arith_base. (** The equiv is buried inside the setoid, but we can recover it by specifying which setoid we're talking about. *) @@ -88,7 +88,7 @@ Program Instance eq_setoid A : Setoid A | 10 := Program Instance nat_eq_eqdec : EqDec (eq_setoid nat) := eq_nat_dec. -Require Import Stdlib.Bool.Bool. +From Stdlib.Bool Require Import Bool. #[global] Program Instance bool_eqdec : EqDec (eq_setoid bool) := diff --git a/theories/Classes/_All/CEquivalence.v b/theories/Classes/_All/CEquivalence.v new file mode 120000 index 0000000000..210b31b207 --- /dev/null +++ b/theories/Classes/_All/CEquivalence.v @@ -0,0 +1 @@ +../CEquivalence.v \ No newline at end of file diff --git a/theories/Classes/_All/DecidableClass.v b/theories/Classes/_All/DecidableClass.v new file mode 120000 index 0000000000..c44ac6f372 --- /dev/null +++ b/theories/Classes/_All/DecidableClass.v @@ -0,0 +1 @@ +../DecidableClass.v \ No newline at end of file diff --git a/theories/Classes/_All/Morphisms_Relations.v b/theories/Classes/_All/Morphisms_Relations.v new file mode 120000 index 0000000000..cb5094f80b --- /dev/null +++ b/theories/Classes/_All/Morphisms_Relations.v @@ -0,0 +1 @@ +../Morphisms_Relations.v \ No newline at end of file diff --git a/theories/Classes/_All/RelationPairs.v b/theories/Classes/_All/RelationPairs.v new file mode 120000 index 0000000000..f074c4a156 --- /dev/null +++ b/theories/Classes/_All/RelationPairs.v @@ -0,0 +1 @@ +../RelationPairs.v \ No newline at end of file diff --git a/theories/Classes/_All/SetoidClass.v b/theories/Classes/_All/SetoidClass.v new file mode 120000 index 0000000000..b528d2e1bf --- /dev/null +++ b/theories/Classes/_All/SetoidClass.v @@ -0,0 +1 @@ +../SetoidClass.v \ No newline at end of file diff --git a/theories/Classes/_Arith/SetoidDec.v b/theories/Classes/_Arith/SetoidDec.v new file mode 120000 index 0000000000..fc91e1bd6c --- /dev/null +++ b/theories/Classes/_Arith/SetoidDec.v @@ -0,0 +1 @@ +../SetoidDec.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/CMorphisms.v b/theories/Classes/_CorelibWrapper/CMorphisms.v new file mode 120000 index 0000000000..e549c0cfd2 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/CMorphisms.v @@ -0,0 +1 @@ +../CMorphisms.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/CRelationClasses.v b/theories/Classes/_CorelibWrapper/CRelationClasses.v new file mode 120000 index 0000000000..8a3f9f768c --- /dev/null +++ b/theories/Classes/_CorelibWrapper/CRelationClasses.v @@ -0,0 +1 @@ +../CRelationClasses.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/Equivalence.v b/theories/Classes/_CorelibWrapper/Equivalence.v new file mode 120000 index 0000000000..5bd5ff8fc9 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/Equivalence.v @@ -0,0 +1 @@ +../Equivalence.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/Init.v b/theories/Classes/_CorelibWrapper/Init.v new file mode 120000 index 0000000000..9882bd6115 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/Init.v @@ -0,0 +1 @@ +../Init.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/Morphisms.v b/theories/Classes/_CorelibWrapper/Morphisms.v new file mode 120000 index 0000000000..efacd85eb9 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/Morphisms.v @@ -0,0 +1 @@ +../Morphisms.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/Morphisms_Prop.v b/theories/Classes/_CorelibWrapper/Morphisms_Prop.v new file mode 120000 index 0000000000..6002d85151 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/Morphisms_Prop.v @@ -0,0 +1 @@ +../Morphisms_Prop.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/RelationClasses.v b/theories/Classes/_CorelibWrapper/RelationClasses.v new file mode 120000 index 0000000000..3787afde0b --- /dev/null +++ b/theories/Classes/_CorelibWrapper/RelationClasses.v @@ -0,0 +1 @@ +../RelationClasses.v \ No newline at end of file diff --git a/theories/Classes/_CorelibWrapper/SetoidTactics.v b/theories/Classes/_CorelibWrapper/SetoidTactics.v new file mode 120000 index 0000000000..b1a6e8bc78 --- /dev/null +++ b/theories/Classes/_CorelibWrapper/SetoidTactics.v @@ -0,0 +1 @@ +../SetoidTactics.v \ No newline at end of file diff --git a/theories/Classes/_Lists/EquivDec.v b/theories/Classes/_Lists/EquivDec.v new file mode 120000 index 0000000000..36eacd99cf --- /dev/null +++ b/theories/Classes/_Lists/EquivDec.v @@ -0,0 +1 @@ +../EquivDec.v \ No newline at end of file diff --git a/theories/Compat/_All/AdmitAxiom.v b/theories/Compat/_All/AdmitAxiom.v new file mode 120000 index 0000000000..65cb493340 --- /dev/null +++ b/theories/Compat/_All/AdmitAxiom.v @@ -0,0 +1 @@ +../AdmitAxiom.v \ No newline at end of file diff --git a/theories/Compat/_All/Stdlib818.v b/theories/Compat/_All/Stdlib818.v new file mode 120000 index 0000000000..5ad407387a --- /dev/null +++ b/theories/Compat/_All/Stdlib818.v @@ -0,0 +1 @@ +../Stdlib818.v \ No newline at end of file diff --git a/theories/Compat/_CorelibWrapper/Coq818.v b/theories/Compat/_CorelibWrapper/Coq818.v new file mode 120000 index 0000000000..62a093b480 --- /dev/null +++ b/theories/Compat/_CorelibWrapper/Coq818.v @@ -0,0 +1 @@ +../Coq818.v \ No newline at end of file diff --git a/theories/Compat/_CorelibWrapper/Coq819.v b/theories/Compat/_CorelibWrapper/Coq819.v new file mode 120000 index 0000000000..d3c313571e --- /dev/null +++ b/theories/Compat/_CorelibWrapper/Coq819.v @@ -0,0 +1 @@ +../Coq819.v \ No newline at end of file diff --git a/theories/Compat/_CorelibWrapper/Coq820.v b/theories/Compat/_CorelibWrapper/Coq820.v new file mode 120000 index 0000000000..2f404166fe --- /dev/null +++ b/theories/Compat/_CorelibWrapper/Coq820.v @@ -0,0 +1 @@ +../Coq820.v \ No newline at end of file diff --git a/theories/FSets/FMapAVL.v b/theories/FSets/FMapAVL.v index 9c9da35a9f..952a22818b 100644 --- a/theories/FSets/FMapAVL.v +++ b/theories/FSets/FMapAVL.v @@ -18,7 +18,7 @@ See the comments at the beginning of FSetAVL for more details. *) -Require Import FMapInterface FMapList ZArith Int. +From Stdlib Require Import FMapInterface FMapList ZArith Int. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMapFacts.v b/theories/FSets/FMapFacts.v index 931f3d9f4e..3181503d5e 100644 --- a/theories/FSets/FMapFacts.v +++ b/theories/FSets/FMapFacts.v @@ -15,8 +15,8 @@ different styles: equivalence and boolean equalities. *) -Require Import Bool DecidableType DecidableTypeEx OrderedType Morphisms. -Require Export FMapInterface. +From Stdlib Require Import Bool DecidableType DecidableTypeEx OrderedType Morphisms. +From Stdlib Require Export FMapInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMapFullAVL.v b/theories/FSets/FMapFullAVL.v index cdb098c2ea..63b09976b8 100644 --- a/theories/FSets/FMapFullAVL.v +++ b/theories/FSets/FMapFullAVL.v @@ -27,8 +27,8 @@ *) -Require Program. -Require Import FMapInterface FMapList ZArith Int FMapAVL Lia. +From Stdlib Require Program. +From Stdlib Require Import FMapInterface FMapList ZArith Int FMapAVL Lia. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMapInterface.v b/theories/FSets/FMapInterface.v index 0f57414bc1..59ffeda0c7 100644 --- a/theories/FSets/FMapInterface.v +++ b/theories/FSets/FMapInterface.v @@ -12,7 +12,7 @@ (** This file proposes interfaces for finite maps *) -Require Export Bool DecidableType OrderedType. +From Stdlib Require Export Bool DecidableType OrderedType. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMapList.v b/theories/FSets/FMapList.v index 1122a5987f..d7143e8405 100644 --- a/theories/FSets/FMapList.v +++ b/theories/FSets/FMapList.v @@ -14,7 +14,7 @@ [FMapInterface.S] using lists of pairs ordered (increasing) with respect to left projection. *) -Require Import FMapInterface. +From Stdlib Require Import FMapInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMapPositive.v b/theories/FSets/FMapPositive.v index efe38348f0..2177735e51 100644 --- a/theories/FSets/FMapPositive.v +++ b/theories/FSets/FMapPositive.v @@ -10,7 +10,7 @@ (** * FMapPositive : an implementation of FMapInterface for [positive] keys. *) -Require Import Bool OrderedType ZArith OrderedType OrderedTypeEx FMapInterface. +From Stdlib Require Import Bool OrderedType ZArith OrderedType OrderedTypeEx FMapInterface. Set Implicit Arguments. Local Open Scope positive_scope. diff --git a/theories/FSets/FMapWeakList.v b/theories/FSets/FMapWeakList.v index 49f80f8c18..e15686715f 100644 --- a/theories/FSets/FMapWeakList.v +++ b/theories/FSets/FMapWeakList.v @@ -13,7 +13,7 @@ (** This file proposes an implementation of the non-dependent interface [FMapInterface.WS] using lists of pairs, unordered but without redundancy. *) -Require Import FMapInterface. +From Stdlib Require Import FMapInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FMaps.v b/theories/FSets/FMaps.v index 96a12e05fd..c51c8b09c4 100644 --- a/theories/FSets/FMaps.v +++ b/theories/FSets/FMaps.v @@ -9,10 +9,10 @@ (************************************************************************) -Require Export OrderedType OrderedTypeEx OrderedTypeAlt. -Require Export DecidableType DecidableTypeEx. -Require Export FMapInterface. -Require Export FMapPositive. -Require Export FMapFacts. -Require Export FMapWeakList. -Require Export FMapList. +From Stdlib Require Export OrderedType OrderedTypeEx OrderedTypeAlt. +From Stdlib Require Export DecidableType DecidableTypeEx. +From Stdlib Require Export FMapInterface. +From Stdlib Require Export FMapPositive. +From Stdlib Require Export FMapFacts. +From Stdlib Require Export FMapWeakList. +From Stdlib Require Export FMapList. diff --git a/theories/FSets/FSetAVL.v b/theories/FSets/FSetAVL.v index 651bcea47b..bc624c5dd8 100644 --- a/theories/FSets/FSetAVL.v +++ b/theories/FSets/FSetAVL.v @@ -33,7 +33,7 @@ code after extraction. *) -Require Import FSetInterface ZArith Int. +From Stdlib Require Import FSetInterface ZArith Int. Set Implicit Arguments. Unset Strict Implicit. @@ -41,7 +41,7 @@ Unset Strict Implicit. (** This is just a compatibility layer, the real implementation is now in [MSetAVL] *) -Require FSetCompat MSetAVL Orders OrdersAlt. +From Stdlib Require FSetCompat MSetAVL Orders OrdersAlt. Module IntMake (I:Int)(X: OrderedType) <: S with Module E := X. Module X' := OrdersAlt.Update_OT X. diff --git a/theories/FSets/FSetBridge.v b/theories/FSets/FSetBridge.v index cb228580f6..1c277161a0 100644 --- a/theories/FSets/FSetBridge.v +++ b/theories/FSets/FSetBridge.v @@ -13,7 +13,7 @@ (** This module implements bridges (as functors) from dependent to/from non-dependent set signature. *) -Require Export FSetInterface. +From Stdlib Require Export FSetInterface. Set Implicit Arguments. Unset Strict Implicit. Set Firstorder Depth 2. diff --git a/theories/FSets/FSetCompat.v b/theories/FSets/FSetCompat.v index 77d74ec85b..dd263a94a1 100644 --- a/theories/FSets/FSetCompat.v +++ b/theories/FSets/FSetCompat.v @@ -10,7 +10,7 @@ (** * Compatibility functors between FSetInterface and MSetInterface. *) -Require Import FSetInterface FSetFacts MSetInterface MSetFacts. +From Stdlib Require Import FSetInterface FSetFacts MSetInterface MSetFacts. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FSetDecide.v b/theories/FSets/FSetDecide.v index c8e557f2c6..6769e77087 100644 --- a/theories/FSets/FSetDecide.v +++ b/theories/FSets/FSetDecide.v @@ -17,7 +17,7 @@ (** This file implements a decision procedure for a certain class of propositions involving finite sets. *) -Require Import Decidable Setoid DecidableTypeEx FSetFacts. +From Stdlib Require Import Decidable Setoid DecidableTypeEx FSetFacts. (** First, a version for Weak Sets in functorial presentation *) @@ -890,7 +890,7 @@ the above form: End WDecide_fun. -Require Import FSetInterface. +From Stdlib Require Import FSetInterface. (** Now comes variants for self-contained weak sets and for full sets. For these variants, only one argument is necessary. Thanks to diff --git a/theories/FSets/FSetEqProperties.v b/theories/FSets/FSetEqProperties.v index 566bc19db3..1a0251598f 100644 --- a/theories/FSets/FSetEqProperties.v +++ b/theories/FSets/FSetEqProperties.v @@ -17,7 +17,7 @@ [mem x s=true] instead of [In x s], [equal s s'=true] instead of [Equal s s'], etc. *) -Require Import FSetProperties Zerob Sumbool DecidableTypeEx. +From Stdlib Require Import FSetProperties Zerob Sumbool DecidableTypeEx. Module WEqProperties_fun (Import E:DecidableType)(M:WSfun E). Module Import MP := WProperties_fun E M. diff --git a/theories/FSets/FSetFacts.v b/theories/FSets/FSetFacts.v index 50a77d2947..d68cfc7935 100644 --- a/theories/FSets/FSetFacts.v +++ b/theories/FSets/FSetFacts.v @@ -16,8 +16,8 @@ Moreover, we prove that [E.Eq] and [Equal] are setoid equalities. *) -Require Import DecidableTypeEx. -Require Export FSetInterface. +From Stdlib Require Import DecidableTypeEx. +From Stdlib Require Export FSetInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FSetInterface.v b/theories/FSets/FSetInterface.v index 8ed127d071..89c84bf3fd 100644 --- a/theories/FSets/FSetInterface.v +++ b/theories/FSets/FSetInterface.v @@ -28,7 +28,7 @@ [FSetBridge]). *) -Require Export Bool OrderedType DecidableType. +From Stdlib Require Export Bool OrderedType DecidableType. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FSetList.v b/theories/FSets/FSetList.v index d32a9c4995..a18f4aaf1a 100644 --- a/theories/FSets/FSetList.v +++ b/theories/FSets/FSetList.v @@ -13,14 +13,14 @@ (** This file proposes an implementation of the non-dependent interface [FSetInterface.S] using strictly ordered list. *) -Require Export FSetInterface. +From Stdlib Require Export FSetInterface. Set Implicit Arguments. Unset Strict Implicit. (** This is just a compatibility layer, the real implementation is now in [MSetList] *) -Require FSetCompat MSetList Orders OrdersAlt. +From Stdlib Require FSetCompat MSetList Orders OrdersAlt. Module Make (X: OrderedType) <: S with Module E := X. Module X' := OrdersAlt.Update_OT X. diff --git a/theories/FSets/FSetPositive.v b/theories/FSets/FSetPositive.v index f5e2f46db3..8b3409c034 100644 --- a/theories/FSets/FSetPositive.v +++ b/theories/FSets/FSetPositive.v @@ -18,7 +18,7 @@ Sandrine Blazy (used for building certified compilers). *) -Require Import Bool PeanoNat BinPos OrderedType OrderedTypeEx FSetInterface. +From Stdlib Require Import Bool PeanoNat BinPos OrderedType OrderedTypeEx FSetInterface. Set Implicit Arguments. Local Open Scope lazy_bool_scope. diff --git a/theories/FSets/FSetProperties.v b/theories/FSets/FSetProperties.v index 9f5442e21d..bea1244cf7 100644 --- a/theories/FSets/FSetProperties.v +++ b/theories/FSets/FSetProperties.v @@ -16,8 +16,8 @@ [In x s] instead of [mem x s=true], [Equal s s'] instead of [equal s s'=true], etc. *) -Require Export FSetInterface. -Require Import PeanoNat DecidableTypeEx FSetFacts FSetDecide. +From Stdlib Require Export FSetInterface. +From Stdlib Require Import PeanoNat DecidableTypeEx FSetFacts FSetDecide. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/FSets/FSetToFiniteSet.v b/theories/FSets/FSetToFiniteSet.v index 972359b6b2..1b5511d21e 100644 --- a/theories/FSets/FSetToFiniteSet.v +++ b/theories/FSets/FSetToFiniteSet.v @@ -10,8 +10,8 @@ (** * Finite sets library : conversion to old [Finite_sets] *) -Require Import Ensembles Finite_sets. -Require Import FSetInterface FSetProperties OrderedTypeEx DecidableTypeEx. +From Stdlib Require Import Ensembles Finite_sets. +From Stdlib Require Import FSetInterface FSetProperties OrderedTypeEx DecidableTypeEx. (** * Going from [FSets] with usual Leibniz equality to the good old [Ensembles] and [Finite_sets] theory. *) diff --git a/theories/FSets/FSetWeakList.v b/theories/FSets/FSetWeakList.v index e0c8dc61f3..7007e7e240 100644 --- a/theories/FSets/FSetWeakList.v +++ b/theories/FSets/FSetWeakList.v @@ -13,14 +13,14 @@ (** This file proposes an implementation of the non-dependent interface [FSetInterface.WS] using lists without redundancy. *) -Require Import FSetInterface. +From Stdlib Require Import FSetInterface. Set Implicit Arguments. Unset Strict Implicit. (** This is just a compatibility layer, the real implementation is now in [MSetWeakList] *) -Require Equalities FSetCompat MSetWeakList. +From Stdlib Require Equalities FSetCompat MSetWeakList. Module Make (X: DecidableType) <: WS with Module E := X. Module E := X. diff --git a/theories/FSets/FSets.v b/theories/FSets/FSets.v index 36efce0557..4e651916da 100644 --- a/theories/FSets/FSets.v +++ b/theories/FSets/FSets.v @@ -8,18 +8,18 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export OrderedType. -Require Export OrderedTypeEx. -Require Export OrderedTypeAlt. -Require Export DecidableType. -Require Export DecidableTypeEx. -Require Export FSetInterface. -Require Export FSetBridge. -Require Export FSetFacts. -Require Export FSetDecide. -Require Export FSetProperties. -Require Export FSetEqProperties. -Require Export FSetWeakList. -Require Export FSetList. -Require Export FSetPositive. -Require Export FSetAVL. +From Stdlib Require Export OrderedType. +From Stdlib Require Export OrderedTypeEx. +From Stdlib Require Export OrderedTypeAlt. +From Stdlib Require Export DecidableType. +From Stdlib Require Export DecidableTypeEx. +From Stdlib Require Export FSetInterface. +From Stdlib Require Export FSetBridge. +From Stdlib Require Export FSetFacts. +From Stdlib Require Export FSetDecide. +From Stdlib Require Export FSetProperties. +From Stdlib Require Export FSetEqProperties. +From Stdlib Require Export FSetWeakList. +From Stdlib Require Export FSetList. +From Stdlib Require Export FSetPositive. +From Stdlib Require Export FSetAVL. diff --git a/theories/Floats/FloatLemmas.v b/theories/Floats/FloatLemmas.v index ae8149b10a..3022862fe8 100644 --- a/theories/Floats/FloatLemmas.v +++ b/theories/Floats/FloatLemmas.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZArith Uint63 SpecFloat PrimFloat FloatOps FloatAxioms. -Require Import Psatz. +From Stdlib Require Import ZArith Uint63 SpecFloat PrimFloat FloatOps FloatAxioms. +From Stdlib Require Import Lia. (** * Support results involving frexp and ldexp *) diff --git a/theories/Floats/Floats.v b/theories/Floats/Floats.v index f7ce3228db..b0cbf90577 100644 --- a/theories/Floats/Floats.v +++ b/theories/Floats/Floats.v @@ -23,9 +23,9 @@ N.B.: This library only offers a bit-level specification of floating-point arithmetic. For a more complete set of theorems, including links with real arithmetic, see the Flocq library {{https://flocq.gitlabpages.inria.fr/}} *) -Require Export FloatClass. -Require Export PrimFloat. -Require Export SpecFloat. -Require Export FloatOps. -Require Export FloatAxioms. -Require Export FloatLemmas. +From Stdlib Require Export FloatClass. +From Stdlib Require Export PrimFloat. +From Stdlib Require Export SpecFloat. +From Stdlib Require Export FloatOps. +From Stdlib Require Export FloatAxioms. +From Stdlib Require Export FloatLemmas. diff --git a/theories/Floats/_All/FloatLemmas.v b/theories/Floats/_All/FloatLemmas.v new file mode 120000 index 0000000000..e571beacf5 --- /dev/null +++ b/theories/Floats/_All/FloatLemmas.v @@ -0,0 +1 @@ +../FloatLemmas.v \ No newline at end of file diff --git a/theories/Floats/_All/Floats.v b/theories/Floats/_All/Floats.v new file mode 120000 index 0000000000..10b75391e8 --- /dev/null +++ b/theories/Floats/_All/Floats.v @@ -0,0 +1 @@ +../Floats.v \ No newline at end of file diff --git a/theories/Floats/_CorelibWrapper/FloatAxioms.v b/theories/Floats/_CorelibWrapper/FloatAxioms.v new file mode 120000 index 0000000000..cae438c3bc --- /dev/null +++ b/theories/Floats/_CorelibWrapper/FloatAxioms.v @@ -0,0 +1 @@ +../FloatAxioms.v \ No newline at end of file diff --git a/theories/Floats/_CorelibWrapper/FloatClass.v b/theories/Floats/_CorelibWrapper/FloatClass.v new file mode 120000 index 0000000000..24a88d7871 --- /dev/null +++ b/theories/Floats/_CorelibWrapper/FloatClass.v @@ -0,0 +1 @@ +../FloatClass.v \ No newline at end of file diff --git a/theories/Floats/_CorelibWrapper/FloatOps.v b/theories/Floats/_CorelibWrapper/FloatOps.v new file mode 120000 index 0000000000..e3cf2580ad --- /dev/null +++ b/theories/Floats/_CorelibWrapper/FloatOps.v @@ -0,0 +1 @@ +../FloatOps.v \ No newline at end of file diff --git a/theories/Floats/_CorelibWrapper/PrimFloat.v b/theories/Floats/_CorelibWrapper/PrimFloat.v new file mode 120000 index 0000000000..3fcec6b4b6 --- /dev/null +++ b/theories/Floats/_CorelibWrapper/PrimFloat.v @@ -0,0 +1 @@ +../PrimFloat.v \ No newline at end of file diff --git a/theories/Floats/_CorelibWrapper/SpecFloat.v b/theories/Floats/_CorelibWrapper/SpecFloat.v new file mode 120000 index 0000000000..e4d210f005 --- /dev/null +++ b/theories/Floats/_CorelibWrapper/SpecFloat.v @@ -0,0 +1 @@ +../SpecFloat.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Byte.v b/theories/Init/_CorelibWrapper/Byte.v new file mode 120000 index 0000000000..c7852f7c3b --- /dev/null +++ b/theories/Init/_CorelibWrapper/Byte.v @@ -0,0 +1 @@ +../Byte.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Datatypes.v b/theories/Init/_CorelibWrapper/Datatypes.v new file mode 120000 index 0000000000..ddaa0db8f4 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Datatypes.v @@ -0,0 +1 @@ +../Datatypes.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Decimal.v b/theories/Init/_CorelibWrapper/Decimal.v new file mode 120000 index 0000000000..87f4ad84d3 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Decimal.v @@ -0,0 +1 @@ +../Decimal.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Hexadecimal.v b/theories/Init/_CorelibWrapper/Hexadecimal.v new file mode 120000 index 0000000000..196910d740 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Hexadecimal.v @@ -0,0 +1 @@ +../Hexadecimal.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Logic.v b/theories/Init/_CorelibWrapper/Logic.v new file mode 120000 index 0000000000..3425cb10de --- /dev/null +++ b/theories/Init/_CorelibWrapper/Logic.v @@ -0,0 +1 @@ +../Logic.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Ltac.v b/theories/Init/_CorelibWrapper/Ltac.v new file mode 120000 index 0000000000..7a8cb75873 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Ltac.v @@ -0,0 +1 @@ +../Ltac.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Nat.v b/theories/Init/_CorelibWrapper/Nat.v new file mode 120000 index 0000000000..e90d4136a5 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Nat.v @@ -0,0 +1 @@ +../Nat.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Notations.v b/theories/Init/_CorelibWrapper/Notations.v new file mode 120000 index 0000000000..4bcc43bc68 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Notations.v @@ -0,0 +1 @@ +../Notations.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Number.v b/theories/Init/_CorelibWrapper/Number.v new file mode 120000 index 0000000000..62e97de572 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Number.v @@ -0,0 +1 @@ +../Number.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Peano.v b/theories/Init/_CorelibWrapper/Peano.v new file mode 120000 index 0000000000..1f92a45373 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Peano.v @@ -0,0 +1 @@ +../Peano.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Prelude.v b/theories/Init/_CorelibWrapper/Prelude.v new file mode 120000 index 0000000000..555e1ddd3c --- /dev/null +++ b/theories/Init/_CorelibWrapper/Prelude.v @@ -0,0 +1 @@ +../Prelude.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Specif.v b/theories/Init/_CorelibWrapper/Specif.v new file mode 120000 index 0000000000..70796edb95 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Specif.v @@ -0,0 +1 @@ +../Specif.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Sumbool.v b/theories/Init/_CorelibWrapper/Sumbool.v new file mode 120000 index 0000000000..4d077ea81e --- /dev/null +++ b/theories/Init/_CorelibWrapper/Sumbool.v @@ -0,0 +1 @@ +../Sumbool.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Tactics.v b/theories/Init/_CorelibWrapper/Tactics.v new file mode 120000 index 0000000000..2a90dfcce4 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Tactics.v @@ -0,0 +1 @@ +../Tactics.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Tauto.v b/theories/Init/_CorelibWrapper/Tauto.v new file mode 120000 index 0000000000..b2880a32f3 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Tauto.v @@ -0,0 +1 @@ +../Tauto.v \ No newline at end of file diff --git a/theories/Init/_CorelibWrapper/Wf.v b/theories/Init/_CorelibWrapper/Wf.v new file mode 120000 index 0000000000..fd1c9820f8 --- /dev/null +++ b/theories/Init/_CorelibWrapper/Wf.v @@ -0,0 +1 @@ +../Wf.v \ No newline at end of file diff --git a/theories/Lists/List.v b/theories/Lists/List.v index 813402f2ae..e1d3ab6ab3 100644 --- a/theories/Lists/List.v +++ b/theories/Lists/List.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. -Require Import Morphisms. -Require Export ListDef. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import Morphisms. +From Stdlib Require Export ListDef. Set Implicit Arguments. (* Set Universe Polymorphism. *) diff --git a/theories/Lists/ListDec.v b/theories/Lists/ListDec.v index 2d35a9804e..3d1638afaa 100644 --- a/theories/Lists/ListDec.v +++ b/theories/Lists/ListDec.v @@ -10,7 +10,7 @@ (** Decidability results about lists *) -Require Import List Decidable. +From Stdlib Require Import List Decidable. Set Implicit Arguments. Definition decidable_eq A := forall x y:A, decidable (x=y). diff --git a/theories/Lists/ListSet.v b/theories/Lists/ListSet.v index 6a08ab8964..979e5535c1 100644 --- a/theories/Lists/ListSet.v +++ b/theories/Lists/ListSet.v @@ -16,7 +16,7 @@ consider implementations of finite sets with access in logarithmic time (e.g. MSetRBT.v which is based on red-black trees). *) -Require Import List. +From Stdlib Require Import List. Set Implicit Arguments. diff --git a/theories/Lists/ListTactics.v b/theories/Lists/ListTactics.v index ddc311e69f..a96b508f52 100644 --- a/theories/Lists/ListTactics.v +++ b/theories/Lists/ListTactics.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPosDef. -Require Import List. +From Stdlib Require Import PosDef. +From Stdlib Require Import List. Ltac list_fold_right fcons fnil l := match l with diff --git a/theories/Lists/_All/List.v b/theories/Lists/_All/List.v new file mode 120000 index 0000000000..c9b5900e52 --- /dev/null +++ b/theories/Lists/_All/List.v @@ -0,0 +1 @@ +../List.v \ No newline at end of file diff --git a/theories/Lists/_All/ListDec.v b/theories/Lists/_All/ListDec.v new file mode 120000 index 0000000000..2c4afb2415 --- /dev/null +++ b/theories/Lists/_All/ListDec.v @@ -0,0 +1 @@ +../ListDec.v \ No newline at end of file diff --git a/theories/Lists/_All/ListSet.v b/theories/Lists/_All/ListSet.v new file mode 120000 index 0000000000..471d949527 --- /dev/null +++ b/theories/Lists/_All/ListSet.v @@ -0,0 +1 @@ +../ListSet.v \ No newline at end of file diff --git a/theories/Lists/_All/ListTactics.v b/theories/Lists/_All/ListTactics.v new file mode 120000 index 0000000000..7315956e80 --- /dev/null +++ b/theories/Lists/_All/ListTactics.v @@ -0,0 +1 @@ +../ListTactics.v \ No newline at end of file diff --git a/theories/Lists/_CorelibWrapper/ListDef.v b/theories/Lists/_CorelibWrapper/ListDef.v new file mode 120000 index 0000000000..6fa7b9f56f --- /dev/null +++ b/theories/Lists/_CorelibWrapper/ListDef.v @@ -0,0 +1 @@ +../ListDef.v \ No newline at end of file diff --git a/theories/Logic/ChoiceFacts.v b/theories/Logic/ChoiceFacts.v index 779088ead8..cf485849b4 100644 --- a/theories/Logic/ChoiceFacts.v +++ b/theories/Logic/ChoiceFacts.v @@ -28,7 +28,7 @@ intentional type theory, Journal of Symbolic Logic 70(2):488-514, 2005. [[Werner97]] Benjamin Werner, Sets in Types, Types in Sets, TACS, 1997. *) -Require Import RelationClasses Logic. +From Stdlib Require Import RelationClasses Logic. Set Implicit Arguments. Local Unset Intuition Negation Unfolding. @@ -682,8 +682,8 @@ Qed. relations with [nat] as codomain. *) -Require Import Wf_nat. -Require Import Decidable. +From Stdlib Require Import Wf_nat. +From Stdlib Require Import Decidable. Lemma classical_denumerable_description_imp_fun_choice : forall A:Type, @@ -913,7 +913,7 @@ be applied on the same Type universes on both sides of the first Proceedings of TYPES 2002, Lecture Notes in Computer Science 2646, Springer Verlag. *) -Require Import Setoid. +From Stdlib Require Import Setoid. Theorem constructive_definite_descr_excluded_middle : (forall A : Type, ConstructiveDefiniteDescription_on A) -> @@ -946,7 +946,7 @@ Qed. (** * Choice => Dependent choice => Countable choice *) (* The implications below are standard *) -Require Import Arith. +From Stdlib Require Import Arith. Theorem functional_choice_imp_functional_dependent_choice : FunctionalChoice -> FunctionalDependentChoice. @@ -981,7 +981,7 @@ Qed. (**********************************************************************) (** * About the axiom of choice over setoids *) -Require Import ClassicalFacts PropExtensionalityFacts. +From Stdlib Require Import ClassicalFacts PropExtensionalityFacts. (**********************************************************************) (** ** Consequences of the choice of a representative in an equivalence class *) diff --git a/theories/Logic/Classical.v b/theories/Logic/Classical.v index a0392aa9bb..f94ba9fe98 100644 --- a/theories/Logic/Classical.v +++ b/theories/Logic/Classical.v @@ -12,5 +12,5 @@ (** Classical Logic *) -Require Export Classical_Prop. -Require Export Classical_Pred_Type. +From Stdlib Require Export Classical_Prop. +From Stdlib Require Export Classical_Pred_Type. diff --git a/theories/Logic/ClassicalChoice.v b/theories/Logic/ClassicalChoice.v index a4f4a4b644..5e6c57e8bf 100644 --- a/theories/Logic/ClassicalChoice.v +++ b/theories/Logic/ClassicalChoice.v @@ -22,9 +22,9 @@ with non computable functions. Especially it conflicts with the impredicativity of [Set], knowing that [true<>false] in [Set]. *) -Require Export ClassicalUniqueChoice. -Require Export RelationalChoice. -Require Import ChoiceFacts. +From Stdlib Require Export ClassicalUniqueChoice. +From Stdlib Require Export RelationalChoice. +From Stdlib Require Import ChoiceFacts. Set Implicit Arguments. diff --git a/theories/Logic/ClassicalDescription.v b/theories/Logic/ClassicalDescription.v index e5c69f0617..fa7410b02e 100644 --- a/theories/Logic/ClassicalDescription.v +++ b/theories/Logic/ClassicalDescription.v @@ -18,9 +18,9 @@ Set Implicit Arguments. -Require Export Classical. (* Axiomatize classical reasoning *) -Require Export Description. (* Axiomatize constructive form of Church's iota *) -Require Import ChoiceFacts. +From Stdlib Require Export Classical. (* Axiomatize classical reasoning *) +From Stdlib Require Export Description. (* Axiomatize constructive form of Church's iota *) +From Stdlib Require Import ChoiceFacts. Local Notation inhabited A := A (only parsing). diff --git a/theories/Logic/ClassicalEpsilon.v b/theories/Logic/ClassicalEpsilon.v index af8b1b85cc..9f8ebb1342 100644 --- a/theories/Logic/ClassicalEpsilon.v +++ b/theories/Logic/ClassicalEpsilon.v @@ -17,8 +17,8 @@ with non computable functions. It conflicts with the impredicativity of [Set] *) -Require Export Classical. -Require Import ChoiceFacts. +From Stdlib Require Export Classical. +From Stdlib Require Import ChoiceFacts. Set Implicit Arguments. diff --git a/theories/Logic/ClassicalFacts.v b/theories/Logic/ClassicalFacts.v index 24e3e35da0..53b37f671d 100644 --- a/theories/Logic/ClassicalFacts.v +++ b/theories/Logic/ClassicalFacts.v @@ -101,7 +101,7 @@ Qed. (** A weakest form of propositional extensionality: extensionality for provable propositions only *) -Require Import PropExtensionalityFacts. +From Stdlib Require Import PropExtensionalityFacts. Definition provable_prop_extensionality := forall A:Prop, A -> A = True. @@ -322,7 +322,7 @@ End Proof_irrelevance_CIC. paradox of system U- (e.g. Hurkens' paradox). *) -Require Import Hurkens. +From Stdlib Require Import Hurkens. Section Proof_irrelevance_EM_CC. @@ -768,7 +768,7 @@ Qed. (** ** Principle of unrestricted minimization *) -Require Import Stdlib.Arith.PeanoNat. +From Stdlib.Arith Require Import PeanoNat. Definition Minimal (P:nat -> Prop) (n:nat) : Prop := P n /\ forall k, P k -> n<=k. @@ -799,7 +799,7 @@ Section Unrestricted_minimization_entails_excluded_middle. End Unrestricted_minimization_entails_excluded_middle. -Require Import Wf_nat. +From Stdlib Require Import Wf_nat. Section Excluded_middle_entails_unrestricted_minimization. @@ -849,7 +849,7 @@ End Example_of_undecidable_predicate_with_the_minimization_property. [[Bell]] John L. Bell, Choice principles in intuitionistic set theory, unpublished. *) -Require Import RelationClasses. +From Stdlib Require Import RelationClasses. Local Notation representative_boolean_partition := (forall R:bool->bool->Prop, diff --git a/theories/Logic/ClassicalUniqueChoice.v b/theories/Logic/ClassicalUniqueChoice.v index 2dec94ed05..05d2fca735 100644 --- a/theories/Logic/ClassicalUniqueChoice.v +++ b/theories/Logic/ClassicalUniqueChoice.v @@ -25,7 +25,7 @@ Proceedings of TYPES 2002, Lecture Notes in Computer Science 2646, Springer Verlag. *) -Require Export Classical. +From Stdlib Require Export Classical. Axiom dependent_unique_choice : @@ -46,7 +46,7 @@ Qed. (** The following proof comes from [[ChicliPottierSimpson02]] *) -Require Import Setoid. +From Stdlib Require Import Setoid. Theorem classic_set_in_prop_context : forall C:Prop, ((forall P:Prop, {P} + {~ P}) -> C) -> C. diff --git a/theories/Logic/Classical_Pred_Type.v b/theories/Logic/Classical_Pred_Type.v index cb9f6abc4e..9358413511 100644 --- a/theories/Logic/Classical_Pred_Type.v +++ b/theories/Logic/Classical_Pred_Type.v @@ -13,7 +13,7 @@ (** Classical Predicate Logic on Type *) -Require Import Classical_Prop. +From Stdlib Require Import Classical_Prop. Section Generic. Variable U : Type. diff --git a/theories/Logic/Classical_Prop.v b/theories/Logic/Classical_Prop.v index ce20ccebcd..25248b89eb 100644 --- a/theories/Logic/Classical_Prop.v +++ b/theories/Logic/Classical_Prop.v @@ -14,7 +14,7 @@ (** Classical Propositional Logic *) -Require Import ClassicalFacts. +From Stdlib Require Import ClassicalFacts. #[global] Hint Unfold not: core. @@ -110,7 +110,7 @@ Ltac classical_left := match goal with |- _ \/ ?X => (elim (classic X);intro;[right;trivial|left]) end. -Require Export EqdepFacts. +From Stdlib Require Export EqdepFacts. Module Eq_rect_eq. diff --git a/theories/Logic/ConstructiveEpsilon.v b/theories/Logic/ConstructiveEpsilon.v index 3e0db8318d..dc6b65d5fd 100644 --- a/theories/Logic/ConstructiveEpsilon.v +++ b/theories/Logic/ConstructiveEpsilon.v @@ -107,8 +107,6 @@ related to conformity to [rel_ls]. (* Direct version *) -Require Import Arith. - Section ConstructiveIndefiniteGroundDescription_Direct. Variable P : nat -> Prop. @@ -226,13 +224,16 @@ Proof. apply (rel_ls_post r). Defined. +Lemma le_0_l n : 0 <= n. +Proof. induction n; auto. Qed. + Definition epsilon_smallest : (exists n : nat, P n) -> { n : nat | P n /\ forall k, P k -> n <= k }. Proof. intro e; destruct (linear_search_from_0_conform e) as [found r]; exists found. split. - apply (rel_ls_post r). - - intros k pk. apply (rel_ls_lower_bound r pk), Nat.le_0_l. + - intros k pk. apply (rel_ls_lower_bound r pk), le_0_l. Defined. (** NB. The previous version used a negative formulation: @@ -286,7 +287,7 @@ Proof. intro e. exists (linear_search_from_0 e). split. - apply (rel_ls_post (linear_search_from_0_rel e)). - intros k pk. - apply (@rel_ls_lower_bound _ 0 (linear_search_from_0_rel e) k pk), Nat.le_0_l. + apply (@rel_ls_lower_bound _ 0 (linear_search_from_0_rel e) k pk), le_0_l. Defined. End ConstructiveIndefiniteGroundDescription_Direct. @@ -331,13 +332,13 @@ intros x n; generalize x; clear x; induction n as [|n IH]; simpl. - apply P_implies_acc. - intros x H. constructor. intros y [fxy _]. apply IH. rewrite fxy. - replace (n + S x) with (S (n + x)); auto with arith. + replace (n + S x) with (S (n + x)); auto. Defined. Corollary P_eventually_implies_acc_ex : (exists n : nat, P n) -> acc 0. Proof. intros H; elim H. intros x Px. apply P_eventually_implies_acc with (n := x). -replace (x + 0) with x; auto with arith. +replace (x + 0) with x; auto. Defined. (** In the following statement, we use the trick with recursion on diff --git a/theories/Logic/Description.v b/theories/Logic/Description.v index ab87b816b1..6dfbfe830e 100644 --- a/theories/Logic/Description.v +++ b/theories/Logic/Description.v @@ -12,7 +12,7 @@ allows building functions from the proof of their existence in any context; this is weaker than Church's iota operator *) -Require Import ChoiceFacts. +From Stdlib Require Import ChoiceFacts. Set Implicit Arguments. diff --git a/theories/Logic/Diaconescu.v b/theories/Logic/Diaconescu.v index bcbb4a62a6..1c55c33bd7 100644 --- a/theories/Logic/Diaconescu.v +++ b/theories/Logic/Diaconescu.v @@ -42,7 +42,7 @@ [[Carlström04]] Jesper Carlström, EM + Ext_ + AC_int is equivalent to AC_ext, Mathematical Logic Quaterly, vol 50(3), pp 236-240, 2004. *) -Require ClassicalFacts ChoiceFacts. +From Stdlib Require ClassicalFacts ChoiceFacts. (**********************************************************************) (** * Pred. Ext. + Rel. Axiom of Choice -> Excluded-Middle *) diff --git a/theories/Logic/Epsilon.v b/theories/Logic/Epsilon.v index bd19288c17..53e5cdf342 100644 --- a/theories/Logic/Epsilon.v +++ b/theories/Logic/Epsilon.v @@ -11,7 +11,7 @@ (** This file provides indefinite description under the form of Hilbert's epsilon operator; it does not assume classical logic. *) -Require Import ChoiceFacts. +From Stdlib Require Import ChoiceFacts. Set Implicit Arguments. diff --git a/theories/Logic/Eqdep.v b/theories/Logic/Eqdep.v index 53624f928d..8ead37e8ad 100644 --- a/theories/Logic/Eqdep.v +++ b/theories/Logic/Eqdep.v @@ -21,7 +21,7 @@ Intensional Type Theory, Habilitationsschrift, LMU München, 1993. *) -Require Export EqdepFacts. +From Stdlib Require Export EqdepFacts. Module Eq_rect_eq. diff --git a/theories/Logic/Eqdep_dec.v b/theories/Logic/Eqdep_dec.v index e2746a8371..9367475b9e 100644 --- a/theories/Logic/Eqdep_dec.v +++ b/theories/Logic/Eqdep_dec.v @@ -146,7 +146,7 @@ Theorem inj_right_pair A (eq_dec : forall x y : A, x = y \/ x <> y) (x : A) ex_intro P x y = ex_intro P x y' -> y = y'. Proof (@inj_right_pair_on A x (eq_dec x)). -Require Import EqdepFacts. +From Stdlib Require Import EqdepFacts. (** We deduce axiom [K] for (decidable) types *) Theorem K_dec_type (A:Type) (eq_dec:forall x y:A, {x = y} + {x <> y}) (x:A) diff --git a/theories/Logic/HLevels.v b/theories/Logic/HLevels.v index ff17b99bc0..b2660b56cc 100644 --- a/theories/Logic/HLevels.v +++ b/theories/Logic/HLevels.v @@ -21,7 +21,7 @@ (* It is almost impossible to prove that a type is a homotopy proposition without funext, so we assume it here. *) -Require Import Stdlib.Logic.FunctionalExtensionality. +From Stdlib.Logic Require Import FunctionalExtensionality. (* A homotopy proposition is a type that has at most one element. Its unique inhabitant, when it exists, is to be interpreted as the diff --git a/theories/Logic/IndefiniteDescription.v b/theories/Logic/IndefiniteDescription.v index 1c2a5e7549..87c0a88005 100644 --- a/theories/Logic/IndefiniteDescription.v +++ b/theories/Logic/IndefiniteDescription.v @@ -14,7 +14,7 @@ stronger than the axiom of choice (which cannot be used outside the context of a theorem proof). *) -Require Import ChoiceFacts. +From Stdlib Require Import ChoiceFacts. Set Implicit Arguments. diff --git a/theories/Logic/JMeq.v b/theories/Logic/JMeq.v index fd61fde9c7..28e4255b02 100644 --- a/theories/Logic/JMeq.v +++ b/theories/Logic/JMeq.v @@ -17,7 +17,7 @@ *) -Require Import Eqdep. +From Stdlib Require Import Eqdep. Set Implicit Arguments. @@ -113,7 +113,7 @@ Register JMeq_congr as core.JMeq.congr. (** [JMeq] is equivalent to [eq_dep Type (fun X => X)] *) -Require Import Eqdep. +From Stdlib Require Import Eqdep. Lemma JMeq_eq_dep_id : forall (A B:Type) (x:A) (y:B), JMeq x y -> eq_dep Type (fun X => X) A x B y. diff --git a/theories/Logic/ProofIrrelevance.v b/theories/Logic/ProofIrrelevance.v index c1ecb36cd8..bde3735622 100644 --- a/theories/Logic/ProofIrrelevance.v +++ b/theories/Logic/ProofIrrelevance.v @@ -10,7 +10,7 @@ (** This file axiomatizes proof-irrelevance and derives some consequences *) -Require Import ProofIrrelevanceFacts. +From Stdlib Require Import ProofIrrelevanceFacts. Axiom proof_irrelevance : forall (P:Prop) (p1 p2:P), p1 = p2. diff --git a/theories/Logic/ProofIrrelevanceFacts.v b/theories/Logic/ProofIrrelevanceFacts.v index 7b919e0efd..eff77e6c92 100644 --- a/theories/Logic/ProofIrrelevanceFacts.v +++ b/theories/Logic/ProofIrrelevanceFacts.v @@ -10,7 +10,7 @@ (** This defines the functor that build consequences of proof-irrelevance *) -Require Export EqdepFacts. +From Stdlib Require Export EqdepFacts. Module Type ProofIrrelevance. diff --git a/theories/Logic/PropExtensionality.v b/theories/Logic/PropExtensionality.v index 2d473e7499..e22393659e 100644 --- a/theories/Logic/PropExtensionality.v +++ b/theories/Logic/PropExtensionality.v @@ -14,7 +14,7 @@ Axiom propositional_extensionality : forall (P Q : Prop), (P <-> Q) -> P = Q. -Require Import ClassicalFacts. +From Stdlib Require Import ClassicalFacts. Theorem proof_irrelevance : forall (P:Prop) (p1 p2:P), p1 = p2. Proof. diff --git a/theories/Logic/SetoidChoice.v b/theories/Logic/SetoidChoice.v index 9df6e92699..cb1c8848f9 100644 --- a/theories/Logic/SetoidChoice.v +++ b/theories/Logic/SetoidChoice.v @@ -31,12 +31,12 @@ *) -Require Export ClassicalChoice. (* classical logic, relational choice, unique choice *) -Require Export ExtensionalFunctionRepresentative. +From Stdlib Require Export ClassicalChoice. (* classical logic, relational choice, unique choice *) +From Stdlib Require Export ExtensionalFunctionRepresentative. -Require Import ChoiceFacts. -Require Import ClassicalFacts. -Require Import RelationClasses. +From Stdlib Require Import ChoiceFacts. +From Stdlib Require Import ClassicalFacts. +From Stdlib Require Import RelationClasses. Theorem setoid_choice : forall A B, diff --git a/theories/Logic/WKL.v b/theories/Logic/WKL.v index c3d871e339..c6143857c0 100644 --- a/theories/Logic/WKL.v +++ b/theories/Logic/WKL.v @@ -22,10 +22,10 @@ predicate. Original Weak Konig's Lemma is the instantiation of the lemma to a tree *) -Require Import WeakFan List. +From Stdlib Require Import WeakFan List. Import ListNotations. -Require Import Arith. +From Stdlib Require Import Arith_base. (** [is_path_from P n l] means that there exists a path of length [n] from [l] on which [P] does not hold *) @@ -99,7 +99,7 @@ Fixpoint Y P (l:list bool) := if b then exists n, inductively_barred_at P n (false::l) else infinite_from P (false::l) end. -Require Import Compare_dec. +From Stdlib Require Import Compare_dec. Lemma is_path_from_restrict : forall P n n' l, n <= n' -> is_path_from P n' l -> is_path_from P n l. diff --git a/theories/Logic/WeakFan.v b/theories/Logic/WeakFan.v index 21d57922f8..02d0229b27 100644 --- a/theories/Logic/WeakFan.v +++ b/theories/Logic/WeakFan.v @@ -18,9 +18,6 @@ [[Simpson99]] Stephen G. Simpson. Subsystems of second order arithmetic, Cambridge University Press, 1999 *) -Require Import List. -Import ListNotations. - (** [inductively_barred P l] means that P eventually holds above l *) Inductive inductively_barred P : list bool -> Prop := @@ -34,8 +31,8 @@ Inductive inductively_barred P : list bool -> Prop := Fixpoint approx X (l:list bool) := match l with - | [] => True - | b::l => approx X l /\ (if b then X (length l) else ~ X (length l)) + | nil => True + | cons b l => approx X l /\ (if b then X (length l) else ~ X (length l)) end. (** [barred P] means that for any infinite path represented as a predicate, @@ -51,8 +48,8 @@ Definition barred P := Fixpoint Y P (l:list bool) := match l with - | [] => True - | b::l => + | nil => True + | cons b l => Y P l /\ if b then inductively_barred P (false::l) else ~ inductively_barred P (false::l) end. @@ -88,7 +85,7 @@ induction l. * firstorder. Qed. -Theorem WeakFanTheorem : forall P, barred P -> inductively_barred P []. +Theorem WeakFanTheorem : forall P, barred P -> inductively_barred P nil. Proof. intros P Hbar. destruct Hbar with (X P) as (l,(Hd%Y_approx,HP)). diff --git a/theories/Logic/_Classical/ChoiceFacts.v b/theories/Logic/_Classical/ChoiceFacts.v new file mode 120000 index 0000000000..efbd02bcee --- /dev/null +++ b/theories/Logic/_Classical/ChoiceFacts.v @@ -0,0 +1 @@ +../ChoiceFacts.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Classical.v b/theories/Logic/_Classical/Classical.v new file mode 120000 index 0000000000..f77d7cd484 --- /dev/null +++ b/theories/Logic/_Classical/Classical.v @@ -0,0 +1 @@ +../Classical.v \ No newline at end of file diff --git a/theories/Logic/_Classical/ClassicalChoice.v b/theories/Logic/_Classical/ClassicalChoice.v new file mode 120000 index 0000000000..ce9a1fffbb --- /dev/null +++ b/theories/Logic/_Classical/ClassicalChoice.v @@ -0,0 +1 @@ +../ClassicalChoice.v \ No newline at end of file diff --git a/theories/Logic/_Classical/ClassicalDescription.v b/theories/Logic/_Classical/ClassicalDescription.v new file mode 120000 index 0000000000..92c3bb1664 --- /dev/null +++ b/theories/Logic/_Classical/ClassicalDescription.v @@ -0,0 +1 @@ +../ClassicalDescription.v \ No newline at end of file diff --git a/theories/Logic/_Classical/ClassicalEpsilon.v b/theories/Logic/_Classical/ClassicalEpsilon.v new file mode 120000 index 0000000000..828338909f --- /dev/null +++ b/theories/Logic/_Classical/ClassicalEpsilon.v @@ -0,0 +1 @@ +../ClassicalEpsilon.v \ No newline at end of file diff --git a/theories/Logic/_Classical/ClassicalFacts.v b/theories/Logic/_Classical/ClassicalFacts.v new file mode 120000 index 0000000000..f018093c09 --- /dev/null +++ b/theories/Logic/_Classical/ClassicalFacts.v @@ -0,0 +1 @@ +../ClassicalFacts.v \ No newline at end of file diff --git a/theories/Logic/_Classical/ClassicalUniqueChoice.v b/theories/Logic/_Classical/ClassicalUniqueChoice.v new file mode 120000 index 0000000000..a4ffc1b59c --- /dev/null +++ b/theories/Logic/_Classical/ClassicalUniqueChoice.v @@ -0,0 +1 @@ +../ClassicalUniqueChoice.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Classical_Pred_Type.v b/theories/Logic/_Classical/Classical_Pred_Type.v new file mode 120000 index 0000000000..665042b4f4 --- /dev/null +++ b/theories/Logic/_Classical/Classical_Pred_Type.v @@ -0,0 +1 @@ +../Classical_Pred_Type.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Classical_Prop.v b/theories/Logic/_Classical/Classical_Prop.v new file mode 120000 index 0000000000..d34681f2ff --- /dev/null +++ b/theories/Logic/_Classical/Classical_Prop.v @@ -0,0 +1 @@ +../Classical_Prop.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Description.v b/theories/Logic/_Classical/Description.v new file mode 120000 index 0000000000..5da567e1cc --- /dev/null +++ b/theories/Logic/_Classical/Description.v @@ -0,0 +1 @@ +../Description.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Diaconescu.v b/theories/Logic/_Classical/Diaconescu.v new file mode 120000 index 0000000000..92c34ac7fa --- /dev/null +++ b/theories/Logic/_Classical/Diaconescu.v @@ -0,0 +1 @@ +../Diaconescu.v \ No newline at end of file diff --git a/theories/Logic/_Classical/Epsilon.v b/theories/Logic/_Classical/Epsilon.v new file mode 120000 index 0000000000..5c5084a53b --- /dev/null +++ b/theories/Logic/_Classical/Epsilon.v @@ -0,0 +1 @@ +../Epsilon.v \ No newline at end of file diff --git a/theories/Logic/_Classical/IndefiniteDescription.v b/theories/Logic/_Classical/IndefiniteDescription.v new file mode 120000 index 0000000000..f940c2bc96 --- /dev/null +++ b/theories/Logic/_Classical/IndefiniteDescription.v @@ -0,0 +1 @@ +../IndefiniteDescription.v \ No newline at end of file diff --git a/theories/Logic/_Classical/PropExtensionality.v b/theories/Logic/_Classical/PropExtensionality.v new file mode 120000 index 0000000000..6cd6801433 --- /dev/null +++ b/theories/Logic/_Classical/PropExtensionality.v @@ -0,0 +1 @@ +../PropExtensionality.v \ No newline at end of file diff --git a/theories/Logic/_Classical/SetoidChoice.v b/theories/Logic/_Classical/SetoidChoice.v new file mode 120000 index 0000000000..7a5c75dfcf --- /dev/null +++ b/theories/Logic/_Classical/SetoidChoice.v @@ -0,0 +1 @@ +../SetoidChoice.v \ No newline at end of file diff --git a/theories/Logic/_Lists/WKL.v b/theories/Logic/_Lists/WKL.v new file mode 120000 index 0000000000..002d731c44 --- /dev/null +++ b/theories/Logic/_Lists/WKL.v @@ -0,0 +1 @@ +../WKL.v \ No newline at end of file diff --git a/theories/MSets/MSetAVL.v b/theories/MSets/MSetAVL.v index c06b903f74..771716eab5 100644 --- a/theories/MSets/MSetAVL.v +++ b/theories/MSets/MSetAVL.v @@ -33,7 +33,7 @@ code after extraction. *) -Require Import MSetInterface MSetGenTree BinInt Int. +From Stdlib Require Import MSetInterface MSetGenTree BinInt Int. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/MSets/MSetDecide.v b/theories/MSets/MSetDecide.v index 06baee5036..352c6cae6d 100644 --- a/theories/MSets/MSetDecide.v +++ b/theories/MSets/MSetDecide.v @@ -17,7 +17,7 @@ (** This file implements a decision procedure for a certain class of propositions involving finite sets. *) -Require Import Decidable Setoid DecidableTypeEx MSetFacts. +From Stdlib Require Import Decidable Setoid DecidableTypeEx MSetFacts. (** First, a version for Weak Sets in functorial presentation *) @@ -890,7 +890,7 @@ the above form: End WDecideOn. -Require Import MSetInterface. +From Stdlib Require Import MSetInterface. (** Now comes variants for self-contained weak sets and for full sets. For these variants, only one argument is necessary. Thanks to diff --git a/theories/MSets/MSetEqProperties.v b/theories/MSets/MSetEqProperties.v index 20f33d9ba6..398d2135ba 100644 --- a/theories/MSets/MSetEqProperties.v +++ b/theories/MSets/MSetEqProperties.v @@ -17,8 +17,8 @@ [mem x s=true] instead of [In x s], [equal s s'=true] instead of [Equal s s'], etc. *) -Require Import MSetProperties Zerob Sumbool Lia DecidableTypeEx. -Require FSetEqProperties. +From Stdlib Require Import MSetProperties Zerob Sumbool Lia DecidableTypeEx. +From Stdlib Require FSetEqProperties. Module WEqPropertiesOn (Import E:DecidableType)(M:WSetsOn E). diff --git a/theories/MSets/MSetFacts.v b/theories/MSets/MSetFacts.v index f7cd7f04da..da5f21de5a 100644 --- a/theories/MSets/MSetFacts.v +++ b/theories/MSets/MSetFacts.v @@ -16,8 +16,8 @@ Moreover, we prove that [E.Eq] and [Equal] are setoid equalities. *) -Require Import DecidableTypeEx. -Require Export MSetInterface. +From Stdlib Require Import DecidableTypeEx. +From Stdlib Require Export MSetInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/MSets/MSetGenTree.v b/theories/MSets/MSetGenTree.v index 6f0eab2b1d..0fad846016 100644 --- a/theories/MSets/MSetGenTree.v +++ b/theories/MSets/MSetGenTree.v @@ -29,8 +29,8 @@ - min_elt max_elt choose *) -Require Import Orders OrdersFacts MSetInterface PeanoNat. -Require Arith. (* contains deprecated dependencies *) +From Stdlib Require Import Orders OrdersFacts MSetInterface PeanoNat. +From Stdlib Require Arith. (* contains deprecated dependencies *) Local Open Scope list_scope. Local Open Scope lazy_bool_scope. diff --git a/theories/MSets/MSetInterface.v b/theories/MSets/MSetInterface.v index e99348ec10..57c471b781 100644 --- a/theories/MSets/MSetInterface.v +++ b/theories/MSets/MSetInterface.v @@ -29,7 +29,7 @@ [RawSets] via the use of a subset type (see (W)Raw2Sets below). *) -Require Export Bool SetoidList RelationClasses Morphisms +From Stdlib Require Export Bool SetoidList RelationClasses Morphisms RelationPairs Equalities Orders OrdersFacts. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/MSets/MSetList.v b/theories/MSets/MSetList.v index 653463b0d7..a94f788d4d 100644 --- a/theories/MSets/MSetList.v +++ b/theories/MSets/MSetList.v @@ -13,7 +13,7 @@ (** This file proposes an implementation of the non-dependent interface [MSetInterface.S] using strictly ordered list. *) -Require Export MSetInterface OrdersFacts OrdersLists. +From Stdlib Require Export MSetInterface OrdersFacts OrdersLists. Set Implicit Arguments. Unset Strict Implicit. @@ -890,7 +890,7 @@ End Make. (** For this specific implementation, eq coincides with Leibniz equality *) -Require Eqdep_dec. +From Stdlib Require Eqdep_dec. Module Type OrderedTypeWithLeibniz. Include OrderedType. diff --git a/theories/MSets/MSetPositive.v b/theories/MSets/MSetPositive.v index 2f19dd5f38..5b1c35b72a 100644 --- a/theories/MSets/MSetPositive.v +++ b/theories/MSets/MSetPositive.v @@ -18,7 +18,7 @@ Sandrine Blazy (used for building certified compilers). *) -Require Import Bool PeanoNat BinPos Orders OrdersEx MSetInterface. +From Stdlib Require Import Bool PeanoNat BinPos Orders OrdersEx MSetInterface. Set Implicit Arguments. Local Open Scope lazy_bool_scope. diff --git a/theories/MSets/MSetProperties.v b/theories/MSets/MSetProperties.v index 907a9be68f..2d829940e8 100644 --- a/theories/MSets/MSetProperties.v +++ b/theories/MSets/MSetProperties.v @@ -16,8 +16,8 @@ [In x s] instead of [mem x s=true], [Equal s s'] instead of [equal s s'=true], etc. *) -Require Export MSetInterface. -Require Import PeanoNat DecidableTypeEx OrdersLists MSetFacts MSetDecide. +From Stdlib Require Export MSetInterface. +From Stdlib Require Import PeanoNat DecidableTypeEx OrdersLists MSetFacts MSetDecide. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/MSets/MSetRBT.v b/theories/MSets/MSetRBT.v index f7fcae9a2e..31e3510a0a 100644 --- a/theories/MSets/MSetRBT.v +++ b/theories/MSets/MSetRBT.v @@ -32,8 +32,8 @@ Additional suggested reading: http://www.lri.fr/~filliatr/ftp/publis/fpp.ps.gz *) -Require MSetGenTree. -Require Import Bool List BinPos Pnat Setoid SetoidList PeanoNat. +From Stdlib Require MSetGenTree. +From Stdlib Require Import Bool List BinPos Pnat Setoid SetoidList PeanoNat. Local Open Scope list_scope. (* For nicer extraction, we create induction principles diff --git a/theories/MSets/MSetToFiniteSet.v b/theories/MSets/MSetToFiniteSet.v index cc5161922c..1bd89bfc97 100644 --- a/theories/MSets/MSetToFiniteSet.v +++ b/theories/MSets/MSetToFiniteSet.v @@ -10,8 +10,8 @@ (** * Finite sets library : conversion to old [Finite_sets] *) -Require Import Ensembles Finite_sets. -Require Import MSetInterface MSetProperties OrdersEx. +From Stdlib Require Import Ensembles Finite_sets. +From Stdlib Require Import MSetInterface MSetProperties OrdersEx. (** * Going from [MSets] with usual Leibniz equality to the good old [Ensembles] and [Finite_sets] theory. *) diff --git a/theories/MSets/MSetWeakList.v b/theories/MSets/MSetWeakList.v index 4e4342c146..8098ac82de 100644 --- a/theories/MSets/MSetWeakList.v +++ b/theories/MSets/MSetWeakList.v @@ -13,7 +13,7 @@ (** This file proposes an implementation of the non-dependent interface [MSetWeakInterface.S] using lists without redundancy. *) -Require Import MSetInterface. +From Stdlib Require Import MSetInterface. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/MSets/MSets.v b/theories/MSets/MSets.v index 506b01846b..a0ae81cfb8 100644 --- a/theories/MSets/MSets.v +++ b/theories/MSets/MSets.v @@ -8,16 +8,16 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Orders. -Require Export OrdersEx. -Require Export OrdersAlt. -Require Export Equalities. -Require Export MSetInterface. -Require Export MSetFacts. -Require Export MSetDecide. -Require Export MSetProperties. -Require Export MSetEqProperties. -Require Export MSetWeakList. -Require Export MSetList. -Require Export MSetPositive. -Require Export MSetAVL. +From Stdlib Require Export Orders. +From Stdlib Require Export OrdersEx. +From Stdlib Require Export OrdersAlt. +From Stdlib Require Export Equalities. +From Stdlib Require Export MSetInterface. +From Stdlib Require Export MSetFacts. +From Stdlib Require Export MSetDecide. +From Stdlib Require Export MSetProperties. +From Stdlib Require Export MSetEqProperties. +From Stdlib Require Export MSetWeakList. +From Stdlib Require Export MSetList. +From Stdlib Require Export MSetPositive. +From Stdlib Require Export MSetAVL. diff --git a/theories/Make.arith b/theories/Make.arith new file mode 100644 index 0000000000..7fbe1f1a3a --- /dev/null +++ b/theories/Make.arith @@ -0,0 +1,3 @@ +Arith/_All/Arith.v + +-Q Arith/_All Stdlib.Arith diff --git a/theories/Make.arith-base b/theories/Make.arith-base new file mode 100644 index 0000000000..a3fec9a734 --- /dev/null +++ b/theories/Make.arith-base @@ -0,0 +1,59 @@ +Arith/_Base/Arith_base.v +Arith/_Base/Between.v +Arith/_Base/Bool_nat.v +Arith/_Base/Cantor.v +Arith/_Base/Compare.v +Arith/_Base/Compare_dec.v +Arith/_Base/EqNat.v +Arith/_Base/Euclid.v +Arith/_Base/Factorial.v +Arith/_Base/PeanoNat.v +Arith/_Base/Peano_dec.v +Arith/_Base/Wf_nat.v +Arith/_Base/Zerob.v +Numbers/_Arith/NumPrelude.v +Numbers/NatInt/NZBase.v +Numbers/NatInt/NZOrder.v +Numbers/NatInt/NZProperties.v +Numbers/NatInt/NZDiv.v +Numbers/NatInt/NZParity.v +Numbers/NatInt/NZPow.v +Numbers/NatInt/NZSqrt.v +Numbers/NatInt/NZGcd.v +Numbers/NatInt/NZBits.v +Numbers/NatInt/NZDomain.v +Numbers/NatInt/NZAxioms.v +Numbers/NatInt/NZAddOrder.v +Numbers/NatInt/NZMul.v +Numbers/NatInt/NZLog.v +Numbers/NatInt/NZAdd.v +Numbers/NatInt/NZMulOrder.v +Numbers/Natural/Abstract/NStrongRec.v +Numbers/Natural/Abstract/NAdd.v +Numbers/Natural/Abstract/NAxioms.v +Numbers/Natural/Abstract/NDefOps.v +Numbers/Natural/Abstract/NSqrt.v +Numbers/Natural/Abstract/NDiv0.v +Numbers/Natural/Abstract/NBits.v +Numbers/Natural/Abstract/NGcd.v +Numbers/Natural/Abstract/NParity.v +Numbers/Natural/Abstract/NProperties.v +Numbers/Natural/Abstract/NMaxMin.v +Numbers/Natural/Abstract/NDiv.v +Numbers/Natural/Abstract/NPow.v +Numbers/Natural/Abstract/NAddOrder.v +Numbers/Natural/Abstract/NLcm0.v +Numbers/Natural/Abstract/NLog.v +Numbers/Natural/Abstract/NMulOrder.v +Numbers/Natural/Abstract/NIso.v +Numbers/Natural/Abstract/NSub.v +Numbers/Natural/Abstract/NBase.v +Numbers/Natural/Abstract/NLcm.v +Numbers/Natural/Abstract/NOrder.v +Classes/_Arith/SetoidDec.v + +-Q Arith/_Base Stdlib.Arith +-Q Numbers/NatInt Stdlib.Numbers.NatInt +-Q Numbers/Natural Stdlib.Numbers.Natural +-Q Numbers/_Arith Stdlib.Numbers +-Q Classes/_Arith Stdlib.Classes diff --git a/theories/Make.bool b/theories/Make.bool new file mode 100644 index 0000000000..05b73a20cd --- /dev/null +++ b/theories/Make.bool @@ -0,0 +1,6 @@ +Bool/IfProp.v +Bool/Bool.v +Bool/DecBool.v +Bool/BoolEq.v + +-Q Bool Stdlib.Bool diff --git a/theories/Make.classes b/theories/Make.classes new file mode 100644 index 0000000000..746ff24be9 --- /dev/null +++ b/theories/Make.classes @@ -0,0 +1,7 @@ +Classes/_All/CEquivalence.v +Classes/_All/DecidableClass.v +Classes/_All/Morphisms_Relations.v +Classes/_All/RelationPairs.v +Classes/_All/SetoidClass.v + +-Q Classes/_All Stdlib.Classes diff --git a/theories/Make.classical-logic b/theories/Make.classical-logic new file mode 100644 index 0000000000..05e5e90172 --- /dev/null +++ b/theories/Make.classical-logic @@ -0,0 +1,17 @@ +Logic/_Classical/IndefiniteDescription.v +Logic/_Classical/Classical_Pred_Type.v +Logic/_Classical/Classical_Prop.v +Logic/_Classical/ClassicalFacts.v +Logic/_Classical/Classical.v +Logic/_Classical/Epsilon.v +Logic/_Classical/ClassicalChoice.v +Logic/_Classical/Description.v +Logic/_Classical/ClassicalEpsilon.v +Logic/_Classical/ChoiceFacts.v +Logic/_Classical/PropExtensionality.v +Logic/_Classical/ClassicalDescription.v +Logic/_Classical/ClassicalUniqueChoice.v +Logic/_Classical/SetoidChoice.v +Logic/_Classical/Diaconescu.v + +-Q Logic/_Classical Stdlib.Logic diff --git a/theories/Make.compat b/theories/Make.compat new file mode 100644 index 0000000000..2d9f3aeb98 --- /dev/null +++ b/theories/Make.compat @@ -0,0 +1,4 @@ +Compat/_All/AdmitAxiom.v +Compat/_All/Stdlib818.v + +-Q Compat/_All Stdlib.Compat diff --git a/theories/Make.corelib-wrapper b/theories/Make.corelib-wrapper new file mode 100644 index 0000000000..59c579b9cd --- /dev/null +++ b/theories/Make.corelib-wrapper @@ -0,0 +1,80 @@ +Array/_CorelibWrapper/ArrayAxioms.v +Array/_CorelibWrapper/PrimArray.v +BinNums/_CorelibWrapper/IntDef.v +BinNums/_CorelibWrapper/NatDef.v +BinNums/_CorelibWrapper/PosDef.v +Classes/_CorelibWrapper/CMorphisms.v +Classes/_CorelibWrapper/CRelationClasses.v +Classes/_CorelibWrapper/Equivalence.v +Classes/_CorelibWrapper/Init.v +Classes/_CorelibWrapper/Morphisms.v +Classes/_CorelibWrapper/Morphisms_Prop.v +Classes/_CorelibWrapper/RelationClasses.v +Classes/_CorelibWrapper/SetoidTactics.v +Compat/_CorelibWrapper/Coq818.v +Compat/_CorelibWrapper/Coq819.v +Compat/_CorelibWrapper/Coq820.v +Floats/_CorelibWrapper/FloatAxioms.v +Floats/_CorelibWrapper/FloatClass.v +Floats/_CorelibWrapper/FloatOps.v +Floats/_CorelibWrapper/PrimFloat.v +Floats/_CorelibWrapper/SpecFloat.v +Init/_CorelibWrapper/Byte.v +Init/_CorelibWrapper/Datatypes.v +Init/_CorelibWrapper/Decimal.v +Init/_CorelibWrapper/Hexadecimal.v +Init/_CorelibWrapper/Logic.v +Init/_CorelibWrapper/Ltac.v +Init/_CorelibWrapper/Nat.v +Init/_CorelibWrapper/Notations.v +Init/_CorelibWrapper/Number.v +Init/_CorelibWrapper/Peano.v +Init/_CorelibWrapper/Prelude.v +Init/_CorelibWrapper/Specif.v +Init/_CorelibWrapper/Sumbool.v +Init/_CorelibWrapper/Tactics.v +Init/_CorelibWrapper/Tauto.v +Init/_CorelibWrapper/Wf.v +Lists/_CorelibWrapper/ListDef.v +Numbers/_CorelibWrapper/BinNums.v +Numbers/Cyclic/Int63/_CorelibWrapper/CarryType.v +Numbers/Cyclic/Int63/_CorelibWrapper/PrimInt63.v +Numbers/Cyclic/Int63/_CorelibWrapper/Sint63Axioms.v +Numbers/Cyclic/Int63/_CorelibWrapper/Uint63Axioms.v +Program/_CorelibWrapper/Basics.v +Program/_CorelibWrapper/Tactics.v +Program/_CorelibWrapper/Utils.v +Program/_CorelibWrapper/Wf.v +Relations/_CorelibWrapper/Relation_Definitions.v +Setoids/Setoid.v +Strings/_CorelibWrapper/PrimString.v +Strings/_CorelibWrapper/PrimStringAxioms.v +derive/Derive.v +extraction/_CorelibWrapper/ExtrHaskellBasic.v +extraction/_CorelibWrapper/ExtrOcamlBasic.v +extraction/_CorelibWrapper/Extraction.v +ssr/ssrbool.v +ssr/ssrclasses.v +ssr/ssreflect.v +ssr/ssrfun.v +ssr/ssrsetoid.v +ssr/ssrunder.v +ssrmatching/ssrmatching.v + +-Q Array/_CorelibWrapper Stdlib.Array +-Q BinNums/_CorelibWrapper Stdlib.BinNums +-Q Classes/_CorelibWrapper Stdlib.Classes +-Q Compat/_CorelibWrapper Stdlib.Compat +-Q Floats/_CorelibWrapper Stdlib.Floats +-Q Init/_CorelibWrapper Stdlib.Init +-Q Lists/_CorelibWrapper Stdlib.Lists +-Q Numbers/_CorelibWrapper Stdlib.Numbers +-Q Numbers/Cyclic/Int63/_CorelibWrapper Stdlib.Numbers.Cyclic.Int63 +-Q Program/_CorelibWrapper Stdlib.Program +-Q Relations/_CorelibWrapper Stdlib.Relations +-Q Setoids Stdlib.Setoids +-Q Strings/_CorelibWrapper Stdlib.Strings +-Q derive Stdlib.derive +-Q extraction/_CorelibWrapper Stdlib.extraction +-Q ssr Stdlib.ssr +-Q ssrmatching Stdlib.ssrmatching diff --git a/theories/Make.extraction b/theories/Make.extraction new file mode 100644 index 0000000000..274242c6b2 --- /dev/null +++ b/theories/Make.extraction @@ -0,0 +1,21 @@ +extraction/_All/ExtrHaskellZInteger.v +extraction/_All/ExtrHaskellZInt.v +extraction/_All/ExtrHaskellNatNum.v +extraction/_All/ExtrHaskellString.v +extraction/_All/ExtrOcamlZInt.v +extraction/_All/ExtrOcamlNativeString.v +extraction/_All/ExtrOCamlFloats.v +extraction/_All/ExtrOcamlNatBigInt.v +extraction/_All/ExtrOcamlZBigInt.v +extraction/_All/ExtrOcamlNatInt.v +extraction/_All/ExtrHaskellNatInt.v +extraction/_All/ExtrOcamlString.v +extraction/_All/ExtrOCamlPString.v +extraction/_All/ExtrHaskellZNum.v +extraction/_All/ExtrOcamlChar.v +extraction/_All/ExtrOCamlPArray.v +extraction/_All/ExtrOcamlIntConv.v +extraction/_All/ExtrOCamlInt63.v +extraction/_All/ExtrHaskellNatInteger.v + +-Q extraction/_All Stdlib.extraction diff --git a/theories/Make.field b/theories/Make.field new file mode 100644 index 0000000000..d186164780 --- /dev/null +++ b/theories/Make.field @@ -0,0 +1,12 @@ +QArith/_Field/Qfield.v +QArith/_Field/Qround.v +QArith/_Field/Qring.v +QArith/_Field/Qpower.v +QArith/_Field/Qcanon.v +setoid_ring/_Field/Field_theory.v +setoid_ring/_Field/Field_tac.v +setoid_ring/_Field/Rings_Q.v +setoid_ring/_Field/Field.v + +-Q QArith/_Field Stdlib.QArith +-Q setoid_ring/_Field Stdlib.setoid_ring diff --git a/theories/Make.fmaps-fsets-msets b/theories/Make.fmaps-fsets-msets new file mode 100644 index 0000000000..3bb3bc1536 --- /dev/null +++ b/theories/Make.fmaps-fsets-msets @@ -0,0 +1,37 @@ +FSets/FMapInterface.v +FSets/FSetInterface.v +FSets/FSetWeakList.v +FSets/FSetAVL.v +FSets/FSetCompat.v +FSets/FSetDecide.v +FSets/FSetList.v +FSets/FSetProperties.v +FSets/FMapList.v +FSets/FMapFacts.v +FSets/FSetPositive.v +FSets/FMapFullAVL.v +FSets/FSetToFiniteSet.v +FSets/FMapAVL.v +FSets/FMapPositive.v +FSets/FSets.v +FSets/FMaps.v +FSets/FSetFacts.v +FSets/FSetEqProperties.v +FSets/FSetBridge.v +FSets/FMapWeakList.v +MSets/MSetList.v +MSets/MSetDecide.v +MSets/MSets.v +MSets/MSetWeakList.v +MSets/MSetGenTree.v +MSets/MSetAVL.v +MSets/MSetInterface.v +MSets/MSetFacts.v +MSets/MSetProperties.v +MSets/MSetRBT.v +MSets/MSetPositive.v +MSets/MSetToFiniteSet.v +MSets/MSetEqProperties.v + +-Q FSets Stdlib.FSets +-Q MSets Stdlib.MSets diff --git a/theories/Make.funind b/theories/Make.funind new file mode 100644 index 0000000000..9ad5d04e8d --- /dev/null +++ b/theories/Make.funind @@ -0,0 +1,4 @@ +funind/FunInd.v +funind/Recdef.v + +-Q funind Stdlib.funind diff --git a/theories/Make.lia b/theories/Make.lia new file mode 100644 index 0000000000..5effe945ae --- /dev/null +++ b/theories/Make.lia @@ -0,0 +1,26 @@ +omega/OmegaLemmas.v +omega/PreOmega.v +micromega/_Lia/ZifyN.v +micromega/_Lia/ZifyComparison.v +micromega/_Lia/ZifyClasses.v +micromega/_Lia/ZifyNat.v +micromega/_Lia/ZifyPow.v +micromega/_Lia/ZifyBool.v +micromega/_Lia/Zify.v +micromega/_Lia/ZifyInst.v +micromega/_Lia/DeclConstantZ.v +micromega/_Lia/OrderedRing.v +micromega/_Lia/Tauto.v +micromega/_Lia/Env.v +micromega/_Lia/Refl.v +micromega/_Lia/ZArith_hints.v +micromega/_Lia/ZMicromega.v +micromega/_Lia/EnvRing.v +micromega/_Lia/Lia.v +micromega/_Lia/VarMap.v +micromega/_Lia/Ztac.v +micromega/_Lia/ZCoeff.v +micromega/_Lia/RingMicromega.v + +-Q omega Stdlib.omega +-Q micromega/_Lia Stdlib.micromega diff --git a/theories/Make.lists b/theories/Make.lists new file mode 100644 index 0000000000..44c26c02fd --- /dev/null +++ b/theories/Make.lists @@ -0,0 +1,12 @@ +Lists/_All/ListDec.v +Lists/_All/List.v +Lists/_All/ListSet.v +Lists/_All/ListTactics.v +Numbers/_Lists/NaryFunctions.v +Logic/_Lists/WKL.v +Classes/_Lists/EquivDec.v + +-Q Lists/_All Stdlib.Lists +-Q Numbers/_Lists Stdlib.Numbers +-Q Logic/_Lists Stdlib.Logic +-Q Classes/_Lists Stdlib.Classes diff --git a/theories/Make.logic b/theories/Make.logic new file mode 100644 index 0000000000..03ee0b10ab --- /dev/null +++ b/theories/Make.logic @@ -0,0 +1,23 @@ +Logic/Adjointification.v +Logic/Eqdep_dec.v +Logic/JMeq.v +Logic/SetIsType.v +Logic/Berardi.v +Logic/ExtensionalFunctionRepresentative.v +Logic/ProofIrrelevanceFacts.v +Logic/StrictProp.v +Logic/ConstructiveEpsilon.v +Logic/ExtensionalityFacts.v +Logic/ProofIrrelevance.v +Logic/WeakFan.v +Logic/Decidable.v +Logic/FunctionalExtensionality.v +Logic/PropExtensionalityFacts.v +Logic/Eqdep.v +Logic/HLevels.v +Logic/PropFacts.v +Logic/EqdepFacts.v +Logic/Hurkens.v +Logic/RelationalChoice.v + +-Q Logic Stdlib.Logic diff --git a/theories/Make.lqa b/theories/Make.lqa new file mode 100644 index 0000000000..8276f3a912 --- /dev/null +++ b/theories/Make.lqa @@ -0,0 +1,5 @@ +micromega/_Lqa/QMicromega.v +micromega/_Lqa/Lqa.v +micromega/_Lqa/DeclConstant.v + +-Q micromega/_Lqa Stdlib.micromega diff --git a/theories/Make.narith b/theories/Make.narith new file mode 100644 index 0000000000..2f68e7932d --- /dev/null +++ b/theories/Make.narith @@ -0,0 +1,10 @@ +NArith/BinNatDef.v +NArith/BinNat.v +NArith/Nnat.v +NArith/Ndiv_def.v +NArith/Ndec.v +NArith/Ngcd_def.v +NArith/Nsqrt_def.v +NArith/NArith.v + +-Q NArith Stdlib.NArith diff --git a/theories/Make.nsatz b/theories/Make.nsatz new file mode 100644 index 0000000000..deba3fa181 --- /dev/null +++ b/theories/Make.nsatz @@ -0,0 +1,3 @@ +nsatz/NsatzTactic.v + +-Q nsatz Stdlib.nsatz diff --git a/theories/Make.orders-ex b/theories/Make.orders-ex new file mode 100644 index 0000000000..0ee9ecbe54 --- /dev/null +++ b/theories/Make.orders-ex @@ -0,0 +1,12 @@ +Structures/_Ex/BoolOrder.v +Structures/_Ex/OrdersEx.v +Structures/_Ex/OrdersLists.v +Structures/_Ex/EqualitiesFacts.v +Structures/_Ex/OrderedTypeAlt.v +Structures/_Ex/OrderedType.v +Structures/_Ex/DecidableType.v +Structures/_Ex/OrderedTypeEx.v +Structures/_Ex/OrdersAlt.v +Structures/_Ex/DecidableTypeEx.v + +-Q Structures/_Ex Stdlib.Structures diff --git a/theories/Make.positive b/theories/Make.positive new file mode 100644 index 0000000000..f0672e975c --- /dev/null +++ b/theories/Make.positive @@ -0,0 +1,9 @@ +Numbers/_positive/AltBinNotations.v +PArith/Pnat.v +PArith/POrderedType.v +PArith/BinPos.v +PArith/PArith.v +PArith/BinPosDef.v + +-Q Numbers/_positive Stdlib.Numbers +-Q PArith Stdlib.PArith diff --git a/theories/Make.primitive-array b/theories/Make.primitive-array new file mode 100644 index 0000000000..63f0e7afd0 --- /dev/null +++ b/theories/Make.primitive-array @@ -0,0 +1,3 @@ +Array/_All/PArray.v + +-Q Array/_All Stdlib.Array diff --git a/theories/Make.primitive-floats b/theories/Make.primitive-floats new file mode 100644 index 0000000000..bfdf039807 --- /dev/null +++ b/theories/Make.primitive-floats @@ -0,0 +1,4 @@ +Floats/_All/Floats.v +Floats/_All/FloatLemmas.v + +-Q Floats/_All Stdlib.Floats diff --git a/theories/Make.primitive-int b/theories/Make.primitive-int new file mode 100644 index 0000000000..a6c0ad4c2a --- /dev/null +++ b/theories/Make.primitive-int @@ -0,0 +1,13 @@ +Numbers/Cyclic/Int63/_All/Sint63.v +Numbers/Cyclic/Int63/_All/Cyclic63.v +Numbers/Cyclic/Int63/_All/Uint63.v +Numbers/Cyclic/Int63/_All/Ring63.v +Numbers/Cyclic/Abstract/NZCyclic.v +Numbers/Cyclic/Abstract/DoubleType.v +Numbers/Cyclic/Abstract/CyclicAxioms.v +micromega/_Int63/ZifyUint63.v +micromega/_Int63/ZifySint63.v + +-Q Numbers/Cyclic/Int63/_All Stdlib.Numbers.Cyclic.Int63 +-Q Numbers/Cyclic/Abstract Stdlib.Numbers.Cyclic.Abstract +-Q micromega/_Int63 Stdlib.micromega diff --git a/theories/Make.primitive-string b/theories/Make.primitive-string new file mode 100644 index 0000000000..475084b500 --- /dev/null +++ b/theories/Make.primitive-string @@ -0,0 +1,3 @@ +Strings/_PString/PString.v + +-Q Strings/_PString Stdlib.Strings diff --git a/theories/Make.program b/theories/Make.program new file mode 100644 index 0000000000..b26a5bb508 --- /dev/null +++ b/theories/Make.program @@ -0,0 +1,8 @@ +Program/_All/Syntax.v +Program/_All/Equality.v +Program/_All/Subset.v +Program/_All/WfExtensionality.v +Program/_All/Program.v +Program/_All/Combinators.v + +-Q Program/_All Stdlib.Program diff --git a/theories/Make.qarith b/theories/Make.qarith new file mode 100644 index 0000000000..6a98ed95d0 --- /dev/null +++ b/theories/Make.qarith @@ -0,0 +1,8 @@ +QArith/_All/Qcabs.v +QArith/_All/Qabs.v +QArith/_All/QArith.v +Numbers/_QArith/DecimalQ.v +Numbers/_QArith/HexadecimalQ.v + +-Q QArith/_All Stdlib.QArith +-Q Numbers/_QArith Stdlib.Numbers diff --git a/theories/Make.qarith-base b/theories/Make.qarith-base new file mode 100644 index 0000000000..efa2bef75d --- /dev/null +++ b/theories/Make.qarith-base @@ -0,0 +1,6 @@ +QArith/_Base/Qreduction.v +QArith/_Base/Qminmax.v +QArith/_Base/QOrderedType.v +QArith/_Base/QArith_base.v + +-Q QArith/_Base Stdlib.QArith diff --git a/theories/Make.reals b/theories/Make.reals new file mode 100644 index 0000000000..94c33d07b0 --- /dev/null +++ b/theories/Make.reals @@ -0,0 +1,99 @@ +Reals/Rtrigo_facts.v +Reals/Ranalysis2.v +Reals/Rbase.v +Reals/Reals.v +Reals/ArithProp.v +Reals/Rgeom.v +Reals/Exp_prop.v +Reals/Rtrigo.v +Reals/PartSum.v +Reals/SplitRmult.v +Reals/Rprod.v +Reals/Rsqrt_def.v +Reals/Ranalysis3.v +Reals/PSeries_reg.v +Reals/Rtrigo_calc.v +Reals/Raxioms.v +Reals/Ratan.v +Reals/Cos_plus.v +Reals/Rderiv.v +Reals/R_sqrt.v +Reals/R_sqr.v +Reals/Integration.v +Reals/Sqrt_reg.v +Reals/RiemannInt.v +Reals/Ranalysis_reg.v +Reals/NewtonInt.v +Reals/Rtrigo1.v +Reals/Rtrigo_fun.v +Reals/Ranalysis1.v +Reals/Zfloor.v +Reals/Abstract/ConstructiveLimits.v +Reals/Abstract/ConstructiveRealsMorphisms.v +Reals/Abstract/ConstructiveAbs.v +Reals/Abstract/ConstructiveLUB.v +Reals/Abstract/ConstructivePower.v +Reals/Abstract/ConstructiveReals.v +Reals/Abstract/ConstructiveSum.v +Reals/Abstract/ConstructiveMinMax.v +Reals/RList.v +Reals/Rsigma.v +Reals/Runcountable.v +Reals/Rpower.v +Reals/Rregisternames.v +Reals/RiemannInt_SF.v +Reals/Rbasic_fun.v +Reals/ROrderedType.v +Reals/SeqSeries.v +Reals/RIneq.v +Reals/DiscrR.v +Reals/SplitAbsolu.v +Reals/ClassicalDedekindReals.v +Reals/Rtrigo_def.v +Reals/R_Ifp.v +Reals/Rtopology.v +Reals/Rfunctions.v +Reals/Rtrigo_alt.v +Reals/ClassicalConstructiveReals.v +Reals/Cos_rel.v +Reals/Cauchy/ConstructiveRcomplete.v +Reals/Cauchy/QExtra.v +Reals/Cauchy/ConstructiveCauchyAbs.v +Reals/Cauchy/PosExtra.v +Reals/Cauchy/ConstructiveExtra.v +Reals/Cauchy/ConstructiveCauchyReals.v +Reals/Cauchy/ConstructiveCauchyRealsMult.v +Reals/Machin.v +Reals/Alembert.v +Reals/Ranalysis.v +Reals/MVT.v +Reals/Rlimit.v +Reals/Ranalysis4.v +Reals/Rdefinitions.v +Reals/Rcomplete.v +Reals/Ranalysis5.v +Reals/Binomial.v +Reals/Cauchy_prod.v +Reals/Rtrigo_reg.v +Reals/Rseries.v +Reals/AltSeries.v +Reals/Rminmax.v +Reals/Rpow_def.v +Reals/Rlogic.v +Reals/SeqProp.v +Reals/Qreals.v +Reals/Nsatz.v +setoid_ring/_Reals/RealField.v +setoid_ring/_Reals/Rings_R.v +micromega/_Reals/Lra.v +micromega/_Reals/Psatz.v +micromega/_Reals/Fourier_util.v +micromega/_Reals/Fourier.v +micromega/_Reals/RMicromega.v +Numbers/_Reals/DecimalR.v +Numbers/_Reals/HexadecimalR.v + +-Q Reals Stdlib.Reals +-Q setoid_ring/_Reals Stdlib.setoid_ring +-Q micromega/_Reals Stdlib.micromega +-Q Numbers/_Reals Stdlib.Numbers diff --git a/theories/Make.relations b/theories/Make.relations new file mode 100644 index 0000000000..a74f0af4c8 --- /dev/null +++ b/theories/Make.relations @@ -0,0 +1,5 @@ +Relations/_All/Relation_Operators.v +Relations/_All/Operators_Properties.v +Relations/_All/Relations.v + +-Q Relations/_All Stdlib.Relations diff --git a/theories/Make.ring b/theories/Make.ring new file mode 100644 index 0000000000..4193050e2f --- /dev/null +++ b/theories/Make.ring @@ -0,0 +1,25 @@ +ZArith/_Ring/Zpow_def.v +ZArith/_Ring/Znumtheory.v +ZArith/_Ring/Zcomplements.v +ZArith/_Ring/Zdiv.v +setoid_ring/_Ring/Ncring_polynom.v +setoid_ring/_Ring/Rings_Z.v +setoid_ring/_Ring/Ncring_initial.v +setoid_ring/_Ring/Ring_polynom.v +setoid_ring/_Ring/ZArithRing.v +setoid_ring/_Ring/Integral_domain.v +setoid_ring/_Ring/Ring_base.v +setoid_ring/_Ring/BinList.v +setoid_ring/_Ring/Ncring.v +setoid_ring/_Ring/Ring.v +setoid_ring/_Ring/Algebra_syntax.v +setoid_ring/_Ring/InitialRing.v +setoid_ring/_Ring/Cring.v +setoid_ring/_Ring/Ncring_tac.v +setoid_ring/_Ring/Ring_tac.v +setoid_ring/_Ring/ArithRing.v +setoid_ring/_Ring/NArithRing.v +setoid_ring/_Ring/Ring_theory.v + +-Q ZArith/_Ring Stdlib.ZArith +-Q setoid_ring/_Ring Stdlib.setoid_ring diff --git a/theories/Make.rtauto b/theories/Make.rtauto new file mode 100644 index 0000000000..8d9f4e96d4 --- /dev/null +++ b/theories/Make.rtauto @@ -0,0 +1,4 @@ +rtauto/Bintree.v +rtauto/Rtauto.v + +-Q rtauto Stdlib.rtauto diff --git a/theories/Make.sets b/theories/Make.sets new file mode 100644 index 0000000000..1766fc79b1 --- /dev/null +++ b/theories/Make.sets @@ -0,0 +1,24 @@ +Sets/Partial_Order.v +Sets/Multiset.v +Sets/Uniset.v +Sets/Relations_2.v +Sets/Image.v +Sets/Relations_3.v +Sets/Relations_1.v +Sets/Classical_sets.v +Sets/Finite_sets.v +Sets/Permut.v +Sets/Integers.v +Sets/Finite_sets_facts.v +Sets/Powerset_facts.v +Sets/Powerset.v +Sets/Powerset_Classical_facts.v +Sets/Ensembles.v +Sets/Relations_1_facts.v +Sets/Constructive_sets.v +Sets/Infinite_sets.v +Sets/Relations_2_facts.v +Sets/Relations_3_facts.v +Sets/Cpo.v + +-Q Sets Stdlib.Sets diff --git a/theories/Make.sorting b/theories/Make.sorting new file mode 100644 index 0000000000..dd1d383381 --- /dev/null +++ b/theories/Make.sorting @@ -0,0 +1,12 @@ +Sorting/Heap.v +Sorting/CPermutation.v +Sorting/Mergesort.v +Sorting/PermutSetoid.v +Sorting/PermutEq.v +Sorting/Sorting.v +Sorting/Permutation.v +Sorting/Sorted.v +Sorting/SetoidList.v +Sorting/SetoidPermutation.v + +-Q Sorting Stdlib.Sorting diff --git a/theories/Make.streams b/theories/Make.streams new file mode 100644 index 0000000000..ccfab5acfa --- /dev/null +++ b/theories/Make.streams @@ -0,0 +1,4 @@ +Streams/Streams.v +Streams/StreamMemo.v + +-Q Streams Stdlib.Streams diff --git a/theories/Make.strings b/theories/Make.strings new file mode 100644 index 0000000000..e7ceaf1353 --- /dev/null +++ b/theories/Make.strings @@ -0,0 +1,11 @@ +Strings/HexString.v +Strings/Ascii.v +Strings/String.v +Strings/OctalString.v +Strings/Byte.v +Strings/BinaryString.v +Numbers/_Strings/DecimalString.v +Numbers/_Strings/HexadecimalString.v + +-Q Strings Stdlib.Strings +-Q Numbers/_Strings Stdlib.Numbers diff --git a/theories/Make.structures b/theories/Make.structures new file mode 100644 index 0000000000..e0fadee20f --- /dev/null +++ b/theories/Make.structures @@ -0,0 +1,7 @@ +Structures/_Def/GenericMinMax.v +Structures/_Def/Equalities.v +Structures/_Def/Orders.v +Structures/_Def/OrdersFacts.v +Structures/_Def/OrdersTac.v + +-Q Structures/_Def Stdlib.Structures diff --git a/theories/Make.unicode b/theories/Make.unicode new file mode 100644 index 0000000000..41186df3b8 --- /dev/null +++ b/theories/Make.unicode @@ -0,0 +1,4 @@ +Unicode/Utf8_core.v +Unicode/Utf8.v + +-Q Unicode Stdlib.Unicode diff --git a/theories/Make.vectors b/theories/Make.vectors new file mode 100644 index 0000000000..78ceb2a199 --- /dev/null +++ b/theories/Make.vectors @@ -0,0 +1,9 @@ +Vectors/VectorEq.v +Vectors/VectorDef.v +Vectors/Vector.v +Vectors/Fin.v +Vectors/VectorSpec.v +Vectors/Bvector.v +Vectors/FinFun.v + +-Q Vectors Stdlib.Vectors diff --git a/theories/Make.wellfounded b/theories/Make.wellfounded new file mode 100644 index 0000000000..f34da0469d --- /dev/null +++ b/theories/Make.wellfounded @@ -0,0 +1,12 @@ +Wellfounded/Inclusion.v +Wellfounded/Wellfounded.v +Wellfounded/Union.v +Wellfounded/Transitive_Closure.v +Wellfounded/Well_Ordering.v +Wellfounded/Inverse_Image.v +Wellfounded/Disjoint_Union.v +Wellfounded/Lexicographic_Product.v +Wellfounded/Lexicographic_Exponentiation.v +Wellfounded/List_Extension.v + +-Q Wellfounded Stdlib.Wellfounded diff --git a/theories/Make.zarith b/theories/Make.zarith new file mode 100644 index 0000000000..04af9d5b99 --- /dev/null +++ b/theories/Make.zarith @@ -0,0 +1,31 @@ +Numbers/Natural/Binary/NBinary.v +ZArith/_All/Zpower.v +ZArith/_All/Zquot.v +ZArith/_All/Zpow_facts.v +ZArith/_All/Zdiv_facts.v +ZArith/_All/Zgcd_alt.v +ZArith/_All/Zwf.v +ZArith/_All/ZArith.v +ZArith/_All/Zbitwise.v +Numbers/Integer/Binary/ZBinary.v +Numbers/Integer/NatPairs/ZNatPairs.v +Numbers/_ZArith/DecimalN.v +Numbers/_ZArith/DecimalNat.v +Numbers/_ZArith/DecimalZ.v +Numbers/_ZArith/DecimalFacts.v +Numbers/_ZArith/DecimalPos.v +Numbers/_ZArith/HexadecimalN.v +Numbers/_ZArith/HexadecimalNat.v +Numbers/_ZArith/HexadecimalZ.v +Numbers/_ZArith/HexadecimalFacts.v +Numbers/_ZArith/HexadecimalPos.v +btauto/Algebra.v +btauto/Reflect.v +btauto/Btauto.v + +-Q ZArith/_All Stdlib.ZArith +-Q Numbers/Natural/Binary Stdlib.Numbers.Natural.Binary +-Q Numbers/Integer/Binary Stdlib.Numbers.Integer.Binary +-Q Numbers/Integer/NatPairs Stdlib.Numbers.Integer.NatPairs +-Q Numbers/_ZArith Stdlib.Numbers +-Q btauto Stdlib.btauto diff --git a/theories/Make.zarith-base b/theories/Make.zarith-base new file mode 100644 index 0000000000..78fd933bce --- /dev/null +++ b/theories/Make.zarith-base @@ -0,0 +1,41 @@ +Numbers/Integer/Abstract/ZSgnAbs.v +Numbers/Integer/Abstract/ZAxioms.v +Numbers/Integer/Abstract/ZAddOrder.v +Numbers/Integer/Abstract/ZProperties.v +Numbers/Integer/Abstract/ZDivTrunc.v +Numbers/Integer/Abstract/ZParity.v +Numbers/Integer/Abstract/ZMul.v +Numbers/Integer/Abstract/ZPow.v +Numbers/Integer/Abstract/ZAdd.v +Numbers/Integer/Abstract/ZDivFloor.v +Numbers/Integer/Abstract/ZMulOrder.v +Numbers/Integer/Abstract/ZDivEucl.v +Numbers/Integer/Abstract/ZMaxMin.v +Numbers/Integer/Abstract/ZGcd.v +Numbers/Integer/Abstract/ZLt.v +Numbers/Integer/Abstract/ZLcm.v +Numbers/Integer/Abstract/ZBase.v +Numbers/Integer/Abstract/ZBits.v +ZArith/_Base/BinIntDef.v +ZArith/_Base/BinInt.v +ZArith/_Base/Zcompare.v +ZArith/_Base/Zorder.v +ZArith/_Base/Zminmax.v +ZArith/_Base/Zmin.v +ZArith/_Base/Zmax.v +ZArith/_Base/Znat.v +ZArith/_Base/ZArith_dec.v +ZArith/_Base/Zabs.v +ZArith/_Base/auxiliary.v +ZArith/_Base/Zbool.v +ZArith/_Base/Zmisc.v +ZArith/_Base/Wf_Z.v +ZArith/_Base/Zhints.v +ZArith/_Base/ZArith_base.v +ZArith/_Base/Zeven.v +ZArith/_Base/Zpow_alt.v +ZArith/_Base/Zeuclid.v +ZArith/_Base/Int.v + +-Q Numbers/Integer/Abstract Stdlib.Numbers.Integer.Abstract +-Q ZArith/_Base Stdlib.ZArith diff --git a/theories/Makefile b/theories/Makefile new file mode 100644 index 0000000000..287cc05dd0 --- /dev/null +++ b/theories/Makefile @@ -0,0 +1,13 @@ +ROCQBIN?=$(dir $(shell which rocq)) +ROCQMAKEFILE?=$(ROCQBIN)rocq makefile +ROCQMAKEOPTIONS?= +ROCQMAKEFILEOPTIONS?= + +build-%: Makefile-%.coq + +$(MAKE) -f $< $(ROCQMAKEOPTIONS) + +Makefile-%.coq: Make.% + $(ROCQMAKEFILE) $(ROCQMAKEFILEOPTIONS) -f $< -o $@ + +install-%: Makefile-%.coq + +$(MAKE) -f $< $(ROCQMAKEOPTIONS) install diff --git a/theories/NArith/BinNat.v b/theories/NArith/BinNat.v index eb6f16cb2a..88ace1946d 100644 --- a/theories/NArith/BinNat.v +++ b/theories/NArith/BinNat.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinNums. -Require Import BinPos RelationClasses Morphisms Setoid +From Stdlib Require Export BinNums. +From Stdlib Require Import BinPos RelationClasses Morphisms Setoid Equalities OrdersFacts GenericMinMax Bool NAxioms NMaxMin NProperties. -Require BinNatDef. +From Stdlib Require BinNatDef. (**********************************************************************) (** * Binary natural numbers, operations and properties *) diff --git a/theories/NArith/BinNatDef.v b/theories/NArith/BinNatDef.v index d36f045109..a4b8a698ba 100644 --- a/theories/NArith/BinNatDef.v +++ b/theories/NArith/BinNatDef.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinNums. -Require Import BinPos. -Require Export BinNums.NatDef. +From Stdlib Require Export BinNums. +From Stdlib Require Import BinPos. +From Stdlib Require Export BinNums.NatDef. Local Open Scope N_scope. diff --git a/theories/NArith/NArith.v b/theories/NArith/NArith.v index e4058ebc29..ec79cefca8 100644 --- a/theories/NArith/NArith.v +++ b/theories/NArith/NArith.v @@ -10,14 +10,13 @@ (** Library for binary natural numbers *) -Require Export BinNums. -Require Export BinPos. -Require Export BinNat. -Require Export Nnat. -Require Export Ndiv_def. -Require Export Nsqrt_def. -Require Export Ngcd_def. -Require Export NArithRing. +From Stdlib Require Export BinNums. +From Stdlib Require Export BinPos. +From Stdlib Require Export BinNat. +From Stdlib Require Export Nnat. +From Stdlib Require Export Ndiv_def. +From Stdlib Require Export Nsqrt_def. +From Stdlib Require Export Ngcd_def. (** [N] contains an [order] tactic for natural numbers *) diff --git a/theories/NArith/Ndec.v b/theories/NArith/Ndec.v index d2190e8643..9c49d862a6 100644 --- a/theories/NArith/Ndec.v +++ b/theories/NArith/Ndec.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool. -Require Import Sumbool. -Require Import Arith. -Require Import BinPos. -Require Import BinNat. -Require Import Pnat. -Require Import Nnat. +From Stdlib Require Import Bool. +From Stdlib Require Import Sumbool. +From Stdlib Require Import Arith_base. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinNat. +From Stdlib Require Import Pnat. +From Stdlib Require Import Nnat. Local Open Scope N_scope. diff --git a/theories/NArith/Ndiv_def.v b/theories/NArith/Ndiv_def.v index 1a7f90cd8d..32ff45f039 100644 --- a/theories/NArith/Ndiv_def.v +++ b/theories/NArith/Ndiv_def.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinNat. +From Stdlib Require Import BinNat. Local Open Scope N_scope. (** Obsolete file, see [BinNat] now, diff --git a/theories/NArith/Ngcd_def.v b/theories/NArith/Ngcd_def.v index 14af4cd82d..6726b40ded 100644 --- a/theories/NArith/Ngcd_def.v +++ b/theories/NArith/Ngcd_def.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPos BinNat. +From Stdlib Require Import BinPos BinNat. Local Open Scope N_scope. (** Obsolete file, see [BinNat] now, diff --git a/theories/NArith/Nnat.v b/theories/NArith/Nnat.v index 0e08e19994..b61d1777f7 100644 --- a/theories/NArith/Nnat.v +++ b/theories/NArith/Nnat.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPos BinNat PeanoNat Pnat. +From Stdlib Require Import BinPos BinNat PeanoNat Pnat. (** * Conversions from [N] to [nat] *) diff --git a/theories/NArith/Nsqrt_def.v b/theories/NArith/Nsqrt_def.v index 0197423b72..df0ac0ff6e 100644 --- a/theories/NArith/Nsqrt_def.v +++ b/theories/NArith/Nsqrt_def.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinNat. +From Stdlib Require Import BinNat. (** Obsolete file, see [BinNat] now, only compatibility notations remain here. *) diff --git a/theories/Numbers/AltBinNotations.v b/theories/Numbers/AltBinNotations.v index e5b388f85e..37c17c390e 100644 --- a/theories/Numbers/AltBinNotations.v +++ b/theories/Numbers/AltBinNotations.v @@ -31,7 +31,7 @@ method, trading efficiency against a larger ML trust base relying on bigint.ml. *) -Require Import BinNums. +From Stdlib Require Import BinNums. (** [positive] *) diff --git a/theories/Numbers/Cyclic/Abstract/CyclicAxioms.v b/theories/Numbers/Cyclic/Abstract/CyclicAxioms.v index 111e466fab..bea64804b3 100644 --- a/theories/Numbers/Cyclic/Abstract/CyclicAxioms.v +++ b/theories/Numbers/Cyclic/Abstract/CyclicAxioms.v @@ -16,11 +16,11 @@ Set Implicit Arguments. -Require Import ZArith. -Require Import Lia. -Require Import Znumtheory. -Require Import Zpow_facts. -Require Import DoubleType. +From Stdlib Require Import ZArith. +From Stdlib Require Import Lia. +From Stdlib Require Import Znumtheory. +From Stdlib Require Import Zpow_facts. +From Stdlib Require Import DoubleType. Local Open Scope Z_scope. diff --git a/theories/Numbers/Cyclic/Abstract/DoubleType.v b/theories/Numbers/Cyclic/Abstract/DoubleType.v index 8be7f448f8..b512391fc9 100644 --- a/theories/Numbers/Cyclic/Abstract/DoubleType.v +++ b/theories/Numbers/Cyclic/Abstract/DoubleType.v @@ -12,8 +12,8 @@ Set Implicit Arguments. -Require Import BinInt. -Require Import CarryType. +From Stdlib Require Import BinInt. +From Stdlib Require Import CarryType. Local Open Scope Z_scope. Definition base digits := Z.pow 2 (Zpos digits). diff --git a/theories/Numbers/Cyclic/Abstract/NZCyclic.v b/theories/Numbers/Cyclic/Abstract/NZCyclic.v index 44d38c3000..7d2525917e 100644 --- a/theories/Numbers/Cyclic/Abstract/NZCyclic.v +++ b/theories/Numbers/Cyclic/Abstract/NZCyclic.v @@ -10,12 +10,12 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NZAxioms. -Require Import ZArith. -Require Import Zpow_facts. -Require Import DoubleType. -Require Import CyclicAxioms. -Require Import Lia. +From Stdlib Require Export NZAxioms. +From Stdlib Require Import ZArith. +From Stdlib Require Import Zpow_facts. +From Stdlib Require Import DoubleType. +From Stdlib Require Import CyclicAxioms. +From Stdlib Require Import Lia. (** * From [CyclicType] to [NZAxiomsSig] *) diff --git a/theories/Numbers/Cyclic/Int63/Cyclic63.v b/theories/Numbers/Cyclic/Int63/Cyclic63.v index 34cca4c9f1..865d92d4cc 100644 --- a/theories/Numbers/Cyclic/Int63/Cyclic63.v +++ b/theories/Numbers/Cyclic/Int63/Cyclic63.v @@ -13,9 +13,9 @@ (** Author: Arnaud Spiwack (+ Pierre Letouzey) *) -Require Import CyclicAxioms. -Require Export ZArith. -Require Export Uint63. +From Stdlib Require Import CyclicAxioms. +From Stdlib Require Export ZArith. +From Stdlib Require Export Uint63. Import Zpow_facts. Import Utf8. Import Lia. diff --git a/theories/Numbers/Cyclic/Int63/Ring63.v b/theories/Numbers/Cyclic/Int63/Ring63.v index 8c815f9073..3701d9a22f 100644 --- a/theories/Numbers/Cyclic/Int63/Ring63.v +++ b/theories/Numbers/Cyclic/Int63/Ring63.v @@ -11,7 +11,7 @@ (** * Uint63 numbers defines Z/(2^63)Z, and can hence be equipped with a ring structure and a ring tactic *) -Require Import Cyclic63 CyclicAxioms. +From Stdlib Require Import Cyclic63 CyclicAxioms. Local Open Scope uint63_scope. diff --git a/theories/Numbers/Cyclic/Int63/Sint63.v b/theories/Numbers/Cyclic/Int63/Sint63.v index 2558875841..aa69f416e4 100644 --- a/theories/Numbers/Cyclic/Int63/Sint63.v +++ b/theories/Numbers/Cyclic/Int63/Sint63.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZArith. +From Stdlib Require Import ZArith. Import Znumtheory. -Require Export Uint63 Sint63Axioms. -Require Import Lia. +From Stdlib Require Export Uint63 Sint63Axioms. +From Stdlib Require Import Lia. Notation min_int := Sint63Axioms.min_int (only parsing). Notation to_Z := Sint63Axioms.to_Z (only parsing). diff --git a/theories/Numbers/Cyclic/Int63/Uint63.v b/theories/Numbers/Cyclic/Int63/Uint63.v index de3b453370..775b1ea3d7 100644 --- a/theories/Numbers/Cyclic/Int63/Uint63.v +++ b/theories/Numbers/Cyclic/Int63/Uint63.v @@ -10,14 +10,14 @@ (* Benjamin Gregoire, Laurent Thery, INRIA, 2007 *) (************************************************************************) -Require Import Utf8. -Require Export DoubleType. -Require Import Lia. -Require Import Zpow_facts. -Require Import Zgcd_alt. -Require ZArith. +From Stdlib Require Import Utf8. +From Stdlib Require Export DoubleType. +From Stdlib Require Import Lia. +From Stdlib Require Import Zpow_facts. +From Stdlib Require Import Zgcd_alt. +From Stdlib Require ZArith. Import Znumtheory. -Require Export PrimInt63 Uint63Axioms. +From Stdlib Require Export PrimInt63 Uint63Axioms. Notation int := int (only parsing). Notation lsl := lsl (only parsing). diff --git a/theories/Numbers/Cyclic/Int63/_All/Cyclic63.v b/theories/Numbers/Cyclic/Int63/_All/Cyclic63.v new file mode 120000 index 0000000000..e146c1c068 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_All/Cyclic63.v @@ -0,0 +1 @@ +../Cyclic63.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_All/Ring63.v b/theories/Numbers/Cyclic/Int63/_All/Ring63.v new file mode 120000 index 0000000000..eed5a67be0 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_All/Ring63.v @@ -0,0 +1 @@ +../Ring63.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_All/Sint63.v b/theories/Numbers/Cyclic/Int63/_All/Sint63.v new file mode 120000 index 0000000000..c1ae2f9613 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_All/Sint63.v @@ -0,0 +1 @@ +../Sint63.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_All/Uint63.v b/theories/Numbers/Cyclic/Int63/_All/Uint63.v new file mode 120000 index 0000000000..156cc022c2 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_All/Uint63.v @@ -0,0 +1 @@ +../Uint63.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_CorelibWrapper/CarryType.v b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/CarryType.v new file mode 120000 index 0000000000..68e8df241f --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/CarryType.v @@ -0,0 +1 @@ +../CarryType.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_CorelibWrapper/PrimInt63.v b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/PrimInt63.v new file mode 120000 index 0000000000..99739c1a88 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/PrimInt63.v @@ -0,0 +1 @@ +../PrimInt63.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Sint63Axioms.v b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Sint63Axioms.v new file mode 120000 index 0000000000..f575d017b1 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Sint63Axioms.v @@ -0,0 +1 @@ +../Sint63Axioms.v \ No newline at end of file diff --git a/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Uint63Axioms.v b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Uint63Axioms.v new file mode 120000 index 0000000000..1efc6f2a23 --- /dev/null +++ b/theories/Numbers/Cyclic/Int63/_CorelibWrapper/Uint63Axioms.v @@ -0,0 +1 @@ +../Uint63Axioms.v \ No newline at end of file diff --git a/theories/Numbers/DecimalFacts.v b/theories/Numbers/DecimalFacts.v index 059a82f5db..37a2de21e6 100644 --- a/theories/Numbers/DecimalFacts.v +++ b/theories/Numbers/DecimalFacts.v @@ -10,7 +10,7 @@ (** * DecimalFacts : some facts about Decimal numbers *) -Require Import Decimal Arith ZArith. +From Stdlib Require Import Decimal Arith ZArith. Variant digits := d0 | d1 | d2 | d3 | d4 | d5 | d6 | d7 | d8 | d9. diff --git a/theories/Numbers/DecimalN.v b/theories/Numbers/DecimalN.v index 8d759c15f7..5114313d44 100644 --- a/theories/Numbers/DecimalN.v +++ b/theories/Numbers/DecimalN.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [N] are bijections *) -Require Import Decimal DecimalFacts DecimalPos PArith NArith. +From Stdlib Require Import Decimal DecimalFacts DecimalPos PArith NArith. Module Unsigned. diff --git a/theories/Numbers/DecimalNat.v b/theories/Numbers/DecimalNat.v index cfd0fb9225..bdca24d984 100644 --- a/theories/Numbers/DecimalNat.v +++ b/theories/Numbers/DecimalNat.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [nat] are bijections. *) -Require Import Decimal DecimalFacts Arith. +From Stdlib Require Import Decimal DecimalFacts Arith. Module Unsigned. diff --git a/theories/Numbers/DecimalPos.v b/theories/Numbers/DecimalPos.v index 7b7f2d65fc..983cbb2394 100644 --- a/theories/Numbers/DecimalPos.v +++ b/theories/Numbers/DecimalPos.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [positive] are bijections. *) -Require Import Decimal DecimalFacts PArith NArith. +From Stdlib Require Import Decimal DecimalFacts PArith NArith NArithRing. Module Unsigned. diff --git a/theories/Numbers/DecimalQ.v b/theories/Numbers/DecimalQ.v index bc9f0b1b2d..f326ff46e3 100644 --- a/theories/Numbers/DecimalQ.v +++ b/theories/Numbers/DecimalQ.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [Q] are bijections. *) -Require Import Decimal DecimalFacts DecimalPos DecimalN DecimalZ QArith. +From Stdlib Require Import Decimal DecimalFacts DecimalPos DecimalN DecimalZ QArith. Import PeanoNat. Lemma of_IQmake_to_decimal num den : diff --git a/theories/Numbers/DecimalR.v b/theories/Numbers/DecimalR.v index e34c3efaee..64d62d72f8 100644 --- a/theories/Numbers/DecimalR.v +++ b/theories/Numbers/DecimalR.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [R] are bijections. *) -Require Import Decimal DecimalFacts DecimalPos DecimalZ DecimalQ Rdefinitions. +From Stdlib Require Import Decimal DecimalFacts DecimalPos DecimalZ DecimalQ Rdefinitions. Require Import PeanoNat. Lemma of_IQmake_to_decimal num den : diff --git a/theories/Numbers/DecimalString.v b/theories/Numbers/DecimalString.v index d058b1dc36..fde386a51f 100644 --- a/theories/Numbers/DecimalString.v +++ b/theories/Numbers/DecimalString.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Decimal Ascii String. +From Stdlib Require Import Decimal Ascii String. (** * Conversion between decimal numbers and Coq strings *) diff --git a/theories/Numbers/DecimalZ.v b/theories/Numbers/DecimalZ.v index 8228181c02..785ff496bd 100644 --- a/theories/Numbers/DecimalZ.v +++ b/theories/Numbers/DecimalZ.v @@ -13,7 +13,7 @@ Proofs that conversions between decimal numbers and [Z] are bijections. *) -Require Import Decimal DecimalFacts DecimalPos DecimalN ZArith. +From Stdlib Require Import Decimal DecimalFacts DecimalPos DecimalN ZArith. Lemma of_to (z:Z) : Z.of_int (Z.to_int z) = z. Proof. diff --git a/theories/Numbers/HexadecimalFacts.v b/theories/Numbers/HexadecimalFacts.v index 9a211809fb..a263718ebe 100644 --- a/theories/Numbers/HexadecimalFacts.v +++ b/theories/Numbers/HexadecimalFacts.v @@ -10,7 +10,7 @@ (** * HexadecimalFacts : some facts about Hexadecimal numbers *) -Require Import Hexadecimal Arith ZArith. +From Stdlib Require Import Hexadecimal Arith ZArith. Variant digits := | d0 | d1 | d2 | d3 | d4 | d5 | d6 | d7 | d8 | d9 diff --git a/theories/Numbers/HexadecimalN.v b/theories/Numbers/HexadecimalN.v index b5336fb551..4eb1daf0f6 100644 --- a/theories/Numbers/HexadecimalN.v +++ b/theories/Numbers/HexadecimalN.v @@ -13,7 +13,7 @@ Proofs that conversions between hexadecimal numbers and [N] are bijections *) -Require Import Hexadecimal HexadecimalFacts HexadecimalPos PArith NArith. +From Stdlib Require Import Hexadecimal HexadecimalFacts HexadecimalPos PArith NArith. Module Unsigned. diff --git a/theories/Numbers/HexadecimalNat.v b/theories/Numbers/HexadecimalNat.v index a643915586..47d64f25c3 100644 --- a/theories/Numbers/HexadecimalNat.v +++ b/theories/Numbers/HexadecimalNat.v @@ -13,7 +13,7 @@ Proofs that conversions between hexadecimal numbers and [nat] are bijections. *) -Require Import Hexadecimal HexadecimalFacts Arith. +From Stdlib Require Import Hexadecimal HexadecimalFacts Arith. Module Unsigned. diff --git a/theories/Numbers/HexadecimalPos.v b/theories/Numbers/HexadecimalPos.v index 3621a063de..c95cc7d5fa 100644 --- a/theories/Numbers/HexadecimalPos.v +++ b/theories/Numbers/HexadecimalPos.v @@ -13,7 +13,7 @@ Proofs that conversions between hexadecimal numbers and [positive] are bijections. *) -Require Import Hexadecimal HexadecimalFacts PArith NArith. +From Stdlib Require Import Hexadecimal HexadecimalFacts PArith NArith NArithRing. Module Unsigned. diff --git a/theories/Numbers/HexadecimalQ.v b/theories/Numbers/HexadecimalQ.v index 7c57fb8f21..cabdebf31b 100644 --- a/theories/Numbers/HexadecimalQ.v +++ b/theories/Numbers/HexadecimalQ.v @@ -13,9 +13,8 @@ Proofs that conversions between hexadecimal numbers and [Q] are bijections. *) -Require Import Decimal DecimalFacts DecimalPos DecimalN DecimalZ. -Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalN HexadecimalZ QArith. -Import PeanoNat. +From Stdlib Require Import Arith_base Decimal DecimalFacts DecimalPos DecimalN DecimalZ. +From Stdlib Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalN HexadecimalZ QArith. Lemma of_IQmake_to_hexadecimal num den : match IQmake_to_hexadecimal num den with diff --git a/theories/Numbers/HexadecimalR.v b/theories/Numbers/HexadecimalR.v index 8293e848a1..eb8f0ea1de 100644 --- a/theories/Numbers/HexadecimalR.v +++ b/theories/Numbers/HexadecimalR.v @@ -13,10 +13,10 @@ Proofs that conversions between hexadecimal numbers and [R] are bijections. *) -Require Import PeanoNat. -Require Import Decimal DecimalFacts. -Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalZ. -Require Import HexadecimalQ Rdefinitions. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import Decimal DecimalFacts. +From Stdlib Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalZ. +From Stdlib Require Import HexadecimalQ Rdefinitions. Lemma of_IQmake_to_hexadecimal num den : match IQmake_to_hexadecimal num den with diff --git a/theories/Numbers/HexadecimalString.v b/theories/Numbers/HexadecimalString.v index bb851be727..dd9be7bd65 100644 --- a/theories/Numbers/HexadecimalString.v +++ b/theories/Numbers/HexadecimalString.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Hexadecimal Ascii String. +From Stdlib Require Import Hexadecimal Ascii String. (** * Conversion between hexadecimal numbers and Coq strings *) diff --git a/theories/Numbers/HexadecimalZ.v b/theories/Numbers/HexadecimalZ.v index 19d1079bcb..a70506fc26 100644 --- a/theories/Numbers/HexadecimalZ.v +++ b/theories/Numbers/HexadecimalZ.v @@ -13,7 +13,7 @@ Proofs that conversions between hexadecimal numbers and [Z] are bijections. *) -Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalN ZArith. +From Stdlib Require Import Hexadecimal HexadecimalFacts HexadecimalPos HexadecimalN ZArith. Lemma of_to (z:Z) : Z.of_hex_int (Z.to_hex_int z) = z. Proof. diff --git a/theories/Numbers/Integer/Abstract/ZAdd.v b/theories/Numbers/Integer/Abstract/ZAdd.v index e8841f6e8f..339953d81c 100644 --- a/theories/Numbers/Integer/Abstract/ZAdd.v +++ b/theories/Numbers/Integer/Abstract/ZAdd.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export ZBase. +From Stdlib Require Export ZBase. Module ZAddProp (Import Z : ZAxiomsMiniSig'). Include ZBaseProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZAddOrder.v b/theories/Numbers/Integer/Abstract/ZAddOrder.v index afc66e94e7..1263305ced 100644 --- a/theories/Numbers/Integer/Abstract/ZAddOrder.v +++ b/theories/Numbers/Integer/Abstract/ZAddOrder.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export ZLt. +From Stdlib Require Export ZLt. Module ZAddOrderProp (Import Z : ZAxiomsMiniSig'). Include ZOrderProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZAxioms.v b/theories/Numbers/Integer/Abstract/ZAxioms.v index 05776e90ac..732d0ed455 100644 --- a/theories/Numbers/Integer/Abstract/ZAxioms.v +++ b/theories/Numbers/Integer/Abstract/ZAxioms.v @@ -10,8 +10,8 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NZAxioms. -Require Import Bool NZParity NZPow NZSqrt NZLog NZGcd NZDiv NZBits. +From Stdlib Require Export NZAxioms. +From Stdlib Require Import Bool NZParity NZPow NZSqrt NZLog NZGcd NZDiv NZBits. (** We obtain integers by postulating that successor of predecessor is identity. *) diff --git a/theories/Numbers/Integer/Abstract/ZBase.v b/theories/Numbers/Integer/Abstract/ZBase.v index b587693488..581f278315 100644 --- a/theories/Numbers/Integer/Abstract/ZBase.v +++ b/theories/Numbers/Integer/Abstract/ZBase.v @@ -10,9 +10,9 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export Decidable. -Require Export ZAxioms. -Require Import NZMulOrder. +From Stdlib Require Export Decidable. +From Stdlib Require Export ZAxioms. +From Stdlib Require Import NZMulOrder. Module ZBaseProp (Import Z : ZAxiomsMiniSig'). Include NZMulOrderProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZBits.v b/theories/Numbers/Integer/Abstract/ZBits.v index e4ef14bd81..2671434a23 100644 --- a/theories/Numbers/Integer/Abstract/ZBits.v +++ b/theories/Numbers/Integer/Abstract/ZBits.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import +From Stdlib Require Import Bool ZAxioms ZMulOrder ZPow ZDivFloor ZSgnAbs ZParity NZLog. (** Derived properties of bitwise operations *) diff --git a/theories/Numbers/Integer/Abstract/ZDivFloor.v b/theories/Numbers/Integer/Abstract/ZDivFloor.v index eb1eb382cc..4879c4c2e9 100644 --- a/theories/Numbers/Integer/Abstract/ZDivFloor.v +++ b/theories/Numbers/Integer/Abstract/ZDivFloor.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZAxioms ZMulOrder ZSgnAbs NZDiv. +From Stdlib Require Import ZAxioms ZMulOrder ZSgnAbs NZDiv. (** * Euclidean Division for integers (Floor convention) diff --git a/theories/Numbers/Integer/Abstract/ZDivTrunc.v b/theories/Numbers/Integer/Abstract/ZDivTrunc.v index 07c0998535..c327ac252e 100644 --- a/theories/Numbers/Integer/Abstract/ZDivTrunc.v +++ b/theories/Numbers/Integer/Abstract/ZDivTrunc.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZAxioms ZMulOrder ZSgnAbs NZDiv. +From Stdlib Require Import ZAxioms ZMulOrder ZSgnAbs NZDiv. (** * Euclidean Division for integers (Trunc convention) diff --git a/theories/Numbers/Integer/Abstract/ZGcd.v b/theories/Numbers/Integer/Abstract/ZGcd.v index 8b6b7d81b7..ff0e4ff0c1 100644 --- a/theories/Numbers/Integer/Abstract/ZGcd.v +++ b/theories/Numbers/Integer/Abstract/ZGcd.v @@ -10,7 +10,7 @@ (** Properties of the greatest common divisor *) -Require Import ZAxioms ZMulOrder ZSgnAbs NZGcd. +From Stdlib Require Import ZAxioms ZMulOrder ZSgnAbs NZGcd. Module Type ZGcdProp (Import A : ZAxiomsSig') diff --git a/theories/Numbers/Integer/Abstract/ZLcm.v b/theories/Numbers/Integer/Abstract/ZLcm.v index af2d4deb80..00535e37d1 100644 --- a/theories/Numbers/Integer/Abstract/ZLcm.v +++ b/theories/Numbers/Integer/Abstract/ZLcm.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZAxioms ZMulOrder ZSgnAbs ZGcd ZDivTrunc ZDivFloor. +From Stdlib Require Import ZAxioms ZMulOrder ZSgnAbs ZGcd ZDivTrunc ZDivFloor. (** * Least Common Multiple *) diff --git a/theories/Numbers/Integer/Abstract/ZLt.v b/theories/Numbers/Integer/Abstract/ZLt.v index 7fbced6bed..407be64874 100644 --- a/theories/Numbers/Integer/Abstract/ZLt.v +++ b/theories/Numbers/Integer/Abstract/ZLt.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export ZMul. +From Stdlib Require Export ZMul. Module ZOrderProp (Import Z : ZAxiomsMiniSig'). Include ZMulProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZMaxMin.v b/theories/Numbers/Integer/Abstract/ZMaxMin.v index 60c965e010..c4d405ad1b 100644 --- a/theories/Numbers/Integer/Abstract/ZMaxMin.v +++ b/theories/Numbers/Integer/Abstract/ZMaxMin.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZAxioms ZMulOrder GenericMinMax. +From Stdlib Require Import ZAxioms ZMulOrder GenericMinMax. (** * Properties of minimum and maximum specific to integer numbers *) diff --git a/theories/Numbers/Integer/Abstract/ZMul.v b/theories/Numbers/Integer/Abstract/ZMul.v index 3dd8a1ba07..1694e538a4 100644 --- a/theories/Numbers/Integer/Abstract/ZMul.v +++ b/theories/Numbers/Integer/Abstract/ZMul.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export ZAdd. +From Stdlib Require Export ZAdd. Module ZMulProp (Import Z : ZAxiomsMiniSig'). Include ZAddProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZMulOrder.v b/theories/Numbers/Integer/Abstract/ZMulOrder.v index 1cface28ef..a18032becf 100644 --- a/theories/Numbers/Integer/Abstract/ZMulOrder.v +++ b/theories/Numbers/Integer/Abstract/ZMulOrder.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export ZAddOrder. +From Stdlib Require Export ZAddOrder. Module Type ZMulOrderProp (Import Z : ZAxiomsMiniSig'). Include ZAddOrderProp Z. diff --git a/theories/Numbers/Integer/Abstract/ZParity.v b/theories/Numbers/Integer/Abstract/ZParity.v index 61b8426ded..0a8739118a 100644 --- a/theories/Numbers/Integer/Abstract/ZParity.v +++ b/theories/Numbers/Integer/Abstract/ZParity.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool ZMulOrder NZParity. +From Stdlib Require Import Bool ZMulOrder NZParity. (** Some more properties of [even] and [odd]. *) diff --git a/theories/Numbers/Integer/Abstract/ZPow.v b/theories/Numbers/Integer/Abstract/ZPow.v index 269ff3e07c..bae533719e 100644 --- a/theories/Numbers/Integer/Abstract/ZPow.v +++ b/theories/Numbers/Integer/Abstract/ZPow.v @@ -10,7 +10,7 @@ (** Properties of the power function *) -Require Import Bool ZAxioms ZMulOrder ZParity ZSgnAbs NZPow. +From Stdlib Require Import Bool ZAxioms ZMulOrder ZParity ZSgnAbs NZPow. Module Type ZPowProp (Import A : ZAxiomsSig') diff --git a/theories/Numbers/Integer/Abstract/ZProperties.v b/theories/Numbers/Integer/Abstract/ZProperties.v index f09555fbe4..cfd55a37e3 100644 --- a/theories/Numbers/Integer/Abstract/ZProperties.v +++ b/theories/Numbers/Integer/Abstract/ZProperties.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export ZAxioms ZMaxMin ZSgnAbs ZParity ZPow ZDivTrunc ZDivFloor +From Stdlib Require Export ZAxioms ZMaxMin ZSgnAbs ZParity ZPow ZDivTrunc ZDivFloor ZGcd ZLcm NZLog NZSqrt ZBits. (** The two following functors summarize all known facts about N. diff --git a/theories/Numbers/Integer/Abstract/ZSgnAbs.v b/theories/Numbers/Integer/Abstract/ZSgnAbs.v index f89f7f8c7a..9919e09ec0 100644 --- a/theories/Numbers/Integer/Abstract/ZSgnAbs.v +++ b/theories/Numbers/Integer/Abstract/ZSgnAbs.v @@ -10,7 +10,7 @@ (** Properties of [abs] and [sgn] *) -Require Import ZMulOrder. +From Stdlib Require Import ZMulOrder. (** Since we already have [max], we could have defined [abs]. *) diff --git a/theories/Numbers/Integer/Binary/ZBinary.v b/theories/Numbers/Integer/Binary/ZBinary.v index 4703cf48ee..f80fee62d4 100644 --- a/theories/Numbers/Integer/Binary/ZBinary.v +++ b/theories/Numbers/Integer/Binary/ZBinary.v @@ -12,7 +12,7 @@ Attributes deprecated(since="8.20", note="Use Coq.ZArith.BinInt instead."). -Require Import ZAxioms ZProperties BinInt. +From Stdlib Require Import ZAxioms ZProperties BinInt. Local Open Scope Z_scope. diff --git a/theories/Numbers/Integer/NatPairs/ZNatPairs.v b/theories/Numbers/Integer/NatPairs/ZNatPairs.v index 1761421660..11f7532599 100644 --- a/theories/Numbers/Integer/NatPairs/ZNatPairs.v +++ b/theories/Numbers/Integer/NatPairs/ZNatPairs.v @@ -11,8 +11,8 @@ (************************************************************************) Attributes deprecated(since="8.20", note="Use Coq.ZArith.BinInt instead."). -Require Import NSub ZAxioms. -Require Export Ring. +From Stdlib Require Import NSub ZAxioms. +From Stdlib Require Export Ring. Declare Scope pair_scope. Local Open Scope pair_scope. @@ -352,7 +352,7 @@ and get their properties *) (* The following lines increase the compilation time at least twice *) (* -Require PeanoNat. +From Stdlib Require PeanoNat. Module Export ZPairsPeanoAxiomsMod := ZPairsAxiomsMod PeanoNat.Nat. Module Export ZPairsPropMod := ZPropFunct ZPairsPeanoAxiomsMod. diff --git a/theories/Numbers/NaryFunctions.v b/theories/Numbers/NaryFunctions.v index 2dd96cef39..198b1ee875 100644 --- a/theories/Numbers/NaryFunctions.v +++ b/theories/Numbers/NaryFunctions.v @@ -14,7 +14,7 @@ Local Set Warnings "-deprecated". Local Open Scope type_scope. -Require Import List. +From Stdlib Require Import List. (** * Generic dependently-typed operators about [n]-ary functions *) diff --git a/theories/Numbers/NatInt/NZBits.v b/theories/Numbers/NatInt/NZBits.v index 89d5941f55..56658268a3 100644 --- a/theories/Numbers/NatInt/NZBits.v +++ b/theories/Numbers/NatInt/NZBits.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool NZAxioms NZMulOrder NZParity NZPow NZDiv NZLog. +From Stdlib Require Import Bool NZAxioms NZMulOrder NZParity NZPow NZDiv NZLog. (** Axiomatization of some bitwise operations *) diff --git a/theories/Numbers/NatInt/NZDiv.v b/theories/Numbers/NatInt/NZDiv.v index e1432ad1a5..11c81788d8 100644 --- a/theories/Numbers/NatInt/NZDiv.v +++ b/theories/Numbers/NatInt/NZDiv.v @@ -10,7 +10,7 @@ (** Euclidean Division *) -Require Import NZAxioms NZMulOrder. +From Stdlib Require Import NZAxioms NZMulOrder. (** The first signatures will be common to all divisions over NZ, N and Z *) diff --git a/theories/Numbers/NatInt/NZDomain.v b/theories/Numbers/NatInt/NZDomain.v index 50bbcb2f77..bfd3bf9d1d 100644 --- a/theories/Numbers/NatInt/NZDomain.v +++ b/theories/Numbers/NatInt/NZDomain.v @@ -10,8 +10,8 @@ Attributes deprecated(since="8.20"). -Require Export NumPrelude NZAxioms. -Require Import NZBase NZOrder NZAddOrder PeanoNat. +From Stdlib Require Export NumPrelude NZAxioms. +From Stdlib Require Import NZBase NZOrder NZAddOrder PeanoNat. (** In this file, we investigate the shape of domains satisfying the [NZDomainSig] interface. In particular, we define a diff --git a/theories/Numbers/NatInt/NZGcd.v b/theories/Numbers/NatInt/NZGcd.v index e420ca6e7b..f8b904c073 100644 --- a/theories/Numbers/NatInt/NZGcd.v +++ b/theories/Numbers/NatInt/NZGcd.v @@ -10,7 +10,7 @@ (** Greatest Common Divisor *) -Require Import NZAxioms NZMulOrder. +From Stdlib Require Import NZAxioms NZMulOrder. (** Interface of a gcd function, then its specification on naturals *) diff --git a/theories/Numbers/NatInt/NZLog.v b/theories/Numbers/NatInt/NZLog.v index b57fb29f57..b50b8e6161 100644 --- a/theories/Numbers/NatInt/NZLog.v +++ b/theories/Numbers/NatInt/NZLog.v @@ -10,7 +10,7 @@ (** Base-2 Logarithm *) -Require Import NZAxioms NZMulOrder NZPow. +From Stdlib Require Import NZAxioms NZMulOrder NZPow. (** Interface of a log2 function, then its specification on naturals *) diff --git a/theories/Numbers/NatInt/NZMulOrder.v b/theories/Numbers/NatInt/NZMulOrder.v index 836fee5afb..2fce717eaa 100644 --- a/theories/Numbers/NatInt/NZMulOrder.v +++ b/theories/Numbers/NatInt/NZMulOrder.v @@ -25,8 +25,8 @@ numbers. Notice that [NZMulOrderProp] [Include]s [NZAddOrderProp]. *) -Require Import NZAxioms. -Require Import NZAddOrder. +From Stdlib Require Import NZAxioms. +From Stdlib Require Import NZAddOrder. Module Type NZMulOrderProp (Import NZ : NZOrdAxiomsSig'). Include NZAddOrderProp NZ. diff --git a/theories/Numbers/NatInt/NZParity.v b/theories/Numbers/NatInt/NZParity.v index a2aa5b73bf..3f6385e628 100644 --- a/theories/Numbers/NatInt/NZParity.v +++ b/theories/Numbers/NatInt/NZParity.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool NZAxioms NZMulOrder. +From Stdlib Require Import Bool NZAxioms NZMulOrder. (** Parity functions *) diff --git a/theories/Numbers/NatInt/NZPow.v b/theories/Numbers/NatInt/NZPow.v index 97f3f28dec..bec3c57eef 100644 --- a/theories/Numbers/NatInt/NZPow.v +++ b/theories/Numbers/NatInt/NZPow.v @@ -10,7 +10,7 @@ (** Power Function *) -Require Import NZAxioms NZMulOrder. +From Stdlib Require Import NZAxioms NZMulOrder. (** Interface of a power function, then its specification on naturals *) diff --git a/theories/Numbers/NatInt/NZProperties.v b/theories/Numbers/NatInt/NZProperties.v index 3d57ce29cd..0c715dd68f 100644 --- a/theories/Numbers/NatInt/NZProperties.v +++ b/theories/Numbers/NatInt/NZProperties.v @@ -11,7 +11,7 @@ (************************************************************************) Attributes deprecated(since="8.20", note="use Stdlib.Numbers.NatInt.NZMulOrder instead"). -Require Export NZAxioms NZMulOrder. +From Stdlib Require Export NZAxioms NZMulOrder. (** This functor summarizes all known facts about NZ. For the moment it is only an alias to [NZMulOrderProp], which diff --git a/theories/Numbers/NatInt/NZSqrt.v b/theories/Numbers/NatInt/NZSqrt.v index f3e2f179a5..2338189cdb 100644 --- a/theories/Numbers/NatInt/NZSqrt.v +++ b/theories/Numbers/NatInt/NZSqrt.v @@ -10,7 +10,7 @@ (** Square Root Function *) -Require Import NZAxioms NZMulOrder. +From Stdlib Require Import NZAxioms NZMulOrder. (** Interface of a sqrt function, then its specification on naturals *) diff --git a/theories/Numbers/Natural/Abstract/NAdd.v b/theories/Numbers/Natural/Abstract/NAdd.v index 2d638b5909..5eccf9c66a 100644 --- a/theories/Numbers/Natural/Abstract/NAdd.v +++ b/theories/Numbers/Natural/Abstract/NAdd.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NBase. +From Stdlib Require Export NBase. Module NAddProp (Import N : NAxiomsMiniSig'). Include NBaseProp N. diff --git a/theories/Numbers/Natural/Abstract/NAddOrder.v b/theories/Numbers/Natural/Abstract/NAddOrder.v index bf0c54bce9..e51c4d1429 100644 --- a/theories/Numbers/Natural/Abstract/NAddOrder.v +++ b/theories/Numbers/Natural/Abstract/NAddOrder.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NOrder. +From Stdlib Require Export NOrder. Module NAddOrderProp (Import N : NAxiomsMiniSig'). Include NOrderProp N. diff --git a/theories/Numbers/Natural/Abstract/NAxioms.v b/theories/Numbers/Natural/Abstract/NAxioms.v index 95d086db9f..571778367f 100644 --- a/theories/Numbers/Natural/Abstract/NAxioms.v +++ b/theories/Numbers/Natural/Abstract/NAxioms.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export Bool NZAxioms NZParity NZPow NZSqrt NZLog NZDiv NZGcd NZBits. +From Stdlib Require Export Bool NZAxioms NZParity NZPow NZSqrt NZLog NZDiv NZGcd NZBits. (** From [NZ], we obtain natural numbers just by stating that [pred 0] == 0 *) diff --git a/theories/Numbers/Natural/Abstract/NBase.v b/theories/Numbers/Natural/Abstract/NBase.v index cd48e3fbc3..d00633cc4e 100644 --- a/theories/Numbers/Natural/Abstract/NBase.v +++ b/theories/Numbers/Natural/Abstract/NBase.v @@ -10,9 +10,9 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export Decidable. -Require Export NAxioms. -Require Import NZMulOrder. +From Stdlib Require Export Decidable. +From Stdlib Require Export NAxioms. +From Stdlib Require Import NZMulOrder. Module NBaseProp (Import N : NAxiomsMiniSig'). (** First, we import all known facts about both natural numbers and integers. *) diff --git a/theories/Numbers/Natural/Abstract/NBits.v b/theories/Numbers/Natural/Abstract/NBits.v index 18f9ef8030..255b470ab8 100644 --- a/theories/Numbers/Natural/Abstract/NBits.v +++ b/theories/Numbers/Natural/Abstract/NBits.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool NAxioms NSub NPow NDiv NParity NLog. +From Stdlib Require Import Bool NAxioms NSub NPow NDiv NParity NLog. (** Derived properties of bitwise operations *) diff --git a/theories/Numbers/Natural/Abstract/NDefOps.v b/theories/Numbers/Natural/Abstract/NDefOps.v index 33eda5c914..646957a8b2 100644 --- a/theories/Numbers/Natural/Abstract/NDefOps.v +++ b/theories/Numbers/Natural/Abstract/NDefOps.v @@ -12,9 +12,9 @@ Attributes deprecated(since="8.20", note="Use PeanoNat or BinInt instead."). -Require Import Bool. (* To get the orb and negb function *) -Require Import RelationPairs. -Require Export NStrongRec. +From Stdlib Require Import Bool. (* To get the orb and negb function *) +From Stdlib Require Import RelationPairs. +From Stdlib Require Export NStrongRec. (** In this module, we derive generic implementations of usual operators just via the use of a [recursion] function. *) diff --git a/theories/Numbers/Natural/Abstract/NDiv.v b/theories/Numbers/Natural/Abstract/NDiv.v index df4f9a5744..935a435466 100644 --- a/theories/Numbers/Natural/Abstract/NDiv.v +++ b/theories/Numbers/Natural/Abstract/NDiv.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import NAxioms NSub NZDiv. +From Stdlib Require Import NAxioms NSub NZDiv. (** Properties of Euclidean Division *) diff --git a/theories/Numbers/Natural/Abstract/NDiv0.v b/theories/Numbers/Natural/Abstract/NDiv0.v index edf304fc2f..b943c4b16e 100644 --- a/theories/Numbers/Natural/Abstract/NDiv0.v +++ b/theories/Numbers/Natural/Abstract/NDiv0.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import NAxioms NSub NDiv. +From Stdlib Require Import NAxioms NSub NDiv. Module Type NDivPropPrivate (N : NAxiomsSig') (NP : NSubProp N). Declare Module Private_NDivProp : NDivProp N NP. diff --git a/theories/Numbers/Natural/Abstract/NGcd.v b/theories/Numbers/Natural/Abstract/NGcd.v index e0bad3e32c..0cf293c891 100644 --- a/theories/Numbers/Natural/Abstract/NGcd.v +++ b/theories/Numbers/Natural/Abstract/NGcd.v @@ -10,7 +10,7 @@ (** Properties of the greatest common divisor *) -Require Import NAxioms NSub NZGcd. +From Stdlib Require Import NAxioms NSub NZGcd. Module Type NGcdProp (Import A : NAxiomsSig') diff --git a/theories/Numbers/Natural/Abstract/NIso.v b/theories/Numbers/Natural/Abstract/NIso.v index aca6156794..42df564d04 100644 --- a/theories/Numbers/Natural/Abstract/NIso.v +++ b/theories/Numbers/Natural/Abstract/NIso.v @@ -12,7 +12,7 @@ Attributes deprecated(since="8.20", note="Please open an issue if this file is useful for you."). -Require Import NBase. +From Stdlib Require Import NBase. Module Homomorphism (N1 N2 : NAxiomsRecSig). diff --git a/theories/Numbers/Natural/Abstract/NLcm.v b/theories/Numbers/Natural/Abstract/NLcm.v index ce9b4a5926..3bea75e144 100644 --- a/theories/Numbers/Natural/Abstract/NLcm.v +++ b/theories/Numbers/Natural/Abstract/NLcm.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import NAxioms NSub NDiv NGcd. +From Stdlib Require Import NAxioms NSub NDiv NGcd. (** * Least Common Multiple *) diff --git a/theories/Numbers/Natural/Abstract/NLcm0.v b/theories/Numbers/Natural/Abstract/NLcm0.v index 850e861602..8695f31735 100644 --- a/theories/Numbers/Natural/Abstract/NLcm0.v +++ b/theories/Numbers/Natural/Abstract/NLcm0.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import NAxioms NSub NDiv0 NGcd NLcm. +From Stdlib Require Import NAxioms NSub NDiv0 NGcd NLcm. Module Type NLcmPropPrivate (A : NAxiomsSig') (B : NSubProp A) (C : NDivPropPrivate A B) (D : NGcdProp A B). diff --git a/theories/Numbers/Natural/Abstract/NLog.v b/theories/Numbers/Natural/Abstract/NLog.v index b7ba894a97..c49f0d2977 100644 --- a/theories/Numbers/Natural/Abstract/NLog.v +++ b/theories/Numbers/Natural/Abstract/NLog.v @@ -10,7 +10,7 @@ (** Base-2 Logarithm Properties *) -Require Import NAxioms NSub NPow NParity NZLog. +From Stdlib Require Import NAxioms NSub NPow NParity NZLog. Module Type NLog2Prop (A : NAxiomsSig) diff --git a/theories/Numbers/Natural/Abstract/NMaxMin.v b/theories/Numbers/Natural/Abstract/NMaxMin.v index 0164ad0402..c236826172 100644 --- a/theories/Numbers/Natural/Abstract/NMaxMin.v +++ b/theories/Numbers/Natural/Abstract/NMaxMin.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import NAxioms NSub GenericMinMax. +From Stdlib Require Import NAxioms NSub GenericMinMax. (** * Properties of minimum and maximum specific to natural numbers *) diff --git a/theories/Numbers/Natural/Abstract/NMulOrder.v b/theories/Numbers/Natural/Abstract/NMulOrder.v index c7bce42862..0626a2ee63 100644 --- a/theories/Numbers/Natural/Abstract/NMulOrder.v +++ b/theories/Numbers/Natural/Abstract/NMulOrder.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NAddOrder. +From Stdlib Require Export NAddOrder. Module NMulOrderProp (Import N : NAxiomsMiniSig'). Include NAddOrderProp N. diff --git a/theories/Numbers/Natural/Abstract/NOrder.v b/theories/Numbers/Natural/Abstract/NOrder.v index 9e4551918d..4554c4b116 100644 --- a/theories/Numbers/Natural/Abstract/NOrder.v +++ b/theories/Numbers/Natural/Abstract/NOrder.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NAdd. +From Stdlib Require Export NAdd. Module NOrderProp (Import N : NAxiomsMiniSig'). Include NAddProp N. diff --git a/theories/Numbers/Natural/Abstract/NParity.v b/theories/Numbers/Natural/Abstract/NParity.v index 5489663f27..14800a285e 100644 --- a/theories/Numbers/Natural/Abstract/NParity.v +++ b/theories/Numbers/Natural/Abstract/NParity.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool NSub NZParity. +From Stdlib Require Import Bool NSub NZParity. (** Some additional properties of [even], [odd]. *) diff --git a/theories/Numbers/Natural/Abstract/NPow.v b/theories/Numbers/Natural/Abstract/NPow.v index 47ce59e7a7..ec4eb3cf04 100644 --- a/theories/Numbers/Natural/Abstract/NPow.v +++ b/theories/Numbers/Natural/Abstract/NPow.v @@ -10,7 +10,7 @@ (** Properties of the power function *) -Require Import Bool NAxioms NSub NParity NZPow. +From Stdlib Require Import Bool NAxioms NSub NParity NZPow. (** Derived properties of power, specialized on natural numbers *) diff --git a/theories/Numbers/Natural/Abstract/NProperties.v b/theories/Numbers/Natural/Abstract/NProperties.v index af35944474..b8a1730a7f 100644 --- a/theories/Numbers/Natural/Abstract/NProperties.v +++ b/theories/Numbers/Natural/Abstract/NProperties.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export NAxioms. -Require Import NMaxMin NParity NPow NSqrt NLog NDiv NDiv0 NGcd NLcm NLcm0 NBits. +From Stdlib Require Export NAxioms. +From Stdlib Require Import NMaxMin NParity NPow NSqrt NLog NDiv NDiv0 NGcd NLcm NLcm0 NBits. (** The two following functors summarize all known facts about N. diff --git a/theories/Numbers/Natural/Abstract/NSqrt.v b/theories/Numbers/Natural/Abstract/NSqrt.v index ed02394b89..d1005ba06b 100644 --- a/theories/Numbers/Natural/Abstract/NSqrt.v +++ b/theories/Numbers/Natural/Abstract/NSqrt.v @@ -10,7 +10,7 @@ (** Properties of Square Root Function *) -Require Import NAxioms NSub NZSqrt. +From Stdlib Require Import NAxioms NSub NZSqrt. Module NSqrtProp (Import A : NAxiomsSig')(Import B : NSubProp A). diff --git a/theories/Numbers/Natural/Abstract/NStrongRec.v b/theories/Numbers/Natural/Abstract/NStrongRec.v index 56786b3f5e..91eeb6022e 100644 --- a/theories/Numbers/Natural/Abstract/NStrongRec.v +++ b/theories/Numbers/Natural/Abstract/NStrongRec.v @@ -13,7 +13,7 @@ (** This file defined the strong (course-of-value, well-founded) recursion and proves its properties *) -Require Export NSub. +From Stdlib Require Export NSub. Ltac f_equiv' := repeat (repeat f_equiv; try intros ? ? ?; auto). diff --git a/theories/Numbers/Natural/Abstract/NSub.v b/theories/Numbers/Natural/Abstract/NSub.v index cfc39d0dba..a0e3c3c9db 100644 --- a/theories/Numbers/Natural/Abstract/NSub.v +++ b/theories/Numbers/Natural/Abstract/NSub.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export NMulOrder. +From Stdlib Require Export NMulOrder. Module Type NSubProp (Import N : NAxiomsMiniSig'). Include NMulOrderProp N. diff --git a/theories/Numbers/Natural/Binary/NBinary.v b/theories/Numbers/Natural/Binary/NBinary.v index 279a637c52..9ab3c8755d 100644 --- a/theories/Numbers/Natural/Binary/NBinary.v +++ b/theories/Numbers/Natural/Binary/NBinary.v @@ -12,9 +12,9 @@ Attributes deprecated(since="8.20", note="Use Coq.NArith.BinNat instead."). -Require Import BinPos. -Require Export BinNat. -Require Import NAxioms NProperties. +From Stdlib Require Import BinPos. +From Stdlib Require Export BinNat. +From Stdlib Require Import NAxioms NProperties. Local Open Scope N_scope. @@ -23,7 +23,7 @@ Local Open Scope N_scope. Module N <: NAxiomsSig := N. (* -Require Import NDefOps. +From Stdlib Require Import NDefOps. Module Import NBinaryDefOpsMod := NdefOpsPropFunct NBinaryAxiomsMod. (* Some fun comparing the efficiency of the generic log defined diff --git a/theories/Numbers/NumPrelude.v b/theories/Numbers/NumPrelude.v index 82b4d0d77a..cb07035d2c 100644 --- a/theories/Numbers/NumPrelude.v +++ b/theories/Numbers/NumPrelude.v @@ -10,7 +10,7 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Export Setoid Morphisms Morphisms_Prop. +From Stdlib Require Export Setoid Morphisms Morphisms_Prop. Set Implicit Arguments. diff --git a/theories/Numbers/_Arith/NumPrelude.v b/theories/Numbers/_Arith/NumPrelude.v new file mode 120000 index 0000000000..abec99b873 --- /dev/null +++ b/theories/Numbers/_Arith/NumPrelude.v @@ -0,0 +1 @@ +../NumPrelude.v \ No newline at end of file diff --git a/theories/Numbers/_CorelibWrapper/BinNums.v b/theories/Numbers/_CorelibWrapper/BinNums.v new file mode 120000 index 0000000000..ac1dfdacf5 --- /dev/null +++ b/theories/Numbers/_CorelibWrapper/BinNums.v @@ -0,0 +1 @@ +../BinNums.v \ No newline at end of file diff --git a/theories/Numbers/_Lists/NaryFunctions.v b/theories/Numbers/_Lists/NaryFunctions.v new file mode 120000 index 0000000000..668538a6cb --- /dev/null +++ b/theories/Numbers/_Lists/NaryFunctions.v @@ -0,0 +1 @@ +../NaryFunctions.v \ No newline at end of file diff --git a/theories/Numbers/_QArith/DecimalQ.v b/theories/Numbers/_QArith/DecimalQ.v new file mode 120000 index 0000000000..560a3a38eb --- /dev/null +++ b/theories/Numbers/_QArith/DecimalQ.v @@ -0,0 +1 @@ +../DecimalQ.v \ No newline at end of file diff --git a/theories/Numbers/_QArith/HexadecimalQ.v b/theories/Numbers/_QArith/HexadecimalQ.v new file mode 120000 index 0000000000..576239a637 --- /dev/null +++ b/theories/Numbers/_QArith/HexadecimalQ.v @@ -0,0 +1 @@ +../HexadecimalQ.v \ No newline at end of file diff --git a/theories/Numbers/_Reals/DecimalR.v b/theories/Numbers/_Reals/DecimalR.v new file mode 120000 index 0000000000..7177714a9c --- /dev/null +++ b/theories/Numbers/_Reals/DecimalR.v @@ -0,0 +1 @@ +../DecimalR.v \ No newline at end of file diff --git a/theories/Numbers/_Reals/HexadecimalR.v b/theories/Numbers/_Reals/HexadecimalR.v new file mode 120000 index 0000000000..ee01205867 --- /dev/null +++ b/theories/Numbers/_Reals/HexadecimalR.v @@ -0,0 +1 @@ +../HexadecimalR.v \ No newline at end of file diff --git a/theories/Numbers/_Strings/DecimalString.v b/theories/Numbers/_Strings/DecimalString.v new file mode 120000 index 0000000000..9e11a82d2c --- /dev/null +++ b/theories/Numbers/_Strings/DecimalString.v @@ -0,0 +1 @@ +../DecimalString.v \ No newline at end of file diff --git a/theories/Numbers/_Strings/HexadecimalString.v b/theories/Numbers/_Strings/HexadecimalString.v new file mode 120000 index 0000000000..34d677a630 --- /dev/null +++ b/theories/Numbers/_Strings/HexadecimalString.v @@ -0,0 +1 @@ +../HexadecimalString.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/DecimalFacts.v b/theories/Numbers/_ZArith/DecimalFacts.v new file mode 120000 index 0000000000..bc31bd0b14 --- /dev/null +++ b/theories/Numbers/_ZArith/DecimalFacts.v @@ -0,0 +1 @@ +../DecimalFacts.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/DecimalN.v b/theories/Numbers/_ZArith/DecimalN.v new file mode 120000 index 0000000000..6fdc25bb7c --- /dev/null +++ b/theories/Numbers/_ZArith/DecimalN.v @@ -0,0 +1 @@ +../DecimalN.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/DecimalNat.v b/theories/Numbers/_ZArith/DecimalNat.v new file mode 120000 index 0000000000..1c83de9533 --- /dev/null +++ b/theories/Numbers/_ZArith/DecimalNat.v @@ -0,0 +1 @@ +../DecimalNat.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/DecimalPos.v b/theories/Numbers/_ZArith/DecimalPos.v new file mode 120000 index 0000000000..0a639f031c --- /dev/null +++ b/theories/Numbers/_ZArith/DecimalPos.v @@ -0,0 +1 @@ +../DecimalPos.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/DecimalZ.v b/theories/Numbers/_ZArith/DecimalZ.v new file mode 120000 index 0000000000..23d230b9e7 --- /dev/null +++ b/theories/Numbers/_ZArith/DecimalZ.v @@ -0,0 +1 @@ +../DecimalZ.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/HexadecimalFacts.v b/theories/Numbers/_ZArith/HexadecimalFacts.v new file mode 120000 index 0000000000..00a323e7bd --- /dev/null +++ b/theories/Numbers/_ZArith/HexadecimalFacts.v @@ -0,0 +1 @@ +../HexadecimalFacts.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/HexadecimalN.v b/theories/Numbers/_ZArith/HexadecimalN.v new file mode 120000 index 0000000000..bd07853d6e --- /dev/null +++ b/theories/Numbers/_ZArith/HexadecimalN.v @@ -0,0 +1 @@ +../HexadecimalN.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/HexadecimalNat.v b/theories/Numbers/_ZArith/HexadecimalNat.v new file mode 120000 index 0000000000..1e23835d46 --- /dev/null +++ b/theories/Numbers/_ZArith/HexadecimalNat.v @@ -0,0 +1 @@ +../HexadecimalNat.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/HexadecimalPos.v b/theories/Numbers/_ZArith/HexadecimalPos.v new file mode 120000 index 0000000000..565eab3670 --- /dev/null +++ b/theories/Numbers/_ZArith/HexadecimalPos.v @@ -0,0 +1 @@ +../HexadecimalPos.v \ No newline at end of file diff --git a/theories/Numbers/_ZArith/HexadecimalZ.v b/theories/Numbers/_ZArith/HexadecimalZ.v new file mode 120000 index 0000000000..526e952adf --- /dev/null +++ b/theories/Numbers/_ZArith/HexadecimalZ.v @@ -0,0 +1 @@ +../HexadecimalZ.v \ No newline at end of file diff --git a/theories/Numbers/_positive/AltBinNotations.v b/theories/Numbers/_positive/AltBinNotations.v new file mode 120000 index 0000000000..9f33a0ca4c --- /dev/null +++ b/theories/Numbers/_positive/AltBinNotations.v @@ -0,0 +1 @@ +../AltBinNotations.v \ No newline at end of file diff --git a/theories/PArith/BinPos.v b/theories/PArith/BinPos.v index d06c845e18..82c1188d18 100644 --- a/theories/PArith/BinPos.v +++ b/theories/PArith/BinPos.v @@ -9,11 +9,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinNums. -Require Import Eqdep_dec EqdepFacts RelationClasses Morphisms Setoid +From Stdlib Require Export BinNums. +From Stdlib Require Import Eqdep_dec EqdepFacts RelationClasses Morphisms Setoid Equalities Orders OrdersFacts GenericMinMax PeanoNat. -Require Export BinPosDef. +From Stdlib Require Export BinPosDef. (**********************************************************************) (** * Binary positive numbers, operations and properties *) diff --git a/theories/PArith/BinPosDef.v b/theories/PArith/BinPosDef.v index 1c9871bfe6..b398d3af11 100644 --- a/theories/PArith/BinPosDef.v +++ b/theories/PArith/BinPosDef.v @@ -18,7 +18,7 @@ (** The type [positive] and its constructors [xI] and [xO] and [xH] are now defined in [BinNums.v] *) -Require Export BinNums BinNums.PosDef. +From Stdlib Require Export BinNums BinNums.PosDef. Local Open Scope positive_scope. diff --git a/theories/PArith/PArith.v b/theories/PArith/PArith.v index 9b247cf609..17b66d3e16 100644 --- a/theories/PArith/PArith.v +++ b/theories/PArith/PArith.v @@ -10,4 +10,4 @@ (** Library for positive natural numbers *) -Require Export BinNums BinPos Pnat POrderedType. +From Stdlib Require Export BinNums BinPos Pnat POrderedType. diff --git a/theories/PArith/POrderedType.v b/theories/PArith/POrderedType.v index fd76ad7594..eb75e30ae2 100644 --- a/theories/PArith/POrderedType.v +++ b/theories/PArith/POrderedType.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPos Equalities Orders OrdersTac. +From Stdlib Require Import BinPos Equalities Orders OrdersTac. Local Open Scope positive_scope. diff --git a/theories/PArith/Pnat.v b/theories/PArith/Pnat.v index e80966961f..da3d63e3e7 100644 --- a/theories/PArith/Pnat.v +++ b/theories/PArith/Pnat.v @@ -9,7 +9,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPos PeanoNat. +From Stdlib Require Import BinPos PeanoNat. (** Properties of the injection from binary positive numbers to Peano natural numbers *) diff --git a/theories/Program/Combinators.v b/theories/Program/Combinators.v index 8bf1e16f3e..4e64099716 100644 --- a/theories/Program/Combinators.v +++ b/theories/Program/Combinators.v @@ -14,8 +14,8 @@ Institution: LRI, CNRS UMR 8623 - University Paris Sud *) -Require Import Stdlib.Program.Basics. -Require Export FunctionalExtensionality. +From Stdlib.Program Require Import Basics. +From Stdlib Require Export FunctionalExtensionality. Open Scope program_scope. diff --git a/theories/Program/Equality.v b/theories/Program/Equality.v index fe27b20f45..b08a1062fb 100644 --- a/theories/Program/Equality.v +++ b/theories/Program/Equality.v @@ -10,9 +10,9 @@ (** Tactics related to (dependent) equality and proof irrelevance. *) -Require Export JMeq. +From Stdlib Require Export JMeq. -Require Import Stdlib.Program.Tactics. +From Stdlib.Program Require Import Tactics. Ltac is_ground_goal := match goal with @@ -59,7 +59,7 @@ Ltac simpl_one_dep_JMeq := ltac:(fun H => let H' := fresh "H" in assert (H' := JMeq_eq H)). -Require Import Eqdep. +From Stdlib Require Import Eqdep. (** Simplify dependent equality using sigmas to equality of the second projections if possible. Uses UIP. *) diff --git a/theories/Program/Program.v b/theories/Program/Program.v index 456ae760d4..d108705cd5 100644 --- a/theories/Program/Program.v +++ b/theories/Program/Program.v @@ -7,11 +7,11 @@ (* * GNU Lesser General Public License Version 2.1 *) (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Stdlib.Program.Utils. -Require Export Stdlib.Program.Wf. -Require Export Stdlib.Program.Equality. -Require Export Stdlib.Program.Subset. -Require Export Stdlib.Program.Basics. -Require Export Stdlib.Program.Combinators. -Require Export Stdlib.Program.Syntax. -Require Export Stdlib.Program.WfExtensionality. +From Stdlib.Program Require Export Utils. +From Stdlib.Program Require Export Wf. +From Stdlib.Program Require Export Equality. +From Stdlib.Program Require Export Subset. +From Stdlib.Program Require Export Basics. +From Stdlib.Program Require Export Combinators. +From Stdlib.Program Require Export Syntax. +From Stdlib.Program Require Export WfExtensionality. diff --git a/theories/Program/Subset.v b/theories/Program/Subset.v index aed23f1f4b..919c8600bd 100644 --- a/theories/Program/Subset.v +++ b/theories/Program/Subset.v @@ -9,9 +9,9 @@ (************************************************************************) (** Tactics related to subsets and proof irrelevance. *) -Require Import Stdlib.Program.Utils. -Require Import Stdlib.Program.Equality. -Require Export ProofIrrelevance. +From Stdlib.Program Require Import Utils. +From Stdlib.Program Require Import Equality. +From Stdlib Require Export ProofIrrelevance. Local Open Scope program_scope. diff --git a/theories/Program/WfExtensionality.v b/theories/Program/WfExtensionality.v index cbd875e370..13a2ead0e9 100644 --- a/theories/Program/WfExtensionality.v +++ b/theories/Program/WfExtensionality.v @@ -10,9 +10,9 @@ (** Reformulation of the Wf module using subsets where possible, providing the support for [Program]'s treatment of well-founded definitions. *) -Require Import Stdlib.Init.Wf. -Require Import Stdlib.Program.Utils. -Require Import Stdlib.Program.Wf. +From Stdlib.Init Require Import Wf. +From Stdlib.Program Require Import Utils. +From Stdlib.Program Require Import Wf. Local Open Scope program_scope. diff --git a/theories/Program/_All/Combinators.v b/theories/Program/_All/Combinators.v new file mode 120000 index 0000000000..9f59fbb552 --- /dev/null +++ b/theories/Program/_All/Combinators.v @@ -0,0 +1 @@ +../Combinators.v \ No newline at end of file diff --git a/theories/Program/_All/Equality.v b/theories/Program/_All/Equality.v new file mode 120000 index 0000000000..da7731fb77 --- /dev/null +++ b/theories/Program/_All/Equality.v @@ -0,0 +1 @@ +../Equality.v \ No newline at end of file diff --git a/theories/Program/_All/Program.v b/theories/Program/_All/Program.v new file mode 120000 index 0000000000..6c979a6643 --- /dev/null +++ b/theories/Program/_All/Program.v @@ -0,0 +1 @@ +../Program.v \ No newline at end of file diff --git a/theories/Program/_All/Subset.v b/theories/Program/_All/Subset.v new file mode 120000 index 0000000000..3525ae2e5a --- /dev/null +++ b/theories/Program/_All/Subset.v @@ -0,0 +1 @@ +../Subset.v \ No newline at end of file diff --git a/theories/Program/_All/Syntax.v b/theories/Program/_All/Syntax.v new file mode 120000 index 0000000000..ba48f7813f --- /dev/null +++ b/theories/Program/_All/Syntax.v @@ -0,0 +1 @@ +../Syntax.v \ No newline at end of file diff --git a/theories/Program/_All/WfExtensionality.v b/theories/Program/_All/WfExtensionality.v new file mode 120000 index 0000000000..2e9367dcdf --- /dev/null +++ b/theories/Program/_All/WfExtensionality.v @@ -0,0 +1 @@ +../WfExtensionality.v \ No newline at end of file diff --git a/theories/Program/_CorelibWrapper/Basics.v b/theories/Program/_CorelibWrapper/Basics.v new file mode 120000 index 0000000000..6ac9ce14bc --- /dev/null +++ b/theories/Program/_CorelibWrapper/Basics.v @@ -0,0 +1 @@ +../Basics.v \ No newline at end of file diff --git a/theories/Program/_CorelibWrapper/Tactics.v b/theories/Program/_CorelibWrapper/Tactics.v new file mode 120000 index 0000000000..2a90dfcce4 --- /dev/null +++ b/theories/Program/_CorelibWrapper/Tactics.v @@ -0,0 +1 @@ +../Tactics.v \ No newline at end of file diff --git a/theories/Program/_CorelibWrapper/Utils.v b/theories/Program/_CorelibWrapper/Utils.v new file mode 120000 index 0000000000..bc739daabf --- /dev/null +++ b/theories/Program/_CorelibWrapper/Utils.v @@ -0,0 +1 @@ +../Utils.v \ No newline at end of file diff --git a/theories/Program/_CorelibWrapper/Wf.v b/theories/Program/_CorelibWrapper/Wf.v new file mode 120000 index 0000000000..fd1c9820f8 --- /dev/null +++ b/theories/Program/_CorelibWrapper/Wf.v @@ -0,0 +1 @@ +../Wf.v \ No newline at end of file diff --git a/theories/QArith/QArith.v b/theories/QArith/QArith.v index 328f0e8f3b..4db7b209f6 100644 --- a/theories/QArith/QArith.v +++ b/theories/QArith/QArith.v @@ -8,6 +8,6 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export QArith_base. -Require Export Qring. -Require Export Qreduction. +From Stdlib Require Export QArith_base. +From Stdlib Require Export Qring. +From Stdlib Require Export Qreduction. diff --git a/theories/QArith/QArith_base.v b/theories/QArith/QArith_base.v index 82ba82c101..c4770e9477 100644 --- a/theories/QArith/QArith_base.v +++ b/theories/QArith/QArith_base.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinInt. -Require Export ZArithRing. -Require Export ZArith.BinInt. -Require Export Morphisms Setoid Bool. +From Stdlib Require Export BinInt. +From Stdlib Require Export ZArithRing. +From Stdlib Require Export ZArith.BinInt. +From Stdlib Require Export Morphisms Setoid Bool. -Require ZArith.Zcompare. -Require ZArith_dec. +From Stdlib Require ZArith.Zcompare. +From Stdlib Require ZArith_dec. (** * Definition of [Q] and basic properties *) diff --git a/theories/QArith/QOrderedType.v b/theories/QArith/QOrderedType.v index 5524471341..d7a00b7350 100644 --- a/theories/QArith/QOrderedType.v +++ b/theories/QArith/QOrderedType.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import QArith_base Equalities Orders OrdersTac. +From Stdlib Require Import QArith_base Equalities Orders OrdersTac. Local Open Scope Q_scope. diff --git a/theories/QArith/Qabs.v b/theories/QArith/Qabs.v index 60c1c88d1d..1132912bd3 100644 --- a/theories/QArith/Qabs.v +++ b/theories/QArith/Qabs.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export QArith. -Require Export Qreduction. +From Stdlib Require Export QArith. +From Stdlib Require Export Qreduction. #[global] Hint Resolve Qlt_le_weak : qarith. diff --git a/theories/QArith/Qcabs.v b/theories/QArith/Qcabs.v index f3381bb064..3bbec006d8 100644 --- a/theories/QArith/Qcabs.v +++ b/theories/QArith/Qcabs.v @@ -12,7 +12,7 @@ (** Contributed by Cédric Auger *) -Require Import Qabs Qcanon. +From Stdlib Require Import Qabs Qcanon. Lemma Qred_abs (x : Q) : Qred (Qabs x) = Qabs (Qred x). Proof. diff --git a/theories/QArith/Qcanon.v b/theories/QArith/Qcanon.v index 78712a7845..0a6dd57b01 100644 --- a/theories/QArith/Qcanon.v +++ b/theories/QArith/Qcanon.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Field. -Require Import QArith. -Require Import Znumtheory. -Require Import Eqdep_dec. +From Stdlib Require Import Field. +From Stdlib Require Import QArith_base Qreduction. +From Stdlib Require Import Znumtheory. +From Stdlib Require Import Eqdep_dec. (** [Qc] : A canonical representation of rational numbers. based on the setoid representation [Q]. *) diff --git a/theories/QArith/Qfield.v b/theories/QArith/Qfield.v index f438d3ae3f..0d86296216 100644 --- a/theories/QArith/Qfield.v +++ b/theories/QArith/Qfield.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Field. -Require Export QArith_base. -Require Import NArithRing. +From Stdlib Require Export Field. +From Stdlib Require Export QArith_base. +From Stdlib Require Import NArithRing. (** * field and ring tactics for rational numbers *) diff --git a/theories/QArith/Qminmax.v b/theories/QArith/Qminmax.v index 2eafbd38ec..26927f49dd 100644 --- a/theories/QArith/Qminmax.v +++ b/theories/QArith/Qminmax.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import QArith_base Orders QOrderedType GenericMinMax. +From Stdlib Require Import QArith_base Orders QOrderedType GenericMinMax. (** * Maximum and Minimum of two rational numbers *) diff --git a/theories/QArith/Qpower.v b/theories/QArith/Qpower.v index 5f2bc55eec..b7eec9779f 100644 --- a/theories/QArith/Qpower.v +++ b/theories/QArith/Qpower.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Zpow_facts Qfield Qreduction. +From Stdlib Require Import Zpow_facts Qfield Qreduction. (** * Properties of Qpower_positive *) diff --git a/theories/QArith/Qreduction.v b/theories/QArith/Qreduction.v index c9ce035967..4d8f61694b 100644 --- a/theories/QArith/Qreduction.v +++ b/theories/QArith/Qreduction.v @@ -10,8 +10,8 @@ (** Normalisation functions for rational numbers. *) -Require Export QArith_base. -Require Import Znumtheory. +From Stdlib Require Export QArith_base. +From Stdlib Require Import Znumtheory. Notation Z2P := Z.to_pos (only parsing). Notation Z2P_correct := Z2Pos.id (only parsing). diff --git a/theories/QArith/Qring.v b/theories/QArith/Qring.v index 8b996074ec..fbd292ca7e 100644 --- a/theories/QArith/Qring.v +++ b/theories/QArith/Qring.v @@ -8,4 +8,4 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Qfield. +From Stdlib Require Export Qfield. diff --git a/theories/QArith/Qround.v b/theories/QArith/Qround.v index 830ebc9833..9a4086e49c 100644 --- a/theories/QArith/Qround.v +++ b/theories/QArith/Qround.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import QArith. -Import Zdiv. +From Stdlib Require Import QArith_base. +From Stdlib Require Import Zhints Zdiv. (************) diff --git a/theories/QArith/_All/QArith.v b/theories/QArith/_All/QArith.v new file mode 120000 index 0000000000..270b773ee0 --- /dev/null +++ b/theories/QArith/_All/QArith.v @@ -0,0 +1 @@ +../QArith.v \ No newline at end of file diff --git a/theories/QArith/_All/Qabs.v b/theories/QArith/_All/Qabs.v new file mode 120000 index 0000000000..b2a7b25c46 --- /dev/null +++ b/theories/QArith/_All/Qabs.v @@ -0,0 +1 @@ +../Qabs.v \ No newline at end of file diff --git a/theories/QArith/_All/Qcabs.v b/theories/QArith/_All/Qcabs.v new file mode 120000 index 0000000000..a21975e34f --- /dev/null +++ b/theories/QArith/_All/Qcabs.v @@ -0,0 +1 @@ +../Qcabs.v \ No newline at end of file diff --git a/theories/QArith/_Base/QArith_base.v b/theories/QArith/_Base/QArith_base.v new file mode 120000 index 0000000000..4763ccb895 --- /dev/null +++ b/theories/QArith/_Base/QArith_base.v @@ -0,0 +1 @@ +../QArith_base.v \ No newline at end of file diff --git a/theories/QArith/_Base/QOrderedType.v b/theories/QArith/_Base/QOrderedType.v new file mode 120000 index 0000000000..c847bc14b1 --- /dev/null +++ b/theories/QArith/_Base/QOrderedType.v @@ -0,0 +1 @@ +../QOrderedType.v \ No newline at end of file diff --git a/theories/QArith/_Base/Qminmax.v b/theories/QArith/_Base/Qminmax.v new file mode 120000 index 0000000000..8eb8f958ea --- /dev/null +++ b/theories/QArith/_Base/Qminmax.v @@ -0,0 +1 @@ +../Qminmax.v \ No newline at end of file diff --git a/theories/QArith/_Base/Qreduction.v b/theories/QArith/_Base/Qreduction.v new file mode 120000 index 0000000000..a1bddd667e --- /dev/null +++ b/theories/QArith/_Base/Qreduction.v @@ -0,0 +1 @@ +../Qreduction.v \ No newline at end of file diff --git a/theories/QArith/_Field/Qcanon.v b/theories/QArith/_Field/Qcanon.v new file mode 120000 index 0000000000..ea3b1fb9e4 --- /dev/null +++ b/theories/QArith/_Field/Qcanon.v @@ -0,0 +1 @@ +../Qcanon.v \ No newline at end of file diff --git a/theories/QArith/_Field/Qfield.v b/theories/QArith/_Field/Qfield.v new file mode 120000 index 0000000000..19ca76ca6f --- /dev/null +++ b/theories/QArith/_Field/Qfield.v @@ -0,0 +1 @@ +../Qfield.v \ No newline at end of file diff --git a/theories/QArith/_Field/Qpower.v b/theories/QArith/_Field/Qpower.v new file mode 120000 index 0000000000..d015a94039 --- /dev/null +++ b/theories/QArith/_Field/Qpower.v @@ -0,0 +1 @@ +../Qpower.v \ No newline at end of file diff --git a/theories/QArith/_Field/Qring.v b/theories/QArith/_Field/Qring.v new file mode 120000 index 0000000000..6b831f7162 --- /dev/null +++ b/theories/QArith/_Field/Qring.v @@ -0,0 +1 @@ +../Qring.v \ No newline at end of file diff --git a/theories/QArith/_Field/Qround.v b/theories/QArith/_Field/Qround.v new file mode 120000 index 0000000000..f3265a410f --- /dev/null +++ b/theories/QArith/_Field/Qround.v @@ -0,0 +1 @@ +../Qround.v \ No newline at end of file diff --git a/theories/Reals/Abstract/ConstructiveAbs.v b/theories/Reals/Abstract/ConstructiveAbs.v index bd97ce63d0..a3e55f17f9 100644 --- a/theories/Reals/Abstract/ConstructiveAbs.v +++ b/theories/Reals/Abstract/ConstructiveAbs.v @@ -9,9 +9,9 @@ (************************************************************************) (************************************************************************) -Require Import QArith. -Require Import Qabs. -Require Import ConstructiveReals. +From Stdlib Require Import QArith. +From Stdlib Require Import Qabs. +From Stdlib Require Import ConstructiveReals. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructiveLUB.v b/theories/Reals/Abstract/ConstructiveLUB.v index c3126b4fdb..b4ecf4bb66 100644 --- a/theories/Reals/Abstract/ConstructiveLUB.v +++ b/theories/Reals/Abstract/ConstructiveLUB.v @@ -16,11 +16,11 @@ WARNING: this file is experimental and likely to change in future releases. *) -Require Import Znat QArith_base Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveAbs. -Require Import ConstructiveLimits. -Require Import Logic.ConstructiveEpsilon. +From Stdlib Require Import Znat QArith_base Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveAbs. +From Stdlib Require Import ConstructiveLimits. +From Stdlib Require Import ConstructiveEpsilon. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructiveLimits.v b/theories/Reals/Abstract/ConstructiveLimits.v index 8a90c73ca4..87fb822ee9 100644 --- a/theories/Reals/Abstract/ConstructiveLimits.v +++ b/theories/Reals/Abstract/ConstructiveLimits.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat QArith Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveAbs. +From Stdlib Require Import PeanoNat QArith Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveAbs. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructiveMinMax.v b/theories/Reals/Abstract/ConstructiveMinMax.v index 515afa8fc1..62d844b321 100644 --- a/theories/Reals/Abstract/ConstructiveMinMax.v +++ b/theories/Reals/Abstract/ConstructiveMinMax.v @@ -9,11 +9,11 @@ (************************************************************************) (************************************************************************) -Require Import QArith. -Require Import Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveAbs. -Require Import ConstructiveRealsMorphisms. +From Stdlib Require Import QArith. +From Stdlib Require Import Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveAbs. +From Stdlib Require Import ConstructiveRealsMorphisms. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructivePower.v b/theories/Reals/Abstract/ConstructivePower.v index 0b9ce492a5..307d7a8ce2 100644 --- a/theories/Reals/Abstract/ConstructivePower.v +++ b/theories/Reals/Abstract/ConstructivePower.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Znat. -Require Import QArith Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveRealsMorphisms. -Require Import ConstructiveAbs. -Require Import ConstructiveLimits. -Require Import ConstructiveSum. +From Stdlib Require Import Znat. +From Stdlib Require Import QArith Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveRealsMorphisms. +From Stdlib Require Import ConstructiveAbs. +From Stdlib Require Import ConstructiveLimits. +From Stdlib Require Import ConstructiveSum. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructiveReals.v b/theories/Reals/Abstract/ConstructiveReals.v index 76f92e9d6a..30308cb4f0 100644 --- a/theories/Reals/Abstract/ConstructiveReals.v +++ b/theories/Reals/Abstract/ConstructiveReals.v @@ -70,7 +70,7 @@ Structure R := { *) -Require Import QArith Qabs Qround. +From Stdlib Require Import QArith Qabs Qround. Definition isLinearOrder {X : Set} (Xlt : X -> X -> Set) : Set := (forall x y:X, Xlt x y -> Xlt y x -> False) diff --git a/theories/Reals/Abstract/ConstructiveRealsMorphisms.v b/theories/Reals/Abstract/ConstructiveRealsMorphisms.v index 85aa2d482f..2709583d23 100644 --- a/theories/Reals/Abstract/ConstructiveRealsMorphisms.v +++ b/theories/Reals/Abstract/ConstructiveRealsMorphisms.v @@ -28,12 +28,12 @@ WARNING: this file is experimental and likely to change in future releases. *) -Require Import QArith. -Require Import Qabs. -Require Import Znat. -Require Import ConstructiveReals. -Require Import ConstructiveLimits. -Require Import ConstructiveAbs. +From Stdlib Require Import QArith. +From Stdlib Require Import Qabs. +From Stdlib Require Import Znat. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveLimits. +From Stdlib Require Import ConstructiveAbs. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Abstract/ConstructiveSum.v b/theories/Reals/Abstract/ConstructiveSum.v index 5509746868..dfd206a466 100644 --- a/theories/Reals/Abstract/ConstructiveSum.v +++ b/theories/Reals/Abstract/ConstructiveSum.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Znat. -Require Import QArith Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveRealsMorphisms. -Require Import ConstructiveAbs. -Require Import ConstructiveLimits. +From Stdlib Require Import Znat. +From Stdlib Require Import QArith Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveRealsMorphisms. +From Stdlib Require Import ConstructiveAbs. +From Stdlib Require Import ConstructiveLimits. Local Open Scope ConstructiveReals. diff --git a/theories/Reals/Alembert.v b/theories/Reals/Alembert.v index f3319c0574..3a624d30b5 100644 --- a/theories/Reals/Alembert.v +++ b/theories/Reals/Alembert.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import SeqProp. -Require Import PartSum. -Require Import Lra. -Require Import Compare_dec. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import SeqProp. +From Stdlib Require Import PartSum. +From Stdlib Require Import Lra. +From Stdlib Require Import Compare_dec. Local Open Scope R_scope. diff --git a/theories/Reals/AltSeries.v b/theories/Reals/AltSeries.v index 3637957602..66365f363f 100644 --- a/theories/Reals/AltSeries.v +++ b/theories/Reals/AltSeries.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import SeqProp. -Require Import PartSum. -Require Import Lra. -Require Import Compare_dec. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import SeqProp. +From Stdlib Require Import PartSum. +From Stdlib Require Import Lra. +From Stdlib Require Import Compare_dec. Local Open Scope R_scope. (**********) diff --git a/theories/Reals/ArithProp.v b/theories/Reals/ArithProp.v index 30d1fdb073..c7be053d73 100644 --- a/theories/Reals/ArithProp.v +++ b/theories/Reals/ArithProp.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rdefinitions Raxioms RIneq. -Require Import Rbasic_fun. -Require Import ArithRing. -Require Import PeanoNat. +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Import Rbasic_fun. +From Stdlib Require Import ArithRing. +From Stdlib Require Import PeanoNat. Local Open Scope Z_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Binomial.v b/theories/Reals/Binomial.v index 0d968410de..b4e90b91dd 100644 --- a/theories/Reals/Binomial.v +++ b/theories/Reals/Binomial.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import PartSum. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import PartSum. +From Stdlib Require Import Arith.Factorial. Local Open Scope R_scope. Definition C (n p:nat) : R := diff --git a/theories/Reals/Cauchy/ConstructiveCauchyAbs.v b/theories/Reals/Cauchy/ConstructiveCauchyAbs.v index 2ab36eadd7..f4e2630f08 100644 --- a/theories/Reals/Cauchy/ConstructiveCauchyAbs.v +++ b/theories/Reals/Cauchy/ConstructiveCauchyAbs.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import QArith. -Require Import Qabs. -Require Import Qpower. -Require Import ConstructiveCauchyReals. -Require Import ConstructiveCauchyRealsMult. -Require Import Lia. -Require Import Lqa. -Require Import QExtra. +From Stdlib Require Import QArith. +From Stdlib Require Import Qabs. +From Stdlib Require Import Qpower. +From Stdlib Require Import ConstructiveCauchyReals. +From Stdlib Require Import ConstructiveCauchyRealsMult. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. +From Stdlib Require Import QExtra. Local Open Scope CReal_scope. diff --git a/theories/Reals/Cauchy/ConstructiveCauchyReals.v b/theories/Reals/Cauchy/ConstructiveCauchyReals.v index 65c2a478ca..8f59213e9f 100644 --- a/theories/Reals/Cauchy/ConstructiveCauchyReals.v +++ b/theories/Reals/Cauchy/ConstructiveCauchyReals.v @@ -9,16 +9,16 @@ (************************************************************************) (************************************************************************) -Require Import QArith. -Require Import Qpower. -Require Import Qabs. -Require Import Qround. -Require Import Logic.ConstructiveEpsilon. -Require CMorphisms. -Require Import Lia. -Require Import Lqa. -Require Import QExtra. -Require Import ConstructiveExtra. +From Stdlib Require Import QArith. +From Stdlib Require Import Qpower. +From Stdlib Require Import Qabs. +From Stdlib Require Import Qround. +From Stdlib Require Import ConstructiveEpsilon. +From Stdlib Require CMorphisms. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. +From Stdlib Require Import QExtra. +From Stdlib Require Import ConstructiveExtra. (** The constructive Cauchy real numbers, ie the Cauchy sequences of rational numbers. diff --git a/theories/Reals/Cauchy/ConstructiveCauchyRealsMult.v b/theories/Reals/Cauchy/ConstructiveCauchyRealsMult.v index 6dc1654d18..04977c109e 100644 --- a/theories/Reals/Cauchy/ConstructiveCauchyRealsMult.v +++ b/theories/Reals/Cauchy/ConstructiveCauchyRealsMult.v @@ -14,15 +14,15 @@ WARNING: this file is experimental and likely to change in future releases. *) -Require Import QArith Qabs Qround Qpower. -Require Import Logic.ConstructiveEpsilon. -Require Export ConstructiveCauchyReals. -Require CMorphisms. -Require Import Znat. -Require Import Zorder. -Require Import Lia. -Require Import Lqa. -Require Import QExtra. +From Stdlib Require Import QArith Qabs Qround Qpower. +From Stdlib Require Import ConstructiveEpsilon. +From Stdlib Require Export ConstructiveCauchyReals. +From Stdlib Require CMorphisms. +From Stdlib Require Import Znat. +From Stdlib Require Import Zorder. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. +From Stdlib Require Import QExtra. Local Open Scope CReal_scope. diff --git a/theories/Reals/Cauchy/ConstructiveExtra.v b/theories/Reals/Cauchy/ConstructiveExtra.v index 0307a6a644..ec927dc823 100644 --- a/theories/Reals/Cauchy/ConstructiveExtra.v +++ b/theories/Reals/Cauchy/ConstructiveExtra.v @@ -1,5 +1,5 @@ -Require Import ZArith. -Require Import ConstructiveEpsilon. +From Stdlib Require Import ZArith. +From Stdlib Require Import ConstructiveEpsilon. Definition Z_inj_nat (z : Z) : nat := match z with diff --git a/theories/Reals/Cauchy/ConstructiveRcomplete.v b/theories/Reals/Cauchy/ConstructiveRcomplete.v index d9b0157f63..22cdef18cb 100644 --- a/theories/Reals/Cauchy/ConstructiveRcomplete.v +++ b/theories/Reals/Cauchy/ConstructiveRcomplete.v @@ -9,19 +9,19 @@ (************************************************************************) (************************************************************************) -Require Import PeanoNat. -Require Import QArith_base. -Require Import Qabs. -Require Import ConstructiveReals. -Require Import ConstructiveCauchyRealsMult. -Require Import Logic.ConstructiveEpsilon. -Require Import ConstructiveCauchyAbs. -Require Import Lia. -Require Import Lqa. -Require Import Qpower. -Require Import QExtra. -Require Import PosExtra. -Require Import ConstructiveExtra. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import QArith_base. +From Stdlib Require Import Qabs. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveCauchyRealsMult. +From Stdlib Require Import ConstructiveEpsilon. +From Stdlib Require Import ConstructiveCauchyAbs. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. +From Stdlib Require Import Qpower. +From Stdlib Require Import QExtra. +From Stdlib Require Import PosExtra. +From Stdlib Require Import ConstructiveExtra. (** Proof that Cauchy reals are Cauchy-complete. @@ -403,7 +403,7 @@ Proof. unfold Qle, Qnum, Qden; ring_simplify. lia. Qed. -Require Import Qminmax. +From Stdlib Require Import Qminmax. Lemma CRealLt_QR_from_single_dist : forall (q : Q) (r : CReal) (n :Z), (2^n < seq r n - q)%Q diff --git a/theories/Reals/Cauchy/PosExtra.v b/theories/Reals/Cauchy/PosExtra.v index 8f4d5c4fa4..6693f4efcf 100644 --- a/theories/Reals/Cauchy/PosExtra.v +++ b/theories/Reals/Cauchy/PosExtra.v @@ -1,6 +1,6 @@ -Require Import PArith. -Require Import ZArith. -Require Import Lia. +From Stdlib Require Import PArith. +From Stdlib Require Import ZArith. +From Stdlib Require Import Lia. Lemma Pos_pow_1_r: forall p : positive, (1^p = 1)%positive. diff --git a/theories/Reals/Cauchy/QExtra.v b/theories/Reals/Cauchy/QExtra.v index 190c9b38dc..9bc201ec52 100644 --- a/theories/Reals/Cauchy/QExtra.v +++ b/theories/Reals/Cauchy/QExtra.v @@ -1,11 +1,11 @@ -Require Import QArith. -Require Import Qpower. -Require Import Qabs. -Require Import Qround. -Require Import Zorder. -Require Import Lia. -Require Import Lqa. (* This is only used in a few places and could be avoided *) -Require Import PosExtra. +From Stdlib Require Import QArith. +From Stdlib Require Import Qpower. +From Stdlib Require Import Qabs. +From Stdlib Require Import Qround. +From Stdlib Require Import Zorder. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. (* This is only used in a few places and could be avoided *) +From Stdlib Require Import PosExtra. (** * Power of 2 open and closed upper and lower bounds for [q : Q] *) diff --git a/theories/Reals/Cauchy_prod.v b/theories/Reals/Cauchy_prod.v index f699c89e95..9df4a5df03 100644 --- a/theories/Reals/Cauchy_prod.v +++ b/theories/Reals/Cauchy_prod.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import PartSum. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import PartSum. Local Open Scope R_scope. (**********) diff --git a/theories/Reals/ClassicalConstructiveReals.v b/theories/Reals/ClassicalConstructiveReals.v index b48d5e5578..59406aaafd 100644 --- a/theories/Reals/ClassicalConstructiveReals.v +++ b/theories/Reals/ClassicalConstructiveReals.v @@ -21,16 +21,16 @@ This allows to apply results from constructive reals to classical reals. *) -Require Import QArith_base. -Require Import Znat. -Require Import Rdefinitions. -Require Import Raxioms. -Require Import ConstructiveReals. -Require Import ConstructiveCauchyReals. -Require Import ConstructiveCauchyRealsMult. -Require Import ConstructiveRcomplete. -Require Import ConstructiveCauchyAbs. -Require Import ConstructiveRealsMorphisms. +From Stdlib Require Import QArith_base. +From Stdlib Require Import Znat. +From Stdlib Require Import Rdefinitions. +From Stdlib Require Import Raxioms. +From Stdlib Require Import ConstructiveReals. +From Stdlib Require Import ConstructiveCauchyReals. +From Stdlib Require Import ConstructiveCauchyRealsMult. +From Stdlib Require Import ConstructiveRcomplete. +From Stdlib Require Import ConstructiveCauchyAbs. +From Stdlib Require Import ConstructiveRealsMorphisms. Local Open Scope R_scope. diff --git a/theories/Reals/ClassicalDedekindReals.v b/theories/Reals/ClassicalDedekindReals.v index 9b6317cd83..4422745d57 100644 --- a/theories/Reals/ClassicalDedekindReals.v +++ b/theories/Reals/ClassicalDedekindReals.v @@ -8,20 +8,20 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Stdlib.Logic.Eqdep_dec. -Require Import Stdlib.Logic.FunctionalExtensionality. -Require Import Stdlib.Logic.HLevels. -Require Import QArith. -Require Import Qabs. -Require Import ConstructiveCauchyReals. -Require Import ConstructiveRcomplete. -Require Import Lia. -Require Import Lqa. -Require Import Qpower. -Require Import QExtra. -Require Import Znat. -Require Import ZArith_dec. -Require CMorphisms. +From Stdlib.Logic Require Import Eqdep_dec. +From Stdlib.Logic Require Import FunctionalExtensionality. +From Stdlib.Logic Require Import HLevels. +From Stdlib Require Import QArith. +From Stdlib Require Import Qabs. +From Stdlib Require Import ConstructiveCauchyReals. +From Stdlib Require Import ConstructiveRcomplete. +From Stdlib Require Import Lia. +From Stdlib Require Import Lqa. +From Stdlib Require Import Qpower. +From Stdlib Require Import QExtra. +From Stdlib Require Import Znat. +From Stdlib Require Import ZArith_dec. +From Stdlib Require CMorphisms. (*****************************************************************************) (** * Q Auxiliary Lemmas *) diff --git a/theories/Reals/Cos_plus.v b/theories/Reals/Cos_plus.v index 17f01634b0..f2d87581b6 100644 --- a/theories/Reals/Cos_plus.v +++ b/theories/Reals/Cos_plus.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo_def. -Require Import Cos_rel. -Require Import Lia Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo_def. +From Stdlib Require Import Cos_rel. +From Stdlib Require Import Lia Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope nat_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Cos_rel.v b/theories/Reals/Cos_rel.v index e32b124f32..b2e4fee31e 100644 --- a/theories/Reals/Cos_rel.v +++ b/theories/Reals/Cos_rel.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo_def. -Require Import Lia Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo_def. +From Stdlib Require Import Lia Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope R_scope. Definition A1 (x:R) (N:nat) : R := diff --git a/theories/Reals/DiscrR.v b/theories/Reals/DiscrR.v index 333a97ad86..6535c805ea 100644 --- a/theories/Reals/DiscrR.v +++ b/theories/Reals/DiscrR.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import RIneq. -Require Import Lia. +From Stdlib Require Import RIneq. +From Stdlib Require Import Lia. Local Open Scope R_scope. Lemma Rlt_R0_R2 : 0 < 2. diff --git a/theories/Reals/Exp_prop.v b/theories/Reals/Exp_prop.v index 45ffc363d9..2a6d5e8ff8 100644 --- a/theories/Reals/Exp_prop.v +++ b/theories/Reals/Exp_prop.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import Ranalysis1. -Require Import PSeries_reg. -Require Import Lia Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import PSeries_reg. +From Stdlib Require Import Lia Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope nat_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Integration.v b/theories/Reals/Integration.v index 02befa3184..2eb096c6e2 100644 --- a/theories/Reals/Integration.v +++ b/theories/Reals/Integration.v @@ -8,6 +8,6 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export NewtonInt. -Require Export RiemannInt_SF. -Require Export RiemannInt. +From Stdlib Require Export NewtonInt. +From Stdlib Require Export RiemannInt_SF. +From Stdlib Require Export RiemannInt. diff --git a/theories/Reals/MVT.v b/theories/Reals/MVT.v index 2cee3db182..a6603f313f 100644 --- a/theories/Reals/MVT.v +++ b/theories/Reals/MVT.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis1. -Require Import Rtopology. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Rtopology. +From Stdlib Require Import Lra. Local Open Scope R_scope. (* The Mean Value Theorem *) diff --git a/theories/Reals/Machin.v b/theories/Reals/Machin.v index 25cd805eff..551b0f7e7f 100644 --- a/theories/Reals/Machin.v +++ b/theories/Reals/Machin.v @@ -8,17 +8,17 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Lia. -Require Import Lra. -Require Import Rbase. -Require Import Rtrigo1. -Require Import Ranalysis_reg. -Require Import Rfunctions. -Require Import AltSeries. -Require Import Rseries. -Require Import SeqProp. -Require Import PartSum. -Require Import Ratan. +From Stdlib Require Import Lia. +From Stdlib Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis_reg. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import AltSeries. +From Stdlib Require Import Rseries. +From Stdlib Require Import SeqProp. +From Stdlib Require Import PartSum. +From Stdlib Require Import Ratan. Local Open Scope R_scope. diff --git a/theories/Reals/NewtonInt.v b/theories/Reals/NewtonInt.v index a0271725f8..f26efb670b 100644 --- a/theories/Reals/NewtonInt.v +++ b/theories/Reals/NewtonInt.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import Ranalysis. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis. Local Open Scope R_scope. (*******************************************) diff --git a/theories/nsatz/Nsatz.v b/theories/Reals/Nsatz.v similarity index 75% rename from theories/nsatz/Nsatz.v rename to theories/Reals/Nsatz.v index f9fd671f2f..9f92da958a 100644 --- a/theories/nsatz/Nsatz.v +++ b/theories/Reals/Nsatz.v @@ -18,29 +18,29 @@ Reification is done using type classes, defined in Ncring_tac.v *) -Require Import List. -Require Import Setoid. -Require Import BinPos. -Require Import BinList. -Require Import Znumtheory. -Require Export Morphisms Setoid Bool. -Require Export Algebra_syntax. -Require Export Ncring. -Require Export Ncring_initial. -Require Export Ncring_tac. -Require Export Integral_domain. -Require Import DiscrR. -Require Import ZArith. -Require Import Lia. +From Stdlib Require Import List. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinList. +From Stdlib Require Import Znumtheory. +From Stdlib Require Export Morphisms Setoid Bool. +From Stdlib Require Export Algebra_syntax. +From Stdlib Require Export Ncring. +From Stdlib Require Export Ncring_initial. +From Stdlib Require Export Ncring_tac. +From Stdlib Require Export Integral_domain. +From Stdlib Require Import DiscrR. +From Stdlib Require Import ZArith. +From Stdlib Require Import Lia. -Require Export NsatzTactic. +From Stdlib Require Export NsatzTactic. (** Make use of [discrR] in [nsatz] *) Ltac nsatz_internal_discrR ::= discrR. (* Real numbers *) -Require Export Rbase. -Require Export Rfunctions. -Require Import RealField. +From Stdlib Require Export Rbase. +From Stdlib Require Export Rfunctions. +From Stdlib Require Import RealField. Lemma Rsth : Setoid_Theory R (@eq R). constructor;red;intros;subst;trivial. diff --git a/theories/Reals/PSeries_reg.v b/theories/Reals/PSeries_reg.v index 8a9e33c09f..52cdd99b8f 100644 --- a/theories/Reals/PSeries_reg.v +++ b/theories/Reals/PSeries_reg.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Ranalysis1. -Require Import MVT. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import MVT. +From Stdlib Require Import Lra. Local Open Scope R_scope. (* Boule is French for Ball *) diff --git a/theories/Reals/PartSum.v b/theories/Reals/PartSum.v index 202f8e0faf..69b427e53f 100644 --- a/theories/Reals/PartSum.v +++ b/theories/Reals/PartSum.v @@ -9,12 +9,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Peano_dec. -Require Import Compare_dec. -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import Rcomplete. +From Stdlib Require Import Peano_dec. +From Stdlib Require Import Compare_dec. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import Rcomplete. Local Open Scope R_scope. Lemma tech1 : diff --git a/theories/QArith/Qreals.v b/theories/Reals/Qreals.v similarity index 98% rename from theories/QArith/Qreals.v rename to theories/Reals/Qreals.v index 5a840101fd..a79951ac48 100644 --- a/theories/QArith/Qreals.v +++ b/theories/Reals/Qreals.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rdefinitions Raxioms RIneq. -Require Export QArith_base. +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Export QArith_base. (** Injection of rational numbers into real numbers. *) diff --git a/theories/Reals/RIneq.v b/theories/Reals/RIneq.v index eaeebc28a9..cbdee1920b 100644 --- a/theories/Reals/RIneq.v +++ b/theories/Reals/RIneq.v @@ -43,12 +43,12 @@ field of real numbers. *) -Require Import RelationClasses. -Require Export Raxioms. -Require Import Rpow_def. -Require Import ZArith. -Require Export ZArithRing. -Require Export RealField. +From Stdlib Require Import RelationClasses. +From Stdlib Require Export Raxioms. +From Stdlib Require Import Rpow_def. +From Stdlib Require Import ZArith. +From Stdlib Require Export ZArithRing. +From Stdlib Require Export RealField. Local Open Scope Z_scope. Local Open Scope R_scope. diff --git a/theories/Reals/RList.v b/theories/Reals/RList.v index 8563c68548..5fd47bceaf 100644 --- a/theories/Reals/RList.v +++ b/theories/Reals/RList.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import List. -Require Import Compare_dec. -Require Import Rbase. -Require Import Rfunctions. +From Stdlib Require Import List. +From Stdlib Require Import Compare_dec. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. Local Open Scope R_scope. Fixpoint MaxRlist (l:list R) : R := diff --git a/theories/Reals/ROrderedType.v b/theories/Reals/ROrderedType.v index a611962751..845c2c078c 100644 --- a/theories/Reals/ROrderedType.v +++ b/theories/Reals/ROrderedType.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase Equalities Orders OrdersTac. +From Stdlib Require Import Rbase Equalities Orders OrdersTac. Local Open Scope R_scope. diff --git a/theories/Reals/R_Ifp.v b/theories/Reals/R_Ifp.v index a885cd3a89..ac88d2d0b2 100644 --- a/theories/Reals/R_Ifp.v +++ b/theories/Reals/R_Ifp.v @@ -13,8 +13,8 @@ (* *) (**********************************************************) -Require Import Rdefinitions Raxioms RIneq. -Require Import ZArith. +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Import ZArith. Local Open Scope R_scope. (*********************************************************) diff --git a/theories/Reals/R_sqr.v b/theories/Reals/R_sqr.v index 00d3e503fb..0b3cd977c4 100644 --- a/theories/Reals/R_sqr.v +++ b/theories/Reals/R_sqr.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rdefinitions Raxioms RIneq. -Require Import Rbasic_fun. +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Import Rbasic_fun. Local Open Scope R_scope. (****************************************************) diff --git a/theories/Reals/R_sqrt.v b/theories/Reals/R_sqrt.v index 48456b6817..e455e2e716 100644 --- a/theories/Reals/R_sqrt.v +++ b/theories/Reals/R_sqrt.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rsqrt_def. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rsqrt_def. Local Open Scope R_scope. (** * Continuous extension of Rsqrt on R *) diff --git a/theories/Reals/Ranalysis.v b/theories/Reals/Ranalysis.v index fd22e810b3..fa39a04ca2 100644 --- a/theories/Reals/Ranalysis.v +++ b/theories/Reals/Ranalysis.v @@ -8,23 +8,23 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rtrigo. -Require Import SeqSeries. -Require Export Ranalysis1. -Require Export Ranalysis2. -Require Export Ranalysis3. -Require Export Rtopology. -Require Export MVT. -Require Export PSeries_reg. -Require Export Exp_prop. -Require Export Rtrigo_reg. -Require Export Rsqrt_def. -Require Export R_sqrt. -Require Export Rtrigo_calc. -Require Export Rgeom. -Require Export Sqrt_reg. -Require Export Ranalysis4. -Require Export Rpower. -Require Export Ranalysis_reg. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rtrigo. +From Stdlib Require Import SeqSeries. +From Stdlib Require Export Ranalysis1. +From Stdlib Require Export Ranalysis2. +From Stdlib Require Export Ranalysis3. +From Stdlib Require Export Rtopology. +From Stdlib Require Export MVT. +From Stdlib Require Export PSeries_reg. +From Stdlib Require Export Exp_prop. +From Stdlib Require Export Rtrigo_reg. +From Stdlib Require Export Rsqrt_def. +From Stdlib Require Export R_sqrt. +From Stdlib Require Export Rtrigo_calc. +From Stdlib Require Export Rgeom. +From Stdlib Require Export Sqrt_reg. +From Stdlib Require Export Ranalysis4. +From Stdlib Require Export Rpower. +From Stdlib Require Export Ranalysis_reg. diff --git a/theories/Reals/Ranalysis1.v b/theories/Reals/Ranalysis1.v index a826b93d82..368fbfc0f6 100644 --- a/theories/Reals/Ranalysis1.v +++ b/theories/Reals/Ranalysis1.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Export Rlimit. -Require Export Rderiv. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Export Rlimit. +From Stdlib Require Export Rderiv. Local Open Scope R_scope. Implicit Type f : R -> R. diff --git a/theories/Reals/Ranalysis2.v b/theories/Reals/Ranalysis2.v index 9edda1d29a..6a603d252d 100644 --- a/theories/Reals/Ranalysis2.v +++ b/theories/Reals/Ranalysis2.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis1. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Lra. Local Open Scope R_scope. (**********) diff --git a/theories/Reals/Ranalysis3.v b/theories/Reals/Ranalysis3.v index d81fc556c6..5e72154fa9 100644 --- a/theories/Reals/Ranalysis3.v +++ b/theories/Reals/Ranalysis3.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis1. -Require Import Ranalysis2. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Ranalysis2. +From Stdlib Require Import Lra. Local Open Scope R_scope. (** Division *) diff --git a/theories/Reals/Ranalysis4.v b/theories/Reals/Ranalysis4.v index b63cfbddb8..dd434d335b 100644 --- a/theories/Reals/Ranalysis4.v +++ b/theories/Reals/Ranalysis4.v @@ -8,15 +8,15 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import Ranalysis1. -Require Import Ranalysis3. -Require Import Exp_prop. -Require Import MVT. -Require Import Lra Lia. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Ranalysis3. +From Stdlib Require Import Exp_prop. +From Stdlib Require Import MVT. +From Stdlib Require Import Lra Lia. Local Open Scope R_scope. (**********) diff --git a/theories/Reals/Ranalysis5.v b/theories/Reals/Ranalysis5.v index 4433d1ef25..21b618f135 100644 --- a/theories/Reals/Ranalysis5.v +++ b/theories/Reals/Ranalysis5.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Ranalysis_reg. -Require Import Rfunctions. -Require Import Rseries. -Require Import RiemannInt. -Require Import SeqProp. -Require Import Lia. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Ranalysis_reg. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import RiemannInt. +From Stdlib Require Import SeqProp. +From Stdlib Require Import Lia. +From Stdlib Require Import Lra. Local Open Scope R_scope. Local Ltac Tauto.intuition_solver ::= auto with rorders real. diff --git a/theories/Reals/Ranalysis_reg.v b/theories/Reals/Ranalysis_reg.v index 7e01efaebb..97f0816d7a 100644 --- a/theories/Reals/Ranalysis_reg.v +++ b/theories/Reals/Ranalysis_reg.v @@ -8,25 +8,25 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rtrigo1. -Require Import SeqSeries. -Require Export Ranalysis1. -Require Export Ranalysis2. -Require Export Ranalysis3. -Require Export Rtopology. -Require Export MVT. -Require Export PSeries_reg. -Require Export Exp_prop. -Require Export Rtrigo_reg. -Require Export Rsqrt_def. -Require Export R_sqrt. -Require Export Rtrigo_calc. -Require Export Rgeom. -Require Export Sqrt_reg. -Require Export Ranalysis4. -Require Export Rpower. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import SeqSeries. +From Stdlib Require Export Ranalysis1. +From Stdlib Require Export Ranalysis2. +From Stdlib Require Export Ranalysis3. +From Stdlib Require Export Rtopology. +From Stdlib Require Export MVT. +From Stdlib Require Export PSeries_reg. +From Stdlib Require Export Exp_prop. +From Stdlib Require Export Rtrigo_reg. +From Stdlib Require Export Rsqrt_def. +From Stdlib Require Export R_sqrt. +From Stdlib Require Export Rtrigo_calc. +From Stdlib Require Export Rgeom. +From Stdlib Require Export Sqrt_reg. +From Stdlib Require Export Ranalysis4. +From Stdlib Require Export Rpower. Local Open Scope R_scope. Definition AppVar : R. diff --git a/theories/Reals/Ratan.v b/theories/Reals/Ratan.v index f03a913826..a8f563805c 100644 --- a/theories/Reals/Ratan.v +++ b/theories/Reals/Ratan.v @@ -8,21 +8,21 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Lra. -Require Import Rbase. -Require Import PSeries_reg. -Require Import Rtrigo1. -Require Import Rtrigo_facts. -Require Import Ranalysis_reg. -Require Import Rfunctions. -Require Import AltSeries. -Require Import Rseries. -Require Import SeqProp. -Require Import Ranalysis5. -Require Import SeqSeries. -Require Import PartSum. -Require Import Lia. -Require Import Znat. +From Stdlib Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import PSeries_reg. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Rtrigo_facts. +From Stdlib Require Import Ranalysis_reg. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import AltSeries. +From Stdlib Require Import Rseries. +From Stdlib Require Import SeqProp. +From Stdlib Require Import Ranalysis5. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import PartSum. +From Stdlib Require Import Lia. +From Stdlib Require Import Znat. Local Open Scope R_scope. Local Ltac Tauto.intuition_solver ::= auto with rorders real arith. diff --git a/theories/Reals/Raxioms.v b/theories/Reals/Raxioms.v index 6f9bc76f1b..0fb0a1dad1 100644 --- a/theories/Reals/Raxioms.v +++ b/theories/Reals/Raxioms.v @@ -19,14 +19,14 @@ (** Lifts of basic operations for classical reals *) (*********************************************************) -Require Export BinInt. -Require Import Znat. -Require Import ClassicalDedekindReals. -Require Import ConstructiveCauchyReals. -Require Import ConstructiveCauchyRealsMult. -Require Import ConstructiveRcomplete. -Require Import ConstructiveLUB. -Require Export Rdefinitions. +From Stdlib Require Export BinInt. +From Stdlib Require Import Znat. +From Stdlib Require Import ClassicalDedekindReals. +From Stdlib Require Import ConstructiveCauchyReals. +From Stdlib Require Import ConstructiveCauchyRealsMult. +From Stdlib Require Import ConstructiveRcomplete. +From Stdlib Require Import ConstructiveLUB. +From Stdlib Require Export Rdefinitions. Local Open Scope R_scope. (*********************************************************) diff --git a/theories/Reals/Rbase.v b/theories/Reals/Rbase.v index e4f822a74d..b12884c1bf 100644 --- a/theories/Reals/Rbase.v +++ b/theories/Reals/Rbase.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Rdefinitions. -Require Export Raxioms. -Require Export RIneq. -Require Export DiscrR. +From Stdlib Require Export Rdefinitions. +From Stdlib Require Export Raxioms. +From Stdlib Require Export RIneq. +From Stdlib Require Export DiscrR. diff --git a/theories/Reals/Rbasic_fun.v b/theories/Reals/Rbasic_fun.v index 5f2794bc2a..07bb2f1275 100644 --- a/theories/Reals/Rbasic_fun.v +++ b/theories/Reals/Rbasic_fun.v @@ -13,8 +13,8 @@ (* *) (*********************************************************) -Require Import Rdefinitions Raxioms RIneq. -Require Import R_Ifp. +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Import R_Ifp. Local Open Scope R_scope. Implicit Type r : R. diff --git a/theories/Reals/Rcomplete.v b/theories/Reals/Rcomplete.v index ab2547f230..6db23d4c2e 100644 --- a/theories/Reals/Rcomplete.v +++ b/theories/Reals/Rcomplete.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import SeqProp. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import SeqProp. Local Open Scope R_scope. (****************************************************) diff --git a/theories/Reals/Rdefinitions.v b/theories/Reals/Rdefinitions.v index 4e34975304..de85d70fa8 100644 --- a/theories/Reals/Rdefinitions.v +++ b/theories/Reals/Rdefinitions.v @@ -14,13 +14,13 @@ This file also contains the proof that classical reals are a quotient of constructive Cauchy reals. *) -Require Export PeanoNat. -Require Export BinInt. -Require Import QArith_base. -Require Import ConstructiveCauchyReals. -Require Import ConstructiveCauchyRealsMult. -Require Import ConstructiveRcomplete. -Require Import ClassicalDedekindReals. +From Stdlib Require Export PeanoNat. +From Stdlib Require Export BinInt. +From Stdlib Require Import QArith_base. +From Stdlib Require Import ConstructiveCauchyReals. +From Stdlib Require Import ConstructiveCauchyRealsMult. +From Stdlib Require Import ConstructiveRcomplete. +From Stdlib Require Import ClassicalDedekindReals. (* Declare primitive number notations for Scope R_scope *) diff --git a/theories/Reals/Rderiv.v b/theories/Reals/Rderiv.v index 72af6a2254..9638231cd4 100644 --- a/theories/Reals/Rderiv.v +++ b/theories/Reals/Rderiv.v @@ -13,11 +13,11 @@ (* *) (*********************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rlimit. -Require Import Lra. -Require Import Lia. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rlimit. +From Stdlib Require Import Lra. +From Stdlib Require Import Lia. Local Open Scope R_scope. (*********) diff --git a/theories/Reals/Reals.v b/theories/Reals/Reals.v index ac4c425229..0db187a78d 100644 --- a/theories/Reals/Reals.v +++ b/theories/Reals/Reals.v @@ -24,11 +24,11 @@ - RCompute: for equalities with constants like ``10*10==100`` - Reg: for goals like (continuity_pt ?1 ?2) or (derivable_pt ?1 ?2) *) -Require Export Rbase. -Require Export Rfunctions. -Require Export Zfloor. -Require Export SeqSeries. -Require Export Rtrigo. -Require Export Ranalysis. -Require Export Integration. -Require Import Fourier. +From Stdlib Require Export Rbase. +From Stdlib Require Export Rfunctions. +From Stdlib Require Export Zfloor. +From Stdlib Require Export SeqSeries. +From Stdlib Require Export Rtrigo. +From Stdlib Require Export Ranalysis. +From Stdlib Require Export Integration. +From Stdlib Require Import Fourier. diff --git a/theories/Reals/Rfunctions.v b/theories/Reals/Rfunctions.v index 6a8dd56db8..9d50370f86 100644 --- a/theories/Reals/Rfunctions.v +++ b/theories/Reals/Rfunctions.v @@ -15,19 +15,19 @@ (** Definition of the sum functions *) (* *) (********************************************************) -Require Export ArithRing. - -Require Import Rdefinitions Raxioms RIneq. -Require Export Rpow_def. -Require Export R_Ifp. -Require Export Rbasic_fun. -Require Export R_sqr. -Require Export SplitAbsolu. -Require Export SplitRmult. -Require Export ArithProp. -Require Import Zpower. -Require Import Znat. -Require Import Arith.Factorial. +From Stdlib Require Export ArithRing. + +From Stdlib Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Export Rpow_def. +From Stdlib Require Export R_Ifp. +From Stdlib Require Export Rbasic_fun. +From Stdlib Require Export R_sqr. +From Stdlib Require Export SplitAbsolu. +From Stdlib Require Export SplitRmult. +From Stdlib Require Export ArithProp. +From Stdlib Require Import Zpower. +From Stdlib Require Import Znat. +From Stdlib Require Import Arith.Factorial. Local Open Scope nat_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Rgeom.v b/theories/Reals/Rgeom.v index a961a98f32..d35076e0a9 100644 --- a/theories/Reals/Rgeom.v +++ b/theories/Reals/Rgeom.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import R_sqrt. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import R_sqrt. Local Open Scope R_scope. (** * Distance *) diff --git a/theories/Reals/RiemannInt.v b/theories/Reals/RiemannInt.v index 664fe59201..23308122ae 100644 --- a/theories/Reals/RiemannInt.v +++ b/theories/Reals/RiemannInt.v @@ -9,13 +9,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Ranalysis_reg. -Require Import Rbase. -Require Import RiemannInt_SF. -Require Import RList. -Require Import Lra. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Ranalysis_reg. +From Stdlib Require Import Rbase. +From Stdlib Require Import RiemannInt_SF. +From Stdlib Require Import RList. +From Stdlib Require Import Lra. Local Open Scope R_scope. diff --git a/theories/Reals/RiemannInt_SF.v b/theories/Reals/RiemannInt_SF.v index d2aa2e9632..48789f441c 100644 --- a/theories/Reals/RiemannInt_SF.v +++ b/theories/Reals/RiemannInt_SF.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis_reg. -Require Import Classical_Prop. -Require Import List. -Require Import RList. -Require Import Lia Lra. -Require Import Wf_Z. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis_reg. +From Stdlib Require Import Classical_Prop. +From Stdlib Require Import List. +From Stdlib Require Import RList. +From Stdlib Require Import Lia Lra. +From Stdlib Require Import Wf_Z. Local Open Scope R_scope. Set Implicit Arguments. diff --git a/theories/Reals/Rlimit.v b/theories/Reals/Rlimit.v index 0f0f7e54a3..ce2184fc93 100644 --- a/theories/Reals/Rlimit.v +++ b/theories/Reals/Rlimit.v @@ -13,9 +13,9 @@ (* *) (*********************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Lra. Local Open Scope R_scope. (*******************************) diff --git a/theories/Reals/Rlogic.v b/theories/Reals/Rlogic.v index 94ec98a326..45d2c3b5fb 100644 --- a/theories/Reals/Rlogic.v +++ b/theories/Reals/Rlogic.v @@ -15,10 +15,10 @@ - Decidability of negated formulas. *) -Require Import PeanoNat. -Require Import Zabs. -Require Import Zorder. -Require Import RIneq. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import Zabs. +From Stdlib Require Import Zorder. +From Stdlib Require Import RIneq. (** * Decidability of arithmetical statements *) diff --git a/theories/Reals/Rminmax.v b/theories/Reals/Rminmax.v index 8f5be32f39..b8f5c0db7c 100644 --- a/theories/Reals/Rminmax.v +++ b/theories/Reals/Rminmax.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Orders Rbase Rbasic_fun ROrderedType GenericMinMax. +From Stdlib Require Import Orders Rbase Rbasic_fun ROrderedType GenericMinMax. Local Ltac Tauto.intuition_solver ::= auto with real. diff --git a/theories/Reals/Rpow_def.v b/theories/Reals/Rpow_def.v index 9081c4ef47..303397a085 100644 --- a/theories/Reals/Rpow_def.v +++ b/theories/Reals/Rpow_def.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rdefinitions. +From Stdlib Require Import Rdefinitions. Fixpoint pow (r:R) (n:nat) : R := match n with diff --git a/theories/Reals/Rpower.v b/theories/Reals/Rpower.v index 5ac329b548..59a1d07345 100644 --- a/theories/Reals/Rpower.v +++ b/theories/Reals/Rpower.v @@ -14,19 +14,19 @@ (* Definitions of log and Rpower : R->R->R; main properties *) (************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import Ranalysis1. -Require Import Exp_prop. -Require Import Rsqrt_def. -Require Import R_sqrt. -Require Import Sqrt_reg. -Require Import MVT. -Require Import Ranalysis4. -Require Import Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Exp_prop. +From Stdlib Require Import Rsqrt_def. +From Stdlib Require Import R_sqrt. +From Stdlib Require Import Sqrt_reg. +From Stdlib Require Import MVT. +From Stdlib Require Import Ranalysis4. +From Stdlib Require Import Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope R_scope. Definition P_Rmin_stt (P:R -> Prop) x y := Rmin_case x y P. diff --git a/theories/Reals/Rprod.v b/theories/Reals/Rprod.v index f9698fdbfb..d6c6305a20 100644 --- a/theories/Reals/Rprod.v +++ b/theories/Reals/Rprod.v @@ -8,15 +8,15 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Compare. -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import PartSum. -Require Import Binomial. -Require Import Lia. -Require Import Arith.Factorial. -Require Import Peano_dec. +From Stdlib Require Import Compare. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import PartSum. +From Stdlib Require Import Binomial. +From Stdlib Require Import Lia. +From Stdlib Require Import Arith.Factorial. +From Stdlib Require Import Peano_dec. Local Open Scope R_scope. (** TT Ak; 0<=k<=N *) diff --git a/theories/Reals/Rregisternames.v b/theories/Reals/Rregisternames.v index 9ba1150fa6..57c660060c 100644 --- a/theories/Reals/Rregisternames.v +++ b/theories/Reals/Rregisternames.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Raxioms Rfunctions. +From Stdlib Require Import Raxioms Rfunctions. (*****************************************************************) (** Register names for use in plugins *) diff --git a/theories/Reals/Rseries.v b/theories/Reals/Rseries.v index f0d3f6dac0..8ddac6de82 100644 --- a/theories/Reals/Rseries.v +++ b/theories/Reals/Rseries.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Compare. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Compare. Local Open Scope R_scope. Implicit Type r : R. diff --git a/theories/Reals/Rsigma.v b/theories/Reals/Rsigma.v index 389ec6fce3..4b48e5c7b9 100644 --- a/theories/Reals/Rsigma.v +++ b/theories/Reals/Rsigma.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import PartSum. -Require Import Lia. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import PartSum. +From Stdlib Require Import Lia. Local Open Scope R_scope. Set Implicit Arguments. diff --git a/theories/Reals/Rsqrt_def.v b/theories/Reals/Rsqrt_def.v index 9a89511c65..3fdf0839df 100644 --- a/theories/Reals/Rsqrt_def.v +++ b/theories/Reals/Rsqrt_def.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Sumbool. -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Ranalysis1. -Require Import Lra. +From Stdlib Require Import Sumbool. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Lra. Local Open Scope R_scope. Fixpoint Dichotomy_lb (x y:R) (P:R -> bool) (N:nat) {struct N} : R := diff --git a/theories/Reals/Rtopology.v b/theories/Reals/Rtopology.v index 361b94529a..b19d71403b 100644 --- a/theories/Reals/Rtopology.v +++ b/theories/Reals/Rtopology.v @@ -8,13 +8,13 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis1. -Require Import RList. -Require Import List. -Require Import Classical_Prop. -Require Import Classical_Pred_Type. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import RList. +From Stdlib Require Import List. +From Stdlib Require Import Classical_Prop. +From Stdlib Require Import Classical_Pred_Type. Local Open Scope R_scope. (** * General definitions and propositions *) diff --git a/theories/Reals/Rtrigo.v b/theories/Reals/Rtrigo.v index 72468b1c1f..43d82f3d1b 100644 --- a/theories/Reals/Rtrigo.v +++ b/theories/Reals/Rtrigo.v @@ -8,20 +8,20 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Export Rtrigo_fun. -Require Export Rtrigo_def. -Require Export Rtrigo_alt. -Require Export Cos_rel. -Require Export Cos_plus. -Require Import BinInt. -Require Import Zcomplements. -Require Import Lra. -Require Import Ranalysis1. -Require Import Rsqrt_def. -Require Import PSeries_reg. -Require Export Rtrigo1. -Require Export Ratan. -Require Export Machin. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Export Rtrigo_fun. +From Stdlib Require Export Rtrigo_def. +From Stdlib Require Export Rtrigo_alt. +From Stdlib Require Export Cos_rel. +From Stdlib Require Export Cos_plus. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zcomplements. +From Stdlib Require Import Lra. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Rsqrt_def. +From Stdlib Require Import PSeries_reg. +From Stdlib Require Export Rtrigo1. +From Stdlib Require Export Ratan. +From Stdlib Require Export Machin. diff --git a/theories/Reals/Rtrigo1.v b/theories/Reals/Rtrigo1.v index 7818a57ede..4b29b0d073 100644 --- a/theories/Reals/Rtrigo1.v +++ b/theories/Reals/Rtrigo1.v @@ -8,23 +8,23 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Export Rtrigo_fun. -Require Export Rtrigo_def. -Require Export Rtrigo_alt. -Require Export Cos_rel. -Require Export Cos_plus. -Require Import BinInt. -Require Import Zcomplements. -Require Import Lia. -Require Import Lra. -Require Import Ranalysis1. -Require Import Rsqrt_def. -Require Import PSeries_reg. -Require Import Arith.Factorial. -Require Import Znat. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Export Rtrigo_fun. +From Stdlib Require Export Rtrigo_def. +From Stdlib Require Export Rtrigo_alt. +From Stdlib Require Export Cos_rel. +From Stdlib Require Export Cos_plus. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zcomplements. +From Stdlib Require Import Lia. +From Stdlib Require Import Lra. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import Rsqrt_def. +From Stdlib Require Import PSeries_reg. +From Stdlib Require Import Arith.Factorial. +From Stdlib Require Import Znat. Local Open Scope nat_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Rtrigo_alt.v b/theories/Reals/Rtrigo_alt.v index 6646860acb..54eb3a66c6 100644 --- a/theories/Reals/Rtrigo_alt.v +++ b/theories/Reals/Rtrigo_alt.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo_def. -Require Import Lia Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo_def. +From Stdlib Require Import Lia Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope R_scope. (***************************************************************) diff --git a/theories/Reals/Rtrigo_calc.v b/theories/Reals/Rtrigo_calc.v index 1561c96d88..ed7ec7740b 100644 --- a/theories/Reals/Rtrigo_calc.v +++ b/theories/Reals/Rtrigo_calc.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import R_sqrt. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import R_sqrt. Local Open Scope R_scope. Lemma tan_PI : tan PI = 0. diff --git a/theories/Reals/Rtrigo_def.v b/theories/Reals/Rtrigo_def.v index 390d75a5b4..162ed9008f 100644 --- a/theories/Reals/Rtrigo_def.v +++ b/theories/Reals/Rtrigo_def.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase Rfunctions SeqSeries Rtrigo_fun. -Require Import Arith.Factorial. -Require Import Lra Lia. +From Stdlib Require Import Rbase Rfunctions SeqSeries Rtrigo_fun. +From Stdlib Require Import Arith.Factorial. +From Stdlib Require Import Lra Lia. Local Open Scope R_scope. (********************************) diff --git a/theories/Reals/Rtrigo_facts.v b/theories/Reals/Rtrigo_facts.v index e5902e1ce9..1fa21710ab 100644 --- a/theories/Reals/Rtrigo_facts.v +++ b/theories/Reals/Rtrigo_facts.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rtrigo1. -Require Import Rfunctions. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Rfunctions. -Require Import Lra. -Require Import Ranalysis_reg. +From Stdlib Require Import Lra. +From Stdlib Require Import Ranalysis_reg. Local Open Scope R_scope. diff --git a/theories/Reals/Rtrigo_fun.v b/theories/Reals/Rtrigo_fun.v index 917e2a56bf..5860353ef4 100644 --- a/theories/Reals/Rtrigo_fun.v +++ b/theories/Reals/Rtrigo_fun.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Arith.Factorial. Local Open Scope R_scope. (*****************************************************************) diff --git a/theories/Reals/Rtrigo_reg.v b/theories/Reals/Rtrigo_reg.v index a99b3372e0..ad2d1ffb41 100644 --- a/theories/Reals/Rtrigo_reg.v +++ b/theories/Reals/Rtrigo_reg.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import SeqSeries. -Require Import Rtrigo1. -Require Import Ranalysis1. -Require Import PSeries_reg. -Require Import Lra. -Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import SeqSeries. +From Stdlib Require Import Rtrigo1. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import PSeries_reg. +From Stdlib Require Import Lra. +From Stdlib Require Import Arith.Factorial. Local Open Scope nat_scope. Local Open Scope R_scope. diff --git a/theories/Reals/Runcountable.v b/theories/Reals/Runcountable.v index 23bf880129..604680bad7 100644 --- a/theories/Reals/Runcountable.v +++ b/theories/Reals/Runcountable.v @@ -9,12 +9,12 @@ (************************************************************************) -Require Import Stdlib.Reals.Rdefinitions. -Require Import Stdlib.Reals.Raxioms. -Require Import Rfunctions. -Require Import Stdlib.Reals.RIneq. -Require Import Stdlib.Logic.FinFun. -Require Import Stdlib.Logic.ConstructiveEpsilon. +From Stdlib.Reals Require Import Rdefinitions. +From Stdlib.Reals Require Import Raxioms. +From Stdlib Require Import Rfunctions. +From Stdlib.Reals Require Import RIneq. +From Stdlib Require Import FinFun. +From Stdlib.Logic Require Import ConstructiveEpsilon. Definition enumeration (A : Type) (u : nat -> A) (v : A -> nat) : Prop := diff --git a/theories/Reals/SeqProp.v b/theories/Reals/SeqProp.v index 7a9c88047a..1e7f2a7332 100644 --- a/theories/Reals/SeqProp.v +++ b/theories/Reals/SeqProp.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Arith.Factorial. -Require Import Rbase. -Require Import Rfunctions. -Require Import Rseries. -Require Import Lia. +From Stdlib Require Import Arith.Factorial. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Rseries. +From Stdlib Require Import Lia. Local Open Scope R_scope. (*****************************************************************) diff --git a/theories/Reals/SeqSeries.v b/theories/Reals/SeqSeries.v index 6fa0f08d3c..076df8e33d 100644 --- a/theories/Reals/SeqSeries.v +++ b/theories/Reals/SeqSeries.v @@ -8,20 +8,20 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Export Rseries. -Require Export SeqProp. -Require Export Rcomplete. -Require Export PartSum. -Require Export AltSeries. -Require Export Binomial. -Require Export Rsigma. -Require Export Rprod. -Require Export Cauchy_prod. -Require Export Alembert. -Require Import Lra. -Require Import Compare_dec. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Export Rseries. +From Stdlib Require Export SeqProp. +From Stdlib Require Export Rcomplete. +From Stdlib Require Export PartSum. +From Stdlib Require Export AltSeries. +From Stdlib Require Export Binomial. +From Stdlib Require Export Rsigma. +From Stdlib Require Export Rprod. +From Stdlib Require Export Cauchy_prod. +From Stdlib Require Export Alembert. +From Stdlib Require Import Lra. +From Stdlib Require Import Compare_dec. Local Open Scope R_scope. (**********) diff --git a/theories/Reals/SplitAbsolu.v b/theories/Reals/SplitAbsolu.v index f62d64b39c..d22d9c1bf8 100644 --- a/theories/Reals/SplitAbsolu.v +++ b/theories/Reals/SplitAbsolu.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbasic_fun. +From Stdlib Require Import Rbasic_fun. Ltac split_case_Rabs := match goal with diff --git a/theories/Reals/SplitRmult.v b/theories/Reals/SplitRmult.v index 6b5fef249d..956328701c 100644 --- a/theories/Reals/SplitRmult.v +++ b/theories/Reals/SplitRmult.v @@ -11,7 +11,7 @@ (*i Lemma mult_non_zero :(r1,r2:R)``r1<>0`` /\ ``r2<>0`` -> ``r1*r2<>0``. i*) -Require Import Rdefinitions Raxioms RIneq. +From Stdlib Require Import Rdefinitions Raxioms RIneq. Ltac split_Rmult := match goal with diff --git a/theories/Reals/Sqrt_reg.v b/theories/Reals/Sqrt_reg.v index ce6b8d2754..10ec17a9e7 100644 --- a/theories/Reals/Sqrt_reg.v +++ b/theories/Reals/Sqrt_reg.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Rbase. -Require Import Rfunctions. -Require Import Ranalysis1. -Require Import R_sqrt. -Require Import Lra. +From Stdlib Require Import Rbase. +From Stdlib Require Import Rfunctions. +From Stdlib Require Import Ranalysis1. +From Stdlib Require Import R_sqrt. +From Stdlib Require Import Lra. Local Open Scope R_scope. (**********) diff --git a/theories/Relations/Operators_Properties.v b/theories/Relations/Operators_Properties.v index c871afabfa..5c7ef8c9dd 100644 --- a/theories/Relations/Operators_Properties.v +++ b/theories/Relations/Operators_Properties.v @@ -14,8 +14,8 @@ (** * Initial version by Bruno Barras *) (************************************************************************) -Require Import Relation_Definitions. -Require Import Relation_Operators. +From Stdlib Require Import Relation_Definitions. +From Stdlib Require Import Relation_Operators. Section Properties. diff --git a/theories/Relations/Relation_Operators.v b/theories/Relations/Relation_Operators.v index cdc5fa77cc..e2933e0bc5 100644 --- a/theories/Relations/Relation_Operators.v +++ b/theories/Relations/Relation_Operators.v @@ -20,7 +20,7 @@ (** * Further extensions by Pierre Castéran *) (************************************************************************) -Require Import Relation_Definitions. +From Stdlib Require Import Relation_Definitions. (** ** Transitive closure *) diff --git a/theories/Relations/Relations.v b/theories/Relations/Relations.v index ef0f1c476e..daf84f2e91 100644 --- a/theories/Relations/Relations.v +++ b/theories/Relations/Relations.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Relation_Definitions. -Require Export Relation_Operators. -Require Export Operators_Properties. +From Stdlib Require Export Relation_Definitions. +From Stdlib Require Export Relation_Operators. +From Stdlib Require Export Operators_Properties. Lemma inverse_image_of_equivalence : forall (A B:Type) (f:A -> B) (r:relation B), diff --git a/theories/Relations/_All/Operators_Properties.v b/theories/Relations/_All/Operators_Properties.v new file mode 120000 index 0000000000..3e67081470 --- /dev/null +++ b/theories/Relations/_All/Operators_Properties.v @@ -0,0 +1 @@ +../Operators_Properties.v \ No newline at end of file diff --git a/theories/Relations/_All/Relation_Operators.v b/theories/Relations/_All/Relation_Operators.v new file mode 120000 index 0000000000..8f107d4629 --- /dev/null +++ b/theories/Relations/_All/Relation_Operators.v @@ -0,0 +1 @@ +../Relation_Operators.v \ No newline at end of file diff --git a/theories/Relations/_All/Relations.v b/theories/Relations/_All/Relations.v new file mode 120000 index 0000000000..20b5311cb1 --- /dev/null +++ b/theories/Relations/_All/Relations.v @@ -0,0 +1 @@ +../Relations.v \ No newline at end of file diff --git a/theories/Relations/_CorelibWrapper/Relation_Definitions.v b/theories/Relations/_CorelibWrapper/Relation_Definitions.v new file mode 120000 index 0000000000..42bf64ddc3 --- /dev/null +++ b/theories/Relations/_CorelibWrapper/Relation_Definitions.v @@ -0,0 +1 @@ +../Relation_Definitions.v \ No newline at end of file diff --git a/theories/Sets/Classical_sets.v b/theories/Sets/Classical_sets.v index 5e2eea0893..cdabd3cb06 100644 --- a/theories/Sets/Classical_sets.v +++ b/theories/Sets/Classical_sets.v @@ -26,9 +26,9 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Constructive_sets. -Require Export Classical. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Classical. Section Ensembles_classical. Variable U : Type. diff --git a/theories/Sets/Constructive_sets.v b/theories/Sets/Constructive_sets.v index ae6f215d80..94f4fa3312 100644 --- a/theories/Sets/Constructive_sets.v +++ b/theories/Sets/Constructive_sets.v @@ -26,7 +26,7 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. +From Stdlib Require Export Ensembles. Section Ensembles_facts. Variable U : Type. diff --git a/theories/Sets/Cpo.v b/theories/Sets/Cpo.v index 6f7e5251ef..d78d15fdbd 100644 --- a/theories/Sets/Cpo.v +++ b/theories/Sets/Cpo.v @@ -26,9 +26,9 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Relations_1. -Require Export Partial_Order. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Partial_Order. Section Bounds. Variable U : Type. diff --git a/theories/Sets/Finite_sets.v b/theories/Sets/Finite_sets.v index b097ebb8b5..ee8b8f2413 100644 --- a/theories/Sets/Finite_sets.v +++ b/theories/Sets/Finite_sets.v @@ -26,7 +26,7 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Import Ensembles. +From Stdlib Require Import Ensembles. Section Ensembles_finis. Variable U : Type. @@ -50,7 +50,7 @@ Hint Resolve Empty_is_finite Union_is_finite: sets. #[global] Hint Resolve card_empty card_add: sets. -Require Import Constructive_sets. +From Stdlib Require Import Constructive_sets. Section Ensembles_finis_facts. Variable U : Type. diff --git a/theories/Sets/Finite_sets_facts.v b/theories/Sets/Finite_sets_facts.v index 268adf765b..500884ae05 100644 --- a/theories/Sets/Finite_sets_facts.v +++ b/theories/Sets/Finite_sets_facts.v @@ -26,14 +26,14 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Finite_sets. -Require Export Constructive_sets. -Require Export Classical. -Require Export Classical_sets. -Require Export Powerset. -Require Export Powerset_facts. -Require Export Powerset_Classical_facts. -Require Export PeanoNat. +From Stdlib Require Export Finite_sets. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Classical. +From Stdlib Require Export Classical_sets. +From Stdlib Require Export Powerset. +From Stdlib Require Export Powerset_facts. +From Stdlib Require Export Powerset_Classical_facts. +From Stdlib Require Export PeanoNat. Section Finite_sets_facts. Variable U : Type. diff --git a/theories/Sets/Image.v b/theories/Sets/Image.v index 1d3fe2d4e5..3f113312e8 100644 --- a/theories/Sets/Image.v +++ b/theories/Sets/Image.v @@ -26,14 +26,14 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Finite_sets. -Require Export Constructive_sets. -Require Export Classical. -Require Export Classical_sets. -Require Export Powerset. -Require Export Powerset_facts. -Require Export Powerset_Classical_facts. -Require Export Finite_sets_facts. +From Stdlib Require Export Finite_sets. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Classical. +From Stdlib Require Export Classical_sets. +From Stdlib Require Export Powerset. +From Stdlib Require Export Powerset_facts. +From Stdlib Require Export Powerset_Classical_facts. +From Stdlib Require Export Finite_sets_facts. Section Image. Variables U V : Type. diff --git a/theories/Sets/Infinite_sets.v b/theories/Sets/Infinite_sets.v index 1381607aaa..4787bfafe7 100644 --- a/theories/Sets/Infinite_sets.v +++ b/theories/Sets/Infinite_sets.v @@ -26,15 +26,15 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Finite_sets. -Require Export Constructive_sets. -Require Export Classical. -Require Export Classical_sets. -Require Export Powerset. -Require Export Powerset_facts. -Require Export Powerset_Classical_facts. -Require Export Finite_sets_facts. -Require Export Image. +From Stdlib Require Export Finite_sets. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Classical. +From Stdlib Require Export Classical_sets. +From Stdlib Require Export Powerset. +From Stdlib Require Export Powerset_facts. +From Stdlib Require Export Powerset_Classical_facts. +From Stdlib Require Export Finite_sets_facts. +From Stdlib Require Export Image. Section Approx. Variable U : Type. diff --git a/theories/Sets/Integers.v b/theories/Sets/Integers.v index e783527ef4..d18c5e5433 100644 --- a/theories/Sets/Integers.v +++ b/theories/Sets/Integers.v @@ -26,20 +26,20 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Finite_sets. -Require Export Constructive_sets. -Require Export Classical. -Require Export Classical_sets. -Require Export Powerset. -Require Export Powerset_facts. -Require Export Powerset_Classical_facts. -Require Export Finite_sets_facts. -Require Export Image. -Require Export Infinite_sets. -Require Export Compare_dec. -Require Export Relations_1. -Require Export Partial_Order. -Require Export Cpo. +From Stdlib Require Export Finite_sets. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Classical. +From Stdlib Require Export Classical_sets. +From Stdlib Require Export Powerset. +From Stdlib Require Export Powerset_facts. +From Stdlib Require Export Powerset_Classical_facts. +From Stdlib Require Export Finite_sets_facts. +From Stdlib Require Export Image. +From Stdlib Require Export Infinite_sets. +From Stdlib Require Export Compare_dec. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Partial_Order. +From Stdlib Require Export Cpo. Section Integers_sect. diff --git a/theories/Sets/Multiset.v b/theories/Sets/Multiset.v index c60b3d19be..12353939bb 100644 --- a/theories/Sets/Multiset.v +++ b/theories/Sets/Multiset.v @@ -10,7 +10,7 @@ (* G. Huet 1-9-95 *) -Require Import PeanoNat Permut Setoid. +From Stdlib Require Import PeanoNat Permut Setoid. Set Implicit Arguments. diff --git a/theories/Sets/Partial_Order.v b/theories/Sets/Partial_Order.v index 1a3da7f77b..71c98400a7 100644 --- a/theories/Sets/Partial_Order.v +++ b/theories/Sets/Partial_Order.v @@ -26,8 +26,8 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Relations_1. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Relations_1. Section Partial_orders. Variable U : Type. diff --git a/theories/Sets/Powerset.v b/theories/Sets/Powerset.v index e59703a81b..2cc1568117 100644 --- a/theories/Sets/Powerset.v +++ b/theories/Sets/Powerset.v @@ -26,11 +26,11 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Relations_1. -Require Export Relations_1_facts. -Require Export Partial_Order. -Require Export Cpo. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_1_facts. +From Stdlib Require Export Partial_Order. +From Stdlib Require Export Cpo. Section The_power_set_partial_order. Variable U : Type. diff --git a/theories/Sets/Powerset_Classical_facts.v b/theories/Sets/Powerset_Classical_facts.v index 609f41665a..2d41df2a76 100644 --- a/theories/Sets/Powerset_Classical_facts.v +++ b/theories/Sets/Powerset_Classical_facts.v @@ -26,16 +26,16 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Constructive_sets. -Require Export Relations_1. -Require Export Relations_1_facts. -Require Export Partial_Order. -Require Export Cpo. -Require Export Powerset. -Require Export Powerset_facts. -Require Export Classical. -Require Export Classical_sets. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_1_facts. +From Stdlib Require Export Partial_Order. +From Stdlib Require Export Cpo. +From Stdlib Require Export Powerset. +From Stdlib Require Export Powerset_facts. +From Stdlib Require Export Classical. +From Stdlib Require Export Classical_sets. Section Sets_as_an_algebra. diff --git a/theories/Sets/Powerset_facts.v b/theories/Sets/Powerset_facts.v index 8049f017f5..65fdd9563a 100644 --- a/theories/Sets/Powerset_facts.v +++ b/theories/Sets/Powerset_facts.v @@ -26,13 +26,13 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Ensembles. -Require Export Constructive_sets. -Require Export Relations_1. -Require Export Relations_1_facts. -Require Export Partial_Order. -Require Export Cpo. -Require Export Powerset. +From Stdlib Require Export Ensembles. +From Stdlib Require Export Constructive_sets. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_1_facts. +From Stdlib Require Export Partial_Order. +From Stdlib Require Export Cpo. +From Stdlib Require Export Powerset. Local Ltac Tauto.intuition_solver ::= auto with sets. diff --git a/theories/Sets/Relations_1_facts.v b/theories/Sets/Relations_1_facts.v index d19ce2fe26..15acc8dd20 100644 --- a/theories/Sets/Relations_1_facts.v +++ b/theories/Sets/Relations_1_facts.v @@ -26,7 +26,7 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Relations_1. +From Stdlib Require Export Relations_1. Local Ltac Tauto.intuition_solver ::= auto with sets. diff --git a/theories/Sets/Relations_2.v b/theories/Sets/Relations_2.v index 7913dcd884..e9a6053694 100644 --- a/theories/Sets/Relations_2.v +++ b/theories/Sets/Relations_2.v @@ -26,7 +26,7 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Relations_1. +From Stdlib Require Export Relations_1. Section Relations_2. Variable U : Type. diff --git a/theories/Sets/Relations_2_facts.v b/theories/Sets/Relations_2_facts.v index 2fefa4c71c..86d37aa594 100644 --- a/theories/Sets/Relations_2_facts.v +++ b/theories/Sets/Relations_2_facts.v @@ -26,9 +26,9 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Relations_1. -Require Export Relations_1_facts. -Require Export Relations_2. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_1_facts. +From Stdlib Require Export Relations_2. Theorem Rstar_reflexive : forall (U:Type) (R:Relation U), Reflexive U (Rstar U R). diff --git a/theories/Sets/Relations_3.v b/theories/Sets/Relations_3.v index 7328f2c3df..c1adbdf27a 100644 --- a/theories/Sets/Relations_3.v +++ b/theories/Sets/Relations_3.v @@ -26,8 +26,8 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Relations_1. -Require Export Relations_2. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_2. Section Relations_3. Variable U : Type. diff --git a/theories/Sets/Relations_3_facts.v b/theories/Sets/Relations_3_facts.v index 762a18586b..ce09a5e708 100644 --- a/theories/Sets/Relations_3_facts.v +++ b/theories/Sets/Relations_3_facts.v @@ -26,11 +26,11 @@ (* in Summer 1995. Several developments by E. Ledinot were an inspiration. *) (****************************************************************************) -Require Export Relations_1. -Require Export Relations_1_facts. -Require Export Relations_2. -Require Export Relations_2_facts. -Require Export Relations_3. +From Stdlib Require Export Relations_1. +From Stdlib Require Export Relations_1_facts. +From Stdlib Require Export Relations_2. +From Stdlib Require Export Relations_2_facts. +From Stdlib Require Export Relations_3. Theorem Rstar_imp_coherent : forall (U:Type) (R:Relation U) (x y:U), Rstar U R x y -> coherent U R x y. diff --git a/theories/Sets/Uniset.v b/theories/Sets/Uniset.v index 554c939bd4..525a33c493 100644 --- a/theories/Sets/Uniset.v +++ b/theories/Sets/Uniset.v @@ -13,7 +13,7 @@ (* G. Huet 1-9-95 *) (* Updated Papageno 12/98 *) -Require Import Bool Permut. +From Stdlib Require Import Bool Permut. Set Implicit Arguments. diff --git a/theories/Sorting/CPermutation.v b/theories/Sorting/CPermutation.v index 710ad7dc67..e6e2c13b3a 100644 --- a/theories/Sorting/CPermutation.v +++ b/theories/Sorting/CPermutation.v @@ -17,7 +17,7 @@ For example: [CPermutation [a1;a2;a3;a4;a5] [a4;a5;a1;a2;a3]] Note: Terminology does not seem to be strongly fixed in English. For the record, it is "permutations circulaires" in French. *) -Require Import List Permutation Morphisms PeanoNat. +From Stdlib Require Import List Permutation Morphisms PeanoNat. Import ListNotations. (* For notations [] and [a;b;c] *) Set Implicit Arguments. diff --git a/theories/Sorting/Heap.v b/theories/Sorting/Heap.v index 3ef9b1bc04..1c42f25fe0 100644 --- a/theories/Sorting/Heap.v +++ b/theories/Sorting/Heap.v @@ -16,7 +16,7 @@ (* G. Huet 1-9-95 uses Multiset *) -Require Import List Multiset PermutSetoid Relations Sorting. +From Stdlib Require Import List Multiset PermutSetoid Relations Sorting. #[local] Set Warnings "-deprecated". diff --git a/theories/Sorting/Mergesort.v b/theories/Sorting/Mergesort.v index 2a4421c9ec..e98477a758 100644 --- a/theories/Sorting/Mergesort.v +++ b/theories/Sorting/Mergesort.v @@ -13,7 +13,7 @@ (* Initial author: Hugo Herbelin, Oct 2009 *) -Require Import List Setoid Permutation Sorted Orders. +From Stdlib Require Import List Setoid Permutation Sorted Orders. (** Notations and conventions *) diff --git a/theories/Sorting/PermutEq.v b/theories/Sorting/PermutEq.v index 93aedef489..239da46f14 100644 --- a/theories/Sorting/PermutEq.v +++ b/theories/Sorting/PermutEq.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Relations Setoid SetoidList List Multiset PermutSetoid Permutation. +From Stdlib Require Import Relations Setoid SetoidList List Multiset PermutSetoid Permutation. Set Implicit Arguments. diff --git a/theories/Sorting/PermutSetoid.v b/theories/Sorting/PermutSetoid.v index 6e97438e9c..8897d6f5f9 100644 --- a/theories/Sorting/PermutSetoid.v +++ b/theories/Sorting/PermutSetoid.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Lia Relations Multiset SetoidList. +From Stdlib Require Import Lia Relations Multiset SetoidList. (** This file is deprecated, use [Permutation.v] instead. @@ -482,7 +482,7 @@ Qed. End Permut_map. -Require Import Permutation. +From Stdlib Require Import Permutation. Section Permut_permut. diff --git a/theories/Sorting/Permutation.v b/theories/Sorting/Permutation.v index a6807f41e5..ff64b10a81 100644 --- a/theories/Sorting/Permutation.v +++ b/theories/Sorting/Permutation.v @@ -15,7 +15,7 @@ (* Adapted in May 2006 by Jean-Marc Notin from initial contents by Laurent Théry (Huffmann contribution, October 2003) *) -Require Import List Setoid Compare_dec Morphisms FinFun PeanoNat. +From Stdlib Require Import List Setoid Compare_dec Morphisms FinFun PeanoNat. Import ListNotations. (* For notations [] and [a;b;c] *) Set Implicit Arguments. (* Set Universe Polymorphism. *) diff --git a/theories/Lists/SetoidList.v b/theories/Sorting/SetoidList.v similarity index 99% rename from theories/Lists/SetoidList.v rename to theories/Sorting/SetoidList.v index c29aaab53f..3288cc523d 100644 --- a/theories/Lists/SetoidList.v +++ b/theories/Sorting/SetoidList.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export List. -Require Export Sorted. -Require Export Setoid Basics Morphisms. +From Stdlib Require Export List. +From Stdlib Require Export Sorted. +From Stdlib Require Export Setoid Basics Morphisms. Set Implicit Arguments. Unset Strict Implicit. (* Set Universe Polymorphism. *) diff --git a/theories/Lists/SetoidPermutation.v b/theories/Sorting/SetoidPermutation.v similarity index 99% rename from theories/Lists/SetoidPermutation.v rename to theories/Sorting/SetoidPermutation.v index 3dbfe8afd4..f5244af564 100644 --- a/theories/Lists/SetoidPermutation.v +++ b/theories/Sorting/SetoidPermutation.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Permutation SetoidList. +From Stdlib Require Import Permutation SetoidList. (* Set Universe Polymorphism. *) Set Implicit Arguments. diff --git a/theories/Sorting/Sorted.v b/theories/Sorting/Sorted.v index b66702c9d9..9f4c17108c 100644 --- a/theories/Sorting/Sorted.v +++ b/theories/Sorting/Sorted.v @@ -20,7 +20,7 @@ The two notions are equivalent if the order is transitive. *) -Require Import List Relations Relations_1. +From Stdlib Require Import List Relations Relations_1. (* Set Universe Polymorphism. *) diff --git a/theories/Sorting/Sorting.v b/theories/Sorting/Sorting.v index 09224148f4..78469ba7ea 100644 --- a/theories/Sorting/Sorting.v +++ b/theories/Sorting/Sorting.v @@ -8,5 +8,5 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Sorted. -Require Export Mergesort. +From Stdlib Require Export Sorted. +From Stdlib Require Export Mergesort. diff --git a/theories/Lists/StreamMemo.v b/theories/Streams/StreamMemo.v similarity index 98% rename from theories/Lists/StreamMemo.v rename to theories/Streams/StreamMemo.v index 6a32b7147b..83745154c6 100644 --- a/theories/Lists/StreamMemo.v +++ b/theories/Streams/StreamMemo.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Eqdep_dec. -Require Import Streams. +From Stdlib Require Import Eqdep_dec. +From Stdlib Require Import Streams. (** * Memoization *) @@ -168,7 +168,7 @@ End DependentMemoFunction. (** An example with the memo function on factorial *) (* -Require Import ZArith. +From Stdlib Require Import ZArith. Open Scope Z_scope. Fixpoint tfact (n: nat) := diff --git a/theories/Lists/Streams.v b/theories/Streams/Streams.v similarity index 100% rename from theories/Lists/Streams.v rename to theories/Streams/Streams.v diff --git a/theories/Strings/Ascii.v b/theories/Strings/Ascii.v index 05e679f6b4..1e61a4d21d 100644 --- a/theories/Strings/Ascii.v +++ b/theories/Strings/Ascii.v @@ -12,7 +12,8 @@ (** Contributed by Laurent Théry (INRIA); Adapted to Coq V8 by the Coq Development Team *) -Require Import Bool BinPos BinNat PeanoNat Nnat Stdlib.Strings.Byte. +From Stdlib Require Import Bool BinPos BinNat PeanoNat Nnat. +From Stdlib.Strings Require Import Byte. Import IfNotations. (** * Definition of ascii characters *) diff --git a/theories/Strings/BinaryString.v b/theories/Strings/BinaryString.v index 94fb82216b..ad65b90ecb 100644 --- a/theories/Strings/BinaryString.v +++ b/theories/Strings/BinaryString.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Ascii String. -Require Import BinNums. +From Stdlib Require Import Ascii String. +From Stdlib Require Import BinNums. Import BinNatDef. Import BinIntDef. Import BinPosDef. diff --git a/theories/Strings/Byte.v b/theories/Strings/Byte.v index 3bfa34ffa3..d2dcf4efdb 100644 --- a/theories/Strings/Byte.v +++ b/theories/Strings/Byte.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Stdlib.Arith.EqNat. -Require Import Stdlib.NArith.BinNat. -Require Import Stdlib.NArith.Nnat. -Require Export Stdlib.Init.Byte. +From Stdlib.Arith Require Import EqNat. +From Stdlib.NArith Require Import BinNat. +From Stdlib.NArith Require Import Nnat. +From Stdlib.Init Require Export Byte. Local Set Implicit Arguments. diff --git a/theories/Strings/HexString.v b/theories/Strings/HexString.v index 4dbab23d58..7770565f87 100644 --- a/theories/Strings/HexString.v +++ b/theories/Strings/HexString.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Ascii String. -Require Import BinNums. +From Stdlib Require Import Ascii String. +From Stdlib Require Import BinNums. Import BinNatDef. Import BinIntDef. Import BinPosDef. diff --git a/theories/Strings/OctalString.v b/theories/Strings/OctalString.v index 9118555f88..477a7de0bb 100644 --- a/theories/Strings/OctalString.v +++ b/theories/Strings/OctalString.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Ascii String. -Require Import BinNums. +From Stdlib Require Import Ascii String. +From Stdlib Require Import BinNums. Import BinNatDef. Import BinIntDef. Import BinPosDef. diff --git a/theories/Strings/PString.v b/theories/Strings/PString.v index 54427a764f..73f8e3d5b3 100644 --- a/theories/Strings/PString.v +++ b/theories/Strings/PString.v @@ -5,7 +5,7 @@ From Stdlib Require Export PrimStringAxioms. From Stdlib.micromega Require Import Lia. From Stdlib.micromega Require Import ZifyUint63. From Stdlib.micromega Require Import Zify. -Require Import Stdlib.Numbers.Cyclic.Int63.Ring63. +From Stdlib Require Import Ring63. From Stdlib Require Import ZArith. #[local] Open Scope Z_scope. diff --git a/theories/Strings/String.v b/theories/Strings/String.v index 7f4d51306d..47d0cc669e 100644 --- a/theories/Strings/String.v +++ b/theories/Strings/String.v @@ -12,10 +12,10 @@ (** Contributed by Laurent Théry (INRIA); Adapted to Coq V8 by the Coq Development Team *) -Require Import Arith. -Require Import Ascii. -Require Import Bool. -Require Import Stdlib.Strings.Byte. +From Stdlib Require Import Arith. +From Stdlib Require Import Ascii. +From Stdlib Require Import Bool. +From Stdlib.Strings Require Import Byte. Import IfNotations. (** *** Definition of strings *) diff --git a/theories/Strings/_CorelibWrapper/PrimString.v b/theories/Strings/_CorelibWrapper/PrimString.v new file mode 120000 index 0000000000..a6c8f26725 --- /dev/null +++ b/theories/Strings/_CorelibWrapper/PrimString.v @@ -0,0 +1 @@ +../PrimString.v \ No newline at end of file diff --git a/theories/Strings/_CorelibWrapper/PrimStringAxioms.v b/theories/Strings/_CorelibWrapper/PrimStringAxioms.v new file mode 120000 index 0000000000..1d970a681b --- /dev/null +++ b/theories/Strings/_CorelibWrapper/PrimStringAxioms.v @@ -0,0 +1 @@ +../PrimStringAxioms.v \ No newline at end of file diff --git a/theories/Strings/_PString/PString.v b/theories/Strings/_PString/PString.v new file mode 120000 index 0000000000..dbaf307466 --- /dev/null +++ b/theories/Strings/_PString/PString.v @@ -0,0 +1 @@ +../PString.v \ No newline at end of file diff --git a/theories/Bool/BoolOrder.v b/theories/Structures/BoolOrder.v similarity index 97% rename from theories/Bool/BoolOrder.v rename to theories/Structures/BoolOrder.v index 6c7b0f3ce5..13d0eb73d8 100644 --- a/theories/Bool/BoolOrder.v +++ b/theories/Structures/BoolOrder.v @@ -12,8 +12,8 @@ (** Order properties of [bool] *) -Require Export Bool. -Require Import Orders. +From Stdlib Require Export Bool. +From Stdlib Require Import Orders. Import BoolNotations. Local Ltac Tauto.intuition_solver ::= auto with typeclass_instances relations. diff --git a/theories/Structures/DecidableType.v b/theories/Structures/DecidableType.v index 0827c6d891..3e92d8971f 100644 --- a/theories/Structures/DecidableType.v +++ b/theories/Structures/DecidableType.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export SetoidList. -Require Equalities. +From Stdlib Require Export SetoidList. +From Stdlib Require Equalities. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/DecidableTypeEx.v b/theories/Structures/DecidableTypeEx.v index 2f89fa2b0c..8e8607f069 100644 --- a/theories/Structures/DecidableTypeEx.v +++ b/theories/Structures/DecidableTypeEx.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import DecidableType OrderedType OrderedTypeEx. +From Stdlib Require Import DecidableType OrderedType OrderedTypeEx. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/Equalities.v b/theories/Structures/Equalities.v index 760e61dabf..7de02a2105 100644 --- a/theories/Structures/Equalities.v +++ b/theories/Structures/Equalities.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export RelationClasses. -Require Import Bool Morphisms Setoid. +From Stdlib Require Export RelationClasses. +From Stdlib Require Import Bool Morphisms Setoid. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/EqualitiesFacts.v b/theories/Structures/EqualitiesFacts.v index c7138f85f0..6752a36dd7 100644 --- a/theories/Structures/EqualitiesFacts.v +++ b/theories/Structures/EqualitiesFacts.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Equalities Bool SetoidList RelationPairs. +From Stdlib Require Import Equalities Bool SetoidList RelationPairs. Set Implicit Arguments. diff --git a/theories/Structures/GenericMinMax.v b/theories/Structures/GenericMinMax.v index df67069bac..a045fdb8a5 100644 --- a/theories/Structures/GenericMinMax.v +++ b/theories/Structures/GenericMinMax.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Orders OrdersTac OrdersFacts Setoid Morphisms Basics. +From Stdlib Require Import Orders OrdersTac OrdersFacts Setoid Morphisms Basics. (** * A Generic construction of min and max *) diff --git a/theories/Structures/OrderedType.v b/theories/Structures/OrderedType.v index e0e57ae60f..cbaa2c7708 100644 --- a/theories/Structures/OrderedType.v +++ b/theories/Structures/OrderedType.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export SetoidList Morphisms OrdersTac. +From Stdlib Require Export SetoidList Morphisms OrdersTac. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/OrderedTypeAlt.v b/theories/Structures/OrderedTypeAlt.v index 84f1eb73ad..b80fd28cf7 100644 --- a/theories/Structures/OrderedTypeAlt.v +++ b/theories/Structures/OrderedTypeAlt.v @@ -7,7 +7,7 @@ (* * GNU Lesser General Public License Version 2.1 *) (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import OrderedType. +From Stdlib Require Import OrderedType. (** * An alternative (but equivalent) presentation for an Ordered Type inferface. *) diff --git a/theories/Structures/OrderedTypeEx.v b/theories/Structures/OrderedTypeEx.v index 7c7143334a..246586b115 100644 --- a/theories/Structures/OrderedTypeEx.v +++ b/theories/Structures/OrderedTypeEx.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import OrderedType. -Require Import BinInt. -Require Import PeanoNat Peano_dec Compare_dec. -Require Import Ascii String. -Require Import NArith Ndec. +From Stdlib Require Import OrderedType. +From Stdlib Require Import BinInt. +From Stdlib Require Import PeanoNat Peano_dec Compare_dec. +From Stdlib Require Import Ascii String. +From Stdlib Require Import NArith Ndec. (** * Examples of Ordered Type structures. *) diff --git a/theories/Structures/Orders.v b/theories/Structures/Orders.v index 6f0a7d3295..efdedf86da 100644 --- a/theories/Structures/Orders.v +++ b/theories/Structures/Orders.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Relations Morphisms Setoid Equalities. +From Stdlib Require Export Relations Morphisms Setoid Equalities. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/OrdersAlt.v b/theories/Structures/OrdersAlt.v index a2d0fc972a..c342d92d1c 100644 --- a/theories/Structures/OrdersAlt.v +++ b/theories/Structures/OrdersAlt.v @@ -13,7 +13,7 @@ * Institution: LRI, CNRS UMR 8623 - Université Paris Sud * 91405 Orsay, France *) -Require Import OrderedType Orders. +From Stdlib Require Import OrderedType Orders. Set Implicit Arguments. (** * Some alternative (but equivalent) presentations for an Ordered Type diff --git a/theories/Structures/OrdersEx.v b/theories/Structures/OrdersEx.v index bbd2b13fae..21659760f5 100644 --- a/theories/Structures/OrdersEx.v +++ b/theories/Structures/OrdersEx.v @@ -13,9 +13,9 @@ * Institution: LRI, CNRS UMR 8623 - Université Paris Sud * 91405 Orsay, France *) -Require Import Orders BoolOrder PeanoNat POrderedType BinNat BinInt +From Stdlib Require Import Orders BoolOrder PeanoNat POrderedType BinNat BinInt RelationPairs EqualitiesFacts. -Require Import Ascii String. +From Stdlib Require Import Ascii String. (** * Examples of Ordered Type structures. *) diff --git a/theories/Structures/OrdersFacts.v b/theories/Structures/OrdersFacts.v index 0930a8d0c1..2cbcac10bf 100644 --- a/theories/Structures/OrdersFacts.v +++ b/theories/Structures/OrdersFacts.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool Basics OrdersTac. -Require Export Orders. +From Stdlib Require Import Bool Basics OrdersTac. +From Stdlib Require Export Orders. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/OrdersLists.v b/theories/Structures/OrdersLists.v index 3e6f841a4f..815d04c440 100644 --- a/theories/Structures/OrdersLists.v +++ b/theories/Structures/OrdersLists.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export RelationPairs SetoidList Orders EqualitiesFacts. +From Stdlib Require Export RelationPairs SetoidList Orders EqualitiesFacts. Set Implicit Arguments. Unset Strict Implicit. diff --git a/theories/Structures/OrdersTac.v b/theories/Structures/OrdersTac.v index 0d6d6a3913..9003911554 100644 --- a/theories/Structures/OrdersTac.v +++ b/theories/Structures/OrdersTac.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Setoid Morphisms Basics Equalities Orders. +From Stdlib Require Import Setoid Morphisms Basics Equalities Orders. Set Implicit Arguments. (** * The order tactic *) diff --git a/theories/Structures/_Def/Equalities.v b/theories/Structures/_Def/Equalities.v new file mode 120000 index 0000000000..e17c2a654d --- /dev/null +++ b/theories/Structures/_Def/Equalities.v @@ -0,0 +1 @@ +../Equalities.v \ No newline at end of file diff --git a/theories/Structures/_Def/GenericMinMax.v b/theories/Structures/_Def/GenericMinMax.v new file mode 120000 index 0000000000..e2de6eb607 --- /dev/null +++ b/theories/Structures/_Def/GenericMinMax.v @@ -0,0 +1 @@ +../GenericMinMax.v \ No newline at end of file diff --git a/theories/Structures/_Def/Orders.v b/theories/Structures/_Def/Orders.v new file mode 120000 index 0000000000..44b92be771 --- /dev/null +++ b/theories/Structures/_Def/Orders.v @@ -0,0 +1 @@ +../Orders.v \ No newline at end of file diff --git a/theories/Structures/_Def/OrdersFacts.v b/theories/Structures/_Def/OrdersFacts.v new file mode 120000 index 0000000000..e172eda04a --- /dev/null +++ b/theories/Structures/_Def/OrdersFacts.v @@ -0,0 +1 @@ +../OrdersFacts.v \ No newline at end of file diff --git a/theories/Structures/_Def/OrdersTac.v b/theories/Structures/_Def/OrdersTac.v new file mode 120000 index 0000000000..66fa234425 --- /dev/null +++ b/theories/Structures/_Def/OrdersTac.v @@ -0,0 +1 @@ +../OrdersTac.v \ No newline at end of file diff --git a/theories/Structures/_Ex/BoolOrder.v b/theories/Structures/_Ex/BoolOrder.v new file mode 120000 index 0000000000..bb3a7413e8 --- /dev/null +++ b/theories/Structures/_Ex/BoolOrder.v @@ -0,0 +1 @@ +../BoolOrder.v \ No newline at end of file diff --git a/theories/Structures/_Ex/DecidableType.v b/theories/Structures/_Ex/DecidableType.v new file mode 120000 index 0000000000..868b6ad76c --- /dev/null +++ b/theories/Structures/_Ex/DecidableType.v @@ -0,0 +1 @@ +../DecidableType.v \ No newline at end of file diff --git a/theories/Structures/_Ex/DecidableTypeEx.v b/theories/Structures/_Ex/DecidableTypeEx.v new file mode 120000 index 0000000000..174f7bdfbd --- /dev/null +++ b/theories/Structures/_Ex/DecidableTypeEx.v @@ -0,0 +1 @@ +../DecidableTypeEx.v \ No newline at end of file diff --git a/theories/Structures/_Ex/EqualitiesFacts.v b/theories/Structures/_Ex/EqualitiesFacts.v new file mode 120000 index 0000000000..d5847bee91 --- /dev/null +++ b/theories/Structures/_Ex/EqualitiesFacts.v @@ -0,0 +1 @@ +../EqualitiesFacts.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrderedType.v b/theories/Structures/_Ex/OrderedType.v new file mode 120000 index 0000000000..be063c4111 --- /dev/null +++ b/theories/Structures/_Ex/OrderedType.v @@ -0,0 +1 @@ +../OrderedType.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrderedTypeAlt.v b/theories/Structures/_Ex/OrderedTypeAlt.v new file mode 120000 index 0000000000..bde1e3af89 --- /dev/null +++ b/theories/Structures/_Ex/OrderedTypeAlt.v @@ -0,0 +1 @@ +../OrderedTypeAlt.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrderedTypeEx.v b/theories/Structures/_Ex/OrderedTypeEx.v new file mode 120000 index 0000000000..c9dff2b572 --- /dev/null +++ b/theories/Structures/_Ex/OrderedTypeEx.v @@ -0,0 +1 @@ +../OrderedTypeEx.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrdersAlt.v b/theories/Structures/_Ex/OrdersAlt.v new file mode 120000 index 0000000000..be14cf1702 --- /dev/null +++ b/theories/Structures/_Ex/OrdersAlt.v @@ -0,0 +1 @@ +../OrdersAlt.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrdersEx.v b/theories/Structures/_Ex/OrdersEx.v new file mode 120000 index 0000000000..6c19e57d8c --- /dev/null +++ b/theories/Structures/_Ex/OrdersEx.v @@ -0,0 +1 @@ +../OrdersEx.v \ No newline at end of file diff --git a/theories/Structures/_Ex/OrdersLists.v b/theories/Structures/_Ex/OrdersLists.v new file mode 120000 index 0000000000..87b9ffd2d2 --- /dev/null +++ b/theories/Structures/_Ex/OrdersLists.v @@ -0,0 +1 @@ +../OrdersLists.v \ No newline at end of file diff --git a/theories/Unicode/Utf8.v b/theories/Unicode/Utf8.v index 030e35c214..e07cbb5bbc 100644 --- a/theories/Unicode/Utf8.v +++ b/theories/Unicode/Utf8.v @@ -9,7 +9,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Utf8_core. +From Stdlib Require Export Utf8_core. (* Arithmetic *) Notation "x ≤ y" := (le x y) (at level 70, no associativity). diff --git a/theories/Bool/Bvector.v b/theories/Vectors/Bvector.v similarity index 99% rename from theories/Bool/Bvector.v rename to theories/Vectors/Bvector.v index d5607a42a7..29037a8a11 100644 --- a/theories/Bool/Bvector.v +++ b/theories/Vectors/Bvector.v @@ -15,9 +15,9 @@ Local Set Warnings "-deprecated". (** Bit vectors. Contribution by Jean Duprat (ENS Lyon). *) -Require Export Bool Sumbool. +From Stdlib Require Export Bool Sumbool. #[local] Set Warnings "-stdlib-vector". -Require Vector. +From Stdlib Require Vector. Export Vector.VectorNotations. Local Open Scope nat_scope. diff --git a/theories/Vectors/Fin.v b/theories/Vectors/Fin.v index 8f7a732c7c..a2d650ec7e 100644 --- a/theories/Vectors/Fin.v +++ b/theories/Vectors/Fin.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. -Require Arith_base. +From Stdlib Require Import PeanoNat. +From Stdlib Require Arith_base. (** N.B.: This file defines a dependently-type programming view of bounded integers. Another popular approach is to bundle integers with diff --git a/theories/Logic/FinFun.v b/theories/Vectors/FinFun.v similarity index 99% rename from theories/Logic/FinFun.v rename to theories/Vectors/FinFun.v index d55e9867e1..4b4563226b 100644 --- a/theories/Logic/FinFun.v +++ b/theories/Vectors/FinFun.v @@ -14,7 +14,8 @@ f injective <-> f bijective <-> f surjective. *) #[local] Set Warnings "-stdlib-vector". -Require Import List PeanoNat Compare_dec EqNat Decidable ListDec. Require Fin. +From Stdlib Require Import List PeanoNat Compare_dec EqNat Decidable ListDec. +From Stdlib Require Fin. Set Implicit Arguments. (** General definitions *) diff --git a/theories/Vectors/Vector.v b/theories/Vectors/Vector.v index e776f07640..287cc7f140 100644 --- a/theories/Vectors/Vector.v +++ b/theories/Vectors/Vector.v @@ -53,7 +53,7 @@ mathcomp's [tuple.v]) only needs the property that [rev] preserves the length: [[ -Require Import List. +From Stdlib Require Import List. Record tuple_of (n : nat) T := Tuple { tval :> list T; tsize : length tval = n }. @@ -81,10 +81,10 @@ Originally from the contribution bit vector by Jean Duprat (ENS Lyon). Based on contents from Util/VecUtil of the CoLoR contribution *) #[local] Set Warnings "-stdlib-vector". -Require Fin. -Require VectorDef. -Require VectorSpec. -Require VectorEq. +From Stdlib Require Fin. +From Stdlib Require VectorDef. +From Stdlib Require VectorSpec. +From Stdlib Require VectorEq. Include VectorDef. Include VectorSpec. Include VectorEq. diff --git a/theories/Vectors/VectorDef.v b/theories/Vectors/VectorDef.v index b4115f8994..2b8f11fb72 100644 --- a/theories/Vectors/VectorDef.v +++ b/theories/Vectors/VectorDef.v @@ -22,9 +22,9 @@ Attributes warn(cats="stdlib vector", note="Using Vector.t is known to be techni Names should be "caml name in list.ml" if exists and order of arguments have to be the same. complain if you see mistakes ... *) -Require Import Arith_base. +From Stdlib Require Import Arith_base. #[local] Set Warnings "-stdlib-vector". -Require Vectors.Fin. +From Stdlib Require Vectors.Fin. Import EqNotations. Local Open Scope nat_scope. diff --git a/theories/Vectors/VectorEq.v b/theories/Vectors/VectorEq.v index 5176166fd3..223fb0c920 100644 --- a/theories/Vectors/VectorEq.v +++ b/theories/Vectors/VectorEq.v @@ -19,8 +19,8 @@ Attributes warn(cats="stdlib vector", note="Using Vector.t is known to be techni *) #[local] Set Warnings "-stdlib-vector". -Require Import VectorDef. -Require Import VectorSpec. +From Stdlib Require Import VectorDef. +From Stdlib Require Import VectorSpec. Import VectorNotations. Section BEQ. diff --git a/theories/Vectors/VectorSpec.v b/theories/Vectors/VectorSpec.v index 8ba29fed84..118b9b4115 100644 --- a/theories/Vectors/VectorSpec.v +++ b/theories/Vectors/VectorSpec.v @@ -19,8 +19,8 @@ Attributes warn(cats="stdlib vector", note="Using Vector.t is known to be techni *) #[local] Set Warnings "-stdlib-vector". -Require Fin List. -Require Import VectorDef PeanoNat Eqdep_dec. +From Stdlib Require Fin List. +From Stdlib Require Import VectorDef PeanoNat Eqdep_dec. Import VectorNotations EqNotations. Definition cons_inj {A} {a1 a2} {n} {v1 v2 : t A n} diff --git a/theories/Wellfounded/Disjoint_Union.v b/theories/Wellfounded/Disjoint_Union.v index e6278a577e..b879effee8 100644 --- a/theories/Wellfounded/Disjoint_Union.v +++ b/theories/Wellfounded/Disjoint_Union.v @@ -12,7 +12,7 @@ From : Constructing Recursion Operators in Type Theory L. Paulson JSC (1986) 2, 325-355 *) -Require Import Relation_Operators. +From Stdlib Require Import Relation_Operators. Section Wf_Disjoint_Union. Variables A B : Type. diff --git a/theories/Wellfounded/Inclusion.v b/theories/Wellfounded/Inclusion.v index ed1e7024fc..e565dde47d 100644 --- a/theories/Wellfounded/Inclusion.v +++ b/theories/Wellfounded/Inclusion.v @@ -10,7 +10,7 @@ (** Author: Bruno Barras *) -Require Import Relation_Definitions. +From Stdlib Require Import Relation_Definitions. Section WfInclusion. Variable A : Type. diff --git a/theories/Wellfounded/Lexicographic_Exponentiation.v b/theories/Wellfounded/Lexicographic_Exponentiation.v index 0548024137..43336844d7 100644 --- a/theories/Wellfounded/Lexicographic_Exponentiation.v +++ b/theories/Wellfounded/Lexicographic_Exponentiation.v @@ -12,12 +12,14 @@ From : Constructing Recursion Operators in Type Theory L. Paulson JSC (1986) 2, 325-355 *) -Require Import List. -Require Import Relation_Operators. -Require Import Operators_Properties. -Require Import Inverse_Image. -Require Import Transitive_Closure. -Require Import List_Extension. + +From Stdlib Require Import List. +From Stdlib Require Import Relation_Operators. +From Stdlib Require Import Operators_Properties. +From Stdlib Require Import Inverse_Image. +From Stdlib Require Import Transitive_Closure. +From Stdlib Require Import List_Extension. + Import ListNotations. Section Wf_Lexicographic_Exponentiation. diff --git a/theories/Wellfounded/Lexicographic_Product.v b/theories/Wellfounded/Lexicographic_Product.v index 711552466d..a3aae03768 100644 --- a/theories/Wellfounded/Lexicographic_Product.v +++ b/theories/Wellfounded/Lexicographic_Product.v @@ -10,11 +10,11 @@ (** Authors: Bruno Barras, Cristina Cornes *) -Require Import EqdepFacts. -Require Import Relation_Operators. -Require Import Transitive_Closure. -Require Import Inclusion. -Require Import Inverse_Image. +From Stdlib Require Import EqdepFacts. +From Stdlib Require Import Relation_Operators. +From Stdlib Require Import Transitive_Closure. +From Stdlib Require Import Inclusion. +From Stdlib Require Import Inverse_Image. (** From : Constructing Recursion Operators in Type Theory L. Paulson JSC (1986) 2, 325-355 *) diff --git a/theories/Wellfounded/List_Extension.v b/theories/Wellfounded/List_Extension.v index 5ef18a8ece..279ed97bb2 100644 --- a/theories/Wellfounded/List_Extension.v +++ b/theories/Wellfounded/List_Extension.v @@ -1,5 +1,5 @@ -Require Import List. -Require Import Relation_Operators Operators_Properties. +From Stdlib Require Import List. +From Stdlib Require Import Relation_Operators Operators_Properties. Import ListNotations. (** Author: Andrej Dudenhefner *) diff --git a/theories/Wellfounded/Transitive_Closure.v b/theories/Wellfounded/Transitive_Closure.v index 26eaeb9285..eafd07712a 100644 --- a/theories/Wellfounded/Transitive_Closure.v +++ b/theories/Wellfounded/Transitive_Closure.v @@ -10,8 +10,8 @@ (** Author: Bruno Barras *) -Require Import Relation_Definitions. -Require Import Relation_Operators. +From Stdlib Require Import Relation_Definitions. +From Stdlib Require Import Relation_Operators. Section Wf_Transitive_Closure. Variable A : Type. diff --git a/theories/Wellfounded/Union.v b/theories/Wellfounded/Union.v index d67eab5d0c..4c9ecc213d 100644 --- a/theories/Wellfounded/Union.v +++ b/theories/Wellfounded/Union.v @@ -10,9 +10,9 @@ (** Author: Bruno Barras *) -Require Import Relation_Operators. -Require Import Relation_Definitions. -Require Import Transitive_Closure. +From Stdlib Require Import Relation_Operators. +From Stdlib Require Import Relation_Definitions. +From Stdlib Require Import Transitive_Closure. Section WfUnion. Variable A : Type. diff --git a/theories/Wellfounded/Well_Ordering.v b/theories/Wellfounded/Well_Ordering.v index efca35bd65..c31a99154a 100644 --- a/theories/Wellfounded/Well_Ordering.v +++ b/theories/Wellfounded/Well_Ordering.v @@ -12,7 +12,7 @@ From: Constructing Recursion Operators in Type Theory L. Paulson JSC (1986) 2, 325-355 *) -Require Import EqdepFacts. +From Stdlib Require Import EqdepFacts. #[universes(template)] Inductive WO (A : Type) (B : A -> Type) : Type := diff --git a/theories/Wellfounded/Wellfounded.v b/theories/Wellfounded/Wellfounded.v index 6cc54c72d3..d2229af5c3 100644 --- a/theories/Wellfounded/Wellfounded.v +++ b/theories/Wellfounded/Wellfounded.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Disjoint_Union. -Require Export Inclusion. -Require Export Inverse_Image. -Require Export Lexicographic_Exponentiation. -Require Export Lexicographic_Product. -Require Export List_Extension. -Require Export Transitive_Closure. -Require Export Union. -Require Export Well_Ordering. +From Stdlib Require Export Disjoint_Union. +From Stdlib Require Export Inclusion. +From Stdlib Require Export Inverse_Image. +From Stdlib Require Export Lexicographic_Exponentiation. +From Stdlib Require Export Lexicographic_Product. +From Stdlib Require Export List_Extension. +From Stdlib Require Export Transitive_Closure. +From Stdlib Require Export Union. +From Stdlib Require Export Well_Ordering. diff --git a/theories/ZArith/BinInt.v b/theories/ZArith/BinInt.v index 5a1965dd5f..bbea730c23 100644 --- a/theories/ZArith/BinInt.v +++ b/theories/ZArith/BinInt.v @@ -9,10 +9,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinNums BinPos Pnat. -Require Import BinNat Bool Equalities GenericMinMax +From Stdlib Require Export BinNums BinPos Pnat. +From Stdlib Require Import BinNat Bool Equalities GenericMinMax OrdersFacts ZAxioms ZProperties DecidableClass. -Require BinIntDef. +From Stdlib Require BinIntDef. (***********************************************************) (** * Binary Integers *) diff --git a/theories/ZArith/BinIntDef.v b/theories/ZArith/BinIntDef.v index 74d0e87ad9..7b987936be 100644 --- a/theories/ZArith/BinIntDef.v +++ b/theories/ZArith/BinIntDef.v @@ -9,9 +9,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export BinNums. -Require Import BinPos BinNat. -Require Export BinNums.IntDef. +From Stdlib Require Export BinNums. +From Stdlib Require Import BinPos BinNat. +From Stdlib Require Export BinNums.IntDef. Local Open Scope Z_scope. diff --git a/theories/ZArith/Int.v b/theories/ZArith/Int.v index f38355a18e..dedf73fd48 100644 --- a/theories/ZArith/Int.v +++ b/theories/ZArith/Int.v @@ -16,7 +16,7 @@ (typically : when measuring the height of an AVL tree). *) -Require Import BinInt. +From Stdlib Require Import BinInt. Declare Scope Int_scope. Delimit Scope Int_scope with I. Local Open Scope Int_scope. diff --git a/theories/ZArith/Wf_Z.v b/theories/ZArith/Wf_Z.v index 2ac72b82fa..d2fceb5493 100644 --- a/theories/ZArith/Wf_Z.v +++ b/theories/ZArith/Wf_Z.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinInt. -Require Import Zcompare. -Require Import Zorder. -Require Import Znat. -Require Import Zmisc. -Require Import Wf_nat. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zcompare. +From Stdlib Require Import Zorder. +From Stdlib Require Import Znat. +From Stdlib Require Import Zmisc. +From Stdlib Require Import Wf_nat. Local Open Scope Z_scope. (** Our purpose is to write an induction shema for {0,1,2,...} diff --git a/theories/ZArith/ZArith.v b/theories/ZArith/ZArith.v index 175c42fcc0..cee3542158 100644 --- a/theories/ZArith/ZArith.v +++ b/theories/ZArith/ZArith.v @@ -10,44 +10,44 @@ (** Library for manipulating integers based on binary encoding *) -Require Export BinNums. -Require Export BinPos. -Require Export BinNat. -Require Export BinInt. -Require Export Zcompare. -Require Export Zorder. -Require Export Zeven. -Require Export Zminmax. -Require Export Zmin. -Require Export Zmax. -Require Export Zabs. -Require Export Znat. -Require Export auxiliary. -Require Export ZArith_dec. -Require Export Zbool. -Require Export Zmisc. -Require Export Wf_Z. +From Stdlib Require Export BinNums. +From Stdlib Require Export BinPos. +From Stdlib Require Export BinNat. +From Stdlib Require Export BinInt. +From Stdlib Require Export Zcompare. +From Stdlib Require Export Zorder. +From Stdlib Require Export Zeven. +From Stdlib Require Export Zminmax. +From Stdlib Require Export Zmin. +From Stdlib Require Export Zmax. +From Stdlib Require Export Zabs. +From Stdlib Require Export Znat. +From Stdlib Require Export auxiliary. +From Stdlib Require Export ZArith_dec. +From Stdlib Require Export Zbool. +From Stdlib Require Export Zmisc. +From Stdlib Require Export Wf_Z. #[global] Hint Resolve Z.le_refl Z.add_comm Z.add_assoc Z.mul_comm Z.mul_assoc Z.add_0_l Z.add_0_r Z.mul_1_l Z.add_opp_diag_l Z.add_opp_diag_r Z.mul_add_distr_l Z.mul_add_distr_r: zarith. -Require Export Zhints. +From Stdlib Require Export Zhints. (** Extra definitions *) -Require Export Zpow_def. +From Stdlib Require Export Zpow_def. (** Extra modules using [Ring]. *) -Require Export OmegaLemmas. -Require Export PreOmega. -Require Export ZArith_hints. -Require Export Zcomplements. -Require Export Zpower. -Require Export Zdiv. -Require Export Zdiv_facts. -Require Export Zbitwise. +From Stdlib Require Export OmegaLemmas. +From Stdlib Require Export PreOmega. +From Stdlib Require Export ZArith_hints. +From Stdlib Require Export Zcomplements. +From Stdlib Require Export Zpower. +From Stdlib Require Export Zdiv. +From Stdlib Require Export Zdiv_facts. +From Stdlib Require Export Zbitwise. Export ZArithRing. diff --git a/theories/ZArith/ZArith_base.v b/theories/ZArith/ZArith_base.v index c26e455b7c..11b9a4aee8 100644 --- a/theories/ZArith/ZArith_base.v +++ b/theories/ZArith/ZArith_base.v @@ -14,27 +14,27 @@ Attributes deprecated(since="9.0", note="use ZArith instead"). This is a subset of basic modules. The full library is [ZArith]. *) -Require Export BinNums. -Require Export BinPos. -Require Export BinNat. -Require Export BinInt. -Require Export Zcompare. -Require Export Zorder. -Require Export Zeven. -Require Export Zminmax. -Require Export Zmin. -Require Export Zmax. -Require Export Zabs. -Require Export Znat. -Require Export auxiliary. -Require Export ZArith_dec. -Require Export Zbool. -Require Export Zmisc. -Require Export Wf_Z. +From Stdlib Require Export BinNums. +From Stdlib Require Export BinPos. +From Stdlib Require Export BinNat. +From Stdlib Require Export BinInt. +From Stdlib Require Export Zcompare. +From Stdlib Require Export Zorder. +From Stdlib Require Export Zeven. +From Stdlib Require Export Zminmax. +From Stdlib Require Export Zmin. +From Stdlib Require Export Zmax. +From Stdlib Require Export Zabs. +From Stdlib Require Export Znat. +From Stdlib Require Export auxiliary. +From Stdlib Require Export ZArith_dec. +From Stdlib Require Export Zbool. +From Stdlib Require Export Zmisc. +From Stdlib Require Export Wf_Z. #[global] Hint Resolve Z.le_refl Z.add_comm Z.add_assoc Z.mul_comm Z.mul_assoc Z.add_0_l Z.add_0_r Z.mul_1_l Z.add_opp_diag_l Z.add_opp_diag_r Z.mul_add_distr_l Z.mul_add_distr_r: zarith. -Require Export Zhints. +From Stdlib Require Export Zhints. diff --git a/theories/ZArith/ZArith_dec.v b/theories/ZArith/ZArith_dec.v index 08ffcb8b39..9ab96ccd2a 100644 --- a/theories/ZArith/ZArith_dec.v +++ b/theories/ZArith/ZArith_dec.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Sumbool. +From Stdlib Require Import Sumbool. -Require Import BinInt. -Require Import Zorder. -Require Import Zcompare. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zorder. +From Stdlib Require Import Zcompare. Local Open Scope Z_scope. (* begin hide *) diff --git a/theories/ZArith/Zabs.v b/theories/ZArith/Zabs.v index aed0e83951..600ed09768 100644 --- a/theories/ZArith/Zabs.v +++ b/theories/ZArith/Zabs.v @@ -16,13 +16,13 @@ It is now almost entirely made of compatibility formulations for results already present in BinInt.Z. *) -Require Import Arith_base. -Require Import BinPos. -Require Import BinInt. -Require Import Zcompare. -Require Import Zorder. -Require Import Znat. -Require Import ZArith_dec. +From Stdlib Require Import Arith_base. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zcompare. +From Stdlib Require Import Zorder. +From Stdlib Require Import Znat. +From Stdlib Require Import ZArith_dec. Local Open Scope Z_scope. diff --git a/theories/ZArith/Zbitwise.v b/theories/ZArith/Zbitwise.v index 035b2faba4..3dbe79011d 100644 --- a/theories/ZArith/Zbitwise.v +++ b/theories/ZArith/Zbitwise.v @@ -1,4 +1,4 @@ -Require Import BinInt Lia Btauto. Local Open Scope Z_scope. +From Stdlib Require Import BinInt Lia Btauto. Local Open Scope Z_scope. Import (ltac.notations) BinInt.Z. Module Z. diff --git a/theories/ZArith/Zbool.v b/theories/ZArith/Zbool.v index 069455e658..b0dca3ee10 100644 --- a/theories/ZArith/Zbool.v +++ b/theories/ZArith/Zbool.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinInt. -Require Import Zeven. -Require Import Zorder. -Require Import Zcompare. -Require Import ZArith_dec. -Require Import Sumbool. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zeven. +From Stdlib Require Import Zorder. +From Stdlib Require Import Zcompare. +From Stdlib Require Import ZArith_dec. +From Stdlib Require Import Sumbool. Local Open Scope Z_scope. diff --git a/theories/ZArith/Zcompare.v b/theories/ZArith/Zcompare.v index 90cd4116a1..a1d67bdb68 100644 --- a/theories/ZArith/Zcompare.v +++ b/theories/ZArith/Zcompare.v @@ -16,7 +16,7 @@ It is now almost entirely made of compatibility formulations for results already present in BinInt.Z. *) -Require Export BinPos BinInt. +From Stdlib Require Export BinPos BinInt. Local Open Scope Z_scope. diff --git a/theories/ZArith/Zcomplements.v b/theories/ZArith/Zcomplements.v index 3107efe01a..46ade0dd26 100644 --- a/theories/ZArith/Zcomplements.v +++ b/theories/ZArith/Zcomplements.v @@ -8,13 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZArithRing. -Require Import BinInt. -Require Import Znat. -Require Import Wf_nat. +From Stdlib Require Import ZArithRing. +From Stdlib Require Import BinInt. +From Stdlib Require Import Znat. +From Stdlib Require Import Wf_nat. +From Stdlib Require Zabs Wf_Z. +From Stdlib Require Zeven. + Local Open Scope Z_scope. -Require Zabs Wf_Z. -Require Zeven. (**********************************************************************) (** About parity *) @@ -118,7 +119,7 @@ Qed. (**********************************************************************) (** A list length in Z, tail recursive. *) -Require Import List. +From Stdlib Require Import List. Fixpoint Zlength_aux (acc:Z) (A:Type) (l:list A) : Z := match l with diff --git a/theories/ZArith/Zdiv.v b/theories/ZArith/Zdiv.v index 5a144eaf32..270f937730 100644 --- a/theories/ZArith/Zdiv.v +++ b/theories/ZArith/Zdiv.v @@ -13,8 +13,8 @@ (** Initial Contribution by Claude Marché and Xavier Urbain *) -Require Export BinInt. -Require Import Wf_Z Zbool ZArithRing Zcomplements Setoid Morphisms. +From Stdlib Require Export BinInt. +From Stdlib Require Import Wf_Z Zbool ZArithRing Zcomplements Setoid Morphisms. Local Open Scope Z_scope. (** The definition of the division is now in [BinIntDef], the initial diff --git a/theories/ZArith/Zdiv_facts.v b/theories/ZArith/Zdiv_facts.v index f3a323fdf7..b86c6c3f05 100644 --- a/theories/ZArith/Zdiv_facts.v +++ b/theories/ZArith/Zdiv_facts.v @@ -1,4 +1,14 @@ -Require Import BinInt Zdiv Znumtheory PreOmega Lia. +(************************************************************************) +(* * The Rocq Prover / The Rocq Development Team *) +(* v * Copyright INRIA, CNRS and contributors *) +(* "(Prelude.+)". Extract Inlined Constant Nat.mul => "(Prelude.*)". diff --git a/theories/extraction/ExtrHaskellString.v b/theories/extraction/ExtrHaskellString.v index f3f22645a5..47e4977ffd 100644 --- a/theories/extraction/ExtrHaskellString.v +++ b/theories/extraction/ExtrHaskellString.v @@ -2,13 +2,13 @@ * Special handling of ascii and strings for extraction to Haskell. *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Ascii. -Require Import String. -Require Import Stdlib.Strings.Byte. +From Stdlib Require Import Ascii. +From Stdlib Require Import String. +From Stdlib.Strings Require Import Byte. -Require Export ExtrHaskellBasic. +From Stdlib Require Export ExtrHaskellBasic. (** * At the moment, Coq's extraction has no way to add extra import @@ -54,7 +54,7 @@ Extract Inlined Constant Ascii.ascii_of_byte => "(\x -> x)". Extract Inlined Constant Ascii.byte_of_ascii => "(\x -> x)". (* -Require Import ExtrHaskellBasic. +From Stdlib Require Import ExtrHaskellBasic. Definition test := "ceci est un test"%string. Definition test2 := List.map (option_map Byte.to_nat) (List.map Byte.of_nat (List.seq 0 256)). Definition test3 := List.map ascii_of_nat (List.seq 0 256). diff --git a/theories/extraction/ExtrHaskellZInt.v b/theories/extraction/ExtrHaskellZInt.v index e6196e93db..a85c93ef76 100644 --- a/theories/extraction/ExtrHaskellZInt.v +++ b/theories/extraction/ExtrHaskellZInt.v @@ -1,9 +1,9 @@ (** Extraction of [Z] into Haskell's [Int] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import ZArith. -Require Import ExtrHaskellZNum. +From Stdlib Require Import ZArith. +From Stdlib Require Import ExtrHaskellZNum. (** * Disclaimer: trying to obtain efficient certified programs diff --git a/theories/extraction/ExtrHaskellZInteger.v b/theories/extraction/ExtrHaskellZInteger.v index 66105044af..377ac7db4d 100644 --- a/theories/extraction/ExtrHaskellZInteger.v +++ b/theories/extraction/ExtrHaskellZInteger.v @@ -1,9 +1,9 @@ (** Extraction of [Z] into Haskell's [Integer] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import ZArith. -Require Import ExtrHaskellZNum. +From Stdlib Require Import ZArith. +From Stdlib Require Import ExtrHaskellZNum. (** Disclaimer: trying to obtain efficient certified programs by extracting [Z] into [Integer] isn't necessarily a good idea. diff --git a/theories/extraction/ExtrHaskellZNum.v b/theories/extraction/ExtrHaskellZNum.v index 8ed33bf09b..bdb6c7d5ad 100644 --- a/theories/extraction/ExtrHaskellZNum.v +++ b/theories/extraction/ExtrHaskellZNum.v @@ -6,10 +6,10 @@ * implements [Num]. *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import ZArith. -Require Import EqNat. +From Stdlib Require Import ZArith. +From Stdlib Require Import EqNat. Extract Inlined Constant Z.add => "(Prelude.+)". Extract Inlined Constant Z.sub => "(Prelude.-)". diff --git a/theories/extraction/ExtrOcamlChar.v b/theories/extraction/ExtrOcamlChar.v index 4552df7a04..cd693dacde 100644 --- a/theories/extraction/ExtrOcamlChar.v +++ b/theories/extraction/ExtrOcamlChar.v @@ -10,10 +10,11 @@ (* Extraction to Ocaml : extract ascii to OCaml's char type *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Ascii String Stdlib.Strings.Byte. -Require Export ExtrOcamlBasic. +From Stdlib Require Import Ascii String. +From Stdlib.Strings Require Import Byte. +From Stdlib Require Export ExtrOcamlBasic. Extract Inductive ascii => char [ diff --git a/theories/extraction/ExtrOcamlIntConv.v b/theories/extraction/ExtrOcamlIntConv.v index 49e585170f..4a1d0202a7 100644 --- a/theories/extraction/ExtrOcamlIntConv.v +++ b/theories/extraction/ExtrOcamlIntConv.v @@ -12,9 +12,9 @@ Nota: no check that [int] values aren't generating overflows *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Arith ZArith. +From Stdlib Require Import Arith ZArith. Parameter int : Type. Parameter int_zero : int. diff --git a/theories/extraction/ExtrOcamlNatBigInt.v b/theories/extraction/ExtrOcamlNatBigInt.v index 0901e1be18..ae0d786d54 100644 --- a/theories/extraction/ExtrOcamlNatBigInt.v +++ b/theories/extraction/ExtrOcamlNatBigInt.v @@ -10,10 +10,10 @@ (** Extraction of [nat] into Zarith's [Z.t] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Arith EqNat Euclid. -Require Import ExtrOcamlBasic. +From Stdlib Require Import Arith EqNat Euclid. +From Stdlib Require Import ExtrOcamlBasic. (** NB: The extracted code depends on [zarith] package. *) @@ -70,7 +70,7 @@ Extract Constant Euclid.quotient => "(fun n m -> Big_int_Z.div_big_int m n)". Extract Constant Euclid.modulo => "(fun n m -> Big_int_Z.mod_big_int m n)". (* -Require Import Euclid. +From Stdlib Require Import Euclid. Definition test n m (H:m>0) := let (q,r,_,_) := eucl_dev m H n in nat_compare n (q*m+r). diff --git a/theories/extraction/ExtrOcamlNatInt.v b/theories/extraction/ExtrOcamlNatInt.v index e8ca9b405a..c92842a562 100644 --- a/theories/extraction/ExtrOcamlNatInt.v +++ b/theories/extraction/ExtrOcamlNatInt.v @@ -10,10 +10,10 @@ (** Extraction of [nat] into Ocaml's [int] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Arith EqNat Euclid. -Require Import ExtrOcamlBasic. +From Stdlib Require Import Arith EqNat Euclid. +From Stdlib Require Import ExtrOcamlBasic. (** Disclaimer: trying to obtain efficient certified programs by extracting [nat] into [int] is definitively *not* a good idea: diff --git a/theories/extraction/ExtrOcamlNativeString.v b/theories/extraction/ExtrOcamlNativeString.v index 045d1bc592..1659173afc 100644 --- a/theories/extraction/ExtrOcamlNativeString.v +++ b/theories/extraction/ExtrOcamlNativeString.v @@ -11,10 +11,11 @@ (* Extraction to Ocaml : extract ascii to OCaml's char type and string to OCaml's string type. *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Ascii String Stdlib.Strings.Byte. -Require Export ExtrOcamlChar. +From Stdlib Require Import Ascii String. +From Stdlib.Strings Require Import Byte. +From Stdlib Require Export ExtrOcamlChar. (* python -c 'print(" ".join(r""" "%s" """.strip() % (r"'"'\''"'" if chr(i) == "'"'"'" else repr(""" "" """.strip()) if chr(i) == """ " """.strip() else repr(chr(i))) for i in range(256)))' # " to satisfy Coq's comment parser *) Extract Inductive byte => char diff --git a/theories/extraction/ExtrOcamlString.v b/theories/extraction/ExtrOcamlString.v index ea095426e9..d4d7c3af5a 100644 --- a/theories/extraction/ExtrOcamlString.v +++ b/theories/extraction/ExtrOcamlString.v @@ -10,9 +10,10 @@ (* Extraction to Ocaml : special handling of ascii and strings *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import Ascii String Stdlib.Strings.Byte. -Require Export ExtrOcamlChar. +From Stdlib Require Import Ascii String. +From Stdlib.Strings Require Import Byte. +From Stdlib Require Export ExtrOcamlChar. Extract Inductive string => "char list" [ "[]" "(::)" ]. diff --git a/theories/extraction/ExtrOcamlZBigInt.v b/theories/extraction/ExtrOcamlZBigInt.v index 1c40786377..f2c67ce425 100644 --- a/theories/extraction/ExtrOcamlZBigInt.v +++ b/theories/extraction/ExtrOcamlZBigInt.v @@ -10,10 +10,10 @@ (** Extraction of [positive], [N], and [Z], into Zarith's [Z.t] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import ZArith NArith. -Require Import ExtrOcamlBasic. +From Stdlib Require Import ZArith NArith. +From Stdlib Require Import ExtrOcamlBasic. Extraction Blacklist Z Big_int_Z. @@ -145,7 +145,7 @@ Extract Constant Z.shiftr => "Big_int_Z.(fun x y -> else shift_right_big_int x y)". (** Test: -Require Import ZArith NArith. +From Stdlib Require Import ZArith NArith. Extraction "/tmp/test.ml" Pos.add Pos.pred Pos.sub Pos.mul Pos.compare N.pred N.sub N.div N.modulo N.compare diff --git a/theories/extraction/ExtrOcamlZInt.v b/theories/extraction/ExtrOcamlZInt.v index 4c66ec6588..934caa2af0 100644 --- a/theories/extraction/ExtrOcamlZInt.v +++ b/theories/extraction/ExtrOcamlZInt.v @@ -10,10 +10,10 @@ (** Extraction of [positive], [N] and [Z] into Ocaml's [int] *) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. -Require Import ZArith NArith. -Require Import ExtrOcamlBasic. +From Stdlib Require Import ZArith NArith. +From Stdlib Require Import ExtrOcamlBasic. (** Disclaimer: trying to obtain efficient certified programs by extracting [Z] into [int] is definitively *not* a good idea. diff --git a/theories/extraction/_All/ExtrHaskellNatInt.v b/theories/extraction/_All/ExtrHaskellNatInt.v new file mode 120000 index 0000000000..996b5436d9 --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellNatInt.v @@ -0,0 +1 @@ +../ExtrHaskellNatInt.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellNatInteger.v b/theories/extraction/_All/ExtrHaskellNatInteger.v new file mode 120000 index 0000000000..9a1a5ad48e --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellNatInteger.v @@ -0,0 +1 @@ +../ExtrHaskellNatInteger.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellNatNum.v b/theories/extraction/_All/ExtrHaskellNatNum.v new file mode 120000 index 0000000000..328121f3b8 --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellNatNum.v @@ -0,0 +1 @@ +../ExtrHaskellNatNum.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellString.v b/theories/extraction/_All/ExtrHaskellString.v new file mode 120000 index 0000000000..db77cbc2de --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellString.v @@ -0,0 +1 @@ +../ExtrHaskellString.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellZInt.v b/theories/extraction/_All/ExtrHaskellZInt.v new file mode 120000 index 0000000000..cb0e76d119 --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellZInt.v @@ -0,0 +1 @@ +../ExtrHaskellZInt.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellZInteger.v b/theories/extraction/_All/ExtrHaskellZInteger.v new file mode 120000 index 0000000000..af7500b8b2 --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellZInteger.v @@ -0,0 +1 @@ +../ExtrHaskellZInteger.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrHaskellZNum.v b/theories/extraction/_All/ExtrHaskellZNum.v new file mode 120000 index 0000000000..20a5de62a1 --- /dev/null +++ b/theories/extraction/_All/ExtrHaskellZNum.v @@ -0,0 +1 @@ +../ExtrHaskellZNum.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOCamlFloats.v b/theories/extraction/_All/ExtrOCamlFloats.v new file mode 120000 index 0000000000..111f1cf0a8 --- /dev/null +++ b/theories/extraction/_All/ExtrOCamlFloats.v @@ -0,0 +1 @@ +../ExtrOCamlFloats.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOCamlInt63.v b/theories/extraction/_All/ExtrOCamlInt63.v new file mode 120000 index 0000000000..91683bf32b --- /dev/null +++ b/theories/extraction/_All/ExtrOCamlInt63.v @@ -0,0 +1 @@ +../ExtrOCamlInt63.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOCamlPArray.v b/theories/extraction/_All/ExtrOCamlPArray.v new file mode 120000 index 0000000000..a61acee373 --- /dev/null +++ b/theories/extraction/_All/ExtrOCamlPArray.v @@ -0,0 +1 @@ +../ExtrOCamlPArray.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOCamlPString.v b/theories/extraction/_All/ExtrOCamlPString.v new file mode 120000 index 0000000000..528b927b8c --- /dev/null +++ b/theories/extraction/_All/ExtrOCamlPString.v @@ -0,0 +1 @@ +../ExtrOCamlPString.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlChar.v b/theories/extraction/_All/ExtrOcamlChar.v new file mode 120000 index 0000000000..2ff9a9ac69 --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlChar.v @@ -0,0 +1 @@ +../ExtrOcamlChar.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlIntConv.v b/theories/extraction/_All/ExtrOcamlIntConv.v new file mode 120000 index 0000000000..dc9d55058b --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlIntConv.v @@ -0,0 +1 @@ +../ExtrOcamlIntConv.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlNatBigInt.v b/theories/extraction/_All/ExtrOcamlNatBigInt.v new file mode 120000 index 0000000000..1a3e021cfe --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlNatBigInt.v @@ -0,0 +1 @@ +../ExtrOcamlNatBigInt.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlNatInt.v b/theories/extraction/_All/ExtrOcamlNatInt.v new file mode 120000 index 0000000000..a8e0f5a2c8 --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlNatInt.v @@ -0,0 +1 @@ +../ExtrOcamlNatInt.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlNativeString.v b/theories/extraction/_All/ExtrOcamlNativeString.v new file mode 120000 index 0000000000..e9a5610afb --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlNativeString.v @@ -0,0 +1 @@ +../ExtrOcamlNativeString.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlString.v b/theories/extraction/_All/ExtrOcamlString.v new file mode 120000 index 0000000000..a78289a60c --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlString.v @@ -0,0 +1 @@ +../ExtrOcamlString.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlZBigInt.v b/theories/extraction/_All/ExtrOcamlZBigInt.v new file mode 120000 index 0000000000..f1b1ef2f17 --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlZBigInt.v @@ -0,0 +1 @@ +../ExtrOcamlZBigInt.v \ No newline at end of file diff --git a/theories/extraction/_All/ExtrOcamlZInt.v b/theories/extraction/_All/ExtrOcamlZInt.v new file mode 120000 index 0000000000..42bbadfc97 --- /dev/null +++ b/theories/extraction/_All/ExtrOcamlZInt.v @@ -0,0 +1 @@ +../ExtrOcamlZInt.v \ No newline at end of file diff --git a/theories/extraction/_CorelibWrapper/ExtrHaskellBasic.v b/theories/extraction/_CorelibWrapper/ExtrHaskellBasic.v new file mode 120000 index 0000000000..967ebfbb1b --- /dev/null +++ b/theories/extraction/_CorelibWrapper/ExtrHaskellBasic.v @@ -0,0 +1 @@ +../ExtrHaskellBasic.v \ No newline at end of file diff --git a/theories/extraction/_CorelibWrapper/ExtrOcamlBasic.v b/theories/extraction/_CorelibWrapper/ExtrOcamlBasic.v new file mode 120000 index 0000000000..aa00a1558f --- /dev/null +++ b/theories/extraction/_CorelibWrapper/ExtrOcamlBasic.v @@ -0,0 +1 @@ +../ExtrOcamlBasic.v \ No newline at end of file diff --git a/theories/extraction/_CorelibWrapper/Extraction.v b/theories/extraction/_CorelibWrapper/Extraction.v new file mode 120000 index 0000000000..a16f6bd0f4 --- /dev/null +++ b/theories/extraction/_CorelibWrapper/Extraction.v @@ -0,0 +1 @@ +../Extraction.v \ No newline at end of file diff --git a/theories/funind/FunInd.v b/theories/funind/FunInd.v index 01ccd90cec..9be890e469 100644 --- a/theories/funind/FunInd.v +++ b/theories/funind/FunInd.v @@ -8,5 +8,5 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Stdlib.extraction.Extraction. +From Stdlib Require Extraction. Declare ML Module "rocq-runtime.plugins.funind". diff --git a/theories/funind/Recdef.v b/theories/funind/Recdef.v index a1f271eb4c..0cc076d550 100644 --- a/theories/funind/Recdef.v +++ b/theories/funind/Recdef.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Stdlib.funind.FunInd. -Require Import PeanoNat. -Require Compare_dec. -Require Wf_nat. +From Stdlib Require Export FunInd. +From Stdlib Require Import PeanoNat. +From Stdlib Require Compare_dec. +From Stdlib Require Wf_nat. Section Iter. Variable A : Type. diff --git a/theories/micromega/DeclConstant.v b/theories/micromega/DeclConstant.v index cf88f918ff..ddc88eb361 100644 --- a/theories/micromega/DeclConstant.v +++ b/theories/micromega/DeclConstant.v @@ -14,69 +14,8 @@ (* *) (************************************************************************) -(** Declaring 'allowed' terms using type classes. - - Motivation: reification needs to know which terms are allowed. - For 'lia', the constant are only the integers built from Z0, Zpos, Zneg, xH, xO, xI. - However, if the term is ground it may be convertible to an integer. - Thus we could allow i.e. sqrt z for some integer z. - - Proposal: for each type, the user declares using type-classes the set of allowed ground terms. - *) - -Require Import List. - -(** Declarative definition of constants. - These are ground terms (without variables) of interest. - e.g. nat is built from O and S - NB: this does not need to be restricted to constructors. - *) - -(** Ground terms (see [GT] below) are built inductively from declared constants. *) - -Class DeclaredConstant {T : Type} (F : T). -Register DeclaredConstant as micromega.DeclaredConstant.type. - -Class GT {T : Type} (F : T). - -#[global] -Instance GT_O {T : Type} (F : T) {DC : DeclaredConstant F} : GT F. -Defined. - -#[global] -Instance GT_APP1 {T1 T2 : Type} (F : T1 -> T2) (A : T1) : - DeclaredConstant F -> - GT A -> GT (F A). -Defined. - -#[global] -Instance GT_APP2 {T1 T2 T3: Type} (F : T1 -> T2 -> T3) - {A1 : T1} {A2 : T2} {DC:DeclaredConstant F} : - GT A1 -> GT A2 -> GT (F A1 A2). -Defined. - -Require Import QArith_base. - -#[global] -Instance DO : DeclaredConstant O := {}. -#[global] -Instance DS : DeclaredConstant S := {}. -#[global] -Instance DxH: DeclaredConstant xH := {}. -#[global] -Instance DxI: DeclaredConstant xI := {}. -#[global] -Instance DxO: DeclaredConstant xO := {}. -#[global] -Instance DZO: DeclaredConstant Z0 := {}. -#[global] -Instance DZpos: DeclaredConstant Zpos := {}. -#[global] -Instance DZneg: DeclaredConstant Zneg := {}. -#[global] -Instance DZpow_pos : DeclaredConstant Z.pow_pos := {}. -#[global] -Instance DZpow : DeclaredConstant Z.pow := {}. +From Stdlib Require Export DeclConstantZ. +From Stdlib Require Import QArith_base. #[global] Instance DQ : DeclaredConstant Qmake := {}. diff --git a/theories/micromega/DeclConstantZ.v b/theories/micromega/DeclConstantZ.v new file mode 100644 index 0000000000..7b80e6f2f2 --- /dev/null +++ b/theories/micromega/DeclConstantZ.v @@ -0,0 +1,79 @@ +(************************************************************************) +(* * The Rocq Prover / The Rocq Development Team *) +(* v * Copyright INRIA, CNRS and contributors *) +(* T2) (A : T1) : + DeclaredConstant F -> + GT A -> GT (F A). +Defined. + +#[global] +Instance GT_APP2 {T1 T2 T3: Type} (F : T1 -> T2 -> T3) + {A1 : T1} {A2 : T2} {DC:DeclaredConstant F} : + GT A1 -> GT A2 -> GT (F A1 A2). +Defined. + +From Stdlib Require Import BinIntDef. + +#[global] +Instance DO : DeclaredConstant O := {}. +#[global] +Instance DS : DeclaredConstant S := {}. +#[global] +Instance DxH: DeclaredConstant xH := {}. +#[global] +Instance DxI: DeclaredConstant xI := {}. +#[global] +Instance DxO: DeclaredConstant xO := {}. +#[global] +Instance DZO: DeclaredConstant Z0 := {}. +#[global] +Instance DZpos: DeclaredConstant Zpos := {}. +#[global] +Instance DZneg: DeclaredConstant Zneg := {}. +#[global] +Instance DZpow_pos : DeclaredConstant Z.pow_pos := {}. +#[global] +Instance DZpow : DeclaredConstant Z.pow := {}. diff --git a/theories/micromega/Env.v b/theories/micromega/Env.v index 29b3ad6ecc..d34774a928 100644 --- a/theories/micromega/Env.v +++ b/theories/micromega/Env.v @@ -14,7 +14,7 @@ (* *) (************************************************************************) -Require Import BinInt List. +From Stdlib Require Import BinInt List. Set Implicit Arguments. Local Open Scope positive_scope. diff --git a/theories/micromega/EnvRing.v b/theories/micromega/EnvRing.v index 11164346d7..c633abac40 100644 --- a/theories/micromega/EnvRing.v +++ b/theories/micromega/EnvRing.v @@ -13,8 +13,8 @@ Set Implicit Arguments. -Require Import Setoid Morphisms Env BinPos BinNat BinInt. -Require Export Ring_theory. +From Stdlib Require Import Setoid Morphisms Env BinPos BinNat BinInt. +From Stdlib Require Export Ring_theory. Local Open Scope positive_scope. Import RingSyntax. diff --git a/theories/micromega/Fourier.v b/theories/micromega/Fourier.v index 0153de1dab..26ef1c0c15 100644 --- a/theories/micromega/Fourier.v +++ b/theories/micromega/Fourier.v @@ -1,5 +1,5 @@ -Require Import Lra. -Require Export Fourier_util. +From Stdlib Require Import Lra. +From Stdlib Require Export Fourier_util. #[deprecated(since = "8.9.0", note = "Use lra instead.")] Ltac fourier := lra. diff --git a/theories/micromega/Fourier_util.v b/theories/micromega/Fourier_util.v index b40b66b527..f5cffab8a4 100644 --- a/theories/micromega/Fourier_util.v +++ b/theories/micromega/Fourier_util.v @@ -1,5 +1,5 @@ -Require Export Rbase. -Require Import Lra. +From Stdlib Require Export Rbase. +From Stdlib Require Import Lra. Local Open Scope R_scope. diff --git a/theories/micromega/Lia.v b/theories/micromega/Lia.v index a0389e2da6..e268cef643 100644 --- a/theories/micromega/Lia.v +++ b/theories/micromega/Lia.v @@ -14,9 +14,9 @@ (* *) (************************************************************************) -Require Import PreOmega ZMicromega RingMicromega VarMap DeclConstant. -Require Import BinNums. -Require Stdlib.micromega.Tauto. +From Stdlib Require Import PreOmega ZMicromega RingMicromega VarMap DeclConstantZ. +From Stdlib Require Import BinNums. +From Stdlib.micromega Require Tauto. Declare ML Module "rocq-runtime.plugins.micromega_core". Declare ML Module "rocq-runtime.plugins.micromega". diff --git a/theories/micromega/Lqa.v b/theories/micromega/Lqa.v index a973d59788..f2a71f288d 100644 --- a/theories/micromega/Lqa.v +++ b/theories/micromega/Lqa.v @@ -14,12 +14,12 @@ (* *) (************************************************************************) -Require Import QMicromega. -Require Import QArith. -Require Import RingMicromega. -Require Import VarMap. -Require Import DeclConstant. -Require Stdlib.micromega.Tauto. +From Stdlib Require Import QMicromega. +From Stdlib Require Import QArith_base. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import VarMap. +From Stdlib Require Import DeclConstant. +From Stdlib.micromega Require Tauto. Declare ML Module "rocq-runtime.plugins.micromega_core". Declare ML Module "rocq-runtime.plugins.micromega". diff --git a/theories/micromega/Lra.v b/theories/micromega/Lra.v index 4a27d90f59..46f80c5d5a 100644 --- a/theories/micromega/Lra.v +++ b/theories/micromega/Lra.v @@ -14,13 +14,13 @@ (* *) (************************************************************************) -Require Import RMicromega. -Require Import QMicromega. -Require Import Rdefinitions. -Require Import RingMicromega. -Require Import VarMap. -Require Stdlib.micromega.Tauto. -Require Import Rregisternames. +From Stdlib Require Import RMicromega. +From Stdlib Require Import QMicromega. +From Stdlib Require Import Rdefinitions. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import VarMap. +From Stdlib.micromega Require Tauto. +From Stdlib Require Import Rregisternames. Declare ML Module "rocq-runtime.plugins.micromega". diff --git a/theories/micromega/MExtraction.v b/theories/micromega/MExtraction.v deleted file mode 100644 index e7dafde42e..0000000000 --- a/theories/micromega/MExtraction.v +++ /dev/null @@ -1,67 +0,0 @@ -(************************************************************************) -(* * The Rocq Prover / The Rocq Development Team *) -(* v * Copyright INRIA, CNRS and contributors *) -(* "( * )" [ "(,)" ]. -Extract Inductive list => list [ "[]" "(::)" ]. -Extract Inductive bool => bool [ true false ]. -Extract Inductive sumbool => bool [ true false ]. -Extract Inductive option => option [ Some None ]. -Extract Inductive sumor => option [ Some None ]. -(** Then, in a ternary alternative { }+{ }+{ }, - - leftmost choice (Inleft Left) is (Some true), - - middle choice (Inleft Right) is (Some false), - - rightmost choice (Inright) is (None) *) - - -(** To preserve its laziness, andb is normally expanded. - Let's rather use the ocaml && *) -Extract Inlined Constant andb => "(&&)". - -Import Reals.Rdefinitions. - -Extract Constant R => "int". -Extract Constant R0 => "0". -Extract Constant R1 => "1". -Extract Constant Rplus => "( + )". -Extract Constant Rmult => "( * )". -Extract Constant Ropp => "fun x -> - x". -Extract Constant Rinv => "fun x -> 1 / x". - -(** In order to avoid annoying build dependencies the actual - extraction is only performed as a test in the test suite. *) -(* -Extraction "micromega.ml" - Tauto.mapX Tauto.foldA Tauto.collect_annot Tauto.ids_of_formula Tauto.map_bformula - Tauto.abst_form - ZMicromega.cnfZ ZMicromega.Zeval_const QMicromega.cnfQ - List.map simpl_cone (*map_cone indexes*) - denorm QArith_base.Qpower vm_add - normZ normQ normQ n_of_Z N.of_nat ZTautoChecker ZWeakChecker QTautoChecker RTautoChecker find. -*) -(* Local Variables: *) -(* coding: utf-8 *) -(* End: *) diff --git a/theories/micromega/OrderedRing.v b/theories/micromega/OrderedRing.v index 15eaf7124e..52809a0830 100644 --- a/theories/micromega/OrderedRing.v +++ b/theories/micromega/OrderedRing.v @@ -10,8 +10,8 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Import Setoid. -Require Import Ring. +From Stdlib Require Import Setoid. +From Stdlib Require Import Ring. (** Generic properties of ordered rings on a setoid equality *) diff --git a/theories/micromega/Psatz.v b/theories/micromega/Psatz.v index 324ab2c498..48d7d444fd 100644 --- a/theories/micromega/Psatz.v +++ b/theories/micromega/Psatz.v @@ -14,18 +14,18 @@ (* *) (************************************************************************) -Require Import ZMicromega. -Require Import QMicromega. -Require Import RMicromega. -Require Import QArith. -Require Import ZArith. -Require Import Rdefinitions. -Require Import RingMicromega. -Require Import VarMap. -Require Stdlib.micromega.Tauto. -Require Lia. -Require Lra. -Require Lqa. +From Stdlib Require Import ZMicromega. +From Stdlib Require Import QMicromega. +From Stdlib Require Import RMicromega. +From Stdlib Require Import QArith. +From Stdlib Require Import ZArith. +From Stdlib Require Import Rdefinitions. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import VarMap. +From Stdlib.micromega Require Tauto. +From Stdlib Require Lia. +From Stdlib Require Lra. +From Stdlib Require Lqa. Declare ML Module "rocq-runtime.plugins.micromega". diff --git a/theories/micromega/QMicromega.v b/theories/micromega/QMicromega.v index a5d940c07d..c823961e09 100644 --- a/theories/micromega/QMicromega.v +++ b/theories/micromega/QMicromega.v @@ -14,11 +14,11 @@ (* *) (************************************************************************) -Require Import OrderedRing. -Require Import RingMicromega. -Require Import Refl. -Require Import QArith. -Require Import Qfield. +From Stdlib Require Import OrderedRing. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import Refl. +From Stdlib Require Import QArith_base. +From Stdlib Require Import Qfield. Lemma Qsor : SOR 0 1 Qplus Qmult Qminus Qopp Qeq Qle Qlt. Proof. @@ -62,7 +62,7 @@ Qed. (*Definition Zeval_expr := eval_pexpr 0 Z.add Z.mul Z.sub Z.opp (fun x => x) (fun x => Z.of_N x) (Z.pow).*) -Require Import EnvRing. +From Stdlib Require Import EnvRing. Fixpoint Qeval_expr (env: PolEnv Q) (e: PExpr Q) : Q := match e with @@ -210,7 +210,7 @@ Register QWitness as micromega.QWitness.type. Definition QWeakChecker := check_normalised_formulas 0 1 Qplus Qmult Qeq_bool Qle_bool. -Require Import List. +From Stdlib Require Import List. Lemma QWeakChecker_sound : forall (l : list (NFormula Q)) (cm : QWitness), QWeakChecker l cm = true -> @@ -224,7 +224,7 @@ Proof. exact H. Qed. -Require Import Stdlib.micromega.Tauto. +From Stdlib.micromega Require Import Tauto. Definition Qnormalise := @cnf_normalise Q 0 1 Qplus Qmult Qminus Qopp Qeq_bool Qle_bool. diff --git a/theories/micromega/RMicromega.v b/theories/micromega/RMicromega.v index d989b6355d..2fe8662e7f 100644 --- a/theories/micromega/RMicromega.v +++ b/theories/micromega/RMicromega.v @@ -14,18 +14,18 @@ (* *) (************************************************************************) -Require Import OrderedRing. -Require Import QMicromega RingMicromega. -Require Import Refl. -Require Import Sumbool Raxioms Rfunctions RIneq Rpow_def. -Require Import BinNat. -Require Import QArith. -Require Import Qfield. -Require Import Qreals. -Require Import DeclConstant. -Require Import Znat. - -Require Setoid. +From Stdlib Require Import OrderedRing. +From Stdlib Require Import QMicromega RingMicromega. +From Stdlib Require Import Refl. +From Stdlib Require Import Sumbool Raxioms Rfunctions RIneq Rpow_def. +From Stdlib Require Import BinNat. +From Stdlib Require Import QArith. +From Stdlib Require Import Qfield. +From Stdlib Require Import Qreals. +From Stdlib Require Import DeclConstant. +From Stdlib Require Import Znat. + +From Stdlib Require Setoid. Definition Rsrt : ring_theory R0 R1 Rplus Rmult Rminus Ropp (@eq R). Proof. @@ -370,7 +370,7 @@ Proof. apply Q2R_opp. Qed. -Require Import EnvRing. +From Stdlib Require Import EnvRing. Definition INZ (n:N) : R := match n with @@ -491,7 +491,7 @@ Definition RWitness := Psatz Q. Definition RWeakChecker := check_normalised_formulas 0%Q 1%Q Qplus Qmult Qeq_bool Qle_bool. -Require Import List. +From Stdlib Require Import List. Lemma RWeakChecker_sound : forall (l : list (NFormula Q)) (cm : RWitness), RWeakChecker l cm = true -> @@ -505,7 +505,7 @@ Proof. exact H. Qed. -Require Import Stdlib.micromega.Tauto. +From Stdlib.micromega Require Import Tauto. Definition Rnormalise := @cnf_normalise Q 0%Q 1%Q Qplus Qmult Qminus Qopp Qeq_bool Qle_bool. Definition Rnegate := @cnf_negate Q 0%Q 1%Q Qplus Qmult Qminus Qopp Qeq_bool Qle_bool. diff --git a/theories/micromega/Refl.v b/theories/micromega/Refl.v index 12ad23a869..4041340f9d 100644 --- a/theories/micromega/Refl.v +++ b/theories/micromega/Refl.v @@ -15,8 +15,8 @@ (* *) (************************************************************************) -Require Import List. -Require Setoid. +From Stdlib Require Import List. +From Stdlib Require Setoid. Set Implicit Arguments. diff --git a/theories/micromega/RingMicromega.v b/theories/micromega/RingMicromega.v index 81bffebb5b..d45878799b 100644 --- a/theories/micromega/RingMicromega.v +++ b/theories/micromega/RingMicromega.v @@ -10,19 +10,20 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Import PeanoNat. -Require Import NArith. -Require Import Relation_Definitions. -Require Import Setoid. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import NArith NArithRing. +From Stdlib Require Import Relation_Definitions. +From Stdlib Require Import Setoid. +From Stdlib Require Import Ring. (*****) -Require Import Env. -Require Import EnvRing. +From Stdlib Require Import Env. +From Stdlib Require Import EnvRing. (*****) -Require Import List. -Require Import Bool. -Require Import OrderedRing. -Require Import Refl. -Require Stdlib.micromega.Tauto. +From Stdlib Require Import List. +From Stdlib Require Import Bool. +From Stdlib Require Import OrderedRing. +From Stdlib Require Import Refl. +From Stdlib.micromega Require Tauto. Set Implicit Arguments. diff --git a/theories/micromega/Tauto.v b/theories/micromega/Tauto.v index 5f06d09f2a..3f666a7f23 100644 --- a/theories/micromega/Tauto.v +++ b/theories/micromega/Tauto.v @@ -14,10 +14,10 @@ (* *) (************************************************************************) -Require Import List. -Require Import Refl. -Require Import Bool. -Require Import Relation_Definitions Setoid. +From Stdlib Require Import List. +From Stdlib Require Import Refl. +From Stdlib Require Import Bool. +From Stdlib Require Import Relation_Definitions Setoid. Set Implicit Arguments. diff --git a/theories/micromega/VarMap.v b/theories/micromega/VarMap.v index cb525b8a2b..e0636bbd07 100644 --- a/theories/micromega/VarMap.v +++ b/theories/micromega/VarMap.v @@ -15,8 +15,8 @@ (* *) (************************************************************************) -Require Import BinInt. -Require Import List. +From Stdlib Require Import BinInt. +From Stdlib Require Import List. Set Implicit Arguments. (* diff --git a/theories/micromega/ZArith_hints.v b/theories/micromega/ZArith_hints.v index 878b433bd6..554a988c0f 100644 --- a/theories/micromega/ZArith_hints.v +++ b/theories/micromega/ZArith_hints.v @@ -7,7 +7,7 @@ (* * GNU Lesser General Public License Version 2.1 *) (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Lia. +From Stdlib Require Import Lia. Import BinInt. #[global] @@ -15,7 +15,7 @@ Hint Resolve Z.le_refl Z.add_comm Z.add_assoc Z.mul_comm Z.mul_assoc Z.add_0_l Z.add_0_r Z.mul_1_l Z.add_opp_diag_l Z.add_opp_diag_r Z.mul_add_distr_r Z.mul_add_distr_l: zarith. -Require Export Zhints. +From Stdlib Require Export Zhints. #[global] Hint Extern 10 (_ = _ :>nat) => abstract lia: zarith. diff --git a/theories/micromega/ZCoeff.v b/theories/micromega/ZCoeff.v index c0ef8af73c..6f9ccfebc5 100644 --- a/theories/micromega/ZCoeff.v +++ b/theories/micromega/ZCoeff.v @@ -10,12 +10,12 @@ (* Evgeny Makarov, INRIA, 2007 *) (************************************************************************) -Require Import OrderedRing. -Require Import RingMicromega. -Require Import BinInt. -Require Import InitialRing. -Require Import Setoid. -Require Import ZArithRing. +From Stdlib Require Import OrderedRing. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import BinInt. +From Stdlib Require Import InitialRing. +From Stdlib Require Import Setoid. +From Stdlib Require Import ZArithRing. Import OrderedRingSyntax. diff --git a/theories/micromega/ZMicromega.v b/theories/micromega/ZMicromega.v index 6b4b60a68f..aaf25a5536 100644 --- a/theories/micromega/ZMicromega.v +++ b/theories/micromega/ZMicromega.v @@ -14,15 +14,17 @@ (* *) (************************************************************************) -Require Import List. -Require Import Bool. -Require Import OrderedRing. -Require Import RingMicromega. -Require Import ZCoeff. -Require Import Refl. -Require Import BinInt. -Require InitialRing. -Require Import micromega.Tauto. + +From Stdlib Require Import List. +From Stdlib Require Import Bool. +From Stdlib Require Import OrderedRing. +From Stdlib Require Import RingMicromega. +From Stdlib Require Import ZArithRing. +From Stdlib Require Import ZCoeff. +From Stdlib Require Import Refl. +From Stdlib Require Import BinInt. +From Stdlib Require InitialRing. +From Stdlib.micromega Require Import Tauto. Local Open Scope Z_scope. Ltac flatten_bool := @@ -66,7 +68,7 @@ Qed. -Require Import EnvRing. +From Stdlib Require Import EnvRing. Lemma Zsor : SOR 0 1 Z.add Z.mul Z.sub Z.opp (@eq Z) Z.le Z.lt. Proof. @@ -398,7 +400,8 @@ Qed. -Require Import Stdlib.micromega.Tauto BinNums. +From Stdlib.micromega Require Import Tauto. +From Stdlib Require Import BinNums. Definition cnf_of_list {T: Type} (tg : T) (l : list (NFormula Z)) := List.fold_right (fun x acc => @@ -506,7 +509,7 @@ Definition ZweakTautoChecker (w: list ZWitness) (f : BFormula (Formula Z) Tauto. (* To get a complete checker, the proof format has to be enriched *) -Require Import Zdiv. +From Stdlib Require Import Zdiv. Local Open Scope Z_scope. Definition ceiling (a b:Z) : Z := @@ -517,7 +520,7 @@ Definition ceiling (a b:Z) : Z := end. -Require Import Znumtheory. +From Stdlib Require Import Znumtheory. Lemma Zdivide_ceiling : forall a b, (b | a) -> ceiling a b = Z.div a b. Proof. @@ -558,8 +561,6 @@ Qed. (** NB: narrow_interval_upper_bound is Zdiv.Zdiv_le_lower_bound *) -Require Import QArith. - Inductive ZArithProof := | DoneProof | RatProof : ZWitness -> ZArithProof -> ZArithProof @@ -585,7 +586,7 @@ Register ExProof as micromega.ZArithProof.ExProof. - b is the constant - a is the gcd of the other coefficient. *) -Require Import Znumtheory. +From Stdlib Require Import Znumtheory. Definition isZ0 (x:Z) := match x with @@ -1082,7 +1083,7 @@ Fixpoint bdepth (pf : ZArithProof) : nat := | ExProof _ p => S (bdepth p) end. -Require Import PeanoNat Wf_nat. +From Stdlib Require Import PeanoNat Wf_nat. Lemma in_bdepth : forall l a b y, In y l -> ltof ZArithProof bdepth y (EnumProof a b l). Proof. @@ -1792,7 +1793,7 @@ Open Scope Z_scope. Definition make_impl := Refl.make_impl. Definition make_conj := Refl.make_conj. -Require VarMap. +From Stdlib Require VarMap. (*Definition varmap_type := VarMap.t Z. *) Definition env := PolEnv Z. diff --git a/theories/micromega/Zify.v b/theories/micromega/Zify.v index 8d04132965..378122e8a6 100644 --- a/theories/micromega/Zify.v +++ b/theories/micromega/Zify.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import ZifyClasses ZifyInst. +From Stdlib Require Import ZifyClasses ZifyInst. Declare ML Module "rocq-runtime.plugins.zify". (** [zify_pre_hook] and [zify_post_hook] are there to be redefined. *) diff --git a/theories/micromega/ZifyBool.v b/theories/micromega/ZifyBool.v index d31ecf5eda..fd1939fdfe 100644 --- a/theories/micromega/ZifyBool.v +++ b/theories/micromega/ZifyBool.v @@ -7,9 +7,9 @@ (* * GNU Lesser General Public License Version 2.1 *) (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool ZArith. -Require Import Zify ZifyClasses. -Require Import ZifyInst. +From Stdlib Require Import Bool BinNat BinInt Znat. +From Stdlib Require Import Zify ZifyClasses. +From Stdlib Require Import ZifyInst. Local Open Scope Z_scope. (* Instances of [ZifyClasses] for dealing with boolean operators. *) diff --git a/theories/micromega/ZifyComparison.v b/theories/micromega/ZifyComparison.v index 15cb83fa61..a34d33292a 100644 --- a/theories/micromega/ZifyComparison.v +++ b/theories/micromega/ZifyComparison.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool ZArith. -Require Import Zify ZifyClasses. -Require Import Lia. +From Stdlib Require Import Bool BinInt. +From Stdlib Require Import Zify ZifyClasses. +From Stdlib Require Import Lia. Local Open Scope Z_scope. (** [Z_of_comparison] is the injection function for comparison *) diff --git a/theories/micromega/ZifyInst.v b/theories/micromega/ZifyInst.v index 8f892ed2ee..a6f066fe8c 100644 --- a/theories/micromega/ZifyInst.v +++ b/theories/micromega/ZifyInst.v @@ -12,8 +12,8 @@ Each instance is registered using a Add 'class' 'name_of_instance'. *) -Require Import Arith BinInt BinNat Zeven Znat Nnat. -Require Import ZifyClasses. +From Stdlib Require Import Arith BinInt BinNat Zeven Znat Nnat. +From Stdlib Require Import ZifyClasses. Declare ML Module "rocq-runtime.plugins.zify". Local Open Scope Z_scope. diff --git a/theories/micromega/ZifyN.v b/theories/micromega/ZifyN.v index e78bb14c13..69a06d23c3 100644 --- a/theories/micromega/ZifyN.v +++ b/theories/micromega/ZifyN.v @@ -10,8 +10,8 @@ (* Instances of [ZifyClasses] for dealing with advanced [N] operators. *) -Require Import BinNat BinInt Znat Zdiv. -Require Import ZifyClasses ZifyInst Zify. +From Stdlib Require Import BinNat BinInt Znat Zdiv. +From Stdlib Require Import ZifyClasses ZifyInst Zify. Ltac zify_convert_to_euclidean_division_equations_flag ::= constr:(true). diff --git a/theories/micromega/ZifyNat.v b/theories/micromega/ZifyNat.v index fc8017a997..6c32015ed2 100644 --- a/theories/micromega/ZifyNat.v +++ b/theories/micromega/ZifyNat.v @@ -10,8 +10,8 @@ (* Instances of [ZifyClasses] for dealing with advanced [nat] operators. *) -Require Import BinInt Znat Zdiv. -Require Import ZifyClasses ZifyInst Zify. +From Stdlib Require Import BinInt Znat Zdiv. +From Stdlib Require Import ZifyClasses ZifyInst Zify. Ltac zify_convert_to_euclidean_division_equations_flag ::= constr:(true). diff --git a/theories/micromega/ZifyPow.v b/theories/micromega/ZifyPow.v index d208696c0f..6dce46f737 100644 --- a/theories/micromega/ZifyPow.v +++ b/theories/micromega/ZifyPow.v @@ -1 +1 @@ -Require Export ZifyInst. +From Stdlib Require Export ZifyInst. diff --git a/theories/micromega/ZifySint63.v b/theories/micromega/ZifySint63.v index fcab4a88df..15a860a3fb 100644 --- a/theories/micromega/ZifySint63.v +++ b/theories/micromega/ZifySint63.v @@ -1,6 +1,6 @@ -Require Import ZArith. -Require Import Sint63. -Require Import ZifyBool. +From Stdlib Require Import ZArith. +From Stdlib Require Import Sint63. +From Stdlib Require Import ZifyBool. Import ZifyClasses. Lemma to_Z_bounded (x : int) : diff --git a/theories/micromega/ZifyUint63.v b/theories/micromega/ZifyUint63.v index b753377d47..aaac88c953 100644 --- a/theories/micromega/ZifyUint63.v +++ b/theories/micromega/ZifyUint63.v @@ -1,6 +1,6 @@ -Require Import ZArith. -Require Import Uint63. -Require Import ZifyBool. +From Stdlib Require Import ZArith. +From Stdlib Require Import Uint63. +From Stdlib Require Import ZifyBool. Import ZifyClasses. Lemma to_Z_bounded : forall x, (0 <= to_Z x < 9223372036854775808)%Z. diff --git a/theories/micromega/Ztac.v b/theories/micromega/Ztac.v index b8d73b4b6e..6f36c353ec 100644 --- a/theories/micromega/Ztac.v +++ b/theories/micromega/Ztac.v @@ -15,8 +15,8 @@ Local Set Warnings "-deprecated". Useful to bootstrap lia. *) -Require Import BinInt. -Require Import (ltac.notations) Ring_tac. +From Stdlib Require Import BinInt. +From Stdlib Require Import (ltac.notations) Ring_tac. Local Open Scope Z_scope. #[deprecated(use=Z.eq_le_incl, since="9.0")] diff --git a/theories/micromega/_Int63/ZifySint63.v b/theories/micromega/_Int63/ZifySint63.v new file mode 120000 index 0000000000..1d649f0819 --- /dev/null +++ b/theories/micromega/_Int63/ZifySint63.v @@ -0,0 +1 @@ +../ZifySint63.v \ No newline at end of file diff --git a/theories/micromega/_Int63/ZifyUint63.v b/theories/micromega/_Int63/ZifyUint63.v new file mode 120000 index 0000000000..ac90a879b2 --- /dev/null +++ b/theories/micromega/_Int63/ZifyUint63.v @@ -0,0 +1 @@ +../ZifyUint63.v \ No newline at end of file diff --git a/theories/micromega/_Lia/DeclConstantZ.v b/theories/micromega/_Lia/DeclConstantZ.v new file mode 120000 index 0000000000..1c29d257f6 --- /dev/null +++ b/theories/micromega/_Lia/DeclConstantZ.v @@ -0,0 +1 @@ +../DeclConstantZ.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Env.v b/theories/micromega/_Lia/Env.v new file mode 120000 index 0000000000..0580388db7 --- /dev/null +++ b/theories/micromega/_Lia/Env.v @@ -0,0 +1 @@ +../Env.v \ No newline at end of file diff --git a/theories/micromega/_Lia/EnvRing.v b/theories/micromega/_Lia/EnvRing.v new file mode 120000 index 0000000000..df96603893 --- /dev/null +++ b/theories/micromega/_Lia/EnvRing.v @@ -0,0 +1 @@ +../EnvRing.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Lia.v b/theories/micromega/_Lia/Lia.v new file mode 120000 index 0000000000..70c7317795 --- /dev/null +++ b/theories/micromega/_Lia/Lia.v @@ -0,0 +1 @@ +../Lia.v \ No newline at end of file diff --git a/theories/micromega/_Lia/OrderedRing.v b/theories/micromega/_Lia/OrderedRing.v new file mode 120000 index 0000000000..c7f8a7beb4 --- /dev/null +++ b/theories/micromega/_Lia/OrderedRing.v @@ -0,0 +1 @@ +../OrderedRing.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Refl.v b/theories/micromega/_Lia/Refl.v new file mode 120000 index 0000000000..6cd81ac4b3 --- /dev/null +++ b/theories/micromega/_Lia/Refl.v @@ -0,0 +1 @@ +../Refl.v \ No newline at end of file diff --git a/theories/micromega/_Lia/RingMicromega.v b/theories/micromega/_Lia/RingMicromega.v new file mode 120000 index 0000000000..fcd642594c --- /dev/null +++ b/theories/micromega/_Lia/RingMicromega.v @@ -0,0 +1 @@ +../RingMicromega.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Tauto.v b/theories/micromega/_Lia/Tauto.v new file mode 120000 index 0000000000..b2880a32f3 --- /dev/null +++ b/theories/micromega/_Lia/Tauto.v @@ -0,0 +1 @@ +../Tauto.v \ No newline at end of file diff --git a/theories/micromega/_Lia/VarMap.v b/theories/micromega/_Lia/VarMap.v new file mode 120000 index 0000000000..39268f40b3 --- /dev/null +++ b/theories/micromega/_Lia/VarMap.v @@ -0,0 +1 @@ +../VarMap.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZArith_hints.v b/theories/micromega/_Lia/ZArith_hints.v new file mode 120000 index 0000000000..bf95af0016 --- /dev/null +++ b/theories/micromega/_Lia/ZArith_hints.v @@ -0,0 +1 @@ +../ZArith_hints.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZCoeff.v b/theories/micromega/_Lia/ZCoeff.v new file mode 120000 index 0000000000..d6d2c3ccd3 --- /dev/null +++ b/theories/micromega/_Lia/ZCoeff.v @@ -0,0 +1 @@ +../ZCoeff.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZMicromega.v b/theories/micromega/_Lia/ZMicromega.v new file mode 120000 index 0000000000..630a3df19b --- /dev/null +++ b/theories/micromega/_Lia/ZMicromega.v @@ -0,0 +1 @@ +../ZMicromega.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Zify.v b/theories/micromega/_Lia/Zify.v new file mode 120000 index 0000000000..40e7699ff5 --- /dev/null +++ b/theories/micromega/_Lia/Zify.v @@ -0,0 +1 @@ +../Zify.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyBool.v b/theories/micromega/_Lia/ZifyBool.v new file mode 120000 index 0000000000..926ca43150 --- /dev/null +++ b/theories/micromega/_Lia/ZifyBool.v @@ -0,0 +1 @@ +../ZifyBool.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyClasses.v b/theories/micromega/_Lia/ZifyClasses.v new file mode 120000 index 0000000000..e6fa1f31f8 --- /dev/null +++ b/theories/micromega/_Lia/ZifyClasses.v @@ -0,0 +1 @@ +../ZifyClasses.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyComparison.v b/theories/micromega/_Lia/ZifyComparison.v new file mode 120000 index 0000000000..1b466d897b --- /dev/null +++ b/theories/micromega/_Lia/ZifyComparison.v @@ -0,0 +1 @@ +../ZifyComparison.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyInst.v b/theories/micromega/_Lia/ZifyInst.v new file mode 120000 index 0000000000..24a79453de --- /dev/null +++ b/theories/micromega/_Lia/ZifyInst.v @@ -0,0 +1 @@ +../ZifyInst.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyN.v b/theories/micromega/_Lia/ZifyN.v new file mode 120000 index 0000000000..500c031766 --- /dev/null +++ b/theories/micromega/_Lia/ZifyN.v @@ -0,0 +1 @@ +../ZifyN.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyNat.v b/theories/micromega/_Lia/ZifyNat.v new file mode 120000 index 0000000000..12c4f26810 --- /dev/null +++ b/theories/micromega/_Lia/ZifyNat.v @@ -0,0 +1 @@ +../ZifyNat.v \ No newline at end of file diff --git a/theories/micromega/_Lia/ZifyPow.v b/theories/micromega/_Lia/ZifyPow.v new file mode 120000 index 0000000000..d92bb3f2ab --- /dev/null +++ b/theories/micromega/_Lia/ZifyPow.v @@ -0,0 +1 @@ +../ZifyPow.v \ No newline at end of file diff --git a/theories/micromega/_Lia/Ztac.v b/theories/micromega/_Lia/Ztac.v new file mode 120000 index 0000000000..46be142749 --- /dev/null +++ b/theories/micromega/_Lia/Ztac.v @@ -0,0 +1 @@ +../Ztac.v \ No newline at end of file diff --git a/theories/micromega/_Lqa/DeclConstant.v b/theories/micromega/_Lqa/DeclConstant.v new file mode 120000 index 0000000000..4c39d49914 --- /dev/null +++ b/theories/micromega/_Lqa/DeclConstant.v @@ -0,0 +1 @@ +../DeclConstant.v \ No newline at end of file diff --git a/theories/micromega/_Lqa/Lqa.v b/theories/micromega/_Lqa/Lqa.v new file mode 120000 index 0000000000..c4dcece89c --- /dev/null +++ b/theories/micromega/_Lqa/Lqa.v @@ -0,0 +1 @@ +../Lqa.v \ No newline at end of file diff --git a/theories/micromega/_Lqa/QMicromega.v b/theories/micromega/_Lqa/QMicromega.v new file mode 120000 index 0000000000..5b1c7b45ab --- /dev/null +++ b/theories/micromega/_Lqa/QMicromega.v @@ -0,0 +1 @@ +../QMicromega.v \ No newline at end of file diff --git a/theories/micromega/_Reals/Fourier.v b/theories/micromega/_Reals/Fourier.v new file mode 120000 index 0000000000..8c35bb000d --- /dev/null +++ b/theories/micromega/_Reals/Fourier.v @@ -0,0 +1 @@ +../Fourier.v \ No newline at end of file diff --git a/theories/micromega/_Reals/Fourier_util.v b/theories/micromega/_Reals/Fourier_util.v new file mode 120000 index 0000000000..9ef311d221 --- /dev/null +++ b/theories/micromega/_Reals/Fourier_util.v @@ -0,0 +1 @@ +../Fourier_util.v \ No newline at end of file diff --git a/theories/micromega/_Reals/Lra.v b/theories/micromega/_Reals/Lra.v new file mode 120000 index 0000000000..271825c0db --- /dev/null +++ b/theories/micromega/_Reals/Lra.v @@ -0,0 +1 @@ +../Lra.v \ No newline at end of file diff --git a/theories/micromega/_Reals/Psatz.v b/theories/micromega/_Reals/Psatz.v new file mode 120000 index 0000000000..d830bbde81 --- /dev/null +++ b/theories/micromega/_Reals/Psatz.v @@ -0,0 +1 @@ +../Psatz.v \ No newline at end of file diff --git a/theories/micromega/_Reals/RMicromega.v b/theories/micromega/_Reals/RMicromega.v new file mode 120000 index 0000000000..879eaf0b3d --- /dev/null +++ b/theories/micromega/_Reals/RMicromega.v @@ -0,0 +1 @@ +../RMicromega.v \ No newline at end of file diff --git a/theories/nsatz/NsatzTactic.v b/theories/nsatz/NsatzTactic.v index ebf01357bd..cacadd007c 100644 --- a/theories/nsatz/NsatzTactic.v +++ b/theories/nsatz/NsatzTactic.v @@ -18,19 +18,19 @@ Reification is done using type classes, defined in Ncring_tac.v *) -Require Import List. -Require Import Setoid. -Require Import BinPos. -Require Import BinList. -Require Import Znumtheory. -Require Export Morphisms Setoid Bool. -Require Export Algebra_syntax. -Require Export Ncring. -Require Export Ncring_initial. -Require Export Ncring_tac. -Require Export Integral_domain. -Require Import ZArith. -Require Import Lia. +From Stdlib Require Import List. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinList. +From Stdlib Require Import Znumtheory. +From Stdlib Require Export Morphisms Setoid Bool. +From Stdlib Require Export Algebra_syntax. +From Stdlib Require Export Ncring. +From Stdlib Require Export Ncring_initial. +From Stdlib Require Export Ncring_tac. +From Stdlib Require Export Integral_domain. +From Stdlib Require Import ZArith. +From Stdlib Require Import Lia. Declare ML Module "rocq-runtime.plugins.nsatz_core". Declare ML Module "rocq-runtime.plugins.nsatz". @@ -458,7 +458,7 @@ Tactic Notation "nsatz" "with" end. (* Rational numbers *) -Require Import QArith. +From Stdlib Require Import QArith_base. #[global] Instance Qops: (@Ring_ops Q 0%Q 1%Q Qplus Qmult Qminus Qopp Qeq). diff --git a/theories/omega/OmegaLemmas.v b/theories/omega/OmegaLemmas.v index 266c9b7280..278d35e2c1 100644 --- a/theories/omega/OmegaLemmas.v +++ b/theories/omega/OmegaLemmas.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinInt Znat. +From Stdlib Require Import BinInt Znat. Local Open Scope Z_scope. (** Factorization lemmas *) diff --git a/theories/omega/PreOmega.v b/theories/omega/PreOmega.v index 2698821218..a887994cff 100644 --- a/theories/omega/PreOmega.v +++ b/theories/omega/PreOmega.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Arith BinInt BinNat Znat Nnat. +From Stdlib Require Import Arith BinInt BinNat Znat Nnat. Local Open Scope Z_scope. @@ -228,8 +228,8 @@ Module Z. to_euclidean_division_equations_with euclidean_division_equations_flags.default. End Z. -Require Import ZifyClasses ZifyInst. -Require Zify. +From Stdlib Require Import ZifyClasses ZifyInst. +From Stdlib Require Zify. Ltac Zify.zify_internal_to_euclidean_division_equations ::= Z.to_euclidean_division_equations. diff --git a/theories/rtauto/Bintree.v b/theories/rtauto/Bintree.v index 92f2ad8865..183680eae0 100644 --- a/theories/rtauto/Bintree.v +++ b/theories/rtauto/Bintree.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export List. -Require Export BinPos. +From Stdlib Require Export List. +From Stdlib Require Export BinPos. Open Scope positive_scope. @@ -384,4 +384,4 @@ Arguments Full_map [A B f] S _. Notation "hyps \ A" := (push A hyps) (at level 72,left associativity). (* TODO #14736 for compatibility only, should be removed after deprecation *) -Require Arith.EqNat. +From Stdlib Require Arith.EqNat. diff --git a/theories/rtauto/Rtauto.v b/theories/rtauto/Rtauto.v index 60d1ec1efb..2833cc0199 100644 --- a/theories/rtauto/Rtauto.v +++ b/theories/rtauto/Rtauto.v @@ -9,9 +9,9 @@ (************************************************************************) -Require Export List. -Require Export Bintree. -Require Import Bool BinPos. +From Stdlib Require Export List. +From Stdlib Require Export Bintree. +From Stdlib Require Import Bool BinPos. Declare ML Module "rocq-runtime.plugins.rtauto". diff --git a/theories/setoid_ring/ArithRing.v b/theories/setoid_ring/ArithRing.v index 65316f75a5..db73765938 100644 --- a/theories/setoid_ring/ArithRing.v +++ b/theories/setoid_ring/ArithRing.v @@ -8,10 +8,10 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. -Require Import BinNat. -Require Import Nnat. -Require Export Ring. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import BinNat. +From Stdlib Require Import Nnat. +From Stdlib Require Export Ring. Set Implicit Arguments. Lemma natSRth : semi_ring_theory O (S O) plus mult (@eq nat). diff --git a/theories/setoid_ring/BinList.v b/theories/setoid_ring/BinList.v index 9cb6e7cf0a..d52ec8ec5e 100644 --- a/theories/setoid_ring/BinList.v +++ b/theories/setoid_ring/BinList.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinPos. -Require Export List. +From Stdlib Require Import BinPos. +From Stdlib Require Export List. Set Implicit Arguments. Local Open Scope positive_scope. diff --git a/theories/setoid_ring/Cring.v b/theories/setoid_ring/Cring.v index 15a79bcdcd..687c23c613 100644 --- a/theories/setoid_ring/Cring.v +++ b/theories/setoid_ring/Cring.v @@ -8,18 +8,18 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export List. -Require Import Setoid. -Require Import BinPos. -Require Import BinList. -Require Import Znumtheory. -Require Export Morphisms Setoid Bool. -Require Import BinInt. -Require Export Algebra_syntax. -Require Export Ncring. -Require Export Ncring_initial. -Require Export Ncring_tac. -Require Import InitialRing. +From Stdlib Require Export List. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinList. +From Stdlib Require Import Znumtheory. +From Stdlib Require Export Morphisms Setoid Bool. +From Stdlib Require Import BinInt. +From Stdlib Require Export Algebra_syntax. +From Stdlib Require Export Ncring. +From Stdlib Require Export Ncring_initial. +From Stdlib Require Export Ncring_tac. +From Stdlib Require Import InitialRing. Class Cring {R:Type}`{Rr:Ring R} := cring_mul_comm: forall x y:R, x * y == y * x. diff --git a/theories/setoid_ring/Field.v b/theories/setoid_ring/Field.v index be58919a27..89f69659c0 100644 --- a/theories/setoid_ring/Field.v +++ b/theories/setoid_ring/Field.v @@ -8,5 +8,5 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Field_theory. -Require Export Field_tac. +From Stdlib Require Export Field_theory. +From Stdlib Require Export Field_tac. diff --git a/theories/setoid_ring/Field_tac.v b/theories/setoid_ring/Field_tac.v index 15ed1226cf..3b9f9ae59f 100644 --- a/theories/setoid_ring/Field_tac.v +++ b/theories/setoid_ring/Field_tac.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Ring_tac BinList Ring_polynom InitialRing. -Require Export Field_theory. +From Stdlib Require Import Ring_tac BinList Ring_polynom InitialRing. +From Stdlib Require Export Field_theory. (* syntaxification *) (* We do not assume that Cst recognizes the rO and rI terms as constants, as *) diff --git a/theories/setoid_ring/Field_theory.v b/theories/setoid_ring/Field_theory.v index df708bc2a1..ea8df5921e 100644 --- a/theories/setoid_ring/Field_theory.v +++ b/theories/setoid_ring/Field_theory.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Ring. +From Stdlib Require Ring. Import Ring_polynom Ring_tac Ring_theory InitialRing Setoid List Morphisms. -Require Import BinNat BinInt. +From Stdlib Require Import BinNat BinInt. Set Implicit Arguments. (* Set Universe Polymorphism. *) diff --git a/theories/setoid_ring/InitialRing.v b/theories/setoid_ring/InitialRing.v index 61f047550c..98ef65fbca 100644 --- a/theories/setoid_ring/InitialRing.v +++ b/theories/setoid_ring/InitialRing.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinInt. -Require Import BinNat. -Require Import Setoid. -Require Import Ring_theory. -Require Import Ring_polynom. +From Stdlib Require Import BinInt. +From Stdlib Require Import BinNat. +From Stdlib Require Import Setoid. +From Stdlib Require Import Ring_theory. +From Stdlib Require Import Ring_polynom. Import List. Set Implicit Arguments. diff --git a/theories/setoid_ring/Integral_domain.v b/theories/setoid_ring/Integral_domain.v index cec8f4385c..40f2fe7598 100644 --- a/theories/setoid_ring/Integral_domain.v +++ b/theories/setoid_ring/Integral_domain.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Cring. +From Stdlib Require Export Cring. Import BinNat. (* Definition of integral domains: commutative ring without zero divisor *) diff --git a/theories/setoid_ring/NArithRing.v b/theories/setoid_ring/NArithRing.v index d1671bf54d..9520f28cf7 100644 --- a/theories/setoid_ring/NArithRing.v +++ b/theories/setoid_ring/NArithRing.v @@ -8,8 +8,8 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Ring. -Require Import BinPos BinNat. +From Stdlib Require Export Ring. +From Stdlib Require Import BinPos BinNat. Import InitialRing. Set Implicit Arguments. diff --git a/theories/setoid_ring/Ncring.v b/theories/setoid_ring/Ncring.v index 9199fd6d83..9c13468361 100644 --- a/theories/setoid_ring/Ncring.v +++ b/theories/setoid_ring/Ncring.v @@ -10,12 +10,12 @@ (* non commutative rings *) -Require Import Setoid. -Require Import BinPos. -Require Import BinNat. -Require Export Morphisms Setoid Bool. -Require Export BinInt. -Require Export Algebra_syntax. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinNat. +From Stdlib Require Export Morphisms Setoid Bool. +From Stdlib Require Export BinInt. +From Stdlib Require Export Algebra_syntax. Set Implicit Arguments. diff --git a/theories/setoid_ring/Ncring_initial.v b/theories/setoid_ring/Ncring_initial.v index e662b63f32..7b243d873e 100644 --- a/theories/setoid_ring/Ncring_initial.v +++ b/theories/setoid_ring/Ncring_initial.v @@ -8,20 +8,19 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import BinInt. -Require Import Zpow_def. -Require Import BinInt. -Require Import BinNat. -Require Import Setoid. -Require Import BinList. -Require Import BinPos. -Require Import BinNat. -Require Import BinInt. -Require Import Setoid. -Require Export Ncring. -Require Export Ncring_polynom. - -Require Zbool. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zpow_def. +From Stdlib Require Import BinInt. +From Stdlib Require Import BinNat. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinList. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinNat. +From Stdlib Require Import BinInt. +From Stdlib Require Import Setoid. +From Stdlib Require Export Ncring. +From Stdlib Require Export Ncring_polynom. +From Stdlib Require Zbool. Set Implicit Arguments. diff --git a/theories/setoid_ring/Ncring_polynom.v b/theories/setoid_ring/Ncring_polynom.v index 8fe524bf0d..c8f92fec10 100644 --- a/theories/setoid_ring/Ncring_polynom.v +++ b/theories/setoid_ring/Ncring_polynom.v @@ -11,13 +11,13 @@ (* A : non commutative polynomials on a commutative ring A *) Set Implicit Arguments. -Require Import Setoid. -Require Import BinList. -Require Import BinPos. -Require Import BinNat. -Require Import BinInt. -Require Export Ring_polynom. (* n'utilise que PExpr *) -Require Export Ncring. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinList. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinNat. +From Stdlib Require Import BinInt. +From Stdlib Require Export Ring_polynom. (* n'utilise que PExpr *) +From Stdlib Require Export Ncring. #[local] Create HintDb rsimpl. diff --git a/theories/setoid_ring/Ncring_tac.v b/theories/setoid_ring/Ncring_tac.v index 37f8bba31d..3d328c0f77 100644 --- a/theories/setoid_ring/Ncring_tac.v +++ b/theories/setoid_ring/Ncring_tac.v @@ -8,17 +8,16 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import List. -Require Import Setoid. -Require Import BinPos. -Require Import BinList. -Require Import Znumtheory. -Require Export Morphisms Setoid Bool. -Require Import ZArith. -Require Import Algebra_syntax. -Require Export Ncring. -Require Import Ncring_polynom. -Require Import Ncring_initial. +From Stdlib Require Import List. +From Stdlib Require Import Setoid. +From Stdlib Require Import BinPos. +From Stdlib Require Import BinList. +From Stdlib Require Import Znumtheory. +From Stdlib Require Export Morphisms Setoid Bool. +From Stdlib Require Import Algebra_syntax. +From Stdlib Require Export Ncring. +From Stdlib Require Import Ncring_polynom. +From Stdlib Require Import Ncring_initial. Set Implicit Arguments. diff --git a/theories/setoid_ring/RealField.v b/theories/setoid_ring/RealField.v index d340075aa4..c65e354357 100644 --- a/theories/setoid_ring/RealField.v +++ b/theories/setoid_ring/RealField.v @@ -8,14 +8,14 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import PeanoNat. -Require Import BinNat. -Require Import Nnat. -Require Import ArithRing. -Require Export Ring Field. -Require Import Rdefinitions. -Require Import Rpow_def. -Require Import Raxioms. +From Stdlib Require Import PeanoNat. +From Stdlib Require Import BinNat. +From Stdlib Require Import Nnat. +From Stdlib Require Import ArithRing. +From Stdlib Require Export Ring Field. +From Stdlib Require Import Rdefinitions. +From Stdlib Require Import Rpow_def. +From Stdlib Require Import Raxioms. Local Open Scope R_scope. diff --git a/theories/setoid_ring/Ring.v b/theories/setoid_ring/Ring.v index 67921beccb..3bc495a06e 100644 --- a/theories/setoid_ring/Ring.v +++ b/theories/setoid_ring/Ring.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Bool. -Require Export Ring_theory. -Require Export Ring_base. -Require Export InitialRing. -Require Export Ring_tac. +From Stdlib Require Import Bool. +From Stdlib Require Export Ring_theory. +From Stdlib Require Export Ring_base. +From Stdlib Require Export InitialRing. +From Stdlib Require Export Ring_tac. Lemma BoolTheory : ring_theory false true xorb andb xorb (fun b:bool => b) (eq(A:=bool)). diff --git a/theories/setoid_ring/Ring_base.v b/theories/setoid_ring/Ring_base.v index 1dcfdbd6c2..4121874cd1 100644 --- a/theories/setoid_ring/Ring_base.v +++ b/theories/setoid_ring/Ring_base.v @@ -13,6 +13,6 @@ BinInt. *) Declare ML Module "rocq-runtime.plugins.ring". -Require Export Ring_theory. -Require Export Ring_tac. -Require Import InitialRing. +From Stdlib Require Export Ring_theory. +From Stdlib Require Export Ring_tac. +From Stdlib Require Import InitialRing. diff --git a/theories/setoid_ring/Ring_polynom.v b/theories/setoid_ring/Ring_polynom.v index f58eadf284..1dde2364e6 100644 --- a/theories/setoid_ring/Ring_polynom.v +++ b/theories/setoid_ring/Ring_polynom.v @@ -10,9 +10,9 @@ Set Implicit Arguments. -Require Import Setoid Morphisms. -Require Import BinList BinPos BinNat BinInt. -Require Export Ring_theory. +From Stdlib Require Import Setoid Morphisms. +From Stdlib Require Import BinList BinPos BinNat BinInt. +From Stdlib Require Export Ring_theory. Local Open Scope positive_scope. Import RingSyntax. (* Set Universe Polymorphism. *) diff --git a/theories/setoid_ring/Ring_tac.v b/theories/setoid_ring/Ring_tac.v index 577cf7e72d..c6d9855d0a 100644 --- a/theories/setoid_ring/Ring_tac.v +++ b/theories/setoid_ring/Ring_tac.v @@ -9,9 +9,9 @@ (************************************************************************) Set Implicit Arguments. -Require Import Ring_polynom. -Require Export ListTactics. -Require Import InitialRing. +From Stdlib Require Import Ring_polynom. +From Stdlib Require Export ListTactics. +From Stdlib Require Import InitialRing. Declare ML Module "rocq-runtime.plugins.ring". (* adds a definition t' on the normal form of t and an hypothesis id diff --git a/theories/setoid_ring/Ring_theory.v b/theories/setoid_ring/Ring_theory.v index 9ca9341a7e..27cc5eb292 100644 --- a/theories/setoid_ring/Ring_theory.v +++ b/theories/setoid_ring/Ring_theory.v @@ -8,7 +8,7 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Import Setoid Morphisms BinPos BinNat. +From Stdlib Require Import Setoid Morphisms BinPos BinNat. Set Implicit Arguments. diff --git a/theories/setoid_ring/Rings_Q.v b/theories/setoid_ring/Rings_Q.v index d695304bb9..85b0849513 100644 --- a/theories/setoid_ring/Rings_Q.v +++ b/theories/setoid_ring/Rings_Q.v @@ -8,11 +8,11 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Cring. -Require Export Integral_domain. +From Stdlib Require Export Cring. +From Stdlib Require Export Integral_domain. (* Rational numbers *) -Require Import QArith. +From Stdlib Require Import QArith_base. #[global] Instance Qops: (@Ring_ops Q 0%Q 1%Q Qplus Qmult Qminus Qopp Qeq). diff --git a/theories/setoid_ring/Rings_R.v b/theories/setoid_ring/Rings_R.v index 4885926b66..865a158627 100644 --- a/theories/setoid_ring/Rings_R.v +++ b/theories/setoid_ring/Rings_R.v @@ -8,12 +8,12 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Cring. -Require Export Integral_domain. +From Stdlib Require Export Cring. +From Stdlib Require Export Integral_domain. (* Real numbers *) -Require Import Reals. -Require Import RealField. +From Stdlib Require Import Reals. +From Stdlib Require Import RealField. Lemma Rsth : Setoid_Theory R (@eq R). constructor;red;intros;subst;trivial. diff --git a/theories/setoid_ring/Rings_Z.v b/theories/setoid_ring/Rings_Z.v index e1be79f519..32b453a1e5 100644 --- a/theories/setoid_ring/Rings_Z.v +++ b/theories/setoid_ring/Rings_Z.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Cring. -Require Export Integral_domain. -Require Export Ncring_initial. +From Stdlib Require Export Cring. +From Stdlib Require Export Integral_domain. +From Stdlib Require Export Ncring_initial. #[global] Instance Zcri: (Cring (Rr:=Zr)). diff --git a/theories/setoid_ring/ZArithRing.v b/theories/setoid_ring/ZArithRing.v index 9aea3ff172..54255c8b91 100644 --- a/theories/setoid_ring/ZArithRing.v +++ b/theories/setoid_ring/ZArithRing.v @@ -8,9 +8,9 @@ (* * (see LICENSE file for the text of the license) *) (************************************************************************) -Require Export Ring. -Require Import BinInt. -Require Import Zpow_def. +From Stdlib Require Export Ring. +From Stdlib Require Import BinInt. +From Stdlib Require Import Zpow_def. Import InitialRing. diff --git a/theories/setoid_ring/_Field/Field.v b/theories/setoid_ring/_Field/Field.v new file mode 120000 index 0000000000..9a634b2bfd --- /dev/null +++ b/theories/setoid_ring/_Field/Field.v @@ -0,0 +1 @@ +../Field.v \ No newline at end of file diff --git a/theories/setoid_ring/_Field/Field_tac.v b/theories/setoid_ring/_Field/Field_tac.v new file mode 120000 index 0000000000..7c1ba43a75 --- /dev/null +++ b/theories/setoid_ring/_Field/Field_tac.v @@ -0,0 +1 @@ +../Field_tac.v \ No newline at end of file diff --git a/theories/setoid_ring/_Field/Field_theory.v b/theories/setoid_ring/_Field/Field_theory.v new file mode 120000 index 0000000000..ef6c571c66 --- /dev/null +++ b/theories/setoid_ring/_Field/Field_theory.v @@ -0,0 +1 @@ +../Field_theory.v \ No newline at end of file diff --git a/theories/setoid_ring/_Field/Rings_Q.v b/theories/setoid_ring/_Field/Rings_Q.v new file mode 120000 index 0000000000..5e53859016 --- /dev/null +++ b/theories/setoid_ring/_Field/Rings_Q.v @@ -0,0 +1 @@ +../Rings_Q.v \ No newline at end of file diff --git a/theories/setoid_ring/_Reals/RealField.v b/theories/setoid_ring/_Reals/RealField.v new file mode 120000 index 0000000000..0777c443f4 --- /dev/null +++ b/theories/setoid_ring/_Reals/RealField.v @@ -0,0 +1 @@ +../RealField.v \ No newline at end of file diff --git a/theories/setoid_ring/_Reals/Rings_R.v b/theories/setoid_ring/_Reals/Rings_R.v new file mode 120000 index 0000000000..de22b4cf88 --- /dev/null +++ b/theories/setoid_ring/_Reals/Rings_R.v @@ -0,0 +1 @@ +../Rings_R.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Algebra_syntax.v b/theories/setoid_ring/_Ring/Algebra_syntax.v new file mode 120000 index 0000000000..714311b1ee --- /dev/null +++ b/theories/setoid_ring/_Ring/Algebra_syntax.v @@ -0,0 +1 @@ +../Algebra_syntax.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/ArithRing.v b/theories/setoid_ring/_Ring/ArithRing.v new file mode 120000 index 0000000000..ffe2815f5e --- /dev/null +++ b/theories/setoid_ring/_Ring/ArithRing.v @@ -0,0 +1 @@ +../ArithRing.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/BinList.v b/theories/setoid_ring/_Ring/BinList.v new file mode 120000 index 0000000000..4e8cbe2178 --- /dev/null +++ b/theories/setoid_ring/_Ring/BinList.v @@ -0,0 +1 @@ +../BinList.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Cring.v b/theories/setoid_ring/_Ring/Cring.v new file mode 120000 index 0000000000..5ce951014f --- /dev/null +++ b/theories/setoid_ring/_Ring/Cring.v @@ -0,0 +1 @@ +../Cring.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/InitialRing.v b/theories/setoid_ring/_Ring/InitialRing.v new file mode 120000 index 0000000000..2c05208e40 --- /dev/null +++ b/theories/setoid_ring/_Ring/InitialRing.v @@ -0,0 +1 @@ +../InitialRing.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Integral_domain.v b/theories/setoid_ring/_Ring/Integral_domain.v new file mode 120000 index 0000000000..a14b985ab6 --- /dev/null +++ b/theories/setoid_ring/_Ring/Integral_domain.v @@ -0,0 +1 @@ +../Integral_domain.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/NArithRing.v b/theories/setoid_ring/_Ring/NArithRing.v new file mode 120000 index 0000000000..7df17dfdf0 --- /dev/null +++ b/theories/setoid_ring/_Ring/NArithRing.v @@ -0,0 +1 @@ +../NArithRing.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ncring.v b/theories/setoid_ring/_Ring/Ncring.v new file mode 120000 index 0000000000..23122b8db6 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ncring.v @@ -0,0 +1 @@ +../Ncring.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ncring_initial.v b/theories/setoid_ring/_Ring/Ncring_initial.v new file mode 120000 index 0000000000..b7f5253ec3 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ncring_initial.v @@ -0,0 +1 @@ +../Ncring_initial.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ncring_polynom.v b/theories/setoid_ring/_Ring/Ncring_polynom.v new file mode 120000 index 0000000000..3c5ecbc3a1 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ncring_polynom.v @@ -0,0 +1 @@ +../Ncring_polynom.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ncring_tac.v b/theories/setoid_ring/_Ring/Ncring_tac.v new file mode 120000 index 0000000000..7c912dd99b --- /dev/null +++ b/theories/setoid_ring/_Ring/Ncring_tac.v @@ -0,0 +1 @@ +../Ncring_tac.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ring.v b/theories/setoid_ring/_Ring/Ring.v new file mode 120000 index 0000000000..dfa50696ce --- /dev/null +++ b/theories/setoid_ring/_Ring/Ring.v @@ -0,0 +1 @@ +../Ring.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ring_base.v b/theories/setoid_ring/_Ring/Ring_base.v new file mode 120000 index 0000000000..388b34a4b1 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ring_base.v @@ -0,0 +1 @@ +../Ring_base.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ring_polynom.v b/theories/setoid_ring/_Ring/Ring_polynom.v new file mode 120000 index 0000000000..658c50f8a6 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ring_polynom.v @@ -0,0 +1 @@ +../Ring_polynom.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ring_tac.v b/theories/setoid_ring/_Ring/Ring_tac.v new file mode 120000 index 0000000000..99f877a48e --- /dev/null +++ b/theories/setoid_ring/_Ring/Ring_tac.v @@ -0,0 +1 @@ +../Ring_tac.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Ring_theory.v b/theories/setoid_ring/_Ring/Ring_theory.v new file mode 120000 index 0000000000..2e6d2c1b31 --- /dev/null +++ b/theories/setoid_ring/_Ring/Ring_theory.v @@ -0,0 +1 @@ +../Ring_theory.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/Rings_Z.v b/theories/setoid_ring/_Ring/Rings_Z.v new file mode 120000 index 0000000000..4d0bb955d2 --- /dev/null +++ b/theories/setoid_ring/_Ring/Rings_Z.v @@ -0,0 +1 @@ +../Rings_Z.v \ No newline at end of file diff --git a/theories/setoid_ring/_Ring/ZArithRing.v b/theories/setoid_ring/_Ring/ZArithRing.v new file mode 120000 index 0000000000..a8c13b1b6e --- /dev/null +++ b/theories/setoid_ring/_Ring/ZArithRing.v @@ -0,0 +1 @@ +../ZArithRing.v \ No newline at end of file