Update coq libraries
more/packages/ocaml.scm
1033 | 1033 | part of the distribution.") | |
1034 | 1034 | (license license:cecill-b))) | |
1035 | 1035 | ||
1036 | - | ;; TODO: coquelicot | |
1036 | + | (define-public coq-coquelicot | |
1037 | + | (package | |
1038 | + | (name "coq-coquelicot") | |
1039 | + | (version "3.0.0") | |
1040 | + | (source (origin | |
1041 | + | (method url-fetch) | |
1042 | + | (uri (string-append "https://gforge.inria.fr/frs/download.php/" | |
1043 | + | "file/36537/coquelicot-" version ".tar.gz")) | |
1044 | + | (sha256 | |
1045 | + | (base32 | |
1046 | + | "0fx99bvsbdizj00gx2im8939y4wwl05f4qhw184j90kcx5vjxxv9")))) | |
1047 | + | (build-system gnu-build-system) | |
1048 | + | (native-inputs | |
1049 | + | `(("ocaml" ,ocaml) | |
1050 | + | ("which" ,which) | |
1051 | + | ("coq" ,coq-fix))) | |
1052 | + | (propagated-inputs | |
1053 | + | `(("mathcomp" ,coq-mathcomp))) | |
1054 | + | (arguments | |
1055 | + | `(#:configure-flags | |
1056 | + | (list (string-append "--libdir=" (assoc-ref %outputs "out") | |
1057 | + | "/lib/coq/user-contrib/Coquelicot")) | |
1058 | + | #:phases | |
1059 | + | (modify-phases %standard-phases | |
1060 | + | (add-before 'configure 'fix-remake | |
1061 | + | (lambda _ | |
1062 | + | (substitute* "remake.cpp" | |
1063 | + | (("/bin/sh") (which "sh"))))) | |
1064 | + | (replace 'build | |
1065 | + | (lambda _ | |
1066 | + | (zero? (system* "./remake")))) | |
1067 | + | (replace 'check | |
1068 | + | (lambda _ | |
1069 | + | (zero? (system* "./remake" "check")))) | |
1070 | + | (replace 'install | |
1071 | + | (lambda _ | |
1072 | + | (zero? (system* "./remake" "install"))))))) | |
1073 | + | (home-page "http://coquelicot.saclay.inria.fr/index.html") | |
1074 | + | (synopsis "Coq library for Reals") | |
1075 | + | (description "Coquelicot is an easier way of writing formulas and theorem | |
1076 | + | statements, achieved by relying on total functions in place of dependent types | |
1077 | + | for limits, derivatives, integrals, power series, and so on. To help with the | |
1078 | + | proof process, the library comes with a comprehensive set of theorems that cover | |
1079 | + | not only these notions, but also some extensions such as parametric integrals, | |
1080 | + | two-dimensional differentiability, asymptotic behaviors. It also offers some | |
1081 | + | automations for performing differentiability proofs. Moreover, Coquelicot is a | |
1082 | + | conservative extension of Coq's standard library and provides correspondence | |
1083 | + | theorems between the two libraries.") | |
1084 | + | (license license:lgpl3+))) | |
1037 | 1085 | ||
1038 | 1086 | (define-public coq-interval | |
1039 | 1087 | (package | |
… | |||
1050 | 1098 | (native-inputs | |
1051 | 1099 | `(("ocaml" ,ocaml) | |
1052 | 1100 | ("which" ,which) | |
1053 | - | ("coq" ,coq))) | |
1101 | + | ("coq" ,coq-fix))) | |
1054 | 1102 | (propagated-inputs | |
1055 | 1103 | `(("flocq" ,coq-flocq) | |
1104 | + | ("coquelicot" ,coq-coquelicot) | |
1056 | 1105 | ("mathcomp" ,coq-mathcomp))) | |
1057 | 1106 | (arguments | |
1058 | 1107 | `(#:configure-flags | |
… | |||
1079 | 1128 | simplifying the proofs of inequalities on expressions of real numbers for the | |
1080 | 1129 | Coq proof assistant.") | |
1081 | 1130 | (license license:cecill-c))) | |
1131 | + | ||
1132 | + | (define-public coq-fix | |
1133 | + | (package | |
1134 | + | (inherit coq) | |
1135 | + | (name "coq-fix") | |
1136 | + | (native-search-paths | |
1137 | + | (list (search-path-specification | |
1138 | + | (variable "COQPATH") | |
1139 | + | (files (list "lib/coq/user-contrib"))))))) |