The bipartite regression for the successor contract (R4 converse, #107) #
A hand-built rank 1 → 2 successor witness for the one-sort binary signature digraphSig, whose
purpose is to test that RankSuccessor is an expressive specification — before either general
route is attempted, so that the acceptance battery cannot be shaped by an implementation.
The array is the bipartite XOR law: each vertex carries an i.i.d. colour, and the edge X_uv is
the parity colour u ⊕ colour v.
What makes this a regression rather than merely a construction #
- the array law
bipartiteLawis defined from the fresh singleton layer alone, and the rank-one couplingCis defined as the independent productbipartiteLaw × rankLatentSource 1. Neither is read off the rank-two coupling, so the truncation identity compares two separately described couplings and genuinely uses the source factorization; - the nonindependence witness is numerical, not merely functional:
X_01and the matching colour-parity event have joint probability1/2against a product of marginals1/4. "The edge is a function of the colours" would also hold for a constant edge and would certify nothing; - the rank-two decoder recovers both directed coordinates
X_uvandX_vuof the support-{u,v}block as the same parity, so symmetry is exhibited as a property of this law rather than something hidden in the signature. The diagonal singleton block is constantlyfalse, which the XOR definition delivers for free.
The fresh singleton layer of the rank-two latent cube: one uniform per vertex.
Equations
Instances For
The singleton support at a vertex.
Instances For
The colour of a vertex, read off its own fresh coordinate.
Equations
Instances For
The bipartite array: the edge at an ordered pair is the parity of the two colours. The
diagonal is constantly false because b ⊕ b = false.
Equations
Instances For
The diagonal is constantly false — the singleton-support block of this law carries no information, which is what makes its rank-one recovery and screening deterministic.
The relabeling action on the fresh layer #
A permutation of the vertices permutes the singleton supports — the rank-one instance of the
generic rankSupportPerm.
Equations
- RelSignature.BipartiteRegression.supportPerm σ = RelSignature.rankSupportPerm (fun (x : Unit) => σ) 1
Instances For
Equivariance of the array: relabeling the vertices is reindexing the fresh layer.
The array law #
The bipartite law, defined from the fresh singleton layer alone — deliberately not read off the rank-two coupling, so that the truncation identity later compares two independently described couplings.
Equations
Instances For
The bipartite law as an exchangeable law on the infinite structure space.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Blocks of this signature #
For digraphSig every coordinate has a two-element or one-element support, never the empty one,
and a singleton support forces the diagonal coordinate.
A coordinate whose support is the singleton {v} is the diagonal coordinate at v.
The rank-one coupling, defined independently of the rank-two one #
The rank-one coupling: the bipartite law together with an independent global uniform
U_∅. At rank one the latent cube is exactly that one coordinate — it is not trivial, and this
coupling is described without reference to the rank-two object.
Equations
Instances For
The singleton block is a.e. constant under the bipartite law.
The rank-one representation, built directly from the independently described coupling.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The rank-two coupling and the three central identities #
The identities are proved immediately after the definition, before invariance or screening add noise. The third is the real gate: it visibly consumes the source factorization.
The fresh singleton layer of a rank-two latent point.
Equations
Instances For
The rank-two coupling: the array is built from the fresh singleton layer, and the whole rank-two latent point is retained.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fresh layer carries the i.i.d. singleton source — the second factor of the successor split.
Identity 1: the structure marginal is the bipartite law.
Identity 2: the latent marginal is the rank-two source.
Identity 3 — the gate: truncating the rank-two coupling's latents to rank one returns the
independently defined rank-one coupling. This is where the source factorization is consumed:
U_∅ splits off from the singleton layer, the array depends only on the latter, and the
truncation reads only the former.
Recovery below rank two #
lower_recovers at rank two ranges over supports of cardinality < 2, so it sees only the empty
and singleton cases — never a two-point support. Both blocks are deterministic: the empty one is
vacuous for this signature, the singleton one is the constantly-false diagonal. The two-point
decoder plays no part here.
The two-point deterministic block #
The organizing lemma for rank-two screening and for the public XOR identity: on a two-point
support the whole directed block — both coordinates X_uv and X_vu — is a deterministic
function of the two singleton latents visible there. Recovering both as the same parity is what
exhibits symmetry as a property of this law rather than of the signature.
A vertex of the pair, as a latent index visible at that support.
Instances For
The two-point decoder: read the two singleton latents and return their parity, for every coordinate of the block.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fresh layer at a vertex is the rank-two latent at that singleton support.
The organizing lemma: on a two-point support the whole directed block is the deterministic
parity of the two singleton latents visible there. Both X_uv and X_vu decode to the same
value, so the symmetry of this law is exhibited rather than assumed.
Rank-two screening #
The arbitrary two-point support is normalized to pairSupport u v first, so that the
deterministic-block lemma applies directly and no dependent block or local-latent space has to be
transported across a later equality.
A support of cardinality two is a pairSupport at distinct vertices.
The decoder identity holds a.e. under the rank-two coupling.
Rank-two screening: at a two-point support the block is conditionally independent of the rank-truncated remainder given the latents visible there — because it is a measurable function of them.
The joint action #
One exact pointwise lemma, proved before any measure is touched, so that the inverse and orientation conventions are isolated in a single place.
The finitely supported rank-support action agrees with the full-permutation helper. Kept local to this file: the two serve genuinely different APIs.
The fresh layer intertwines the rank-two latent action with the vertex action.
The exact pointwise joint action. Relabeling the rank-two latent point and then building the pair is the same as building the pair and acting diagonally.
Rank-two invariance, now just Measure.map_map, the joint action, and source
invariance.
The representation and the successor witness #
The rank-two representation. Every field is one of the theorems above.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The successor witness: a two-field literal whose truncation proof is exactly the gate
identity. This is the regression's headline — the contract is satisfied by an explicit rank
1 → 2 example whose two couplings were described independently.
Equations
Instances For
The public XOR identity #
A coordinate projection of the deterministic-block lemma — no second pushforward calculation.
The directed coordinate at a pair of distinct vertices lies in that pair's block.
The XOR identity: almost surely the edge at a pair of distinct vertices is the parity of their two colours. Obtained by evaluating the block identity at one coordinate.
The numerical nonindependence witness #
"The edge is a function of the colours" would also hold for a constant edge. What rules that out
is arithmetic: the edge event and the matching colour-parity event each have probability 1/2,
they coincide, and so their joint probability is 1/2 against a product of marginals 1/4.
The two vertices 0 and 1, as fresh-layer indices.
Equations
Instances For
The two-vertex marginal of the fresh source is the two-fold uniform product.
The XOR event has mass one half on the two-vertex marginal: it is the disjoint union of
two rectangles, each of mass 1/4.
Nonindependence #
All null-set reasoning lives in one a.e. event-equivalence lemma; the final theorem is purely numerical.
The latent-side parity event.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The structure-side edge event.
Equations
Instances For
The latent parity event has probability one half, transported from the two-vertex marginal.
The one a.e. event equivalence: the pulled-back edge and parity events agree.
The edge event has probability one half.
Their intersection also has probability one half — they coincide.
The array is not independent of its new latent layer. A constant edge would also be "a
function of the colours"; what rules that out is that 1/2 ≠ 1/4.