Skip to content

Challenge 7: Kani contracts for atomic types and intrinsics - #642

Closed
sankalpsthakur wants to merge 3 commits into
model-checking:mainfrom
sankalpsthakur:challenge/07-atomic
Closed

Challenge 7: Kani contracts for atomic types and intrinsics#642
sankalpsthakur wants to merge 3 commits into
model-checking:mainfrom
sankalpsthakur:challenge/07-atomic

Conversation

@sankalpsthakur

Copy link
Copy Markdown

Summary

Kani safety contracts and proof harnesses for this challenge. Runtime stdlib logic is unchanged; annotations are cfg(kani) / contract attributes.

Atomic types plus related intrinsics.

Validation

  • Local worktree on challenge/07-atomic
  • Kani CI on this PR is the authoritative run (scripts/run-kani.sh)

Fixes #83

AI/LLM disclosure

  • AI coding tools (including Grok and/or Codex agent-assisted editing) were used to help draft or modify code and this PR description.
  • I reviewed the complete change, understand the reasoning, and take responsibility for the contracts and harnesses.
  • This submission is original work of authorship under the project contributor terms; AI output was not pasted unreviewed.

Kani contracts and harnesses for verify-rust-std challenge.

Fixes rust-lang#83
@sankalpsthakur
sankalpsthakur requested a review from a team as a code owner August 20, 2026 12:08
Apply rust-lang rustfmt.toml (style_edition 2024, use_small_heuristics=Max)
so upstream_test format check passes. Same as ./scripts/check_rustc.sh --bless.
Add kani::modifies on atomic store/RMW contracts and wrappers.
Proofs use live stack objects instead of wrapping_add pointers,
which lose provenance and fail CBMC's assignable check.

Fixes rust-lang#83
@feliperodri feliperodri added the Challenge Used to tag a challenge label Aug 20, 2026
@sankalpsthakur

Copy link
Copy Markdown
Author

Withdrawing this; no maintainer signal and we are cutting the queue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Challenge Used to tag a challenge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Challenge 7: Safety of Methods for Atomic Types & Atomic Intrinsics

2 participants