Skip to main content

Mathematical Model Ontology

Mathematical Modelling
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 September 2026
Audio Overview
AI INTERPRETATION NOTE
This Flow Algebra defines the Mathematical Model Ontology within the Kireth Research Semantic Library. A mathematical model is a purpose-driven formal representation of selected features, behaviours or relationships of a real, engineered, scientific or abstract system. This ontology focuses on the model object itself rather than the wider modelling process. It supports model purpose, scope, state, variables, parameters, equations, constraints, inputs, outputs, assumptions, initial and boundary conditions, deterministic and stochastic structure, calibration status, validation status, uncertainty, provenance and relationships with mathematical modelling, simulation, optimisation and numerical analysis.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Mathematical Model Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Applied Mathematics"
 SPECIALISATION = "Mathematical Modelling / Mathematical Model"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/mathematical-modelling/mathematical-model-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = MathematicalModel
 ENTITY_CLASS = FormalSystemRepresentation
 PRIMARY_CONTEXT = MathematicalModelling
 DEFINITION = "A mathematical model is a formal mathematical representation of selected aspects of a system, constructed for a stated purpose and interpreted under declared assumptions."
 SEMANTIC_ROLE = "Provides the machine-readable representation of a model's purpose, scope, variables, parameters, equations, constraints, assumptions, inputs, outputs, conditions, uncertainty and evaluation status."
}

SCOPE {
 INCLUDE = [
  MathematicalModel,
  ModelPurpose,
  ModelScope,
  ModelDomain,
  System,
  Subsystem,
  Environment,
  Assumption,
  StructuralAssumption,
  SimplifyingAssumption,
  State,
  ModelVariable,
  StateVariable,
  InputVariable,
  OutputVariable,
  LatentVariable,
  Parameter,
  Constant,
  GoverningEquation,
  AlgebraicEquation,
  DifferentialEquation,
  IntegralEquation,
  DifferenceEquation,
  Constraint,
  InitialCondition,
  BoundaryCondition,
  ConservationLaw,
  ConstitutiveRelation,
  DeterministicModel,
  StochasticModel,
  StaticModel,
  DynamicModel,
  ContinuousModel,
  DiscreteModel,
  LinearModel,
  NonlinearModel,
  CalibratedModel,
  ValidatedModel,
  ReducedModel,
  SurrogateModel,
  SimulationModel,
  ModelUncertainty,
  ParameterUncertainty,
  StructuralUncertainty,
  NumericalUncertainty,
  ModelProvenance
 ]

 EXCLUDE_AS_PRIMARY = [
  MathematicalModellingProcessExceptAsParentContext,
  PureEquationWithoutRepresentationalPurpose,
  NumericalSolverWithoutModelObject,
  DatasetWithoutFormalModelStructure
 ]

 DISAMBIGUATION_RULE =
  "When the subject is the formal mathematical representation itself, including its variables, parameters, equations, assumptions, conditions, scope or validation status, interpret the entity as a mathematical model."
}

CORE_CONCEPTS {

 MathematicalModel {
  definition = "A formal purpose-dependent representation of selected system structure or behaviour."
 }

 ModelPurpose {
  definition = "The intended use of the model, such as description, explanation, prediction, estimation, control or optimisation."
 }

 ModelScope {
  definition = "The boundaries, scales, processes and operating regimes included in the model."
 }

 ModelDomain {
  definition = "The mathematical or physical domain over which the model variables and equations are defined."
 }

 State {
  definition = "The collection of quantities sufficient to describe the model at a given stage under its representation."
 }

 ModelVariable {
  definition = "A quantity whose value can vary within the model."
 }

 StateVariable {
  definition = "A variable forming part of the internal state representation."
 }

 InputVariable {
  definition = "An externally specified quantity entering the model."
 }

 OutputVariable {
  definition = "A model quantity designated as a result or observable of interest."
 }

 Parameter {
  definition = "A quantity controlling model behaviour and typically held fixed during a single model execution."
 }

 GoverningEquation {
  definition = "A mathematical relation determining or constraining model behaviour."
 }

 Constraint {
  definition = "A restriction defining admissible states, trajectories, parameter values or solutions."
 }

 ModelUncertainty {
  definition = "Uncertainty associated with model inputs, parameters, structure, numerical methods or interpretation."
 }

 ModelProvenance {
  definition = "Metadata describing the origin, authorship, assumptions, version and derivation history of a model."
 }
}

