Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
14ee0f2
add KMIR to the docs using prepared tool template text
jberthold Apr 1, 2025
39bbca7
add kmir workflow and proof claim files + source. WIP README.mds need…
jberthold Apr 1, 2025
4082f8a
remove stray quotes
jberthold Apr 1, 2025
572425b
New README.md for the KMIR proof top directory
jberthold Apr 1, 2025
ca8f7e7
Adjust README for maximum-example-proof
jberthold Apr 1, 2025
822f8ec
adjust steps in maximum proof, give an example of the configuration
jberthold Apr 1, 2025
8d9de92
use demon container in workflow
jberthold Apr 1, 2025
a6c1708
Do not set a default shell in the CI workflow
jberthold Apr 2, 2025
5ce3c31
Do not set uid, do not bind-mount (copy kmir-proofs directory)
jberthold Apr 2, 2025
c6de927
do not write proof kcfg in CI (works around a permission problem)
jberthold Apr 2, 2025
ab015de
Merge branch 'main' into add-kmir-tool
jberthold Apr 2, 2025
89d8f06
Update CI Image w/ new environment controls
F-WRunTime Apr 2, 2025
347fd4c
Adding back in proof generation on container
F-WRunTime Apr 2, 2025
b346e03
Revert previous change to workflow. Further investigation needed betw…
F-WRunTime Apr 2, 2025
fc9eecf
Merge branch 'main' into add-kmir-tool
jberthold Apr 4, 2025
5746c4d
Format Markdown files to 80-column line breaks (content unchanged)
jberthold Apr 5, 2025
3acce27
Edits round 1, see related issue
jberthold Apr 5, 2025
90c2df2
Usage instructions list current build steps only
dkcumming Apr 6, 2025
ef14668
added missing link to proofs
dkcumming Apr 6, 2025
08de801
removed speculation about kup integration
dkcumming Apr 6, 2025
d68fec5
Added quote of what K Framewwork is
dkcumming Apr 6, 2025
9feeb14
break new text at column 80, remove trailing whitespace
jberthold Apr 7, 2025
2e0bfd8
Rewrite usage section, delete CI and Versioning parts, move Licensing
jberthold Apr 7, 2025
e62f890
expand K framework explanation to explain reachability proofs
jberthold Apr 7, 2025
d7306a9
Merge branch 'main' into add-kmir-tool
jberthold Apr 7, 2025
f73b9a2
Merge branch 'main' into add-kmir-tool
jberthold Apr 9, 2025
b7d54d9
add a section explaining how loops and recursion can be addressed by K
jberthold Apr 15, 2025
3818143
Merge branch 'main' into add-kmir-tool
jberthold Apr 15, 2025
7b857e9
Update kmir.md
gregorymakodzeba Apr 18, 2025
bc50f5a
Update kmir-proofs/maximum-example-proof/README.md
dkcumming Apr 28, 2025
8f2a189
Merge branch 'main' into add-kmir-tool
jberthold May 6, 2025
e3572db
Merge remote-tracking branch 'upstream/main' into add-kmir-tool
jberthold May 9, 2025
75e80c0
update unchecked_arithmetic proofs (new runner, new test code, new wo…
jberthold May 9, 2025
0ce0bbb
remove maximum-example-proof (outdated)
jberthold May 9, 2025
3a1044d
rewrite description of proofs in kmir-proofs
jberthold May 9, 2025
d06457a
Adjust kmir.md description to updated software
jberthold May 9, 2025
73aadd0
Merge branch 'main' into add-kmir-tool
jberthold May 15, 2025
76f49d7
Rename Stable MIR to Public MIR
dkcumming Apr 16, 2026
e4377e7
Updated installation and usage sections
dkcumming Apr 16, 2026
a0ca60d
Added section on useful proving flags
dkcumming Apr 16, 2026
e58fcdb
s/symbollic/symbolic & s/Solitidy/Solidity
dkcumming Apr 16, 2026
e095f63
Added installation gif
dkcumming Apr 16, 2026
35ac703
Added passing proof and show gif
dkcumming Apr 17, 2026
e5722ec
Added failing proof with view gif
dkcumming Apr 17, 2026
39a45e2
Added some examples and clarity for loops.
dkcumming Apr 17, 2026
8632482
Added section on KMIR proof harnesses
dkcumming Apr 17, 2026
961ff61
Added case study for Challenge 11
dkcumming Apr 17, 2026
7694bc8
Added case study for P-Token proofs
dkcumming Apr 17, 2026
c2953b4
Added known limitations sections
dkcumming Apr 17, 2026
d7f7537
Use `ubuntu-jammy-latest` as docker release in workflow
dkcumming Apr 17, 2026
659f410
Added challenge 11 proofs to workflow
dkcumming Apr 18, 2026
be2c7e9
Updated `run-proofs.sh` to reuse `llvm-kompile`
dkcumming Apr 21, 2026
9e5dd9d
Added parallel execution of 2 for run-proofs.sh
dkcumming Apr 21, 2026
02c1126
Merge remote-tracking branch 'upstream/main' into add-kmir-tool
dkcumming Apr 21, 2026
670420e
Added negative tests to demonstrate KMIR errors on UB path
dkcumming Apr 23, 2026
7e44d68
Adding proofs negative harnesses (forgotton last commit)
dkcumming Apr 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions .github/workflows/kmir.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: KMIR

on:
workflow_dispatch:
merge_group:
pull_request:
branches: [ main ]
push:
paths:
- 'library/**'
- '.github/workflows/kmir.yml'
- 'kmir-proofs/**'

jobs:
run-kmir-proofs:
name: Run KMIR proofs
runs-on: ubuntu-latest
env:
container_name: "kmir-${{ github.run_id }}"

steps:
- name: Checkout Repository
uses: actions/checkout@v4

- name: Run Challenge 11 Proofs
run: |
docker run --rm -t \
--name ${{ env.container_name }} \
-w /home/kmir/workspace \
-u $(id -u):$(id -g) \
-v $PWD:/home/kmir/workspace \
runtimeverificationinc/kmir:ubuntu-jammy-latest \
kmir-proofs/0011-floats-ints/run-proofs.sh

run-kmir-proofs-negative:
name: Run KMIR negative proofs
runs-on: ubuntu-latest
env:
container_name: "kmir-neg-${{ github.run_id }}"

steps:
- name: Checkout Repository
uses: actions/checkout@v4

- name: Run Challenge 11 Negative Proofs
run: |
docker run --rm -t \
--name ${{ env.container_name }} \
-w /home/kmir/workspace \
-u $(id -u):$(id -g) \
-v $PWD:/home/kmir/workspace \
runtimeverificationinc/kmir:ubuntu-jammy-latest \
kmir-proofs/0011-floats-ints/run-proofs.sh --negative
1 change: 1 addition & 0 deletions doc/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
- [GOTO Transcoder](./tools/goto-transcoder.md)
- [VeriFast](./tools/verifast.md)
- [Flux](./tools/flux.md)
- [KMIR](./tools/kmir.md)

---

Expand Down
4 changes: 4 additions & 0 deletions doc/src/tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,8 @@ please see the [Tool Application](general-rules.md#tool-applications) section.
| ESBMC (GOTO-Transcoder) | [![ESBMC](https://github.com/model-checking/verify-rust-std/actions/workflows/goto-transcoder.yml/badge.svg)](https://github.com/model-checking/verify-rust-std/actions/workflows/goto-transcoder.yml) |
| Flux | [![Flux](https://github.com/model-checking/verify-rust-std/actions/workflows/flux.yml/badge.svg)](https://github.com/model-checking/verify-rust-std/actions/workflows/flux.yml) |
| Kani Rust Verifier | [![Kani](https://github.com/model-checking/verify-rust-std/actions/workflows/kani.yml/badge.svg)](https://github.com/model-checking/verify-rust-std/actions/workflows/kani.yml) |
| KMIR Symbolic Rust Execution | [![KMIR](https://github.com/model-checking/verify-rust-std/actions/workflows/kmir.yml/badge.svg)](https://github.com/model-checking/verify-rust-std/actions/workflows/kmir.yml) |
| VeriFast for Rust | [![VeriFast](https://github.com/model-checking/verify-rust-std/actions/workflows/verifast.yml/badge.svg)](https://github.com/model-checking/verify-rust-std/actions/workflows/verifast.yml) |



Loading
Loading