Skip to main content

Chemical Engineering Domain Ontology

Engineering Domains
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 10 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Chemical Engineering Domain Ontology
DOMAIN: Domain Ontologies / Engineering Domains / Chemical Engineering
SOURCE: https://kirethresearch.org/booksai-core/ontologies/domain-ontologies/engineering-domains/chemical-engineering-domain-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

flow "ChemicalEngineeringDomainOntology" v1.0 {
  ontology:
    id: "chemical-engineering-domain-ontology"
    parent: "engineering-domains"
    purpose: "Represent chemical engineering processes, materials, equipment, balances, controls and evidence-backed relationships."

  types:
    Material: {id: string, composition: string?, phase: string?, provenance: string?}
    Process: {id: string, kind: enum[reaction, separation, mixing, heat_transfer, mass_transfer, transport, other], design_basis: string?}
    UnitOperation: {id: string, process_id: string, equipment_id: string?}
    Equipment: {id: string, kind: string, capacity: Quantity?, specification: string?}
    Stream: {id: string, material_id: string, flow_rate: Quantity?, temperature: Quantity?, pressure: Quantity?, composition: string?}
    Reaction: {id: string, stoichiometry: string, kinetic_model: string?, conditions: string?}
    Quantity: {value: number, unit: string, uncertainty: number?}
    Measurement: {id: string, quantity: Quantity, timestamp: datetime?, instrument: string?, provenance: string}
    Constraint: {id: string, kind: enum[safety, environmental, operational, design, regulatory], expression: string}
    Relationship: {id: string, subject: string, predicate: string, object: string, context: string?, confidence: number, evidence: string[]}

  predicates:
    feeds(stream: Stream, operation: UnitOperation)
    produces(operation: UnitOperation, stream: Stream)
    uses_equipment(operation: UnitOperation, equipment: Equipment)
    implements(operation: UnitOperation, process: Process)
    participates_in(material: Material, reaction: Reaction)
    transfers_heat(from: Equipment, to: Equipment)
    transfers_mass(from: Stream, to: Stream)
    constrained_by(process: Process, constraint: Constraint)
    measured_by(stream: Stream, measurement: Measurement)
    depends_on(downstream: UnitOperation, upstream: UnitOperation)

  constraints:
    - "All relationship endpoints must resolve to correctly typed entities."
    - "Confidence values must lie within [0, 1]."
    - "All physical quantities require explicit, dimensionally consistent units."
    - "Material and energy balances must account for accumulation, inputs, outputs, generation and consumption as applicable."
    - "Reaction stoichiometry must respect elemental conservation and charge conservation where applicable."
    - "A process connection does not by itself prove safe operation or chemical compatibility."
    - "Dependencies are not automatically causal and may be cyclic in recirculating processes."
    - "Design constraints and safety limits require provenance and applicable operating context."

  inference:
    rule downstream_dependency:
      if produces(op_a,s) and feeds(s,op_b)
      then depends_on(op_b,op_a)
      confidence: "retain stream identity and evidence"
    rule process_equipment:
      if uses_equipment(op,e) and implements(op,p)
      then equipment_supports(e,p)
      confidence: "contextual, not proof of suitability"
    rule balance_check:
      if complete_balance_data(p) and consistent_units(p)
      then evaluate_mass_energy_balance(p)
      confidence: "report residuals and measurement uncertainty"
    rule constraint_flag:
      if measured_by(s,m) and applicable_limit(s,c) and violates(m,c)
      then flag_constraint_violation(s,c)
      confidence: "retain measured value, uncertainty and limit provenance"

  SEMANTIC_EQUIVALENCE:
    - "Normalise chemical names and identifiers using versioned authoritative vocabularies."
    - "Distinguish substance identity from mixtures, grades, phases and concentrations."
    - "Map equivalent unit-operation terms only when their operating context agrees."
    - "Preserve units, process conditions and equipment specifications."

  CONFIDENCE:
    range: [0,1]
    factors: [measurement_uncertainty, evidence_quality, model_validity, operating_conditions, independent_replication]
    policy: "Do not manufacture certainty through inference chaining or treat confidence as a safety certification."

  VALIDATION:
    - "Verify entity types, stream connectivity, units and dimensional consistency."
    - "Check material and energy balance residuals against stated tolerances."
    - "Validate stoichiometry, operating envelopes and equipment constraints."
    - "Flag missing evidence, incompatible material assumptions and conflicting measurements."
    - "Keep design verification separate from operational and regulatory approval."

  FLOW_HASH:
    algorithm: "SHA-256"
    input: "canonicalised ontology version, entities, relationships, rules and provenance"
    note: "Compute at execution; no precomputed hash is claimed."

  UPDATE_MODEL:
    strategy: "versioned, provenance-preserving incremental update"
    steps: [ingest, normalise, validate, compare, reconcile, recompute_inferences, publish]
    rollback: true

  AI_CONSUMPTION:
    representation: "typed chemical-engineering knowledge graph with evidence-backed relationships"
    outputs: [entity_links, process_graphs, material_streams, inferred_dependencies, validation_reports, provenance_records]
    safeguards: [preserve_units, respect_operating_limits, distinguish_models_from_measurements, no_unsupported_safety_claims]
}

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