why3

SPARK 2014 repository for the Why3 verification platform. (by AdaCore)

Why3 Alternatives

Similar projects and alternatives to why3

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better why3 alternative or higher similarity.

why3 reviews and mentions

Posts with mentions or reviews of why3. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-30.
  • Why the C Language Will Never Stop You from Making Mistakes
    5 projects | news.ycombinator.com | 30 Dec 2021
    With Frama-C you can prove doubly linked lists and all manner of complicated pointer manipulating graph algorithms. It does not impose a Rust-like pointer ownership policy as does SPARK.

    However, for embedded development, SPARK's restrictions are a good trade-off, as the more restrictive rules allow more proofs to be fully automated than with Frama-C and simplify diagnostic messages. A fly-by-wire avionics computer doesn't need to dynamically allocate a billion graph nodes. But SPARK is not "general purpose" like C with Frama-C is.

    AdaCore's SPARK tool stack is not actually written in SPARK as far as I can see, much of it is actually OCaml and Coq/Gallina for the Why3 component also used by Frama-C. See all the .ml OCaml and .v Gallina source code for yourself:

    https://github.com/AdaCore/why3

    And of course the compiler backend for Ada/SPARK is GNU GCC, written in unverified C:

    https://github.com/gcc-mirror/gcc/tree/master/gcc/config

    Compare with CompCert, the formally verified C compiler:

    https://github.com/AbsInt/CompCert

    Frama-C unfortunately requires a user to be mathematician-logician logic programming expert to fully utilize. One can begin training in Coq/Gallina with the large free online Software Foundations course:

    https://softwarefoundations.cis.upenn.edu/

Stats

Basic why3 repo stats
1
27
9.5
16 days ago

AdaCore/why3 is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.

The primary programming language of why3 is OCaml.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com