Skip to content
← Documentation

docs/occurrence-falsification.md


Attacking occurrence

Occurrence attacked as constraint was. Two reductions attempted, one ledger of six failure classes across seven domains, and a correction to the previous document's conclusion about state.

⚠️ Superseded by minimal-ontology.md. State and Occurrence were subsequently found to derive from a persistence law, which is promoted in their place. The reductions refuted below stay refuted — occurrence is not a state — but the two kinds are the law's two values, not primitives.

Outcome: occurrence does not reduce. It is promoted. And the conditional on state is retracted — it rested on a category error this document names.


The three layers, kept apart

The previous document conflated them, and the conflation produced a wrong result.

Layer Question
Ontological kind is there a truth of this kind that is not a truth of another kind?
Canonical representation must it be stored, or may it be recomputed?
Computational derivation can it be computed from the others?

Derivability is a claim about computation. It is not a claim about kinds. Every argument below is filed against one layer and does not migrate.


Reduction A — occurrence as adjacent state difference

An occurrence is nothing but the difference between the state immediately before it and the state immediately after.

The falsification ledger

1. Occurrences with no lasting state — the state difference is zero.

Domain Case State difference
software git commit --allow-empty zero — identical tree hash
software a cache hit; a health-check ping zero
physics elastic collision of indistinguishable particles zero — momenta swap, configuration identical
physics Rayleigh scattering — photon absorbed, re-emitted at the same frequency zero — atom returns to ground state
biology an action potential zero — neuron returns to resting potential
biology heartbeat zero
chemistry one turn of a catalytic cycle zero — the catalyst is regenerated
astronomy a planetary transit zero — configuration recurs each period
economics a wash trade zero net position
transportation a round trip zero — vehicle returns to origin

Every domain supplies one. These are not exotic edge cases: an empty commit, a health check and a heartbeat are ordinary.

The circularity objection, and why it is fatal to the reduction. A defender answers that the state does differ — a counter incremented, a log line appended. But a counter of heartbeats is a count of occurrences, and a log of commits is a list of occurrences. Any state that distinguishes before from after in these cases is defined in terms of the very thing being eliminated. The reduction presupposes its target.

2. Simultaneous occurrences — the state difference is a sum, and sums do not invert.

Domain Case Collision
economics two payments of $50 vs one of $100 identical balance; distinct for reconciliation
software two commits merged as one squash identical tree
chemistry two pathways yielding the same product identical concentrations, different mechanism
physics two superposed waves the sum does not reveal the components
transportation a→b and c→b of 5 each, vs one transfer of 10 identical net levels

The map from occurrence-sets to state-differences is not injective. Not merely hard to invert — many-to-one, so no inverse exists.

3. Reversible occurrences — the sharpest case in the ledger.

Domain Case
chemistry dynamic equilibrium A ⇌ B
software commit, then revert
economics buy, then sell
transportation delivered, then returned
physics a pendulum at the same phase

Dynamic equilibrium is decisive. At equilibrium the forward and reverse reactions proceed continuously and at high rate, while every concentration stays constant. Two vessels with identical states can have turnover rates differing by orders of magnitude. That difference is physically real, measurable by isotopic labelling — and completely invisible in the state, at every instant, forever. This is not a case where state-difference loses information at the margin. There is no state difference at all, and the occurrences never stop.

4. Cyclic occurrences — state difference over a complete cycle is zero.

Domain Case
astronomy an orbit — the body returns to the same position
biology the cell cycle; circadian rhythm; the Krebs cycle
software a scheduled CI run; a polling loop
physics any oscillation

Over one period the state returns exactly. Yet N cycles is not M cycles, and an orbital period is knowable only by counting returns. Counting requires countable things. This is the polling-sensor result from identity-axes.md reappearing from the other direction: there, repeated equal observations were one truth; here, repeated equal states are many. The two together show value-equality settles nothing on its own.

5. Idempotent occurrences — zero state difference by design.

Domain Case
software PUT with the same body twice; mkdir -p; installing an installed package
economics a duplicate payment rejected as duplicate
biology re-vaccination of an immune subject

The second occurrence has no state effect by construction. And the operational question "was the request never received, or received and a no-op?" is real, routinely asked, and unanswerable from state. That is the missing-versus-zero distinction, reappearing at the occurrence layer — arrived at now by a third independent route.

6. Causally related occurrences.

