Skip to main content

Nonlinear Dynamics Ontology

Dynamical Systems
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 Nonlinear Dynamics Ontology within the Kireth Research Semantic Library. Nonlinear dynamics studies dynamical systems whose evolution cannot be represented by linear superposition alone. This ontology supports nonlinear differential and difference equations, equilibria, linearisation, invariant manifolds, limit cycles, bifurcations, attractors, multistability, resonance, nonlinear oscillations, chaos, perturbation methods, normal forms, centre manifolds, slow-fast systems, singular perturbations, coupled systems and relationships with stability, phase space, bifurcation theory, chaos theory, control theory and numerical analysis.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Nonlinear Dynamics Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Applied Mathematics"
 SPECIALISATION = "Dynamical Systems / Nonlinear Dynamics"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/dynamical-systems/nonlinear-dynamics-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = NonlinearDynamics
 SYMBOLIC_FORMS = [
  "x_dot=f(x,t), f nonlinear",
  "x_{n+1}=F(x_n), F nonlinear",
  "f(ax+by) != a f(x)+b f(y)"
 ]
 ENTITY_CLASS = NonlinearStateEvolutionFramework
 PRIMARY_CONTEXT = DynamicalSystems
 DEFINITION = "Nonlinear dynamics is the study of dynamical systems whose governing evolution laws are nonlinear in the state variables, parameters or interactions."
 SEMANTIC_ROLE = "Provides machine-readable semantics for nonlinear state evolution, equilibria, invariant sets, oscillations, bifurcations, multistability, slow-fast behaviour and chaos."
}

SCOPE {
 INCLUDE = [
  NonlinearDynamics,
  NonlinearSystem,
  NonlinearODE,
  NonlinearMap,
  NonlinearPDE,
  NonlinearStateEquation,
  EquilibriumPoint,
  FixedPoint,
  Linearisation,
  JacobianMatrix,
  LocalDynamics,
  GlobalDynamics,
  InvariantSet,
  StableManifold,
  UnstableManifold,
  CentreManifold,
  LimitCycle,
  PeriodicOrbit,
  NonlinearOscillation,
  RelaxationOscillation,
  Resonance,
  NonlinearResonance,
  ForcedOscillation,
  AutonomousSystem,
  NonautonomousSystem,
  Multistability,
  Hysteresis,
  Bifurcation,
  SaddleNodeBifurcation,
  PitchforkBifurcation,
  HopfBifurcation,
  PeriodDoublingBifurcation,
  Attractor,
  StrangeAttractor,
  Chaos,
  SensitiveDependence,
  LyapunovExponent,
  NormalForm,
  PerturbationMethod,
  MultipleScalesMethod,
  AveragingMethod,
  HarmonicBalance,
  SlowFastSystem,
  SingularPerturbation,
  BoundaryLayer,
  CoupledOscillator,
  Synchronisation,
  Entrainment,
  NonlinearControl,
  NumericalContinuation
 ]

 EXCLUDE_AS_PRIMARY = [
  PurelyLinearDynamics,
  StaticNonlinearAlgebraWithoutEvolution,
  NonlinearOptimisationWithoutTemporalDynamics,
  RandomProcessesWithoutDynamicalStateEvolution
 ]

 DISAMBIGUATION_RULE =
  "When a dynamical model contains nonlinear state evolution or interactions and qualitative behaviour depends on those nonlinearities, interpret the context as nonlinear dynamics."
}

CORE_CONCEPTS {

 NonlinearDynamics {
  definition = "The mathematical study of nonlinear state evolution and its qualitative consequences."
 }

 NonlinearSystem {
  definition = "A dynamical system whose evolution rule does not satisfy linear superposition."
 }

 Linearisation {
  definition = "A local approximation of nonlinear dynamics by a linear system near a reference state."
 }

 InvariantSet {
  definition = "A subset of state space preserved by the nonlinear evolution."
 }

 LimitCycle {
  definition = "An isolated periodic orbit of a nonlinear system."
 }

 Multistability {
  definition = "The coexistence of multiple stable invariant states or attractors for the same parameter values."
 }

 Hysteresis {
  definition = "Path-dependent switching between coexisting states caused by nonlinear branch structure."
 }

 NonlinearOscillation {
  definition = "Oscillatory behaviour whose amplitude, frequency or waveform depends nonlinearly on the state."
 }

 SlowFastSystem {
  definition = "A nonlinear system containing variables evolving on separated timescales."
 }

 Synchronisation {
  definition = "Emergent coordination between coupled nonlinear oscillators or dynamical units."
 }
}

