The expansion atoms, instantiated: the tag-branched wide loop #
The third semantic instantiation: an expansion atom's machinery at the pack
DescriptiveComplexity.Draw.Data.expArgs. The witness chain reads each
argument point's tag off its witness cell, the branch dispatches on the
one-hot decoding, and the branch's element loop enumerates the wide
tuples – the whole prefix of the defining sentence – one leaf-read trip per
block atom, the sub-fold riding in the sac slots.
This file builds the generated families and their invariants:
DescriptiveComplexity.Draw.Data.expTagCell/expECell– the cells the trips go to: the tag-witness tuples and the member tuples of the copies' points, at the payload the round's wide tuple spells;DescriptiveComplexity.Draw.Data.readLvE_expFam– the loop element is the round's wide tuple at every stage of the family;- the chain read-backs: the witness flags decode the points' tags, the leaf-read flags hold the block atoms' bits.
The wide loop element through the machinery's operations #
The wide loop element rides along a control-bit store off it.
Dependency graph
The wide loop element rides along a sub-fold accumulator write.
Dependency graph
The wide loop element after an advance is the next tuple.
Dependency graph
A within-round chain preserving the loop element preserves it end to end – the generic riding lemma every stored-read chain uses.
Dependency graph
The cells and registers of an expansion atom #
The register behind the i-th witness read: the copy's level's
register.
Instances For
Dependency graph
The cell of the i-th witness read: the tag's witness tuple in the
copy's block.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The register behind the r-th leaf read of branch τ.
Equations
- dt.expESet vi ts e st τ r = dt.lvSet st vi (ts (DescriptiveComplexity.Draw.Data.relLeafData e τ r).fst.1)
Instances For
Dependency graph
The payload the r-th leaf spells at round a: the block atom's
levels read out of the round's wide tuple.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The cell of the r-th leaf read at round a: the member tuple the
block atom names, in the copy's block.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The generated family of branch τ's element loop, at the pack.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
A leaf-read store preserves the wide loop element.
Dependency graph
The branch's loop starts at the least wide tuple.
Dependency graph
A round's fold-and-advance steps the wide tuple.
Dependency graph
The loop element is the round's wide tuple, at every stage of the family.
Dependency graph
An expansion atom's element loop is blind to the two scratch registers: it reads the levels' register sets – the mirror and VAL – and its background at the working cell alone.
Dependency graph
The witness chain: its family, read-backs and decode #
The generated witness chain of an expansion atom, at the pack.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The witness chain is blind to the two scratch registers too.
Dependency graph
The witness numbering is injective.
Dependency graph
The index of one witness read, by position and tag.
Equations
Instances For
Dependency graph
The numbering decodes the index.
Dependency graph
The witness flags read back: after the chain, the flag of position
ℓ and tag t holds the digit of the witness cell of (ℓ, t).
Dependency graph
The chain decodes the argument points' tags: if the levels' registers hold the encodings of the points, the flags are one-hot at the points' tag tuple, which is the branch dispatch's guard.
Dependency graph
The payload at a generated state, and the leaf cells #
The payload a leaf read spells at a generated state is the round's
tuple's: the guard's computed coordinates are the cell of
DescriptiveComplexity.Draw.Data.expECell.
Dependency graph
The leaf guards, at the generated states #
A leaf read's guard holds at its cell: the computed coordinates are the round's payload, so the trip stops at the member tuple's cell.
Dependency graph
A leaf read's guard identifies its cell.
Dependency graph
What a leaf trip's digit means: at a round's cell, the register's
bit is the block atom's value at the points the registers encode, read at
the valuation the round's tuple spells. This is the hav input of
DescriptiveComplexity.Draw.Data.expLeafVal_iff, hence of the exit
verdict.
Dependency graph
The expansion atom's machine run #
The expansion atom's machine run: from the machinery's first phase at the marker – the witness chain decoding the argument points' tags, the dispatch onto their branch, and that branch's wide element loop, one leaf trip per block atom – to the exit phase one cell to the marker's right.
Dependency graph
The sub-fold: the sac invariant and the exit verdict #
The branch's leaf, over the wide valuation: the defining sentence's
matrix at the points' assignments, its levels read off the first n
coordinates of the wide tuple.
Equations
Instances For
Dependency graph
A sub-fold accumulator rides along a control-bit store off it.
Dependency graph
A sub-fold accumulator rides along a wide-tuple advance.
Dependency graph
A within-round chain preserving the accumulators preserves them end to end.
Dependency graph
A leaf-read store preserves the accumulators.
Dependency graph
The leaf-read flags read back: at a round's end, the flag of the
r-th block atom holds the digit of the round's cell.
Dependency graph
The leaf flag's value at a round's end is the branch's leaf: with the flags holding the block atoms' bits and the loop element the round's tuple, the Boolean function the control computes is the leaf predicate at that tuple.
Dependency graph
The sub-fold's accumulators fold the strict prefix: at every round's
entry, the sac slots hold the completed-subtree contributions of the
branch's prefix at the round's tuple.
Dependency graph
The verdict the exit control carries: the atom's slot holds the fold
of the branch's whole prefix at the points' assignments – the value
DescriptiveComplexity.Draw.Data.expLeaf's prefix takes over every wide
tuple, which DescriptiveComplexity.Problems.Wide.DrawExp reads as the
expansion atom's truth.
Dependency graph
The expansion atom's verdict is its truth: at the argument points
the registers encode, the bit the exit control files in the atom's slot is
RelMap of the expansion – the machine has evaluated the defining
sentence.