Domain Case
software commit → CI run → deploy
chemistry chain reaction: initiation, propagation, termination
biology a signal transduction cascade
physics photon emitted here, absorbed there
economics payment → shipment

Causation relates occurrences. Eliminate occurrences and the relata vanish — concentrations do not carry the chain structure that produced them.

This argument is weaker than the others and is graded accordingly. It shows that eliminating occurrences would make something else inexpressible, not that occurrence is itself irreducible. It is corroboration, not proof.

Verdict on Reduction A

Fails at the computational derivation layer: classes 1–5 exhibit occurrences with zero or non-invertible state difference. Fails at the ontological layer too, and by a bridge that must be stated explicitly:

An empty commit did happen. That is a fact about reality. It is not recoverable from any state, at any time, under any observational completeness. Therefore there exists a truth that no state expresses.

Non-derivability alone would be a computation result. Non-derivability plus the truth being real is an ontology result.


Reduction B — occurrence as a state of the record

"Commit abc123 exists in the repository" is a state. It is interpolable — it holds continuously once written. So occurrences are just states of logs.

This is stronger than Reduction A, because it is how systems actually work. It fails on three counts.

It reduces records, not occurrences. The commit's presence in the log is a state of the log. The committing was an occurrence. These have different subjects, and conflating them is the substitution defect: measuring the record and reporting the event.

It presupposes occurrences as subjects. "Commit abc123 exists" is a state whose subject is an occurrence. truth-kinds.md already found that occurrences become subjects — a commit acquires an author, a payment a status. So the reduction requires occurrences to exist as entities in order to name them. Same circularity as the counter, one level up.

It requires universal recording. Where nothing recorded, there is no state to appeal to — and the heartbeat, the transit and the equilibrium turnover mostly go unrecorded. The reduction therefore covers recorded occurrences only, which is the class defined by having a state, chosen after the fact.

Verdict on Reduction B

Fails. It is a canonical representation result wearing ontological clothing: recording an occurrence produces a state that stands in for it. True, useful, and not an elimination.


Retraction — state's survival is not conditional

truth-reduction.md concluded that "the size of the taxonomy is a function of observational completeness — one kind under complete observation, two under partial."

That is wrong, and wrong in exactly the way this document's first section warns against. Event sourcing shows state is computable from a complete occurrence history plus an origin. It does not show that "the temperature is 20°" is the same kind of truth as "the temperature changed by 2°." Those have different absent-evidence semantics, different separation, and answer different questions — the kind-identity criterion from truth-reduction.md §3, applied to itself.

Filed correctly:

Layer State
ontological kind distinct — unconditionally
canonical representation may be derived in a closed system with a known origin
computational derivation derivable from complete occurrence history; not from partial

The completeness condition governs the bottom two rows and does not reach the top one. I had let a derivation result set an ontology conclusion, which is the error the layer separation exists to prevent.


What the two kinds now look like

Symmetric ontologically, asymmetric in representation:

state occurrence
ontological kind distinct distinct
must be stored? no — derivable from complete occurrences yes — derivable from nothing
absent evidence means unchanged did not happen
separation on change of value always

The asymmetry is real and does not rank them. A derivable kind is not a lesser kind.

One representation-level unification, offered as such

Occurrence separation is the degenerate case of episode separation — the case where value-equality never implies truth-identity. So a single separation mechanism can serve both, parameterised by whether equal values may merge.

That is a canonical representation result. It does not merge the kinds: the parameter is exactly the fork, and every other law still reads it.


Where the taxonomy stands

Kind Verdict
occurrence promoted. Two reductions attempted; six failure classes across seven domains; both reductions circular in the same way
state promoted. Distinct ontologically and unconditionally; the earlier conditional is retracted
constraint eliminated → state on a policy subject
relation eliminated → state over a tuple
measurement eliminated → evidence layer
capability eliminated → state (least settled)

Both reductions of occurrence failed by presupposing occurrences — one in a counter, one in a log entry's subject. A reduction that must name its target to perform the elimination is not an elimination. That is the sustained failure the promotion required.

What is still not established

  • capability remains the soft joint, untouched by this round.
  • The promotion rests on failures to reduce, which never prove impossibility. Two reductions failing is stronger than one, and it is not a proof.
  • The causal argument (class 6) is corroboration and is not load-bearing.

Nothing implemented.