https://github.com/catalalang/catala-formalization
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.5%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: CatalaLang
- Language: Coq
- Default Branch: main
- Size: 1.4 MB
Statistics
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
Artifact for "Scaling Up Mechanized Proof Automation for Small-step Semantics"
This is the companion artifact to the paper "Scaling Up Mechanized Proof Automation for Small-step Semantics".
This artifact contains the Rocq code described in the paper.
Detailed File Description
The file CLAIMS.md links statements made in the paper with this artifact.
The file sequences.v is adapted from previous work by François Pottier, which was based on work by Xavier Leroy, with a few additions by the authors of this artifact.
| File Name | Spec | Proof | Comments | Description |
|------------------------------------|----------|-----------|--------------|-------------|
| common.v | 48 | 70 | 3 | Contains common definitions and utilities used across multiple modules. |
| tactics.v | 224 | 3 | 69 | Contains custom tactics for automated proof strategies in Rcoq. |
| sequences.v | 242 | 220 | 25 | Defines operations and properties of sequences of reduction (star, plus and related lemmas). |
| miniml/miniml.v | 650 | 763 | 70 | Defines syntax and proofs for mini-ML. |
| miniml/miniml_ifthenelse.v | 393 | 137 | 40 | Defines syntax and proofs for mini-ML + if-then-else. |
| catala/syntax.v | 521 | 250 | 9 | Defines the syntax of the fragment of $\lambda^\delta$ we are dealing with. |
| catala/small_step.v | 315 | 122 | 11 | Describes the traditional small-step semantics of the language. |
| catala/continuations.v | 452 | 181 | 35 | Describes the continuation-based small-step semantics of the language. |
| catala/typing.v | 394 | 90 | 35 | Provides the typing rules and their verification for the language. |
| catala/simulation_cred_to_sred.v | 213 | 219 | 15 | Provides a simulation proof from continuation steps to small steps semantic. |
| catala/simulation_sred_to_cred.v | 606 | 609 | 45 | Provides a simulation proof from small steps to continuation steps semantic. |
| catala/trans.v | 203 | 182 | 26 | Handles the transformation that removes default terms from $\lambda^\delta$ intermediate languages. |
| Total | 4261 | 2846 | 383 | |
This table was computed using the coqwc utility
Hardware Dependencies
Minimal dependencies are required. The entire proof builds in 1 minute on a recent laptop.
Building and Installation
To start developing, you first need to install opam using your package manager. According to [https://opam.ocaml.org/doc/Install.html], you can run the following commands:
bash -c "sh <(curl -fsSL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh)"
opam init
Then, you can execute the following commands to install the artifact dependencies (including Rocq):
opam switch create rocq-catala 4.14.0
opam repo add coq-released https://coq.inria.fr/opam/released
eval $(opam env --switch=rocq-catala --set-switch)
opam repository add rocq-released --all-switches
opam install . --deps-only
Step-by-Step Instructions
Once you have installed the dependencies, you can use Dune to build the Rcoq development:
dune build
Then, start your favorite interactive proof interface for Rcoq.
Owner
- Name: CatalaLang
- Login: CatalaLang
- Kind: organization
- Repositories: 4
- Profile: https://github.com/CatalaLang
GitHub Events
Total
- Watch event: 1
- Issue comment event: 6
- Push event: 87
- Pull request event: 10
- Create event: 13
Last Year
- Watch event: 1
- Issue comment event: 6
- Push event: 87
- Pull request event: 10
- Create event: 13
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 1
- Total pull requests: 25
- Average time to close issues: 6 months
- Average time to close pull requests: about 2 months
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.96
- Merged pull requests: 20
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 12
- Average time to close issues: N/A
- Average time to close pull requests: about 1 month
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.92
- Merged pull requests: 9
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- adelaett (1)
Pull Request Authors
- adelaett (32)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v3 composite
- cachix/install-nix-action v18 composite
- actions/checkout v3 composite
- cachix/install-nix-action v18 composite
- EndBug/add-and-commit v9 composite
- actions/checkout v3 composite
- actions/github-script v6 composite
- cachix/install-nix-action v18 composite
- alectryon >=1.4.0