FLOW ALGEBRA
TITLE: Control Relationship Ontology
DOMAIN: Relationship Ontologies / System Relationships
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/system-relationships/control-relationship-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "ControlRelationshipOntology" v1.0 {
ontology:
id: "control-relationship-ontology"
parent: "system-relationships"
purpose: "Represent evidence-backed control, supervision, feedback and authority relationships between system components."
types:
System: {id: string, name: string, version: string?}
Component: {id: string, system_id: string, role: string}
Controller: {id: string, component_id: string, strategy: string?, version: string?}
ControlledProcess: {id: string, component_id: string, state_schema: string}
ControlSignal: {id: string, source: string, target: string, value: number?, unit: string?, timestamp: datetime?, provenance: string}
SensorObservation: {id: string, observed_process: string, quantity: number, unit: string, timestamp: datetime, uncertainty: number?, provenance: string}
Setpoint: {id: string, variable: string, value: number, unit: string, tolerance: number?}
ControlPolicy: {id: string, controller_id: string, constraints: string[], enabled: bool, version: string}
Relationship: {id: string, subject: string, predicate: string, object: string, context: string?, confidence: number, evidence: string[]}
predicates:
controls(controller: Controller, process: ControlledProcess)
supervises(controller: Controller, component: Component)
sends_signal(controller: Controller, signal: ControlSignal)
receives_signal(process: ControlledProcess, signal: ControlSignal)
observes(controller: Controller, observation: SensorObservation)
targets(controller: Controller, setpoint: Setpoint)
governed_by(controller: Controller, policy: ControlPolicy)
depends_on(component: Component, component: Component)
feeds_back(observation: SensorObservation, controller: Controller)
constraints:
- "All relationship endpoints must resolve to declared compatible types."
- "Confidence must be in [0,1]; claims require evidence and provenance."
- "Distinguish command authority from observed physical influence."
- "Control signals and setpoints must use compatible dimensions and units."
- "A controller's authority must be checked against its active policy and system scope."
- "A control relationship does not by itself prove stability, safety or successful execution."
- "Control, supervision and dependency are not automatically symmetric or transitive."
- "Feedback loops are permitted; flag unsafe or unbounded cycles for review."
- "Time-dependent control assertions must retain observation and command timestamps."
inference:
rule control_path:
if controls(c,p) and sends_signal(c,s) and receives_signal(p,s)
then control_path_evidenced(c,p,s)
confidence: "bounded by supporting observations; not proof of achieved control"
rule feedback_path:
if observes(c,o) and feeds_back(o,c) and valid(o)
then feedback_available(c,o)
confidence: "dependent on measurement quality and freshness"
rule policy_scoped_authority:
if governed_by(c,policy) and policy.enabled and permitted(policy,action)
then authorised_for(c,action)
confidence: "valid only within policy scope and version"
rule dependency_impact:
if depends_on(a,b) and unavailable(b)
then potential_impact(a,b)
confidence: "risk indicator, not a certain failure"
SEMANTIC_EQUIVALENCE:
- "Normalise component identifiers within versioned system registries."
- "Map synonymous control terms only when roles and operating context match."
- "Do not equate control authority, causal influence and ownership."
CONFIDENCE:
range: [0,1]
factors: [sensor_uncertainty, signal_integrity, provenance_quality, policy_validity, temporal_freshness, independent_verification]
policy: "Do not increase confidence solely by chaining inferred control edges."
VALIDATION:
- "Check entity types, system membership, signal direction and interface compatibility."
- "Validate units, timestamps, policy scope and safety constraints."
- "Detect missing feedback, stale measurements, conflicting commands and unsupported claims."
- "Retain contradictory observations and unresolved uncertainty."
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 system-control knowledge graph with evidence-backed edges"
outputs: [control_edges, command_paths, feedback_links, policy_constraints, uncertainty_annotations, provenance_records]
safeguards: [no_unverified_safety_claims, no_automatic_authority_escalation, preserve_units_and_timestamps, human_review_for_critical_controls]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard