FLOW ALGEBRA
TITLE: Robotics Domain Ontology
DOMAIN: Domain Ontologies / Computing Domains / Robotics
SOURCE: https://kirethresearch.org/booksai-core/ontologies/domain-ontologies/computing-domains/robotics-domain-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "RoboticsDomainOntology" v1.0 {
ontology:
id: "robotics-domain-ontology"
parent: "computing-domains"
purpose: "Represent robotic systems, their sensing, actuation, control, autonomy, operating environments and verifiable interactions."
types:
Robot: {id: string, kind: enum[industrial, mobile, service, medical, aerial, underwater, research, other], autonomy_level: string?, version: string?}
Component: {id: string, kind: enum[sensor, actuator, controller, manipulator, end_effector, power_supply, communication, other], specification: string?}
SensorObservation: {id: string, sensor_id: string, timestamp: datetime, value: string, unit: string?, uncertainty: number?, frame: string?, provenance: string}
ActuationCommand: {id: string, actuator_id: string, command: string, timestamp: datetime, limits: string?, authorised_by: string?}
Controller: {id: string, algorithm: string, version: string, update_period: number?}
Task: {id: string, goal: string, preconditions: string[], postconditions: string[], status: string}
Environment: {id: string, frame: string?, constraints: string[], hazards: string[]}
Pose: {position: number[], orientation: number[], frame: string, timestamp: datetime, uncertainty: number?}
Evidence: {id: string, source: string, timestamp: datetime?, method: string?, provenance: string}
Relationship: {id: string, subject: string, predicate: string, object: string, context: string?, confidence: number, evidence: string[]}
predicates:
has_component(robot: Robot, component: Component)
observes(sensor: Component, environment: Environment)
controlled_by(robot: Robot, controller: Controller)
commands(controller: Controller, actuator: Component)
performs(robot: Robot, task: Task)
operates_in(robot: Robot, environment: Environment)
located_at(robot: Robot, pose: Pose)
depends_on(task_a: Task, task_b: Task)
interacts_with(robot_a: Robot, robot_b: Robot)
supported_by(relationship: Relationship, evidence: Evidence)
constraints:
- "All relationship endpoints must resolve to typed entities."
- "Confidence values must lie within [0, 1]."
- "Observations and poses must preserve timestamps, units and coordinate frames where applicable."
- "Commands must respect actuator limits, safety constraints and applicable authorisation."
- "Task completion requires observed or validated postconditions, not merely a command being issued."
- "A detected obstacle does not imply a collision; temporal correlation does not establish causation."
- "Do not assume transitivity of physical interactions, component membership or control authority."
- "Distinguish commanded, estimated, observed and verified states."
inference:
rule component_membership:
if has_component(r,c) and valid(c)
then component_of(c,r)
confidence: "retain supporting evidence"
rule task_readiness:
if performs(r,t) and all_preconditions_verified(t) and safety_constraints_satisfied(r,t)
then eligible_to_execute(r,t)
confidence: "dependent on current evidence and operational context"
rule verified_completion:
if performs(r,t) and postconditions_observed(t) and evidence_valid(t)
then verified_completed(t)
confidence: "measurement and verification dependent"
rule dependency_reachability:
if depends_on(a,b) and depends_on(b,c) and compatible_dependency_context(a,b,c)
then indirectly_depends_on(a,c)
confidence: "preserve chain provenance; do not manufacture certainty"
SEMANTIC_EQUIVALENCE:
- "Normalise robotic component and task terminology against versioned vocabularies."
- "Distinguish equivalent identifiers from functionally similar hardware."
- "Preserve model version, coordinate frame, units and operating context."
CONFIDENCE:
range: [0,1]
factors: [sensor_uncertainty, calibration, model_validation, environmental_conditions, source_reliability, independent_replication]
policy: "Propagate uncertainty conservatively; never increase confidence solely by chaining inferences."
VALIDATION:
- "Check entity types, identifier resolution, timestamps, units, frames and provenance."
- "Check actuator and task constraints, control authority and safety interlocks."
- "Flag inconsistent state estimates, contradictory observations and stale sensor data."
- "Require documented verification for safety-critical conclusions."
FLOW_HASH:
algorithm: "SHA-256"
input: "canonicalised ontology version, typed assertions, rules and provenance"
note: "Compute hash at execution; no hash value is claimed here."
UPDATE_MODEL:
strategy: "versioned, provenance-preserving incremental update"
steps: [ingest, normalise, validate, compare, reconcile, recompute_inferences, publish]
rollback: true
AI_CONSUMPTION:
representation: "typed robotics knowledge graph with evidence-backed edges"
outputs: [entity_links, relation_triples, task_dependencies, uncertainty_annotations, inferred_edges, provenance_records]
safeguards: [preserve_safety_constraints, no_unverified_task_completion, no_unsupported_causal_claims, preserve_units_frames_and_time]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard