practical-fm
A gently curated list of companies using verification formal methods in industry (by ligurio)
CommunityModules
TLA+ snippets, operators, and modules contributed and curated by the TLA+ community (by tlaplus)
Our great sponsors
practical-fm | CommunityModules | |
---|---|---|
4 | 3 | |
412 | 217 | |
- | 3.7% | |
1.0 | 1.7 | |
about 2 months ago | 21 days ago | |
TLA | ||
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
practical-fm
Posts with mentions or reviews of practical-fm.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-09-14.
-
We Need Simpler Types (speculations on what can be improved in future type systems and on erasing the boundaries between types and values)
https://github.com/ligurio/practical-fm Look for Coq, Agda, Idris, MS - F*.
-
Formal Verification Methods in industry
When you say "formal verification methods", what kind of techniques are you interested in? While using interactive theorem provers will most likely not become very widespread, there are plenty of tools that use formal techniques to give more correctness guarantees. These tools might give some guarantees, but do not guarantee complete functional correctness. WireGuard (VPN tunnel) is I think a very interesting application where they verified the protocol. There are also some tools in use, e.g. Mythril and CrossHair, that focus on detecting bugs using symbolic execution. There's also INFER from Facebook/Meta which tries to verify memory safety automatically. The following GitHub repo might also interest you, it lists some companies that use formal methods: practical-fm
CommunityModules
Posts with mentions or reviews of CommunityModules.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-03-03.
-
Generate (message) sequence diagrams from TLA+ state traces
Adding a vector clock is relatively straightforward (see e.g. https://github.com/tlaplus/Examples/commit/ee10c6ed1c65f1002c8ad402edceeffcf1a833e). For PlusCal, the vector clock can be computed from the PC variable: https://github.com/tlaplus/CommunityModules/blob/master/modules/ShiViz.tla
What are some alternatives?
When comparing practical-fm and CommunityModules you can also consider the following projects:
magmide - A dependently-typed proof language intended to make provably correct bare metal code possible for working software engineers.
ouroboros-high-assurance - High-assurance implementation of the Ouroboros protocol family
silveroak - Formal specification and verification of hardware, especially for security and privacy.
hacl-star - HACL*, a formally verified cryptographic library written in F*
timewinder - Temporal Logic of Actions Modeling for Python