flow "CurlOntology" v1.0
# ============================================================
# CURL ONTOLOGY — FLOW ALGEBRA
# ============================================================
SOURCE_URL := "https://kirethresearch.org/booksai-core/ontologies/calculus-analysis-ontologies/vector-calculus/curl-ontology.html"
DOMAIN := "Mathematical Ontologies"
CATEGORY := "Calculus and Analysis Ontologies"
SUBCATEGORY := "Vector Calculus"
ENTITY := "Curl"
# ---------- CORE ENTITY ----------
CURL := {
type: VectorDifferentialOperatorResult,
domain: VectorCalculus,
purpose: "Measure the local rotational tendency and infinitesimal circulation density of a differentiable vector field in three-dimensional Euclidean space."
}
# ---------- CORE CONCEPTS ----------
CONCEPTS := {
VECTOR_FIELD,
CURL,
NABLA_OPERATOR,
PARTIAL_DERIVATIVE,
ROTATION,
CIRCULATION,
VORTICITY,
IRROTATIONAL_FIELD,
CONSERVATIVE_FIELD,
STOKES_THEOREM,
LINE_INTEGRAL,
SURFACE_INTEGRAL,
CROSS_PRODUCT
}
# ---------- VECTOR FIELD ----------
VECTOR_FIELD
:= F: R^3 -> R^3
F(x,y,z)
:= (
P(x,y,z),
Q(x,y,z),
R(x,y,z)
)
CURL
-> operates_on(THREE_DIMENSIONAL_VECTOR_FIELD)
in(STANDARD_CROSS_PRODUCT_FORM)
# ---------- NABLA CROSS FORM ----------
NABLA
:= ∇
CURL(F)
:= ∇ cross F
CURL(F)
= (
partial_R/partial_y - partial_Q/partial_z,
partial_P/partial_z - partial_R/partial_x,
partial_Q/partial_x - partial_P/partial_y
)
CURL
-> produces(VECTOR_FIELD)
# ---------- DETERMINANT MNEMONIC ----------
CURL(F)
-> may_be_remembered_using(FORMAL_DETERMINANT_MNEMONIC)
FORMAL_STRUCTURE:
| e_x e_y e_z |
| d/dx d/dy d/dz |
| P Q R |
DETERMINANT_MNEMONIC
-> computational_aid
-/> literal_determinant_of_ordinary_numeric_matrix
# ---------- LOCAL ROTATION ----------
CURL(F)(p)
-> measures(LOCAL_ROTATIONAL_TENDENCY)
CURL_DIRECTION
-> local_axis_of_rotation
under(RIGHT_HAND_ORIENTATION)
CURL_MAGNITUDE
-> proportional_to(LOCAL_CIRCULATION_DENSITY)
# ---------- CIRCULATION LIMIT ----------
for small oriented surface S
with boundary C:
normal_component_of(CURL)
:= limit(
circulation_around(C)
/ area(S),
S shrinks_to point
)
CIRCULATION
:= line_integral_C(
F dot dr
)
CURL
-> localises(CIRCULATION)
# ---------- IRROTATIONAL FIELD ----------
IRROTATIONAL_FIELD
:= vector_field F
such_that
CURL(F) = ZERO_VECTOR
IRROTATIONAL
~= CURL_FREE
CURL_ZERO
-> indicates(NO_LOCAL_ROTATION)
in(STANDARD_VECTOR_CALCULUS_INTERPRETATION)
# ---------- CONSERVATIVE FIELD ----------
if
F = GRADIENT(phi)
AND phi sufficiently_smooth
then
CURL(F)
= ZERO_VECTOR
CONSERVATIVE_FIELD
-> implies(IRROTATIONAL)
under(REQUIRED_SMOOTHNESS)
IRROTATIONAL
-/> necessarily_implies(GLOBAL_CONSERVATIVE_FIELD)
without(APPROPRIATE_DOMAIN_TOPOLOGY)
# ---------- STOKES THEOREM ----------
if
S oriented_surface
AND C = boundary(S)
AND orientations_are_compatible
then
line_integral_C(
F dot dr
)
=
surface_integral_S(
CURL(F) dot n_hat dS
)
STOKES_THEOREM
-> connects(LOCAL_CURL, GLOBAL_BOUNDARY_CIRCULATION)
# ---------- VORTICITY ----------
if
v
:= fluid_velocity_field
then
VORTICITY
:= CURL(v)
VORTICITY
-> measures(LOCAL_FLUID_ROTATION)
ANGULAR_VELOCITY_OF_SMALL_FLUID_ELEMENT
-> approximately(1/2 * VORTICITY)
under(STANDARD_CONTINUUM_INTERPRETATION)
# ---------- ELECTROMAGNETISM ----------
FARADAY_LAW_DIFFERENTIAL_FORM:
CURL(E)
= -partial_B/partial_t
AMPERE_MAXWELL_LAW:
CURL(B)
= mu_0*J
+ mu_0*epsilon_0*partial_E/partial_t
CURL
-> central_to(MAXWELL_EQUATIONS)
# ---------- DIVERGENCE OF CURL ----------
under sufficient smoothness:
DIVERGENCE(CURL(F))
= 0
CURL_FIELD
-> automatically(DIVERGENCE_FREE)
locally_under(SMOOTHNESS)
# ---------- CURL OF GRADIENT ----------
under sufficient smoothness:
CURL(GRADIENT(phi))
= ZERO_VECTOR
GRADIENT_FIELD
-> automatically(IRROTATIONAL)
locally_under(SMOOTHNESS)
# ---------- PRODUCT RULE ----------
for scalar field phi
and vector field F:
CURL(phi*F)
= GRADIENT(phi) cross F
+ phi*CURL(F)
CURL_PRODUCT_RULE
-> vector_calculus_product_identity
# ---------- CROSS-PRODUCT IDENTITY ----------
for vector fields A,B:
CURL(A cross B)
-> expressible_using(
DIVERGENCE,
DIRECTIONAL_DERIVATIVES,
FIELD_GRADIENTS
)
VECTOR_IDENTITIES
-> require(CONSISTENT_COORDINATE_AND_SMOOTHNESS_CONTEXT)
# ---------- COORDINATE SYSTEMS ----------
CURL
-> geometric_operator
CARTESIAN_COMPONENT_FORM
-> given_by(STANDARD_PARTIAL_DERIVATIVE_FORMULA)
CURVILINEAR_COORDINATES
-> require(SCALE_FACTORS_OR_METRIC_STRUCTURE)
COORDINATE_FORMULA
-> must_match(COORDINATE_SYSTEM)
# ---------- TWO-DIMENSIONAL RELATION ----------
for planar field
F = (P(x,y), Q(x,y))
SCALAR_PLANAR_CURL
:= partial_Q/partial_x
- partial_P/partial_y
PLANAR_CURL
-> corresponds_to(z_component_of_3D_CURL)
after(EMBEDDING_IN_R3)
GREEN_THEOREM
-> integrates(PLANAR_CURL_OVER_REGION)
-> relates_to(BOUNDARY_CIRCULATION)
# ---------- APPLICATIONS ----------
CURL
-> applied_to(FLUID_DYNAMICS)
-> applied_to(ELECTROMAGNETISM)
-> applied_to(CONTINUUM_MECHANICS)
-> applied_to(VORTEX_ANALYSIS)
-> applied_to(PARTIAL_DIFFERENTIAL_EQUATIONS)
-> applied_to(VECTOR_POTENTIALS)
# ---------- RELATION GRAPH ----------
VECTOR_FIELD
-> acted_on_by(CURL_OPERATOR)
CURL
-> produces(VECTOR_FIELD)
CURL
-> localises(CIRCULATION)
CURL_ZERO
-> defines(IRROTATIONAL_FIELD)
GRADIENT_FIELD
-> has(ZERO_CURL)
under(SMOOTHNESS)
STOKES_THEOREM
-> integrates(CURL_OVER_SURFACE)
-> equates_to(BOUNDARY_CIRCULATION)
CURL_FIELD
-> has(ZERO_DIVERGENCE)
under(SMOOTHNESS)
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE := {
"curl" ~= "vector measure of local rotational tendency in three-dimensional vector calculus",
"rot" ~= "curl operator in some mathematical traditions",
"nabla cross F" ~= "curl of F",
"curl-free" ~= "irrotational",
"vorticity" ~= "curl of a fluid velocity field",
"planar curl" ~= "scalar z-component of the embedded three-dimensional curl"
}
# ---------- CONSTRAINTS ----------
CONSTRAINTS := {
standard_cross_product_curl_is_three_dimensional: true,
curl_output_is_vector_field_in_R3: true,
component_formula_depends_on_coordinate_system: true,
conservative_field_implies_curl_free_under_smoothness: true,
curl_free_does_not_guarantee_global_conservative_field_without_domain_conditions: true,
stokes_theorem_requires_compatible_orientation: true,
divergence_of_curl_identity_requires_sufficient_smoothness: true
}
# ---------- CONFIDENCE ----------
CONFIDENCE := {
core_definition: 0.99,
component_formula: 0.99,
circulation_relation: 0.99,
conservative_field_relation: 0.99,
stokes_theorem_relation: 0.99,
vorticity_relation: 0.99,
semantic_equivalence: 0.97
}
# ---------- RECURSIVE REASONING ----------
RECURSIVE_REASONING(query):
identify(vector_field)
-> determine(domain_and_dimension)
-> identify(coordinate_system)
-> verify(required_differentiability)
-> compute(component_partial_derivatives)
-> apply(coordinate_appropriate_curl_formula)
-> classify(irrotational_or_rotational_behaviour_if_requested)
-> analyse(conservative_field_conditions_if_relevant)
-> connect_to(circulation_or_vorticity_if_relevant)
-> apply(stokes_theorem_if_valid)
-> validate(orientation_domain_and_smoothness)
-> interpret(geometric_or_physical_meaning)
-> return(semantic_result)
# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION := {
parse_as: "typed curl semantic graph",
primary_entity: CURL,
preserve: [
vector_field,
coordinate_system,
orientation,
component_functions,
differentiability,
domain_topology
],
infer_through: [
circulation,
irrotational_fields,
conservative_fields,
stokes_theorem,
vorticity,
green_theorem,
vector_identities
],
avoid: [
applying_standard_cross_product_curl_outside_R3_without generalisation,
using_cartesian_formula_in_curvilinear_coordinates,
assuming_curl_free_means globally conservative,
ignoring_orientation_in_stokes theorem,
confusing_curl_with_divergence,
interpreting_nonzero_curl_without model context
]
}
# ---------- UPDATE MODEL ----------
UPDATE_MODEL(new_information):
validate(new_information)
-> identify(curl_context)
-> compare(existing_relations)
-> preserve(field_orientation_and_topology_invariants)
-> update(affected_entities)
-> update(affected_edges)
-> recompute(CONFIDENCE)
-> regenerate(FLOW_HASH)
# ---------- FLOW HASH ----------
FLOW_HASH := hash(
SOURCE_URL
+ ENTITY
+ CONCEPTS
+ CURL
+ NABLA
+ CIRCULATION
+ IRROTATIONAL_FIELD
+ CONSERVATIVE_FIELD
+ STOKES_THEOREM
+ VORTICITY
+ SEMANTIC_EQUIVALENCE
+ CONSTRAINTS
)
# ---------- EXECUTION ----------
INPUT(query)
-> CURL
-> VECTOR_FIELD_IDENTIFICATION
-> DIMENSION_ANALYSIS
-> COORDINATE_SYSTEM_ANALYSIS
-> DIFFERENTIABILITY_ANALYSIS
-> COMPONENT_DERIVATIVE_ANALYSIS
-> CURL_CALCULATION
-> ROTATIONAL_BEHAVIOUR_CLASSIFICATION
-> CONSERVATIVE_FIELD_ANALYSIS
-> CIRCULATION_VORTICITY_ANALYSIS
-> STOKES_THEOREM_ANALYSIS
-> GEOMETRIC_PHYSICAL_INTERPRETATION
-> RECURSIVE_REASONING(query)
-> CONFIDENCE
-> OUTPUT(semantic_result)
END FLOW
Download Code
Copy to Clipboard