The stage atoms, instantiated: the copy loops #
The second semantic instantiation: the tuple loops of a stage atom's
machinery, at the pack DescriptiveComplexity.Draw.Data.stageArgs. Each
argument position runs one copy loop – a read at the source block's cell, the
bit through the control's copy flag, a write at the TARGET block's cell – and
this file proves its three invariants and its run:
DescriptiveComplexity.Draw.Data.readLv_stageIter0/_stageIter1– the loop element is the round's tuple, before and after the store;DescriptiveComplexity.Draw.Data.stageIterD_iff– the closed form of the destination track: a cell holds a bit exactly when some round already wrote it – the round's source bit – or it held one from the start and no round has touched it;DescriptiveComplexity.Draw.Data.stageTuple_run– the copy loop's run at the generated families, byDescriptiveComplexity.Draw.tuple_run_iterwith the name guards discharged throughDescriptiveComplexity.Draw.Data.nameG_iff.
The chaining of the k loops and the whole stage atom's run assemble on
top, with DescriptiveComplexity.Draw.Data.stage_run.
The source cell of a copy round: the padded cell of the round's tuple in the position's source block.
Equations
Instances For
Dependency graph
The destination cell of a copy round: the padded cell of the round's tuple in the TARGET block of the position.
Equations
- dt.stageXD zero iv ℓ b = dt.blkElt (Sum.inl (Fin.castLE ⋯ ℓ)) (DescriptiveComplexity.Draw.pad zero (ofLex b))
Instances For
Dependency graph
The background of a copy loop, as a function of the destination content: the state with the TARGET register at the given track.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The loop element through the copy's operations #
The copy loop's generated round tuples: the pre-store control's loop element is the round's tuple.
Dependency graph
The built TARGET, in closed form #
The built TARGET block, in closed form: a cell of the copy loop's destination holds a bit exactly when it is the destination cell of some tuple whose source bit is set – the loop having visited every tuple – or it held one from the start, off the loop's cells.
Dependency graph
The copy loop's run #
One copy loop's run: from its entry checkpoint at the marker to the exit phase one cell to its right, the TARGET block of the position holding the source block's bits at every tuple's cell.
Dependency graph
The copy loops, chained: the TARGET built position by position #
Position ℓ's loop copies its source block over what the earlier positions
built. The composed content and the control each thread through by one
recursion, DescriptiveComplexity.Draw.Data.stage_loops_run chains the
runs – every handover a backed-track equality – and
DescriptiveComplexity.Draw.Data.stage_run closes the whole random
access over the chain.
The TARGET after the first n copy loops: each position's loop
writes its source bits at its destination cells over what the earlier
positions built.
Equations
Instances For
Dependency graph
The address a stage atom reads lies in the logical interval: it is
built from padded destination cells in argument blocks alone
(stageTgtD_arg, stageTgtD_isPad), which is exactly
wmSetLt_logicalTop_of_isPad. This is the hbelow the dictionary invariant
of DescriptiveComplexity.Draw.Data.stageSt_old is owed: the invariant is an
equivalence over the interval and nowhere else, so an address that is read has
to be shown to lie there.
Dependency graph
The control after the first n copy loops.
Equations
- One or more equations did not get rendered due to their size.