RELATIONS {
 NonlinearDynamics --is_child_of--> DynamicalSystems
 NonlinearSystem --has--> NonlinearEvolutionLaw
 NonlinearSystem --may_have--> EquilibriumPoint
 NonlinearSystem --may_have--> LimitCycle
 NonlinearSystem --may_have--> Attractor
 Linearisation --approximates--> LocalDynamics
 JacobianMatrix --supports--> Linearisation
 CentreManifold --reduces--> NonhyperbolicLocalDynamics
 NormalForm --simplifies--> LocalNonlinearStructure
 Bifurcation --changes--> QualitativeDynamics
 HopfBifurcation --may_create--> LimitCycle
 Multistability --supports--> Hysteresis
 SlowFastSystem --may_exhibit--> RelaxationOscillation
 CoupledOscillator --may_exhibit--> Synchronisation
 Chaos --is_type_of--> NonlinearDynamics
 LyapunovExponent --measures--> SensitiveDependence
 NumericalContinuation --tracks--> NonlinearSolutionBranch
}

OPERATORS {
 NONLINEAR_CONTINUOUS_SYSTEM(f,x,t) :=
  x_dot=f(x,t)

 NONLINEAR_DISCRETE_SYSTEM(F,x_n) :=
  x_{n+1}=F(x_n)

 LINEARISATION(f,x_star) :=
  delta_x_dot=J(x_star)*delta_x

 JACOBIAN(f,x) :=
  J_ij=partial f_i/partial x_j

 EQUILIBRIUM_CONDITION(f,x_star) :=
  f(x_star)=0

 FIXED_POINT_CONDITION(F,x_star) :=
  F(x_star)=x_star

 LIMIT_CYCLE_CONDITION(phi,T,x0) :=
  phi_T(x0)=x0
  with isolated_periodic_orbit

 AVERAGING_SYSTEM(x,epsilon,t) :=
  x_dot=epsilon*f(x,t)

 MULTIPLE_SCALES(t,epsilon) :=
  T0=t
  T1=epsilon*t
  T2=epsilon^2*t

 HARMONIC_BALANCE(x_trial,residual) :=
  project_residual_onto_selected_harmonics=0

 SLOW_FAST_SYSTEM(x,y,epsilon) :=
  x_dot=f(x,y)
  epsilon*y_dot=g(x,y)

 LYAPUNOV_EXPONENT(delta0,deltat,t) :=
  lambda=(1/t)*ln(||deltat||/||delta0||)
}

DEFINITIONS {
 D1 = "Nonlinear systems violate the superposition principle."
 D2 = "Nonlinear dynamics can produce multiple equilibria and attractors."
 D3 = "Linearisation captures only local behaviour near a reference state."
 D4 = "Limit cycles are intrinsically nonlinear periodic structures."
 D5 = "Bifurcations arise naturally in nonlinear parameterised systems."
 D6 = "Multistability and hysteresis arise from coexistence and branch structure."
 D7 = "Slow-fast systems can produce relaxation oscillations and canards."
 D8 = "Weak nonlinearities can often be analysed with perturbation or averaging methods."
 D9 = "Strong nonlinearities may require numerical continuation or direct simulation."
 D10 = "Deterministic chaos is a nonlinear dynamical phenomenon."
}

AXIOMS {
 A1_NONLINEARITY:
  NonlinearDynamics requires an evolution law that is nonlinear in state, input or parameter interactions

 A2_LOCAL_LINEARISATION:
  Smooth nonlinear systems admit first-order linearisation near regular reference states

 A3_LOCAL_GLOBAL_DISTINCTION:
  Local linear behaviour does not determine global nonlinear behaviour

 A4_INVARIANT_STRUCTURES:
  Nonlinear systems may possess equilibria periodic orbits manifolds and attractors

 A5_PARAMETER_DEPENDENCE:
  Nonlinear qualitative behaviour may change under parameter variation

 A6_MULTISTABILITY:
  A nonlinear system may admit multiple simultaneously stable invariant sets

 A7_TIMESCALE_SEPARATION:
  Singular perturbation reasoning requires a small parameter generating separated timescales

 A8_NUMERICAL_VALIDATION:
  Strongly nonlinear behaviour requires checks against numerical artefacts and solver sensitivity
}