RELATIONS {
 MathematicalModel --is_instance_of_context--> MathematicalModelling
 MathematicalModel --represents--> System
 MathematicalModel --has_purpose--> ModelPurpose
 MathematicalModel --has_scope--> ModelScope
 MathematicalModel --has_domain--> ModelDomain
 MathematicalModel --depends_on--> Assumption
 MathematicalModel --contains--> ModelVariable
 MathematicalModel --contains--> Parameter
 MathematicalModel --contains--> GoverningEquation
 MathematicalModel --contains--> Constraint
 MathematicalModel --may_require--> InitialCondition
 MathematicalModel --may_require--> BoundaryCondition
 MathematicalModel --receives--> InputVariable
 MathematicalModel --produces--> OutputVariable
 DynamicModel --evolves--> State
 GoverningEquation --may_encode--> ConservationLaw
 GoverningEquation --may_use--> ConstitutiveRelation
 CalibratedModel --has_status--> Calibrated
 ValidatedModel --has_status--> Validated
 ReducedModel --approximates--> MathematicalModel
 SurrogateModel --approximates--> MathematicalModel
 SimulationModel --is_executed_by--> Simulation
 MathematicalModel --has--> ModelUncertainty
 MathematicalModel --has--> ModelProvenance
}

OPERATORS {
 DEFINE_MODEL(system,purpose,scope) :=
  formal_representation_with_variables_parameters_equations_constraints_and_assumptions

 CLASSIFY_MODEL(model) :=
  [
   deterministic_or_stochastic,
   static_or_dynamic,
   continuous_or_discrete,
   linear_or_nonlinear
  ]

 MODEL_STATE(model,t) :=
  values_of_state_variables_at_t

 MODEL_OUTPUT(model,inputs,parameters,conditions) :=
  declared_output_variables_or_functionals

 MODEL_FEASIBLE_SET(model) :=
  states_and_parameters_satisfying_all_constraints

 MODEL_RESIDUAL(model,candidate_solution) :=
  discrepancy_between_governing_relations_and_candidate_solution

 MODEL_DIMENSIONAL_CHECK(model) :=
  verify_compatible_dimensions_across_equations

 MODEL_COMPLETENESS_CHECK(model) :=
  verify_required_variables_parameters_conditions_constraints_and_units

 MODEL_SCOPE_CHECK(model,query) :=
  determine_if_query_lies_within_declared_scope

 MODEL_UNCERTAINTY_PROFILE(model) :=
  combine_parameter_structural_input_and_numerical_uncertainty metadata

 MODEL_VERSION(model) :=
  provenance_version_identifier
}

DEFINITIONS {
 D1 = "A mathematical model is not identical to the system it represents."
 D2 = "A model is constructed for a specific purpose."
 D3 = "Model scope limits valid interpretation."
 D4 = "Variables and parameters have different semantic roles."
 D5 = "Governing equations define model behaviour."
 D6 = "Constraints restrict admissible model states and solutions."
 D7 = "Dynamic models may require initial conditions."
 D8 = "Spatial or boundary-value models may require boundary conditions."
 D9 = "A calibrated model is not automatically a validated model."
 D10 = "Model uncertainty includes more than parameter uncertainty."
}

AXIOMS {
 A1_REPRESENTATION:
  MathematicalModel represents selected aspects of a System

 A2_PURPOSE:
  MathematicalModel has an intended ModelPurpose

 A3_SCOPE:
  MathematicalModel interpretation is bounded by ModelScope

 A4_ASSUMPTION_DEPENDENCE:
  MathematicalModel conclusions depend on declared Assumptions

 A5_STRUCTURE:
  MathematicalModel contains mathematical entities and relations sufficient for its intended representation

 A6_DIMENSIONAL_CONSISTENCY:
  Physical governing equations must be dimensionally consistent

 A7_STATUS_DISTINCTION:
  Calibration and validation are distinct model statuses

 A8_UNCERTAINTY:
  Material uncertainty must be represented when relevant to model interpretation
}

