GithubHelp home page GithubHelp logo

imdea-software / fcsl-pcm Goto Github PK

View Code? Open in Web Editor NEW
25.0 11.0 11.0 630 KB

Partial Commutative Monoids

License: Apache License 2.0

Makefile 0.09% Coq 99.91%
partial-commutative-monoid separation-logic coq coq-library concurrency

fcsl-pcm's People

Contributors

aleksnanevski avatar anton-trunov avatar clayrat avatar cohencyril avatar ejgallego avatar palmskog avatar pi8027 avatar ppedrot avatar skyskimmer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fcsl-pcm's Issues

Use of fcsl namespace and packaging

Note that since this development uses the namespace/directory fcsl (and not, say, fcslpcm or fcsl_pcm), it would conflict with any other (OPAM) package in the future that also uses the namespace fcsl. For example, if I first installed both coq-fcsl-pcm and the other hypothetical package via OPAM, and then removed coq-fcsl-pcm, the other package's files would be removed also. Are you sure this won't be an issue in the future, i.e., that there will be no packaging of other FCSL code?

Reorganize seqint.v

Current version has been growing "organically" as a part of pcm/natmap.v, it could use some tidying up.

Redundancy in _CoqProject

Why not just have the contents of Make in _CoqProject and use the latter as argument to coq_makefile? This both gives a canonical definition of namespaces/files and allows IDEs like ProofGeneral and coqide to find the files.

Name collision for path_last

Both finmap/ordtype.v and pcm/heap.v have a lemma called path_last, with different meanings. This causes the importing order of files to matter, and proofs to break when the importing order is changed. Any chance the lemma in pcm/heap.v could get a different name?

Broken with math-comp master

Hi folks,

as per @ggonthier detailed analysis here, current fcsl-pcm is broken in math-comp master which in turn makes it broken in Coq's CI.

Could you please apply the suggested fix?

Thanks!

MathComp 2.0 support

Are there any plans for to support MathComp 2.0? It would be nice to port Disel to MathComp 2.0, but then I need both FCSL PCM and HTT to have releases compatible with 2.0.0 or later. See porting guide.

Coq 8.12 compatibility in opam

Any chance for marking some opam package (either the one in extra-dev, or the one for 1.2.0, or even the repo one) as compatible with Coq 8.12? Currently, there is no way for me to test in CI that Disel works with 8.12 via opam, despite that it works fine locally with 8.12+beta1.

Official Coq 8.8.0 and mathcomp 1.7 support in OPAM

According to my quick evaluation, fcsl-pcm works fine with the recently released Coq 8.8.0 and mathcomp 1.7. Any chance to get this reflected in the OPAM package in the Coq OPAM repository? No new release should be required, just new dependencies along the lines of

"coq" {>= "8.7" & < "8.9~"}
"coq-mathcomp-ssreflect" {>= "1.6.2" & < "1.8~"}

would be sufficient.

Meaning of undefx?

Consider the following alternative definition of undefx in automap.v where the first false is changed to true:

Definition undefx i t := 
  if t is Var n then 
    if onth (varx i) n is Some x then undefb x else true
  else false.

All proofs, at least in fcsl-pcm, pass with this definition. Is there some proof in the full fcsl which proves something about the "vacuous" case when onth (varx i) n = None, or is there some intuition why this case should be false and not true?

Cannot find a physical path bound to logical path pred with prefix pcm.

I have run the following command:

opam repo add coq-released https://coq.inria.fr/opam/released
opam install coq-fcsl-pcm  .

However, the following error is still encountered when running "From pcm Require Import pred.":
Error: Cannot find a physical path bound to logical path pred with prefix pcm.
I dont know that is why

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.