Part of the V&V coverage initiative.
Problem
spar has a strong Lean proof portfolio for scheduling theory — Liu–Layland rate-monotonic bound (proofs/Proofs/Scheduling/RMBound.lean), EDF optimality, response-time analysis. The Rust solver implementation that consumes this theory is unverified today: spar-solver (constraint satisfaction, MILP), and spar-codegen that emits schedules.
Acceptance
Notes
- The Lean proof
RMBound.lean:49 proves rmBound(n) ≥ ln 2 — the implementation must not admit schedules violating this
- Bounded Kani with realistic task counts (e.g. up to 8 tasks) is sufficient for DO-333 credit; unbounded is a stretch goal
Part of the V&V coverage initiative.
Problem
spar has a strong Lean proof portfolio for scheduling theory — Liu–Layland rate-monotonic bound (
proofs/Proofs/Scheduling/RMBound.lean), EDF optimality, response-time analysis. The Rust solver implementation that consumes this theory is unverified today:spar-solver(constraint satisfaction, MILP), andspar-codegenthat emits schedules.Acceptance
spar-solver/tests/kani_*.rs,spar-codegen/tests/kani_*.rsrivet.yaml: link Kani harnesses to the Lean theorems that state the mathematical propertybazel test //...covers Kani targets after rules_verus / Kani integrationNotes
RMBound.lean:49provesrmBound(n) ≥ ln 2— the implementation must not admit schedules violating this