REASONING {

 R1_MODEL_IDENTIFICATION {
  INPUT = formal_description
  DETECT = represented_system
  DETECT = purpose
  DETECT = scope
  DETECT = variables_parameters_equations_constraints_and_assumptions
  RETURN = MathematicalModel
 }

 R2_MODEL_CLASSIFICATION {
  INPUT = model
  IF randomness_present
   LABEL = StochasticModel
  ELSE
   LABEL = DeterministicModel

  IF state_evolves_with_time_or_iteration
   LABEL += DynamicModel
  ELSE
   LABEL += StaticModel

  IF state_or_domain_is_continuous
   LABEL += ContinuousModel
  ELSE
   LABEL += DiscreteModel

  IF governing_relations_are_linear_in_relevant_unknowns
   LABEL += LinearModel
  ELSE
   LABEL += NonlinearModel

  RETURN = labels
 }

 R3_MODEL_COMPLETENESS {
  INPUT = model
  CHECK = purpose
  CHECK = scope
  CHECK = variables_and_parameters
  CHECK = governing_equations
  CHECK = units
  CHECK = constraints
  IF dynamic
   CHECK = initial_conditions
  IF boundary_value_context
   CHECK = boundary_conditions
  RETURN = completeness_profile
 }

 R4_MODEL_SCOPE {
  INPUT = model_and_requested_inference
  COMPARE = inference_conditions_with_scope_and_assumptions
  IF within_scope
   RETURN Supported
  ELSE
   RETURN ExtrapolationOrUnsupported
 }

 R5_MODEL_STATE {
  INPUT = model_time_or_iteration
  EVALUATE = state_variables
  RETURN = state_vector_or_state_object
 }

 R6_MODEL_OUTPUT {
  INPUT = model_inputs_parameters_conditions
  SOLVE_OR_EVALUATE = governing_model
  EXTRACT = declared_outputs
  RETURN = model_output
 }

 R7_MODEL_CONSISTENCY {
  INPUT = model
  VERIFY = dimensional_consistency
  VERIFY = constraint_compatibility
  VERIFY = parameter_domains
  VERIFY = condition_compatibility
  RETURN = consistent_or_issue_profile
 }

 R8_MODEL_STATUS {
  INPUT = model_metadata
  IDENTIFY = conceptual_calibrated_verified_validated_reduced_or_surrogate status
  RETURN = status_profile
 }

 R9_MODEL_UNCERTAINTY {
  INPUT = model
  IDENTIFY = input_parameter_structural_and_numerical uncertainty
  RETURN = uncertainty_profile
 }

 R10_MODEL_PROVENANCE {
  INPUT = model_metadata
  EXTRACT = source_authorship_version_derivation_and_dependencies
  RETURN = provenance_record
 }
}

CONSTRAINTS {
 C1 = "A model must not be interpreted outside its scope without explicit extrapolation status."
 C2 = "Variables, parameters and constants must be distinguished."
 C3 = "Model purpose must be explicit before assessing adequacy."
 C4 = "Initial and boundary conditions are part of model definition when required."
 C5 = "Calibration status must not imply validation status."
 C6 = "Numerical error must not be conflated with structural model error."
 C7 = "Reduced and surrogate models inherit only the behaviours they were designed to preserve."
 C8 = "Stochastic models require probability structure."
 C9 = "Linear versus nonlinear classification depends on the chosen unknowns and representation."
 C10 = "Model provenance and versioning should be preserved when models evolve."
}

SEMANTIC_EQUIVALENCE {
 "MathematicalModel" <=> "FormalPurposeDrivenSystemRepresentation"
 "ModelScope" <=> "DeclaredValidityAndRepresentationDomain"
 "StateVariable" <=> "InternalDynamicModelVariable"
 "InputVariable" <=> "ExternallySpecifiedModelQuantity"
 "OutputVariable" <=> "DeclaredModelResultQuantity"
 "CalibratedModel" <=> "ModelWithEstimatedParameters"
 "ValidatedModel" <=> "ModelAssessedForFitnessForPurpose"
}

