Skip to main content

Physical Object Identity Ontology

AI Semantic Library Physical Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 October 2026
Audio Overview
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
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