REASONING {

 R1_NONLINEAR_CONTEXT {
  INPUT = dynamical_model
  IDENTIFY = nonlinear_terms
  IDENTIFY = state_variables
  IDENTIFY = parameters
  IDENTIFY = forcing_and_coupling
  RETURN = nonlinear_context
 }

 R2_LOCAL_ANALYSIS {
  INPUT = equilibrium_or_periodic reference
  COMPUTE = Jacobian_or_variational system
  ANALYSE = eigenvalues_or_multipliers
  RETURN = local_dynamics profile
 }

 R3_INVARIANT_STRUCTURE {
  INPUT = nonlinear_system
  IDENTIFY = equilibria_periodic orbits_manifolds_and_attractors
  RETURN = nonlinear_phase_structure
 }

 R4_BIFURCATION_REASONING {
  INPUT = parameterised_nonlinear_system
  TRACK = invariant branches
  DETECT = qualitative changes
  RETURN = bifurcation_profile
 }

 R5_PERTURBATION_REASONING {
  INPUT = weakly_nonlinear_system
  SELECT = multiple_scales_averaging_harmonic_balance_or_regular perturbation
  RETURN = approximate_solution
 }

 R6_SLOW_FAST_REASONING {
  INPUT = epsilon_small_system
  IDENTIFY = slow_manifold_fast_subsystem_and_boundary layers
  RETURN = reduced_slow_fast structure
 }

 R7_MULTISTABILITY_REASONING {
  INPUT = nonlinear_system_and_parameters
  IDENTIFY = coexisting stable invariant sets
  COMPUTE = basins_if possible
  RETURN = multistability_profile
 }

 R8_SYNCHRONISATION_REASONING {
  INPUT = coupled_oscillator system
  ANALYSE = phase_locking_frequency_locking_and_stability
  RETURN = synchronisation_profile
 }

 R9_CHAOS_REASONING {
  INPUT = bounded_aperiodic nonlinear trajectory
  ESTIMATE = Lyapunov_exponents
  ANALYSE = recurrence_Poincare_and_attractor geometry
  RETURN = chaos_profile
 }

 R10_VALIDATION {
  INPUT = nonlinear_result
  CHECK = parameter_range_initial_conditions_solver_tolerance_branch_stability_and_model assumptions
  RETURN = validated_nonlinear_status
 }
}

CONSTRAINTS {
 C1 = "Linearisation conclusions are generally local."
 C2 = "Nonhyperbolic equilibria require higher-order or centre-manifold analysis."
 C3 = "Multiple attractors require basin-aware interpretation."
 C4 = "Perturbation methods require a justified small parameter."
 C5 = "Averaging requires timescale or phase assumptions."
 C6 = "Harmonic balance may miss strongly nonharmonic behaviour."
 C7 = "Slow-fast reduction can fail near folds or loss of normal hyperbolicity."
 C8 = "Irregular dynamics alone do not establish chaos."
 C9 = "Numerical continuation resolution affects detected branches and bifurcations."
 C10 = "Global nonlinear behaviour should not be inferred from local approximations alone."
}

SEMANTIC_EQUIVALENCE {
 "NonlinearDynamics" <=> "NonlinearDynamicalSystems"
 "NonlinearSystem" <=> "NonlinearDynamicalSystem"
 "RelaxationOscillation" <=> "SlowFastOscillation"
 "Multistability" <=> "MultipleStableAttractors"
 "NumericalContinuation" <=> "BranchContinuation"
 "Synchronisation" <=> "DynamicalSynchronization"
}

