Compare commits

...

3 Commits

Author SHA1 Message Date
0e74e27d2c Fix #15 2025-07-10 12:52:26 -06:00
b7cd52b5c2 Fix #14 2025-07-10 12:39:36 -06:00
68e5a64e71 Fix #14 2025-07-10 12:39:01 -06:00
10 changed files with 208 additions and 0 deletions

10
tools/programs/_index.md Normal file
View File

@@ -0,0 +1,10 @@
+++
title = "Program Proof Tools"
layout = "section"
+++
This page lists all of the program proof tools on this site in alphabetical order.
Click a tool name in the first column to view tool details.
Click a colorful item in the second column to view all the tools for which that term applies.
Item colors mean nothing and are intended to make it easy to skim the page.
Colors are generated by hashing each term's name and converting it to RGB color values.

22
tools/programs/aeneas.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Aeneas'
subtitle = 'Rust Verifier'
links = [
{ title = "Homepage", url = "https://aeneasverif.github.io/", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/AeneasVerif/aeneas", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Program Prover', 'Rust Verifier']
developers = ['Microsoft Research', 'Inria']
licenses = ['Apache-2.0']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2023">}} -->
Aeneas (pronunced [Ay-nay-as]) is a verification toolchain for Rust programs.

22
tools/programs/creusot.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Creusot'
subtitle = 'Rust Verifier'
links = [
# { title = "Homepage", url = "https://dafny.org/", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/creusot-rs/creusot", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Program Prover', 'Rust Verifier']
# developers = ['Amazon Web Services']
licenses = ['LGPLv2.1']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2023">}} -->
Creusot is a deductive verifier for Rust code.

22
tools/programs/dafny.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Dafny'
subtitle = 'Program Proofs'
links = [
{ title = "Homepage", url = "https://dafny.org/", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/dafny-lang/dafny", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Program Prover']
developers = ['Amazon Web Services']
licenses = ['MIT']
inputs = ['Dafny']
interfaces = ['CLI', 'VSCode']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2023">}} -->
Dafny is a verification-aware programming language that has native support for recording specifications and is equipped with a static program verifier.

22
tools/programs/kani.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Kani'
subtitle = 'Rust Verifier'
links = [
{ title = "Homepage", url = "https://model-checking.github.io/kani/", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/model-checking/kani", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Model Checker', 'Rust Verifier']
# developers = ['Microsoft Research', 'Inria']
licenses = ['Apache-2.0', 'MIT']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2023">}} -->
The Kani Rust Verifier is a bit-precise model checker for Rust.

22
tools/programs/loom.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Loom'
subtitle = 'Rust Verifier'
links = [
# { title = "Homepage", url = "https://www.pm.inf.ethz.ch/research/prusti.html", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/tokio-rs/loom", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Rust Verifier']
developers = ['Tokio']
licenses = ['MIT']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2024">}} -->
Loom is a testing tool for concurrent Rust code.

22
tools/programs/miri.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Miri'
subtitle = 'Rust Verifier'
links = [
# { title = "Homepage", url = "https://model-checking.github.io/kani/", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/rust-lang/miri", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Rust Verifier']
# developers = ['Microsoft Research', 'Inria']
licenses = ['Apache-2.0', 'MIT']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2023">}} -->
Miri is an Undefined Behavior detection tool for Rust.

22
tools/programs/prusti.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Prusti'
subtitle = 'Rust Verifier'
links = [
{ title = "Homepage", url = "https://www.pm.inf.ethz.ch/research/prusti.html", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/viperproject/prusti-dev", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Rust Verifier']
# developers = ['Microsoft Research', 'Inria']
licenses = ['Mozilla-2.0']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Not Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
{{<inactive year="2024">}}
Prusti is a prototype verifier for Rust that makes it possible to formally prove absence of bugs and correctness of code contracts.

22
tools/programs/shuttle.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Loom'
subtitle = 'Rust Verifier'
links = [
# { title = "Homepage", url = "https://www.pm.inf.ethz.ch/research/prusti.html", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/awslabs/shuttle", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Rust Verifier']
developers = ['Amazon Web Services']
licenses = ['MIT']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2024">}} -->
Shuttle is a library for testing concurrent Rust code.

22
tools/programs/verus.md Normal file
View File

@@ -0,0 +1,22 @@
+++
date = 2025-07-10
draft = false
title = 'Verus'
subtitle = 'Rust Verifier'
links = [
# { title = "Homepage", url = "https://www.pm.inf.ethz.ch/research/prusti.html", icon = 'fa-solid fa-home' },
{ title = "Source Code", url = "https://github.com/verus-lang/verus", icon = 'fa-brands fa-github' },
# { title = "Playground", url = "https://cvc5.github.io/app/", icon = 'fa-solid fa-gamepad' }
]
applications = ['Rust Verifier']
# developers = ['Microsoft Research', 'Inria']
licenses = ['MIT']
inputs = ['Rust']
interfaces = ['CLI']
maintenance = ['Actively Maintained']
# techniques = ['CDCL']
# publications = ['Barbosa2022']
+++
<!-- {{<inactive year="2024">}} -->
Verus is a tool for verifying the correctness of code written in Rust.