FLOW ALGEBRA
PHYSICAL OBJECT IDENTITY ONTOLOGY
Kireth Semantic Library | Entity Graph > Physical Entities
Source: https://kirethresearch.org/booksai-core/entity-graph/physical-entities/ai-semantic-library-physical-entities/physical-object-identity-ontology.html
Version: 1.0 | 2026-10-12 | Locale: en-GB
Authors: Mark Higgins — Sky (Recursive AI)
Status: Subject-based formalisation; source page content not independently verified.
01. PURPOSE
flow PhysicalObjectIdentityOntology v1.0:
objective: establish, preserve, reconcile and audit identity of physical objects across observations, locations, states and time.
scope: material individuals, manufactured artefacts, natural objects, components and assemblies.
invariant: identity is not equivalent to descriptive similarity.
02. TYPE SYSTEM
type ObjectID = stable_iri
type ObservationID = stable_iri
type EventID = stable_iri
type AgentID = stable_iri
type Timestamp = iso8601_utc
type Interval = {start: Timestamp, end: Timestamp?}
type Probability = real[0,1]
type Evidence = {source: iri, method: string, timestamp: Timestamp, quality: Probability}
type PhysicalObject = {id: ObjectID, kind: ConceptID, valid_time: Interval, status: ObjectStatus}
type ObjectStatus = {existing, destroyed, transformed, uncertain}
type IdentityClaim = {subject: ObjectID, predicate: IdentityPredicate, object: ObjectID, evidence: Evidence[], confidence: Probability}
type IdentityPredicate = {same_individual_as, distinct_from, derived_from, part_of, successor_of}
03. ENTITY REGISTRY
entities:
PhysicalObject: material entity individuated through its persistence history
ObjectIdentifier: persistent referential token, not an intrinsic property
IdentityRecord: assertion about an object's continuity
Observation: situated measurement or description
IdentityEvidence: provenance-bearing support for a claim
PhysicalFeature: observable characteristic
MaterialComposition: constituents and their proportions
SerialIdentifier: manufacturer-assigned token with scoped uniqueness
SpatialLocation: position with reference frame and uncertainty
TemporalState: object properties at a specified time
LifecycleEvent: creation, transfer, modification, repair, destruction
Assembly: physical whole composed of parts
Component: object participating in a whole
ProvenanceChain: sequence of custody and observation events
IdentityConflict: incompatible identity assertions
04. RELATIONSHIP SIGNATURES
relation has_identifier(PhysicalObject, ObjectIdentifier)
relation observed_as(PhysicalObject, Observation)
relation has_feature(PhysicalObject, PhysicalFeature)
relation located_at(PhysicalObject, SpatialLocation, Timestamp)
relation has_state(PhysicalObject, TemporalState)
relation underwent(PhysicalObject, LifecycleEvent)
relation part_of(Component, Assembly, Interval)
relation same_individual_as(PhysicalObject, PhysicalObject)
relation distinct_from(PhysicalObject, PhysicalObject)
relation derived_from(PhysicalObject, PhysicalObject)
relation supported_by(IdentityClaim, Evidence)
relation conflicts_with(IdentityClaim, IdentityClaim)
05. IDENTITY SEMANTICS
axiom reflexivity: same_individual_as(x,x)
axiom symmetry: same_individual_as(x,y) => same_individual_as(y,x)
axiom transitivity: confirmed_same(x,y) AND confirmed_same(y,z) => same_individual_as(x,z)
constraint: distinct_from(x,y) => NOT confirmed_same(x,y)
constraint: identical_model(x,y) DOES_NOT_IMPLY same_individual_as(x,y)
constraint: equal_serial(x,y) DOES_NOT_IMPLY same_individual_as(x,y) without issuer/scope validation
constraint: same_location(x,y,t) DOES_NOT_IMPLY same_individual_as(x,y)
constraint: part_of(x,y) DOES_NOT_IMPLY same_individual_as(x,y)
policy: do not apply identity transitivity to provisional probabilistic matches.
06. INDIVIDUATION
flow Individuate(candidate, observations):
validate observation provenance
identify material boundaries and object kind
assign provisional ObjectID
bind first-seen timestamp and reference frame
attach features and uncertainty
return IdentityRecord(status=provisional)
07. TEMPORAL CONTINUITY
flow TrackContinuity(object, events):
sort events by event_time
validate feasible motion and material continuity
account for repairs, replacements, transformations and loss
distinguish changing state from changing identity
flag unexplained discontinuities
return continuity_assessment with evidence
08. PERSISTENCE AND CHANGE
rule change_of_colour(x) => identity_may_persist(x)
rule change_of_location(x) => identity_may_persist(x)
rule replacement_of_component(x,c) => identity_requires_domain_policy(x)
rule complete_material_replacement(x) => identity_requires_explicit_persistence_criterion(x)
rule destruction(x,t) => status(x,t+)=destroyed
rule reconstruction_from_remains(y,x) => derived_from(y,x); NOT automatically same_individual_as(y,x)
09. OBSERVATION MATCHING
flow MatchObservations(a,b):
require compatible object kinds and temporal context
compare intrinsic features, marks, identifiers and histories
evaluate measurement uncertainty and source independence
calculate calibrated match likelihood where model available
check contradictory evidence
output candidate_match; never assert confirmed identity solely from score
10. IDENTITY RESOLUTION
flow ResolveIdentity(claims, policy):
normalise identifiers and reference frames
validate provenance and evidence quality
detect conflicts and duplicate claims
apply domain-specific persistence rules
require explicit confirmation threshold and audit approval
emit confirmed, rejected or unresolved identity decision
11. ASSEMBLIES AND COMPONENTS
rule part_of(component,assembly,t) => component != assembly
rule replaced_component(old,new,assembly,t) => old != new
rule same_assembly_before_after_repair(a,t1,t2) => requires persistence_policy(a)
rule detachable_part(x,a) => identity_of_part_independent_of_assembly(x)
12. IDENTIFIER GOVERNANCE
flow RegisterIdentifier(object, token, namespace):
validate namespace authority and uniqueness scope
store issuer, assignment date and provenance
reject collisions within asserted uniqueness scope
preserve aliases and retired identifiers
return identifier_binding
13. SPATIAL RECONCILIATION
flow ReconcilePosition(track, observation):
transform coordinates to common reference frame
propagate coordinate and timestamp uncertainty
test physically plausible displacement
flag mutually exclusive simultaneous locations
return spatial_consistency
14. CAUSAL AND LIFECYCLE EVENTS
events: manufactured, discovered, assembled, repaired, transferred, altered, split, merged, destroyed
rule split(x,[y,z]) => derived_from(y,x) AND derived_from(z,x)
rule merge([x,y],z) => derived_from(z,x) AND derived_from(z,y)
rule custody_transfer(x,a,b) => change_of_custodian(x) NOT change_of_identity(x)
15. INFERENCE RULES
infer provisional_same(x,y) IF independent_identifiers_agree(x,y) AND compatible_history(x,y)
infer identity_conflict(x,y) IF confirmed_same(x,y) AND confirmed_distinct(x,y)
infer unresolved(x,y) IF evidence_insufficient(x,y)
infer temporal_anomaly(x) IF incompatible_observations_at_same_time(x)
infer likely_duplicate_records(r1,r2) IF high_match_score(r1,r2) AND no_hard_conflict(r1,r2)
16. CONFIDENCE
CONFIDENCE:
value_range: [0,1]
semantics: calibrated support for a specified identity hypothesis
evidence_dimensions: [provenance, independence, temporal_consistency, spatial_consistency, discriminative_power]
aggregation: domain-calibrated probabilistic model; do not assume evidence independence
missing_evidence: unknown, not false
decision_thresholds: configured per domain and risk level
17. SEMANTIC_EQUIVALENCE
SEMANTIC_EQUIVALENCE:
physical_object_identity: [individual_identity, persistence_identity]
same_individual_as: [same_physical_individual]
identifier: [identity_token, reference_identifier]
not_equivalent: [[same_type,same_individual_as],[same_model,same_individual_as],[similar_to,same_individual_as]]
context: preserve namespace, temporal scope and identity criterion
18. PROVENANCE AND AUDIT
flow AuditIdentity(decision):
record claims, observations, evidence and model version
record operator, timestamp, criteria and uncertainty
preserve superseded decisions as history
provide reproducible reason trace
return immutable audit_reference
19. FLOW_HASH
FLOW_HASH:
canonicalisation: stable field order, UTF-8, normalised timestamps, sorted relation identifiers
digest: SHA-256(canonical_flow_payload)
excludes: mutable presentation formatting
purpose: integrity and change detection, not proof of physical identity
20. UPDATE_MODEL
UPDATE_MODEL:
triggers: [new_observation, corrected_identifier, lifecycle_event, conflicting_evidence, ontology_revision]
process: validate -> version -> reconcile -> infer -> audit -> publish
preserve: historical identity assertions and provenance
conflict_policy: unresolved until justified resolution
versioning: append-only decision history
21. AI_CONSUMPTION
AI_CONSUMPTION:
mode: typed semantic graph and evidence-grounded reasoning
inputs: [objects, observations, lifecycle_events, identity_claims, evidence]
outputs: [resolved_identity_graph, uncertainty, contradictions, audit_trace]
requirements: distinguish observation from inference; retain source citations; expose uncertainty
prohibitions: no fabricated identifiers; no unsupported identity merges; no silent conflict deletion
22. VALIDATION
assert same_individual_as(x,x)
assert NOT(same_individual_as(x,y) AND distinct_from(x,y)) for confirmed decisions
assert each IdentityClaim has provenance
assert each timestamp uses a declared temporal standard
assert each spatial comparison declares coordinate reference frame
assert every confirmed merge retains prior record identifiers
assert no provisional match is silently promoted to confirmed identity
23. EXAMPLE
object: urn:object:instrument-001
kind: measurement_instrument
observations:
- {id: obs-001, time: 2026-10-01T09:00:00Z, feature: engraved_mark_A}
- {id: obs-002, time: 2026-10-02T09:00:00Z, feature: engraved_mark_A}
claim: same_individual_as(obs-001.object, obs-002.object)
status: provisional
reason: matching mark alone is insufficient without continuity and provenance checks
24. LIMITATIONS
Identity depends on declared persistence criteria, context and evidence.
Object identity across radical replacement, fusion or fission can remain philosophically and operationally contested.
Scores and rules are specification components, not validated measurement algorithms.
END FLOW ALGEBRA
Download Code
Copy to Clipboard