# Packages matching: installed # Name # Installed # Synopsis base-bigarray base base-threads base base-unix base conf-findutils 1 Virtual package relying on findutils conf-gmp 4 Virtual package relying on a GMP lib system installation coq 8.16.0 Formal proof management system dune 3.6.2 Fast, portable, and opinionated build system ocaml 4.10.2 The OCaml compiler (virtual package) ocaml-base-compiler 4.10.2 Official release 4.10.2 ocaml-config 1 OCaml Switch Configuration ocamlfind 1.9.5 A library manager for OCaml zarith 1.12 Implements arithmetic and logical operations over arbitrary-precision integers # opam file: opam-version: "2.0" maintainer: "Hugo.Herbelin@inria.fr" homepage: "https://github.com/coq-contribs/hoare-tut" license: "GNU LGPL" build: [make "-j%{jobs}%"] install: [make "install"] remove: ["rm" "-R" "%{lib}%/coq/user-contrib/HoareTut"] depends: [ "ocaml" "coq" {>= "8.7" & < "8.8~"} ] tags: [ "keyword: Hoare logic" "keyword: imperative program" "keyword: weakest precondition" "keyword: reflection" "category: Mathematics/Logic" "category: Computer Science/Semantics and Compilation/Semantics" "date: 2007" ] authors: [ "Sylvain Boulmé <Sylvain.Boulme@imag.fr> [http://www-verimag.imag.fr/~boulme]" ] bug-reports: "https://github.com/coq-contribs/hoare-tut/issues" dev-repo: "git+https://github.com/coq-contribs/hoare-tut.git" synopsis: "A Tutorial on Reflecting in Coq the generation of Hoare proof obligations" description: """ http://www-verimag.imag.fr/~boulme/HOARE_LOGIC_TUTORIAL/ This work is both an introduction to Hoare logic and a demo illustrating Coq nice features. It formalizes the generation of PO (proof obligations) in a Hoare logic for a very basic imperative programming language. It proves the soundness and the completeness of the PO generation both in partial and total correctness. At last, it examplifies on a very simple example (a GCD computation) how the PO generation can simplify concrete proofs. Coq is indeed able to compute PO on concrete programs: we say here that the generation of proof obligations is reflected in Coq. Technically, the PO generation is here performed through Dijkstra's weakest-precondition calculus.""" flags: light-uninstall url { src: "https://github.com/coq-contribs/hoare-tut/archive/v8.7.0.tar.gz" checksum: "md5=8ba859070a0cf7578f6e50b70994aa9e" }
true
Dry install with the current Coq version:
opam install -y --show-action coq-hoare-tut.8.7.0 coq.8.16.0
[NOTE] Package coq is already installed (current version is 8.16.0). The following dependencies couldn't be met: - coq-hoare-tut -> coq < 8.8~ -> ocaml < 4.10 base of this switch (use `--unlock-base' to force) No solution found, exiting
Dry install without Coq/switch base, to test if the problem was incompatibility with the current Coq/OCaml version:
opam remove -y coq; opam install -y --show-action --unlock-base coq-hoare-tut.8.7.0
true
true
No files were installed.
true