Files
LithosAnanake/proof
Robert Allan JamesandClaude Sonnet 5 c1360df2d1 proof/: add StarForth_Block_Words.thy (SCR only)
block_words.c is categorically different from every file covered so far in
this sweep: every other word_source file operates on pure per-VM internal
state already in vm_state (data_stack/return_stack/memory/dictionary).
block_words.c sits on top of a real disk-backed I/O subsystem
(block_subsystem.h) plus a per-VM in-memory cache of it
(vm->blk_vm_lbn/blk_vm_cbuf/blk_vm_dirty/blk_vm_next), none of which are
in vm_state.

Only SCR is self-contained (just needs vm->scr_addr, added to vm_state
the same way here/ecw_nesting were for earlier files). The other 11 words
are deferred for three reasons documented in the theory header: the
block-window cache subsystem (a modeling project on the scale of the
deferred TIB input subsystem, not a one-word extension), real disk I/O via
block_subsystem.h, and recursive vm_interpret()/printf() in LOAD/LIST/
THRU/-->.

Noted in passing: blk_vm_evict/blk_vm_flush_all's own comments document a
real raw-pointer-lifetime bug (stale C buffer pointers after block-
subsystem struct-copy eviction) that was already found and fixed by hand
in the C, before this suite ever looked at the file -- not an open issue,
just worth recording as prior art for exactly the class of bug this sweep
exists to catch.

30 theory files verify with zero errors.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-13 23:14:24 -04:00
..

proof/

Isabelle/HOL theory files providing machine-checkable proofs of determinism and correctness for StarForth. 24 theory files covering all 7 feedback loops, core word categories, and the word-level ACL system.

Running proofs

isabelle build -D proof/

Requires an Isabelle installation. See docs/01-getting-started/DEVELOPER.md.

Theory files

Foundations

File Covers
StarForth_Base.thy Base definitions and type system
StarForth_Correctness.thy Overall correctness
StarForth_Transition.thy State transitions
StarForth_Concurrent.thy Concurrency properties
StarForth_Mutex.thy Mutual exclusion

Physics loops (17)

File Loop
StarForth_Loop1_Heat.thy Execution heat tracking
StarForth_Loop2_Window.thy Rolling window of truth
StarForth_Loop3_Decay.thy Linear decay
StarForth_Loop4_Pipeline.thy Word transition prediction
StarForth_Loop5_WinInf.thy Window width inference
StarForth_Loop6_DecayInf.thy Decay slope inference
StarForth_Loop7_Heartrate.thy Adaptive heartrate

Word categories

StarForth_Arithmetic_Words.thy, StarForth_Stack_Words.thy, StarForth_Logical_Words.thy, StarForth_Memory_Words.thy, StarForth_Return_Stack_Words.thy, StarForth_Q48_16.thy

ACL system (Phase 6)

File Property
ACL_Pin_Monotone.thy Pin is one-way
ACL_Inherit_Clears_Pin.thy Inheritance clears pin
ACL_TTL_Bounded.thy TTL stays within bounds
ACL_Emergency_Bypass.thy Emergency console bypass
ACL_No_Escalation.thy No privilege escalation

See also