mirror of
https://github.com/saymrwulf/fips205-slhdsa-verified.git
synced 2026-09-03 19:53:49 +00:00
Real progress on the first certificate (chain / Algorithm 5). Two mathematically-substantive lemmas now PROVEN and axiom-clean ([propext, Classical.choice, Quot.sound]): - u32_succ: the successful u32 index increment (start+1 = ok w, no overflow from the theorem's bound) — via UScalar.add_equiv case split. - fwd_succ: the range iterator's forward_checked start 1 = ok (some w), bridging checked_add/Option.ofResult/ofNatCore to the plain add. - match_ok_bind: the loop.eq_1 outer match = Result bind (rfl). chain_free_loop_eq BASE CASE proven (empty range). Two sorries remain, both PURE LEAN PLUMBING, no math left: - chain_step (one loop step = one fold step): reduction fully mechanised except exposing the let-pair so rw[match_ok_bind] can see the bind; next tactic documented in-file (full simp to reduce the let-pair, then match_ok_bind + bind_assoc; fallback = the WP loop.spec_decr_nat/spec_mono dalek pattern). - the succ case, which is chain_step + ih once chain_step lands. Still in drafts/ (sorries ⇒ never Proofs/ or check.sh); zero certificates claimed. Probes ran under lean-guard per S1. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ChainSpec.lean | ||