A finite common basis for indexed-grammar scope frontiers #
Gilman's marked Higman argument is applied separately to the finitely many
sources A and Af. This file takes their finite union, adds all words of
length at most one, and chooses one common length bound.
@[reducible, inline]
A source relevant to a beta word: either A or Af.
Instances For
Sentential form represented by a beta source key.
Equations
- IndexedGrammar.NFParse.betaKeyForm g key = match key.2 with | none => [IndexedGrammar.ISym.indexed key.1 []] | some f => [IndexedGrammar.ISym.indexed key.1 [f]]
Instances For
def
IndexedGrammar.NFParse.betaKeyOf
{T : Type}
{g : IndexedGrammar T}
(A : g.nt)
(sigma : List g.flag)
:
BetaKey g
The source key of a concrete parse node.
Instances For
All unstacked frontier words derivable from one source.
Equations
- IndexedGrammar.NFParse.frontierLanguage g key = {beta : List (g.nt ⊕ T) | g.Derives (IndexedGrammar.NFParse.betaKeyForm g key) (IndexedGrammar.NFParse.unstackedForm beta)}
Instances For
@[simp]
theorem
IndexedGrammar.NFParse.betaKeyForm_betaKeyOf
{T : Type}
{g : IndexedGrammar T}
(A : g.nt)
(sigma : List g.flag)
:
theorem
IndexedGrammar.NFParse.beta_mem_frontierLanguage
{T : Type}
{g : IndexedGrammar T}
{A : g.nt}
{sigma : List g.flag}
{w : List T}
(p : g.NFParse A sigma w)
:
theorem
IndexedGrammar.NFParse.exists_globalRetainingBasis
{T : Type}
(g : IndexedGrammar T)
[Fintype T]
[Fintype g.nt]
[Fintype g.flag]
:
A common finite retaining basis for every source A and Af, together
with a common bound C ≥ 2.