FLOW ALGEBRA
TITLE: Causal Time Relationship Ontology
DOMAIN: Relationship Ontologies / Temporal Relationships
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/temporal-relationships/causal-time-relationship-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "CausalTimeRelationshipOntology" v1.0 {
ontology:
id: "causal-time-relationship-ontology"
parent: "temporal-relationships"
purpose: "Represent temporally situated causal claims, distinguish precedence from causation, and preserve evidence and uncertainty."
types:
Event: {id: string, kind: string, start: datetime?, end: datetime?, time_frame: string?, provenance: string}
Process: {id: string, kind: string, start: datetime?, end: datetime?, provenance: string}
TemporalInterval: {start: datetime, end: datetime, time_frame: string, precision: string?}
CausalClaim: {id: string, cause: string, effect: string, mechanism: string?, context: string?, confidence: number, evidence: string[], assumptions: string[]}
Observation: {id: string, observed_at: datetime, source: string, uncertainty: number?}
Intervention: {id: string, target: string, applied_at: datetime, context: string?, provenance: string}
Confounder: {id: string, description: string, evidence: string[]}
Relationship: {id: string, subject: string, predicate: string, object: string, confidence: number, provenance: string}
predicates:
precedes(a: Event, b: Event)
follows(a: Event, b: Event)
overlaps(a: Event, b: Event)
causes(a: Event, b: Event)
contributes_to(a: Event, b: Event)
mediates(m: Event, cause: Event, effect: Event)
confounds(c: Confounder, cause: Event, effect: Event)
intervenes_on(i: Intervention, target: string)
supported_by(claim: CausalClaim, observation: Observation)
constraints:
- "All relationship endpoints must resolve to typed entities."
- "Confidence must be within [0, 1]."
- "Normalise timestamps to an explicit time standard while retaining original offsets and precision."
- "For strict precedence, end(a) < start(b); do not assume unknown boundaries."
- "Temporal precedence alone never establishes causation."
- "Correlation, co-occurrence and sequence alone never establish causation."
- "Causal claims must record evidence, assumptions, context and plausible confounders."
- "Causation is not automatically transitive; mediation and context must be assessed."
- "Do not infer that causes are necessary, sufficient or exclusive without supporting evidence."
- "Respect temporal resolution and uncertainty when determining event order."
inference:
rule inverse_precedence:
if precedes(a,b)
then follows(b,a)
confidence: "retain original evidence and temporal precision"
rule precedence_transitivity:
if precedes(a,b) and precedes(b,c) and compatible_time_frames(a,b,c)
then precedes(a,c)
confidence: "propagate temporal uncertainty without increasing certainty"
rule causal_temporal_consistency:
if causes(a,b) and known_intervals(a,b) and incompatible_with_causal_order(a,b)
then flag_for_review(a,b)
confidence: "do not silently delete the causal claim"
rule supported_causal_hypothesis:
if causal_evidence(a,b) and mechanism_consistent(a,b) and confounders_assessed(a,b)
then candidate_causal_claim(a,b)
confidence: "calibrate to study design and independent evidence; do not automatically assert causes(a,b)"
SEMANTIC_EQUIVALENCE:
- "Distinguish temporal precedence, causal contribution, intervention, mediation and correlation."
- "Resolve event aliases only when identity, temporal scope and provenance agree."
- "Preserve context when mapping causal terminology across scientific domains."
CONFIDENCE:
range: [0,1]
factors: [temporal_precision, source_reliability, causal_identification, confounding_control, mechanism_support, replication]
policy: "No confidence inflation from chained rules or repeated dependent observations."
VALIDATION:
- "Check endpoint types, interval ordering, timestamp precision and reference frames."
- "Check provenance, study design, assumptions and possible confounders."
- "Flag temporal contradictions and unsupported causal assertions."
- "Preserve alternative causal models when evidence is inconclusive."
FLOW_HASH:
algorithm: "SHA-256"
input: "canonicalised ontology version, typed assertions, rules, temporal context and provenance"
note: "Compute at execution; no hash value is claimed here."
UPDATE_MODEL:
strategy: "versioned, provenance-preserving incremental update"
steps: [ingest, normalise, validate, compare, reconcile, reassess_causal_claims, recompute_inferences, publish]
rollback: true
AI_CONSUMPTION:
representation: "typed temporal-causal knowledge graph with evidence-backed relationships"
outputs: [temporal_edges, causal_hypotheses, confidence_annotations, confounder_links, provenance_records, validation_flags]
safeguards: [no_post_hoc_causal_inference, preserve_temporal_uncertainty, no_unsupported_transitivity, explicit_evidence]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard