« Up

autosubst-ocaml 1.0.0 Not compatible 👼

Context

# Packages matching: installed
# Name                # Installed # Synopsis
base-bigarray         base
base-threads          base
base-unix             base
conf-gmp              4           Virtual package relying on a GMP lib system installation
coq                   8.17.0      The Coq Proof Assistant
coq-core              8.17.0      The Coq Proof Assistant -- Core Binaries and Tools
coq-stdlib            8.17.0      The Coq Proof Assistant -- Standard Library
coqide-server         8.17.0      The Coq Proof Assistant, XML protocol server
dune                  3.13.0      Fast, portable, and opinionated build system
ocaml                 4.14.0      The OCaml compiler (virtual package)
ocaml-base-compiler   4.14.0      Official release 4.14.0
ocaml-config          2           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"
synopsis: "A tool to generate substitution boilerplate Coq code for languages with binders"
description: """
  This is an OCaml reimplementation of the Autosubst 2 code generator by Stark, Schäfer and Kaiser,
  which was the main focus of Stark's doctoral dissertation. Autosubst 2 in turn is based on 
  previous work on Autosubst by Schäfer, Tebbi and Smolka.
  If you ever were in the situation of looking at metatheorems of languages modelled in Coq 
  (e.g. progress and preservation of lambda calculi) and were bothered by the tediousness of 
  formalizing substitution of de Bruijn indices again, this tool might be for you. Autosubst is a 
  tool that allows you to quickly generate boilerplate code to handle substitutions in languages 
  with binders.
  The output is Coq source code that contains
  - an implementation of the language via (mutual) inductive types and de Bruijn indices for variables,
  - definitions for capture avoiding substitution and renaming on de Bruijn indices,
  - lemmas about the behavior and interaction of renaming and substitution,
  - and a tactic to solve assumption-free substitution equations.
""" 
homepage: "https://github.com/uds-psl/autosubst-ocaml"
dev-repo: "git+https://github.com/uds-psl/autosubst-ocaml.git"
bug-reports: "https://github.com/uds-psl/autosubst-ocaml/issues"
maintainer: "s8addapp@stud.uni-saarland.de"
doc: "https://www.ps.uni-saarland.de/~dapprich/bachelor.php"
authors: [
  "Adrian Dapprich"
]
license: "MIT"
depends: [
  "ocaml" { >= "4.09" & < "4.12" }
  "coq" { >= "8.13.1" & < "8.14" }
  "angstrom" { >= "0.15.0" }
  "dune" { >= "2.5" }
  "ocamlgraph" { >= "2.0.0" }
  "ppx_deriving" { >= "5.2.1" }
]
build: ["dune" "build" "-p" name "-j" jobs]
url {
  src: "https://github.com/uds-psl/autosubst-ocaml/archive/refs/tags/1.0.0.tar.gz"
  checksum: "sha256=a265652904182f36d62e43d73b7a14f2bd2e33138b43d58f019033d0bf44bbb4"
}
tags: [
  "category:Computer Science/Lambda Calculi"
  "keyword:abstract syntax"
  "keyword:binders"
  "keyword:de Bruijn indices"
  "keyword:substitution"
  "date:2021-12-13"
]

Lint

Command
true
Return code
0

Dry install 🏜️

Dry install with the current Coq version:

Command
opam install -y --show-action coq-autosubst-ocaml.1.0.0 coq.8.17.0
Return code
5120
Output
[NOTE] Package coq is already installed (current version is 8.17.0).
The following dependencies couldn't be met:
  - coq-autosubst-ocaml -> ocaml < 4.12
      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:

Command
opam remove -y coq; opam install -y --show-action --unlock-base coq-autosubst-ocaml.1.0.0
Return code
0

Install dependencies

Command
true
Return code
0
Duration
0 s

Install 🚀

Command
true
Return code
0
Duration
0 s

Installation size

No files were installed.

Uninstall 🧹

Command
true
Return code
0
Missing removes
none
Wrong removes
none