{"id":16313734,"url":"https://github.com/co-dan/bi-cutelim","last_synced_at":"2025-04-24T00:07:58.505Z","repository":{"id":39660102,"uuid":"378194040","full_name":"co-dan/BI-cutelim","owner":"co-dan","description":"Cut elimination for the logic of Bunched Implications (BI), and some extensions.","archived":false,"fork":false,"pushed_at":"2023-07-27T09:27:48.000Z","size":787,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-24T00:07:51.623Z","etag":null,"topics":["coq","formalization","logic","metatheory"],"latest_commit_sha":null,"homepage":"","language":"Coq","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/co-dan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-18T15:32:45.000Z","updated_at":"2021-12-13T20:43:35.000Z","dependencies_parsed_at":"2024-11-06T08:47:47.225Z","dependency_job_id":null,"html_url":"https://github.com/co-dan/BI-cutelim","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/co-dan%2FBI-cutelim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/co-dan%2FBI-cutelim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/co-dan%2FBI-cutelim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/co-dan%2FBI-cutelim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/co-dan","download_url":"https://codeload.github.com/co-dan/BI-cutelim/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250535099,"owners_count":21446508,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coq","formalization","logic","metatheory"],"created_at":"2024-10-10T21:52:09.469Z","updated_at":"2025-04-24T00:07:58.485Z","avatar_url":"https://github.com/co-dan.png","language":"Coq","funding_links":[],"categories":[],"sub_categories":[],"readme":"A semantic cut admissibility proof for the logic of Bunched Implications and extensions.\nSee the [preprint](https://groupoid.moe/pdf/cutelim-ext.pdf) for more details and information.\n\n## Intro\n\nWe formalize the sequent calculus of BI and give an algebraic proof of\ncut admissibility. We parametrize the calculus by an arbitrary\ncollection of \"simple structural rules\" (see `theories/seqcalc.v` for\nthe definition).\n\nStructure (in the `theories` directory):\n- `syntax.v`, `terms.v` -- formulas of BI and \"bunched terms\".\n  A bunched term is essential a formula built up only from `∗/,` and\n  `∧/;` and variables.\n- `interp.v` -- interpretation of formulas and bunched terms in a BI algebra\n- `seqcalc.v` -- sequent calculus + soundness\n- `bunch_decomp.v` -- helpful lemmas about decompositions of bunches\n- `seqcalc_height.v` -- the same sequent calculus, but with the notion of proof height.\n  Includes proofs of invertibility of some of the rules.\n- `algebra/bi.v`, `algebra/interface.v` -- BI algebras\n- `algebra/from_closure.v` -- BI algebra from a closure operator\n- `cutelim.v` -- the universal model for cut elimination\n- `analytic_completion.v` -- the analytic completion for arbitary structural rules\n\nThere is also a formalization of the same method but for BI with an S4-like box modality.\nSee `seqcalc_s4.v`, `seqcalc_height_s4.v`, `interp_s4.v`, and `cutelim_s4.v` in the `theories` folder.\n\n## Compilation\n\nYou will need a copy of std++ installed.\nThis version is tested with Coq 8.17 and std++ 1.8.0.\nYou can install the dependency with opam using `opam install --deps-only .` or the whole developement with `opam install .`\n\nIf you have std++ installed then you can compile the project with `make -jN` where `N` is the number of threads you want to use.\nCompile the HTML docs with `make html`.\n\nNote: this Coq developement is automatically tested for Coq versions 8.16 and 8.17, and we will try to support the two latest versions of Coq.\n![CI workflow status](https://github.com/co-dan/BI-cutelim/actions/workflows/build.yml/badge.svg)\n\n## Copyright\n\nThe Coq formalization is distributed under the BSD-3 licence.\nSome code was adapted from the Iris project \u003chttps://iris-project.org\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fco-dan%2Fbi-cutelim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fco-dan%2Fbi-cutelim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fco-dan%2Fbi-cutelim/lists"}