FLOW ALGEBRA
TITLE: Science Ontology
DOMAIN: Domain Ontologies / Scientific Domains
SOURCE: https://kirethresearch.org/booksai-core/ontologies/domain-ontologies/scientific-domains/science-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "ScienceOntology" v1.0 {
ontology:
id: "science-ontology"
parent: "scientific-domains"
purpose: "Represent scientific disciplines, hypotheses, methods, evidence, measurements and reproducible knowledge claims."
types:
Discipline: {id: string, name: string, parent_id: string?}
ResearchQuestion: {id: string, statement: string, discipline_id: string}
Hypothesis: {id: string, proposition: string, falsifiable: boolean?, status: enum[proposed, supported, challenged, rejected, unresolved]}
Study: {id: string, method: string, protocol_id: string?, preregistration: string?}
Experiment: {id: string, study_id: string, conditions: string[], controls: string[]}
Observation: {id: string, study_id: string, timestamp: datetime?, instrument_id: string?, provenance: string}
Measurement: {id: string, value: number, unit: string, uncertainty: number?, calibration_id: string?}
Dataset: {id: string, schema: string, licence: string?, provenance: string}
ScientificClaim: {id: string, proposition: string, scope: string, evidence_ids: string[], confidence: number}
Publication: {id: string, identifier: string?, version: string?, peer_reviewed: boolean?}
Evidence: {id: string, source_id: string, kind: enum[observation, experiment, simulation, review, other], limitations: string[]}
Relationship: {id: string, subject: string, predicate: string, object: string, context: string?, confidence: number, evidence: string[]}
predicates:
belongs_to(item: string, discipline: Discipline)
investigates(study: Study, question: ResearchQuestion)
tests(study: Study, hypothesis: Hypothesis)
produces(study: Study, dataset: Dataset)
measures(observation: Observation, measurement: Measurement)
supports(evidence: Evidence, claim: ScientificClaim)
challenges(evidence: Evidence, claim: ScientificClaim)
derived_from(claim: ScientificClaim, source: string)
replicates(study_a: Study, study_b: Study)
published_in(claim: ScientificClaim, publication: Publication)
constraints:
- "All entity identifiers and relationship endpoints must resolve."
- "Confidence must lie within [0, 1] and must be labelled as an assessment, not an empirical probability unless calibrated."
- "Every measurement must specify units and applicable uncertainty, calibration and measurement context."
- "Evidence provenance, methods, limitations and versions must be retained."
- "Correlation or temporal precedence alone must not establish causation."
- "Scientific consensus, peer review and replication are distinct properties."
- "Disputed hypotheses and contradictory findings must remain traceable."
- "No unsupported automatic inference of truth from publication or citation count."
inference:
rule evidence_trace:
if supports(e,c) and valid(e) and valid(c)
then evidence_link(c,e)
confidence: "preserve evidence strength and scope"
rule replication_trace:
if replicates(a,b) and comparable_protocols(a,b)
then replication_candidate(a,b)
confidence: "evaluate methodological differences and independent evidence"
rule provenance_chain:
if derived_from(a,b) and derived_from(b,c) and compatible_context(a,b,c)
then indirect_derivation(a,c)
confidence: "retain each intermediate provenance link"
SEMANTIC_EQUIVALENCE:
- "Map disciplines, concepts and identifiers to versioned authoritative vocabularies when available."
- "Distinguish synonymy, relatedness, subclassing and strict identity."
- "Preserve methodological, temporal and disciplinary context."
CONFIDENCE:
range: [0,1]
factors: [study_design, measurement_quality, source_reliability, independent_replication, uncertainty, bias_risk]
policy: "Do not increase confidence merely by chaining assertions or counting dependent sources."
VALIDATION:
- "Validate types, identifiers, evidence links, provenance and measurement units."
- "Check reproducibility metadata, uncertainty and methodological limitations."
- "Flag contradictions, missing controls and unsupported causal interpretations."
- "Preserve unresolved findings rather than forcing consensus."
FLOW_HASH:
algorithm: "SHA-256"
input: "canonicalised ontology version, assertions, rules, evidence 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, recompute_inferences, publish]
rollback: true
AI_CONSUMPTION:
representation: "typed scientific knowledge graph with evidence-backed assertions"
outputs: [discipline_links, hypothesis_evidence_graphs, measurement_records, uncertainty_annotations, provenance_records]
safeguards: [no_unsupported_causal_claims, distinguish_hypotheses_from_findings, preserve_units_and_context, retain_conflicting_evidence]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard