google / google/zerocopy

Support writing Anneal specifications in Rust

Open
#3,062 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2.6k
Forks
179
Avg merge
1d 19h
Merged PRs (30d)
29

Description

Lower to Lean using Charon/Aeneas and treat these as equivalent to specifications written directly in Lean.

Possible examples, using the `anneal, rust` info string to denote specs written in Rust.

```rust
/// ```anneal, rust
/// is_valid = |p| p.x > 0
/// ```
struct Positive {
x: usize,
}

/// ```anneal, rust
/// is_safe = std::mem::align_of::() == 1
/// ```
unsafe trait Unaligned {}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.