# Packages matching: installed
# Name # Installed # Synopsis
base-bigarray base
base-domains base
base-nnp base Naked pointers prohibited in the OCaml heap
base-threads base
base-unix base
conf-gmp 4 Virtual package relying on a GMP lib system installation
coq dev The Coq Proof Assistant
coq-core dev The Coq Proof Assistant -- Core Binaries and Tools
coq-stdlib dev The Coq Proof Assistant -- Standard Library
coqide-server dev The Coq Proof Assistant, XML protocol server
dune 3.12.2 Fast, portable, and opinionated build system
ocaml 5.0.0 The OCaml compiler (virtual package)
ocaml-base-compiler 5.0.0 Official release 5.0.0
ocaml-config 3 OCaml Switch Configuration
ocaml-options-vanilla 1 Ensure that OCaml is compiled with no special options enabled
ocamlfind 1.9.6 A library manager for OCaml
zarith 1.13 Implements arithmetic and logical operations over arbitrary-precision integers
# opam file:
opam-version: "2.0"
authors: [
"Sylvain Boulmé"
]
maintainer: "kartiksinghal@gmail.com"
homepage: "https://github.com/coq-community/hoare-tut"
dev-repo: "git+https://github.com/coq-community/hoare-tut.git"
bug-reports: "https://github.com/coq-community/hoare-tut/issues"
license: "LGPL-3.0-or-later"
synopsis: "A Tutorial on Reflecting in Coq the generation of Hoare proof obligations"
description: """
Hoare logics are "program logics" suitable for reasoning about
imperative programs.
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.
"""
build: [make "-j%{jobs}%" ]
install: [make "install"]
depends: [
"coq" {>= "8.8" & < "8.13~"}
]
tags: [
"category:Mathematics/Logic"
"category:Computer Science/Semantics and Compilation/Semantics"
"keyword:Hoare logic"
"keyword:imperative program"
"keyword:weakest precondition"
"keyword:reflection"
"logpath:HoareTut"
]
url {
src: "https://github.com/coq-community/hoare-tut/archive/v8.11.1.tar.gz"
checksum: [
"md5=a7d240c73b36b91d4e703dfa75de7aaf"
"sha512=146bf09aea7bb98b430148113426c6c85e9b69c9d5b8c9c509bb56a1e85392f7511568b37a091b1384ced9f866b75bd7e2b49dc6cfac2309fab5383e0443698f"
]
}
trueDry install with the current Coq version:
opam install -y --show-action coq-hoare-tut.8.11.1 coq.dev[NOTE] Package coq is already installed (current version is dev).
[ERROR] Package conflict!
* No agreement on the version of coq:
- coq >= dev
- coq-hoare-tut = 8.11.1 -> coq < 8.13~
* No agreement on the version of ocaml:
- (invariant) -> ocaml-base-compiler = 5.0.0 -> ocaml = 5.0.0
- coq-hoare-tut = 8.11.1 -> coq < 8.13~ -> ocaml < 4.05.0
You can temporarily relax the switch invariant with `--update-invariant'
* No agreement on the version of ocaml-base-compiler:
- (invariant) -> ocaml-base-compiler = 5.0.0
- coq-hoare-tut = 8.11.1 -> coq < 8.13~ -> ocaml < 4.05.0 -> ocaml-base-compiler = 3.08.1
* Missing dependency:
- coq-hoare-tut = 8.11.1 -> coq < 8.13~ -> ocaml < 4.05.0 -> ocaml-variants -> ocaml-beta
unmet availability conditions: 'enable-ocaml-beta-repository'
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.11.1truetrueNo files were installed.
true