VALIDATION {
 V1 = "Nonlinear terms are identified."
 V2 = "State variables and parameters are explicit."
 V3 = "Local and global conclusions are distinguished."
 V4 = "Equilibria and invariant sets are verified."
 V5 = "Bifurcation parameters are documented."
 V6 = "Perturbation assumptions are justified."
 V7 = "Timescale separation is checked for slow-fast analysis."
 V8 = "Multistability includes basin considerations where relevant."
 V9 = "Chaos claims use quantitative diagnostics."
 V10 = "Numerical results are tested for solver and tolerance sensitivity."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 NONLINEAR_DYNAMICS_DEFINITION = 0.99
 LOCAL_ANALYSIS_REASONING = 0.99
 INVARIANT_STRUCTURE_REASONING = 0.98
 BIFURCATION_REASONING = 0.98
 PERTURBATION_REASONING = 0.98
 SLOW_FAST_REASONING = 0.97
 MULTISTABILITY_REASONING = 0.98
 SYNCHRONISATION_REASONING = 0.97
 CHAOS_REASONING = 0.97

 POLICY =
  "Reduce confidence when nonlinear terms, parameter ranges, perturbation scales, timescale separation, branch structure, basin structure, solver settings or chaos diagnostics are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  NonlinearDynamicsReasoning,
  NonlinearSystemReasoning,
  LinearisationReasoning,
  InvariantSetReasoning,
  LimitCycleReasoning,
  BifurcationReasoning,
  MultistabilityReasoning,
  HysteresisReasoning,
  PerturbationReasoning,
  MultipleScalesReasoning,
  AveragingReasoning,
  HarmonicBalanceReasoning,
  SlowFastReasoning,
  SynchronisationReasoning,
  ChaosReasoning,
  NumericalContinuationReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "nonlinear dynamics" -> NonlinearDynamics
  "nonlinear dynamical system" -> NonlinearSystem
  "limit cycle" -> LimitCycle
  "multistability" -> Multistability
  "hysteresis" -> Hysteresis
  "slow-fast system" -> SlowFastSystem
  "singular perturbation" -> SingularPerturbation
  "multiple scales" -> MultipleScalesMethod
  "harmonic balance" -> HarmonicBalance
  "synchronisation" -> Synchronisation
 }

 INTERPRETATION_ORDER = [
  detect_nonlinear_dynamics_context,
  identify states_parameters_nonlinear terms_forcing_and_coupling,
  compute equilibria_and_local linearisation,
  identify invariant structures_and_global behaviour,
  analyse bifurcations_multistability_and_hysteresis,
  apply perturbation_slowFast_or_harmonic methods when justified,
  analyse coupling_synchronisation_or_chaos when relevant,
  validate numerical_and_asymptotic conclusions,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("nonlinear dynamics")
  OR nonlinear_state_evolution_is_present
  THEN activate(NonlinearDynamicsOntology)

 E2:
  IF equilibrium_present
  THEN compute Jacobian_and_local stability

 E3:
  IF nonhyperbolic_equilibrium
  THEN consider centre_manifold_and_normal_form analysis

 E4:
  IF parameter_variation_changes qualitative behaviour
  THEN route to bifurcation reasoning

 E5:
  IF weak_nonlinearity_and_small_parameter
  THEN consider perturbation_multiple_scales_or_averaging

 E6:
  IF separated_timescales
  THEN consider slow_fast_and_singular perturbation reasoning

 E7:
  IF multiple_stable invariant sets
  THEN classify multistability_and_hysteresis

 E8:
  IF coupled_oscillators
  THEN analyse synchronisation_or_entrainment

 E9:
  IF bounded_aperiodic_dynamics
  THEN assess chaos_using_multiple diagnostics
}

