Top 14 coq OpenSource Projects

coq
Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semiinteractive development of machinechecked proofs.

Project mention: Multicore OCaml: September 2021, effect handlers will be in OCaml 5.0  news.ycombinator.com  20211004
OCaml is becoming a must learn language for those who want to take their C programming to the highest levels, because:
1. FramaC, which enables writing bugfree C programs, is implemented using a combination of OCaml and the Coq proof assistant (which is itself implemented in OCaml):
2. CompCert, a formally verified C compiler, is implemented using OCaml and Coq:
https://github.com/AbsInt/CompCert
Nothing at this level yet exists in the Rust and Zig ecosystems, for example. Rust is a very complicated language with many features which makes formalization much harder than with C and OCaml, which both had mathematical ideas of simplicity, analyzability, and minimalism inspire their designs, even if they continue to grow into more complicated monsters, which, incidentally this OCaml 5.0 release will contribute towards. :)

Scout APM
Scout APM: A developer's best friend. Try free for 14days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

I have found some instances of jsCoq but nothing else. Do you know some other online platform? (Whatever the underlying prover or logic)

Project mention: A list of companies that use formal verification methods  news.ycombinator.com  20210208

Project mention: Learn coq or agda before diving into idris2?  reddit.com/r/dependent_types  20210502
I'd say Agda is more similar to Idris than Coq. Coq has a different syntax and isn't as good for programming with dependent types as Agda and Idris (Agda and Idris both put a huge emphasis on dependent pattern matching, something that Coq only recently gained support for through the Equations package).

If you're finding coqide hard to use, I used to use coquille back in the day so that I didn't have to lose my neovim workflow (though it seems like coqtail is the currently maintained fork). I remember djao himself used to use proof general with emacs, which looks like another nice option if you're an emacs user.

It's a question I hadn't really considered before. On first pass, as far as I know, I'd say the answer is no. It isn't clear to me what the objective of embedding Coq with a C api for example would be. The very core of Coq is about verifying proofs and not producing them and I'm not sure what the benefit of embedding it is.
Having said that there are a few projects that may be something like what you're asking. First off, Coq has the SerAPI project https://github.com/ejgallego/coqserapi through which external programs can talk to coq. This has been used for example to make a python OpenAi gym like interface https://github.com/princetonvl/CoqGym.
A different direction might be something like MetaMath Zero https://arxiv.org/abs/1910.10703 which is intended to be a small and fast verifier for it's language, perhaps maybe someday for embedding in applications. There is this notion of "Proof Carrying Code" which I don't really know what the current state of the art is. https://en.wikipedia.org/wiki/Proofcarrying_code One might want an easily embeddable trusted verifier for that purpose. I don't know.


> Or there are these high level systems for proving deep theorems. Is anyone trying to fill the gap?
There's ongoing work on computable real numbers for instance the CoRN library[1], so hope is on the horizon, for instance, a recent update to the Coq Interval package adds certified plotting, that is, the library guarantees that if a function passes through a pixel, that pixel is filled[2]. There's also the userfriendly Coquelicot[3] real analysis library up to basic differential equations (e.g. Bessel function).
> It'll rearrange an equation but I can't ask it "prove this is increasing"
For a taste, here's my proof that the cube function is increasing[4]. If I wanted to create a tactic that automatically proves a function is increasing, I would use properties of increasing functions[5] to recursively break it down into trivial subcases.
[0] https://github.com/siraben/math3100/blob/master/analysis.v
[1] https://github.com/coqcommunity/corn
[2] https://coq.discourse.group/t/interval42nowwithplotting...
[3] https://hal.inria.fr/hal00860648v1/document
[5] https://www.math24.net/increasingdecreasingfunctions#hpro...


Project mention: A minimalistic blockchain consensus implemented and verified in Coq  news.ycombinator.com  20210304

Project mention: Silveroak  Formal specification and verification of hardware  reddit.com/r/Coq  20210520

next700modulesystems
PhD research ;; What's the difference between a typeclass/trait and a record/class/struct? Nothing really, or so I argue.

coqlibraryundecidability
A library of mechanised undecidability proofs in the Coq proof assistant.
There are two problems. The first is that there is no central repository. Sure, maybe if you're interested in undecidable results you might go here... But it's an island, and so is every other library. Worse yet, there's little inter mixing or combinable ways to use libraries. Unlike other programming languages, automated proof systems have so far been aimed at the technical aspects of a single person proving something, rather than the shareability of proofs.

Project mention: popui.nvim  GUI popfix per codeAction (e forse anche altro)  reddit.com/r/ItalyInformatica  20211010
PS: io ho solo fatto un plugin per Coq https://github.com/Mte90/coq_wordpress e i meiie dotfiles https://github.com/mte90/dotfiles
Index
What are some of the best opensource coq projects? This list will help you:
Project  Stars  

1  coq  3,483 
2  CompCert  1,308 
3  jscoq  413 
4  practicalfm  320 
5  CoqEquations  166 
6  Coqtail  131 
7  coqserapi  100 
8  corn  99 
9  fourcolor  99 
10  toychain  95 
11  silveroak  90 
12  next700modulesystems  69 
13  coqlibraryundecidability  65 
14  coq_wordpress  3 
Are you hiring? Post a new remote job listing for free.