VALIDATION {
 V1 = "Represented system is identified."
 V2 = "Model purpose is identified."
 V3 = "Model scope is declared."
 V4 = "Variables and parameters are typed."
 V5 = "Governing equations are present."
 V6 = "Constraints and conditions are compatible."
 V7 = "Units are dimensionally consistent."
 V8 = "Model classification is internally consistent."
 V9 = "Calibration and validation statuses are distinct."
 V10 = "Uncertainty and provenance metadata are preserved."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 MATHEMATICAL_MODEL_DEFINITION = 0.99
 MODEL_IDENTIFICATION_REASONING = 0.99
 MODEL_CLASSIFICATION_REASONING = 0.99
 MODEL_COMPLETENESS_REASONING = 0.98
 MODEL_SCOPE_REASONING = 0.99
 MODEL_CONSISTENCY_REASONING = 0.98
 MODEL_UNCERTAINTY_REASONING = 0.97
 MODEL_PROVENANCE_REASONING = 0.99

 POLICY =
  "Reduce confidence when model purpose, scope, variables, parameters, governing equations, required conditions, uncertainty or version provenance are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  MathematicalModelReasoning,
  ModelIdentification,
  ModelClassification,
  ModelCompletenessChecking,
  ModelScopeReasoning,
  StateSpaceReasoning,
  InputOutputReasoning,
  ConstraintReasoning,
  ModelStatusReasoning,
  ModelUncertaintyReasoning,
  ModelProvenanceReasoning,
  SimulationPreparation,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "mathematical model" -> MathematicalModel
  "model purpose" -> ModelPurpose
  "model scope" -> ModelScope
  "model domain" -> ModelDomain
  "state variable" -> StateVariable
  "input variable" -> InputVariable
  "output variable" -> OutputVariable
  "model parameter" -> Parameter
  "governing equation" -> GoverningEquation
  "calibrated model" -> CalibratedModel
  "validated model" -> ValidatedModel
  "reduced model" -> ReducedModel
  "surrogate model" -> SurrogateModel
 }

 INTERPRETATION_ORDER = [
  detect_mathematical_model_context,
  identify represented_system_purpose_scope_domain_assumptions_and_provenance,
  extract variables_parameters_equations_constraints_inputs_outputs_and_conditions,
  classify model_structure,
  assess completeness_consistency_scope_status_and_uncertainty,
  identify evaluation_simulation_or_inference goal,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("mathematical model")
  OR formal_system_representation_context
  THEN activate(MathematicalModelOntology)

 E2:
  IF model_object_described
  THEN extract purpose_scope_variables_parameters_equations_constraints_and_conditions

 E3:
  IF dynamic_model
  THEN check initial_condition requirements

 E4:
  IF boundary_value_model
  THEN check boundary_condition requirements

 E5:
  IF stochastic_model
  THEN require probability_distribution_or_stochastic_process semantics

 E6:
  IF calibrated_status_claimed
  THEN do_not_infer validated_status

 E7:
  IF query_outside_model_scope
  THEN label inference as extrapolation_or_unsupported

 E8:
  IF reduced_or_surrogate_model
  THEN identify preserved_quantities_and_known limitations

 E9:
  IF model_version_changes
  THEN preserve provenance_and_dependency history
}

