Primitivity transport through the Proposition 5.9 collapse #
This file transports paper condition (5.11)(c), represented by
NoProperLeafBlock, through the inside-subtree word collapse.
Canonical finite word associated with a list.
Equations
Instances For
The finite word represented by the expanded list.
Equations
- d.expandedWord = List.Vector.get ⟨d.expandWord, ⋯⟩
Instances For
Pulling a collapsed alphabet subset back before collapse #
A collapsed subset pulls back by replacing the marker with the whole inside alphabet and leaving outside letters unchanged.
Equations
Instances For
Equations
- Anderson4D.liftCollapsedAlphabet S = {x : A ⊕ B | Anderson4D.collapseAlphabetMap x ∈ S}
Instances For
Expansion respects synchronized concatenation #
Every expanded letter is selected by the lifted alphabet if all source tokens in the collapsed segment are selected.
Every expanded letter is unselected by the lifted alphabet if all source tokens in the collapsed segment are unselected.
Under the raw-collapse nonempty-block invariant, a nonempty collapsed segment has a nonempty expansion.
If every position of the canonical finite word is selected, every list entry is selected.
A single middle block is an index interval #
In an outside/inside/outside list, membership in the inside alphabet is
exactly membership in the middle numerical range. Keeping the ambient list
as a variable lets dependent elimination transport its Fin index cleanly.
Generic form of the middle-range lemma for an arbitrary finite alphabet subset and lists already known to be respectively outside/inside/outside.
An outside/inside/outside list decomposition gives the corresponding closed interval of selected finite-word positions.
Conversely, a closed interval of selected finite-word positions yields an outside/inside/outside list decomposition.
With one inside block, the positions occupied by inside letters form one closed interval.
Excluding the one-block and zero-block degenerations #
An actually occurring inside letter forces at least one collapse block.
The primitivity source of s ≥ 1. If both sides of the alphabet
actually occur, condition (5.11)(c) rules out a single maximal inside block.
Consequently there are at least two blocks and hence at least one proper
composition cut.
Valid positive multiplicities discharge the two occurrence hypotheses in
two_le_blocks_of_noProperLeafBlock.
Positive valid multiplicities give the paper's nondegenerate cut ledger
1 ≤ s = |O|.
Primitivity descends to the word on the contracted alphabet. A collapsed alphabet subset is pulled back by replacing the marker with the whole inside alphabet; a collapsed interval expands to an interval before collapse.
Equivalent cut-cardinality form used in the paper's notation s = |O|.