Parse-directed scheduler execution #
Ordinary parse execution and the unbounded semantic completeness theorem.
Ordinary parse-directed execution #
Focus the first symbol of a nonempty continuation word. The empty fallback is convenient for total statements; every use in the live runner is proved nonempty by its layout.
Equations
Instances For
Productive moves leave an already stable frame prefix unchanged. Initial and freshly opened pop frames are stable.
Equations
- IndexedGrammar.Aho.StablePrefix alpha = (IndexedGrammar.Aho.markProductivePrefix alpha = alpha)
Instances For
Stable-context constructors for the elementary moves #
Mutual plain/live execution statement used by the singleton scheduler. A plain task uses
none of its inherited stack. A live task uses exactly the nonempty prefix visible; its
singleton layout may cross close markers but not another selected index or an open $.
Every selected token is used at the endpoint.
Every concrete normal-form parse has an ordinary accepting run of Aho's composite machine. This is the unconditional semantic completeness theorem; the later accounting refinement only strengthens the same construction with a uniform work bound.