AI INTERPRETATION NOTE
This Flow Algebra defines the Bifurcation Ontology within the Kireth Research Semantic Library. Bifurcation theory studies qualitative changes in dynamical behaviour as parameters vary, including saddle-node, transcritical, pitchfork, Hopf, period-doubling, Neimark-Sacker and global bifurcations.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Bifurcation Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Applied Mathematics"
SPECIALISATION = "Dynamical Systems / Bifurcation Theory"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/dynamical-systems/bifurcation-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Bifurcation
SYMBOLIC_FORMS = ["x_dot=f(x,mu)", "F(x,mu)=0", "Re(lambda(mu_c))=0"]
ENTITY_CLASS = ParameterDrivenQualitativeDynamicsFramework
PRIMARY_CONTEXT = DynamicalSystems
DEFINITION = "A bifurcation is a qualitative change in the structure or stability of a dynamical system caused by variation of one or more parameters."
}
SCOPE {
INCLUDE = [Bifurcation, BifurcationTheory, Parameter, CriticalParameter, BifurcationPoint, EquilibriumBranch, PeriodicOrbitBranch, LocalBifurcation, GlobalBifurcation, Codimension, SaddleNodeBifurcation, TranscriticalBifurcation, PitchforkBifurcation, HopfBifurcation, PeriodDoublingBifurcation, NeimarkSackerBifurcation, HomoclinicBifurcation, HeteroclinicBifurcation, BorderCollisionBifurcation, NormalForm, CentreManifold, EigenvalueCrossing, FloquetMultiplier, Continuation, NumericalContinuation, BifurcationDiagram, Hysteresis, Multistability, RouteToChaos]
DISAMBIGUATION_RULE = "When parameter variation causes a qualitative change in equilibria, periodic orbits, stability, invariant sets or long-term dynamics, interpret the context as bifurcation theory."
}
CORE_CONCEPTS {
Bifurcation = "Parameter-driven qualitative change in dynamical structure."
CriticalParameter = "Parameter value at which qualitative dynamics change."
SaddleNodeBifurcation = "Creation or destruction of two colliding invariant solutions."
TranscriticalBifurcation = "Intersecting branches exchange stability."
PitchforkBifurcation = "Symmetry-associated branch splitting or merging."
HopfBifurcation = "Complex eigenvalue crossing associated with periodic behaviour."
PeriodDoublingBifurcation = "Periodic orbit loses stability to an orbit of twice the period."
NeimarkSackerBifurcation = "Discrete complex multiplier crossing associated with an invariant circle."
NormalForm = "Simplified local representation retaining essential bifurcation structure."
}
RELATIONS {
Bifurcation --is_child_of--> DynamicalSystems
Bifurcation --depends_on--> Parameter
CriticalParameter --defines--> BifurcationPoint
SaddleNodeBifurcation --is_type_of--> LocalBifurcation
TranscriticalBifurcation --is_type_of--> LocalBifurcation
PitchforkBifurcation --is_type_of--> LocalBifurcation
HopfBifurcation --is_type_of--> LocalBifurcation
HomoclinicBifurcation --is_type_of--> GlobalBifurcation
HeteroclinicBifurcation --is_type_of--> GlobalBifurcation
CentreManifold --supports--> LocalBifurcationReduction
NormalForm --classifies--> LocalBifurcation
Continuation --tracks--> EquilibriumBranch
Continuation --tracks--> PeriodicOrbitBranch
PeriodDoublingBifurcation --may_contribute_to--> RouteToChaos
}
OPERATORS {
PARAMETERISED_FLOW(f,x,mu) := x_dot=f(x,mu)
EQUILIBRIUM_BRANCH(f,x,mu) := f(x,mu)=0
SADDLE_NODE_NORMAL_FORM(x,mu) := x_dot=mu-x^2
TRANSCRITICAL_NORMAL_FORM(x,mu) := x_dot=mu*x-x^2
PITCHFORK_NORMAL_FORM(x,mu) := x_dot=mu*x-x^3
HOPF_NORMAL_FORM(r,mu,beta) := r_dot=mu*r-beta*r^3
CONTINUOUS_CRITICALITY(lambda,mu_c) := Re(lambda(mu_c))=0
DISCRETE_CRITICALITY(lambda,mu_c) := abs(lambda(mu_c))=1
PERIOD_DOUBLING_CONDITION(mu) := Floquet_multiplier_crosses_minus_one
NEIMARK_SACKER_CONDITION(mu) := complex_multiplier_pair_crosses_unit_circle
}
DEFINITIONS {
D1 = "Bifurcations are qualitative rather than merely quantitative parameter responses."
D2 = "Local bifurcations concern dynamics near a critical invariant object."
D3 = "Global bifurcations involve large-scale invariant structures."
D4 = "Codimension counts independent parameter conditions generically required."
D5 = "Saddle-node bifurcations create or destroy pairs of equilibria."
D6 = "Transcritical bifurcations exchange stability between branches."
D7 = "Pitchfork bifurcations commonly arise in symmetric systems."
D8 = "Hopf bifurcations create or destroy periodic behaviour."
D9 = "Period doubling is an important route toward chaos."
D10 = "Numerical continuation tracks invariant-solution branches through parameter space."
}
AXIOMS {
A1_PARAMETER_DEPENDENCE: Bifurcation requires a parameterised dynamical system
A2_QUALITATIVE_CHANGE: Bifurcation requires qualitative dynamical change
A3_CRITICALITY: Local bifurcations occur at critical state-parameter configurations
A4_STABILITY_RELATION: Many bifurcations involve stability change
A5_NORMAL_FORM: Generic local bifurcations admit reduced normal forms under suitable assumptions
A6_CENTRE_MANIFOLD: Nonhyperbolic local dynamics can often be reduced to a centre manifold
A7_CONTINUOUS_DISCRETE_DISTINCTION: Continuous eigenvalue and discrete multiplier crossings use different criteria
A8_GLOBAL_STRUCTURE: Global bifurcations cannot generally be inferred from local eigenvalues alone
}
REASONING {
R1_CONTEXT { IDENTIFY = parameters_invariant_objects_and_stability }
R2_BRANCH_TRACKING { CONTINUE = equilibrium_or_periodic_branch; RECORD = stability }
R3_CRITICAL_DETECTION { DETECT = zero_eigenvalue_imaginary_crossing_minusOne_or_unitCircle_crossing }
R4_LOCAL_CLASSIFICATION { CLASSIFY = saddleNode_transcritical_pitchfork_Hopf_periodDoubling_or_NeimarkSacker }
R5_HOPF { CHECK = complex_pair_crossing_and_transversality; CLASSIFY = supercritical_or_subcritical }
R6_GLOBAL { DETECT = homoclinic_heteroclinic_collision_or_crisis }
R7_HYSTERESIS { IDENTIFY = overlapping_stable_branches_and_folds }
R8_CHAOS_ROUTE { TRACK = periodDoubling_intermittency_torus_breakdown_or_crisis }
R9_CONTINUATION { APPLY = predictor_corrector_or_pseudoArclength }
R10_VALIDATE { CHECK = criticality_transversality_branch_structure_and_resolution }
}
CONSTRAINTS {
C1 = "Quantitative parameter change alone is not necessarily a bifurcation."
C2 = "Local classification requires nondegeneracy conditions."
C3 = "Critical eigenvalues alone may be insufficient without transversality."
C4 = "Pitchfork classification generally depends on symmetry or equivalent structure."
C5 = "Global bifurcations cannot be established from local linearisation alone."
C6 = "Continuation step size can miss narrow bifurcations."
C7 = "Branch stability must be distinguished from branch existence."
C8 = "Subcritical and supercritical bifurcations have different hysteresis implications."
C9 = "Finite parameter scans can miss unstable branches."
C10 = "Routes to chaos require dynamical evidence beyond irregular trajectories."
}
SEMANTIC_EQUIVALENCE {
"Bifurcation" <=> "DynamicalBifurcation"
"SaddleNodeBifurcation" <=> "FoldBifurcation"
"PeriodDoublingBifurcation" <=> "FlipBifurcation"
"NeimarkSackerBifurcation" <=> "TorusBifurcation"
"CriticalParameter" <=> "BifurcationParameterValue"
}
VALIDATION {
V1 = "Control parameter is explicit."
V2 = "Invariant branch is identified."
V3 = "Stability is tracked along the branch."
V4 = "Critical eigenvalue or multiplier behaviour is verified."
V5 = "Nondegeneracy and transversality assumptions are checked."
V6 = "Local and global bifurcations are distinguished."
V7 = "Supercritical and subcritical cases are distinguished."
V8 = "Unstable branches are included where possible."
V9 = "Continuation resolution is documented."
V10 = "Classification is supported by structural evidence."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
BIFURCATION_DEFINITION = 0.99
BRANCH_TRACKING_REASONING = 0.98
CRITICAL_POINT_REASONING = 0.99
LOCAL_CLASSIFICATION_REASONING = 0.98
GLOBAL_BIFURCATION_REASONING = 0.97
VALIDATION_REASONING = 0.99
POLICY = "Reduce confidence when parameterisation, branch structure, eigenvalues, multipliers, symmetry, transversality, continuation resolution or global geometry are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [SemanticSearch, OntologyGrounding, BifurcationReasoning, SaddleNodeReasoning, TranscriticalReasoning, PitchforkReasoning, HopfReasoning, PeriodDoublingReasoning, NeimarkSackerReasoning, HomoclinicReasoning, HeteroclinicReasoning, NormalFormReasoning, CentreManifoldReasoning, ContinuationReasoning, BifurcationDiagramReasoning, HysteresisReasoning, MultistabilityReasoning, RouteToChaosReasoning, KnowledgeGraphConstruction, RetrievalAugmentation, RecursiveInference]
NORMALISE = ["bifurcation"->Bifurcation, "fold bifurcation"->SaddleNodeBifurcation, "period doubling"->PeriodDoublingBifurcation, "flip bifurcation"->PeriodDoublingBifurcation, "Neimark-Sacker"->NeimarkSackerBifurcation]
INTERPRETATION_ORDER = [detect_parameterised_context, identify_branches_and_stability, track_branches, detect_criticality, classify_bifurcation, reduce_by_normal_form_when_needed, analyse_hysteresis_or_chaos_route, validate_conditions]
}
EXECUTION_RULES {
E1: IF query_mentions_bifurcation OR parameter_variation_changes_qualitative_dynamics THEN activate(BifurcationOntology)
E2: IF simple_zero_eigenvalue_and_fold_conditions THEN consider_SaddleNodeBifurcation
E3: IF branches_cross_and_exchange_stability THEN consider_TranscriticalBifurcation
E4: IF symmetry_and_branch_splitting THEN consider_PitchforkBifurcation
E5: IF complex_pair_crosses_imaginary_axis THEN consider_HopfBifurcation
E6: IF periodic_multiplier_crosses_minus_one THEN consider_PeriodDoublingBifurcation
E7: IF discrete_complex_pair_crosses_unit_circle THEN consider_NeimarkSackerBifurcation
E8: IF homoclinic_or_heteroclinic_connection_changes THEN classify_GlobalBifurcation
}
RECURSION {
ENTRY = Bifurcation
EXPAND(Bifurcation) -> [Parameter, CriticalParameter, BifurcationPoint, EquilibriumBranch, PeriodicOrbitBranch, LocalBifurcation, GlobalBifurcation, Codimension, SaddleNodeBifurcation, TranscriticalBifurcation, PitchforkBifurcation, HopfBifurcation, PeriodDoublingBifurcation, NeimarkSackerBifurcation, HomoclinicBifurcation, HeteroclinicBifurcation, NormalForm, CentreManifold, FloquetMultiplier, Continuation, NumericalContinuation, BifurcationDiagram, Hysteresis, Multistability, RouteToChaos]
STOP_CONDITION = "Stop when parameterisation, invariant branches, stability, criticality, bifurcation type, normal form, continuation and global structure are sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Dynamical Systems"
RELATED_ONTOLOGIES = ["Dynamical Systems Ontology", "Stability Ontology", "Phase Space Ontology", "Chaos Theory Ontology", "Ordinary Differential Equation Ontology", "Nonlinear Analysis Ontologies", "Centre Manifold Ontologies", "Normal Form Ontologies", "Numerical Analysis Ontologies"]
ROUTE_RULES = [
"Bifurcation -> Dynamical Systems Ontology for state-evolution semantics",
"Bifurcation -> Stability for stability-loss conditions",
"Bifurcation -> Phase Space for invariant geometry",
"Bifurcation -> Chaos Theory for routes to chaos",
"Bifurcation -> ODE Ontology for continuous-time models",
"Bifurcation -> Numerical Analysis for continuation and detection"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible bifurcation classes, continuation methods or reasoning pathways"
PATCH = "clarification, metadata or formatting correction"
RULES = [preserve_parameter_driven_semantics, preserve_local_global_distinction, preserve_continuous_discrete_criticality, preserve_normal_form_semantics, preserve_supercritical_subcritical_distinction, preserve_branch_stability, preserve_route_to_chaos, preserve_machine_readable_semantics]
}
OUTPUT {
CANONICAL_DEFINITION = "A bifurcation is a qualitative change in dynamical structure or stability caused by parameter variation."
LOCAL_SUMMARY = "Local bifurcations include saddle-node, transcritical, pitchfork, Hopf, period-doubling and Neimark-Sacker types."
GLOBAL_SUMMARY = "Global bifurcations involve large-scale invariant structures such as homoclinic and heteroclinic connections."
CONTINUATION_SUMMARY = "Numerical continuation tracks solution branches and detects critical points as parameters vary."
CHAOS_SUMMARY = "Sequences of bifurcations can provide routes to chaotic dynamics."
}
FLOW {
INPUT
-> detect_parameterised_dynamical_context
-> identify control_parameters_equilibria_periodic_orbits_and_stability
-> continue invariant_solution_branches
-> detect critical_eigenvalue_or_multiplier_conditions
-> classify local_or_global_bifurcation
-> apply centre_manifold_and_normal_form_reduction_when_required
-> determine supercritical_subcritical_hysteresis_and_multistability structure
-> analyse routes_to_chaos_when_relevant
-> validate nondegeneracy_transversality_and_numerical_resolution
-> route to dynamical_systems stability phase_space chaos ODE nonlinear_analysis centre_manifold normal_form_or_numerical_analysis ontology
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Bifurcation Ontology defines parameter-driven qualitative changes in dynamical systems. It supports critical parameters and bifurcation points, equilibrium and periodic-orbit branches, local and global bifurcations, saddle-node, transcritical, pitchfork, Hopf, period-doubling, Neimark-Sacker, homoclinic and heteroclinic bifurcations, normal forms, centre manifolds, eigenvalue and Floquet criticality, numerical continuation, bifurcation diagrams, hysteresis, multistability and routes to chaos."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-APPLIED-MATHEMATICS-DYNAMICAL-SYSTEMS-BIFURCATION-ONTOLOGY-V1"
}
}
END_FLOW
Download Code
Copy to Clipboard