Skip to main content

Causal Relationship Ontology

Logical Relationships
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 08 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Causal Relationship Ontology
VERSION: 1.0
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/logical-relationships/causal-relationship-ontology.html
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

ONTOLOGY:
  id: causal_relationship_ontology
  domain: relationship_ontologies.logical_relationships
  purpose: Represent, qualify, test and reason about causal claims without conflating association and causation.

TYPES:
  Entity: {id: URI, label: String}
  Event: {id: URI, time: Timestamp?, context: ContextID?}
  Variable: {id: URI, domain: ValueDomain}
  Context: {id: ContextID, population: String?, conditions: Map?}
  Evidence: {id: URI, method: String, source: URI?, quality: Float[0,1]}
  CausalClaim: {cause: Entity|Event|Variable, effect: Entity|Event|Variable, context: ContextID?, evidence: EvidenceID[], confidence: Float[0,1], status: proposed|supported|refuted|undetermined}

RELATIONSHIPS:
  CAUSES(cause, effect, context)
  DIRECT_CAUSE(cause, effect, context)
  INDIRECT_CAUSE(cause, mediator, effect, context)
  ENABLES(condition, effect, context)
  PREVENTS(cause, effect, context)
  MEDIATES(mediator, cause, effect)
  MODERATES(modifier, cause, effect)
  CONFOUNDS(confounder, cause, effect)
  PRECEDES(event_a, event_b)
  CORRELATES_WITH(variable_a, variable_b)
  SUPPORTED_BY(claim, evidence)
  CONTRADICTED_BY(claim, evidence)

FLOW RULES:
  R1: DIRECT_CAUSE(A,B,C) => CAUSES(A,B,C).
  R2: CAUSES(A,M,C) AND CAUSES(M,B,C) => CANDIDATE_INDIRECT_CAUSE(A,M,B,C); validate interventions and confounding before acceptance.
  R3: CORRELATES_WITH(A,B) does NOT imply CAUSES(A,B,C).
  R4: PRECEDES(A,B) does NOT imply CAUSES(A,B,C).
  R5: CONFOUNDS(Z,A,B) => require adjustment or identification strategy before upgrading causal confidence.
  R6: CAUSES(A,B,C) does NOT imply CAUSES(B,A,C).
  R7: A causal claim is scoped to its population, time, assumptions and context; do not automatically transfer it.
  R8: Conflicting evidence => mark claim disputed and preserve both evidence trails.

CAUSAL IDENTIFICATION:
  methods: [randomised_experiment, natural_experiment, instrumental_variables, difference_in_differences, regression_discontinuity, backdoor_adjustment, frontdoor_adjustment]
  assumptions: [consistency, positivity, exchangeability_where_required, no_unmeasured_confounding_where_required]
  effect_notation: P(Y | do(X=x), C)
  observation_notation: P(Y | X=x, C)
  rule: observational and interventional distributions are distinct unless justified by an identification argument.

SEMANTIC_EQUIVALENCE:
  canonical: CAUSES
  exact_aliases: [is_a_cause_of]
  related_not_equivalent: [associated_with, correlated_with, precedes, enables, predicts]
  mapping_policy: preserve direction, context, evidence and strength of claim.

CONFIDENCE:
  range: [0,1]
  inputs: [study_design, evidence_quality, replication, confounding_risk, temporal_order, model_fit, external_validity]
  rule: confidence is an assessed support level, not automatically a calibrated causal probability.
  missing_evidence: undetermined

VALIDATION:
  - cause and effect must resolve to typed identifiers.
  - reject missing context where the causal claim is context-dependent.
  - check temporal consistency where temporal ordering is applicable.
  - flag causal cycles for review; feedback systems may legitimately contain cycles across time.
  - never infer causality solely from correlation, prediction or temporal sequence.
  - preserve negative, conflicting and null findings.
  - ensure evidence identifiers resolve and provenance is retained.

PROVENANCE:
  required: [claim_id, source, method, observed_at, assessed_at, assessor, assumptions]
  optional: [dataset, sample_size, effect_size, uncertainty_interval, version]

FLOW_HASH:
  algorithm: SHA-256
  input: canonical_serialisation(ontology_id, version, typed_claims, evidence_ids, assumptions, rules)
  purpose: integrity and change detection; not proof of truth.

UPDATE_MODEL:
  trigger: [new_evidence, corrected_source, changed_context, revised_identification, ontology_revision]
  steps: [ingest, type_check, deduplicate, evaluate_assumptions, recalculate_confidence, flag_conflicts, version, regenerate_hash, publish]
  policy: maintain historical claims and audit trail; do not silently overwrite contested findings.

AI_CONSUMPTION:
  format: text/plain
  interpretation: typed causal knowledge and explicitly qualified inference
  safeguards: [distinguish_correlation_from_causation, report_assumptions, expose_uncertainty, preserve_provenance, avoid_unjustified_transitivity]
  output_fields: [claim, cause, effect, context, evidence, assumptions, confidence, status, provenance]

END FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