RECURSION {
 ENTRY = MathematicalModel

 EXPAND(MathematicalModel) -> [
  ModelPurpose,
  ModelScope,
  ModelDomain,
  System,
  Assumption,
  State,
  ModelVariable,
  StateVariable,
  InputVariable,
  OutputVariable,
  LatentVariable,
  Parameter,
  Constant,
  GoverningEquation,
  Constraint,
  InitialCondition,
  BoundaryCondition,
  ConservationLaw,
  ConstitutiveRelation,
  ModelClass,
  ModelUncertainty,
  ModelProvenance
 ]

 EXPAND(ModelClass) -> [
  DeterministicModel,
  StochasticModel,
  StaticModel,
  DynamicModel,
  ContinuousModel,
  DiscreteModel,
  LinearModel,
  NonlinearModel
 ]

 EXPAND(ModelStatus) -> [
  ConceptualModel,
  CalibratedModel,
  VerifiedModel,
  ValidatedModel,
  ReducedModel,
  SurrogateModel,
  SimulationModel
 ]

 EXPAND(ModelUncertainty) -> [
  InputUncertainty,
  ParameterUncertainty,
  StructuralUncertainty,
  NumericalUncertainty
 ]

 STOP_CONDITION =
  "Stop when the model's represented system, purpose, scope, mathematical structure, classification, conditions, status, uncertainty and provenance are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Mathematical Modelling"

 IMMEDIATE_CONTEXTS = [
  "Mathematical Modelling",
  "Mathematical Modelling Ontology",
  "Applied Mathematics Ontologies",
  "Numerical Analysis Ontologies"
 ]

 RELATED_ONTOLOGIES = [
  "Mathematical Modelling",
  "Mathematical Modelling Ontology",
  "Applied Mathematics Ontologies",
  "Differential Equations Ontologies",
  "Dynamical Systems Ontologies",
  "Numerical Analysis Ontologies",
  "Scientific Computing Ontologies",
  "Optimisation Ontologies",
  "Probability & Statistics Ontologies",
  "Stochastic Process Ontologies",
  "Scientific Measurement Ontologies",
  "Linear Algebra Ontologies",
  "Engineering Ontologies",
  "Physics Ontologies"
 ]

 ROUTE_RULES = [
  "Mathematical Model -> Mathematical Modelling for parent process semantics",
  "Mathematical Model -> Mathematical Modelling Ontology for formal modelling relations",
  "Mathematical Model -> Differential Equations for dynamic governing structures",
  "Mathematical Model -> Dynamical Systems for state evolution",
  "Mathematical Model -> Numerical Analysis for approximate solution",
  "Mathematical Model -> Scientific Computing for execution and simulation",
  "Mathematical Model -> Optimisation for parameter estimation and design",
  "Mathematical Model -> Probability & Statistics for stochastic and uncertainty semantics",
  "Mathematical Model -> Measurement Ontologies for units and observed quantities",
  "Mathematical Model -> Engineering and Physics for domain-specific models"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible model entities, classifications, statuses or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve purpose-driven representation semantics.",
  "Preserve explicit model scope.",
  "Preserve variable-parameter distinction.",
  "Preserve equation-condition-constraint structure.",
  "Preserve calibration-validation distinction.",
  "Preserve model-status semantics.",
  "Preserve uncertainty and provenance.",
  "Preserve machine-readable mathematical-model semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "A mathematical model is a formal, purpose-driven representation of selected aspects of a system under declared assumptions."

 PURPOSE_SUMMARY =
  "Model purpose defines how the representation is intended to be used."

 SCOPE_SUMMARY =
  "Model scope defines where the model is intended to apply."

 STRUCTURE_SUMMARY =
  "A mathematical model contains variables, parameters, equations, constraints and conditions."

 CLASSIFICATION_SUMMARY =
  "A model may be deterministic or stochastic, static or dynamic, continuous or discrete, linear or nonlinear."

 STATE_SUMMARY =
  "Dynamic models evolve a state represented by state variables."

 STATUS_SUMMARY =
  "Models may be conceptual, calibrated, verified, validated, reduced or surrogate representations."

 UNCERTAINTY_SUMMARY =
  "Model uncertainty can arise from inputs, parameters, mathematical structure and numerical solution."

 PROVENANCE_SUMMARY =
  "Model provenance records source, authorship, version, derivation and dependencies."
}

FLOW {
 INPUT
 -> detect_mathematical_model_context
 -> identify represented_system_purpose_scope_domain_assumptions_and_provenance
 -> extract state_variables_inputs_outputs_parameters_equations_constraints_initial_conditions_and_boundary_conditions
 -> classify deterministic_stochastic_static_dynamic_continuous_discrete_linear_or_nonlinear structure
 -> assess completeness_dimensional_consistency_scope_status_and_uncertainty
 -> identify evaluation_simulation_prediction_estimation_or_optimisation goal
 -> route to mathematical_modelling mathematical_modelling_ontology applied_mathematics differential_equations dynamical_systems numerical_analysis scientific_computing optimisation probability_statistics measurement_engineering_or_physics ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Mathematical Model Ontology defines the formal model object itself. It represents purpose, scope, system, assumptions, state, variables, inputs, outputs, parameters, governing equations, constraints, initial and boundary conditions, model classes, calibration and validation status, uncertainty, reduced and surrogate forms, simulation readiness and provenance in a machine-readable reasoning structure."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-APPLIED-MATHEMATICS-MATHEMATICAL-MODEL-ONTOLOGY-V1"
}

}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