State Change as Passage Through Contestation
Table of contents
¶Abstract
The extending operation on the four-valued bilattice has an absorbing element: for all (Busaniche & Cignoli 2014, Proposition 2). A settled denial cannot be overridden by extension alone. We show that combining with the knowledge-order join produces a two-phase state-change mechanism: introduces (contestation) where entity and message disagree; resolves using the message as evidence. The cycle — contestation then settlement — is sufficient to compute interactive state transitions on any system of bilattice-valued subject-predicate-object triples. We verify this on Zork I (Infocom, 1983): 250 entities, 110 rooms, 20 tested interactions, all state transitions produced by with no rules, no conditionals, and no game-specific code. Comparison with Ceptre (Martens 2015), a linear logic programming language for interactive fiction that requires explicit rules, establishes that the cycle achieves rule-free interactive computation on the same class of problems.
¶1. The problem: absorbs
Imperative programs model state change as assignment: door.open = true. Rule engines model it as resource transformation: consume “closed,” produce “open” (Martens 2015). Both treat change as instantaneous substitution.
On the bilattice , the extending operation — the left adjoint of the Lambek residuation — does not permit substitution. Proposition 2 of the predication paper states:
The denial absorbs everything under . A closed door () extended by an open command () yields . The door stays closed. No message can override a settled denial through extension.
This appears to block interactive computation. If entities cannot change state under , then alone cannot run a game, a dialogue, or any system where things happen.
¶2. The two-phase cycle
The resolution uses both orderings of the bilattice.
¶Phase 1: — contestation via
The knowledge-order join is componentwise maximum on the twist-product pairs:
This merges evidence without resolving conflict:
The entity asserts (told false). The message asserts (told true). The join records both: (told both). The proposition is now contested — it carries positive and negative evidence simultaneously.
Key properties of :
| Entity | Message | Result | Reading |
|---|---|---|---|
| Contradiction → contestation | |||
| Agreement → no change | |||
| Silence → preservation | |||
| No prior → acceptance | |||
| Agreement → no change |
Only contradiction produces . Agreement and silence leave the value unchanged.
¶Phase 2: — settlement via
The contested value is the identity element for (Proposition 1):
A contested proposition accepts whatever evidence resolves it:
The message that created the contestation in Phase 1 now resolves it in Phase 2. The open command asserted ; the settlement extends by ; the result is . The door is open.
Values that are not pass through unchanged — and are settled, and on settled values produces settled values (Theorem 3: is closed under ).
¶The full primitive
where merges via pointwise over the fiber and extends each -valued proposition by the message’s evidence via . The result is the entity’s new fiber.
¶3. Properties
Four properties make the cycle sufficient for interactive computation. All are theorems of the algebra, verified exhaustively on .
P1. Settled values resist change. for all (absorption). only when . A settled proposition cannot be flipped by alone. Change requires to introduce first.
P2. Contested values accept resolution. , (identity). Once contested, any definite evidence resolves the proposition.
P3. Agreement is idempotent. , . A message that agrees with the entity produces no contestation and no state change.
P4. Silence preserves. , . A message that says nothing about a proposition leaves it unchanged.
Together: only contradictions produce state changes, every state change passes through , and the moment of change is algebraically visible as the set of contested propositions.
¶4. Comparison with linear logic rules
Martens (2015) built Ceptre, a linear logic programming language for interactive fiction. In Ceptre, state transitions are explicit rules:
door_closed, action_open -o door_open.
The rule consumes door_closed and produces door_open. Interactive computation is proof search: the engine finds all rules whose preconditions match the current state, applies the player’s chosen rule, and produces the new state.
Jakl (2025) proved the bilattice is the Chu construction over , making it a model of linear logic. The extending operation is tensor (); the restricting operation is linear implication (). Ceptre’s rules operate on this same algebraic structure.
The difference: Ceptre requires authored rules. The cycle requires none. The “rule” is implicit in the contradiction between entity fiber and message fiber. When the message says and the entity says , the algebra produces the state change without anyone writing a rule to match that case.
Both approaches are computationally sufficient for interactive systems. Ceptre’s sufficiency is established by Martens (2015) with case studies on combat games, social simulations, and interactive fiction. The cycle’s sufficiency is established by the verification below.
The distinction matters for system design: rule-based systems scale linearly in the number of interactions (each new verb-object combination requires a new rule). The algebraic system scales in the number of propositions — adding a new entity with the right propositions makes it interactive without additional rules.
¶5. Verification on Zork I
Zork I (Infocom, 1983) is a text adventure with 110 rooms, 140 objects, spatial navigation, inventory management, container manipulation, conditional exits, and puzzle mechanics. Its source code (ZIL, released under MIT license) specifies every interaction as imperative conditional logic.
We translated the game into 250 bilattice-valued entities (rooms with exit predicates, objects with state predicates) and defined verbs as fibers. The verb “open” is:
Applied to a closed mailbox:
Phase 1 (): on state:open, on state:closed. Two propositions contested.
Phase 2 (): on state:open, on state:closed. Both resolved. The mailbox is open.
Applying “open” to an already-open mailbox: on state:open. No contestation. No change. Idempotence without a check.
We tested 20 interactions covering the opening sequence: room descriptions, container open/close, object take/drop, inventory, navigation through 10 rooms, blocked exits, conditional exits (the kitchen window puzzle enabling passage between rooms), and cross-entity state cascades. All 20 produce correct output. The implementation uses three operations: , , and equality testing on bilattice values.
¶6. The four values as dynamics
| Value | Belnap (1977) | Computation | Dynamics |
|---|---|---|---|
| No information | Undetermined | Pre-information | |
| Told true | Settled true | Resists change | |
| Told false | Settled false | Absorbs under | |
| Told both | Contested | Accepts resolution |
Belnap’s original reading is epistemic: what has a reasoning system been told by its sources? The computational reading maps this to interactive state: and are settled, is in transition, is undetermined. The dynamic reading adds behavioral content: absorbs (the strongest form of resistance), is the identity for (the weakest form — open to any evidence), and is intermediate (resists contradiction but accepts agreement).
After closure (Theorem 3 of the predication paper), the effective algebra operates on . This three-valued system — settled-true, settled-false, in-transition — is the minimal algebra of interactive state.
¶See also
- The Adjoint Structure of Predication on Bilattice-Valued Fibers — the algebra, its properties, and the fiber functor
- Linear Logic as Interactive Computation — the Curry-Howard correspondence for linear logic and the Ceptre language
- The Chu Construction and Linear Logic — why the bilattice is a model of linear logic
- Predication as Residuation — the Lambek/Lawvere/Busaniche-Cignoli convergence
- What Resource Sensitivity Means for Knowledge — epistemic states as linear resources
Last reviewed .
References
[abramsky1993] . ().abramsky1993. Theoretical Computer Science, 111(1–2), 3–57.
[belnap1977] . ().A Useful Four-Valued Logic. Modern Uses of Multiple-Valued Logic, Reidel, 5–37.
[busaniche2014] . ().The Subvariety of Commutative Residuated Lattices Represented by Twist-Products. Algebra Universalis, 71, 5–22.
[fitting1991] . ().Bilattices and the Semantics of Logic Programming. J. Logic Programming, 11(2), 91–116.
[fitting2002] . ().Bilattices Are Nice Things. Self-Reference, CSLI Publications.
[jakl2025] . ().Four Imprints of Belnap's Useful Four-Valued Logic in Computer Science. arXiv:2503.20679.
[martens2015] . ().Programming Interactive Worlds with Linear Logic. Ph.D. dissertation, Carnegie Mellon University.