Transmission: the Agree state-update on a found goal #
Probe (Probe/Basic.lean) models the search half of Agree. This file adds
the transmission half — what a successful Agree does once a goal is found —
realizing the Probe.agreeWith TODO. An Agree operation is a Probe plus a
state-update xmit:
Probe.transmit p xmit init goals searches goals; if the probe Agrees with an
active goal g, it updates the state via xmit g; otherwise it leaves the state
unchanged — Agree fails gracefully, no crash ([Pre14]).
The direction of transmission is the choice of xmit/state, not a separate
axis: goal→probe copy (φ-valuation; Agree.applyAgree is recognized as this
instance in Agree.lean), probe→goal assignment (dependent case), or sharing.
Multiple-goal assignment (a clause's worth of case) is a fold of transmits —
the composition axis (cascade/ordered stack), not a single transmit.
An Agree operation: search (Probe) + a transmission xmit applied to the
active goal it finds. No active goal ⇒ state unchanged (graceful failure).
Instances For
Agree fails gracefully: with no goal to value the probe, the state is left unchanged ([Pre14] — failure to Agree does not crash).
An inactive closest goal absorbs the probe without transmission ([Dea24]: satisfaction without interaction).
For a probe with no activity restriction (ofVis), transmission fires on
the structurally closest visible goal.