RECURSION {
 ENTRY = NonlinearDynamics

 EXPAND(NonlinearDynamics) -> [
  NonlinearSystem,
  NonlinearODE,
  NonlinearMap,
  NonlinearPDE,
  EquilibriumPoint,
  FixedPoint,
  Linearisation,
  JacobianMatrix,
  LocalDynamics,
  GlobalDynamics,
  InvariantSet,
  StableManifold,
  UnstableManifold,
  CentreManifold,
  LimitCycle,
  PeriodicOrbit,
  NonlinearOscillation,
  RelaxationOscillation,
  Resonance,
  NonlinearResonance,
  Multistability,
  Hysteresis,
  Bifurcation,
  SaddleNodeBifurcation,
  PitchforkBifurcation,
  HopfBifurcation,
  PeriodDoublingBifurcation,
  Attractor,
  StrangeAttractor,
  Chaos,
  SensitiveDependence,
  LyapunovExponent,
  NormalForm,
  PerturbationMethod,
  MultipleScalesMethod,
  AveragingMethod,
  HarmonicBalance,
  SlowFastSystem,
  SingularPerturbation,
  BoundaryLayer,
  CoupledOscillator,
  Synchronisation,
  Entrainment,
  NumericalContinuation
 ]

 EXPAND(ApproximationMethods) -> [
  PerturbationMethod,
  MultipleScalesMethod,
  AveragingMethod,
  HarmonicBalance,
  SingularPerturbation
 ]

 EXPAND(GlobalPhenomena) -> [
  Multistability,
  Hysteresis,
  LimitCycle,
  Bifurcation,
  Attractor,
  Chaos,
  Synchronisation
 ]

 STOP_CONDITION =
  "Stop when nonlinear structure, local stability, invariant sets, bifurcations, multistability, oscillations, slow-fast behaviour, coupling and numerical validity are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Dynamical Systems"

 IMMEDIATE_CONTEXTS = [
  "Dynamical Systems Ontology",
  "Stability Ontology",
  "Bifurcation Ontology",
  "Chaos Theory Ontology"
 ]

 RELATED_ONTOLOGIES = [
  "Dynamical Systems Ontology",
  "Phase Space Ontology",
  "Stability Ontology",
  "Bifurcation Ontology",
  "Chaos Theory Ontology",
  "Ordinary Differential Equation Ontology",
  "Partial Differential Equation Ontology",
  "Control Theory Ontologies",
  "Nonlinear Control Ontologies",
  "Perturbation Method Ontologies",
  "Numerical Analysis Ontologies",
  "Scientific Computing Ontologies"
 ]

 ROUTE_RULES = [
  "Nonlinear Dynamics -> Dynamical Systems Ontology for core state-evolution semantics",
  "Nonlinear Dynamics -> Phase Space for invariant geometry",
  "Nonlinear Dynamics -> Stability for equilibrium and orbit stability",
  "Nonlinear Dynamics -> Bifurcation for parameter-driven qualitative change",
  "Nonlinear Dynamics -> Chaos Theory for sensitive aperiodic behaviour",
  "Nonlinear Dynamics -> ODE and PDE Ontologies for governing equations",
  "Nonlinear Dynamics -> Control Theory for controlled nonlinear systems",
  "Nonlinear Dynamics -> Perturbation Methods for weakly nonlinear approximations",
  "Nonlinear Dynamics -> Numerical Analysis for continuation and simulation"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible nonlinear phenomena, approximation methods or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve nonlinear-versus-linear distinction.",
  "Preserve local-versus-global distinction.",
  "Preserve invariant-set semantics.",
  "Preserve multistability and hysteresis semantics.",
  "Preserve perturbation-method assumptions.",
  "Preserve slow-fast timescale semantics.",
  "Preserve chaos-versus-irregularity distinction.",
  "Preserve machine-readable nonlinear-dynamics semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "Nonlinear dynamics studies state evolution governed by nonlinear laws and the qualitative behaviours that emerge from those nonlinearities."

 LOCAL_SUMMARY =
  "Linearisation describes local behaviour near regular equilibria but does not determine global nonlinear dynamics."

 OSCILLATION_SUMMARY =
  "Nonlinear systems can sustain limit cycles, relaxation oscillations, resonance and amplitude-dependent frequencies."

 BIFURCATION_SUMMARY =
  "Parameter variation can create, destroy or destabilise invariant sets through nonlinear bifurcations."

 MULTISTABILITY_SUMMARY =
  "Multiple stable attractors can coexist, producing basin dependence and hysteresis."

 PERTURBATION_SUMMARY =
  "Weak nonlinearities can be approximated using perturbation, averaging, multiple-scales and harmonic-balance methods."

 SLOWFAST_SUMMARY =
  "Slow-fast systems exhibit separated timescales and can generate relaxation oscillations and singular transitions."

 CHAOS_SUMMARY =
  "Strong nonlinear interactions can generate deterministic chaotic dynamics."

 VALIDATION_SUMMARY =
  "Nonlinear conclusions should be checked against parameter range, initial conditions, approximation assumptions and numerical sensitivity."
}

FLOW {
 INPUT
 -> detect_nonlinear_dynamics_context
 -> identify state_variables_parameters_nonlinear terms_forcing_coupling_and_timescales
 -> compute equilibria_or_fixed points
 -> linearise_and_analyse local stability
 -> identify invariant_sets_limit cycles_manifolds_attractors_and_basins
 -> analyse bifurcations_multistability_hysteresis_and_global transitions
 -> if_weak_nonlinearity apply perturbation_multipleScales_averaging_or_harmonicBalance
 -> if_slowFast analyse singular perturbation_and_reduced manifolds
 -> if_coupled analyse synchronisation_or_entrainment
 -> if_aperiodic_bounded assess chaos_using Lyapunov_Poincare_recurrence_and_attractor diagnostics
 -> route to dynamical_systems phase_space stability bifurcation chaos ODE PDE control perturbation_methods numerical_analysis_or_scientific_computing ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Nonlinear Dynamics Ontology defines dynamical behaviour generated by nonlinear evolution laws. It supports nonlinear ODEs, maps and PDEs, equilibria, linearisation, Jacobians, invariant manifolds, limit cycles, nonlinear oscillations, resonance, multistability, hysteresis, bifurcations, attractors, chaos, Lyapunov exponents, centre manifolds, normal forms, perturbation methods, multiple-scales and averaging methods, harmonic balance, slow-fast systems, singular perturbations, coupled oscillators, synchronisation, entrainment and numerical continuation."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-APPLIED-MATHEMATICS-DYNAMICAL-SYSTEMS-NONLINEAR-DYNAMICS-ONTOLOGY-V1"
}

}

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