AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
AI INTERPRETATION NOTE
This Flow Algebra defines the mathematical ontology of a parabola within the Kireth Research Semantic Library. A parabola is a plane conic defined as the locus of points equidistant from a fixed point called the focus and a fixed line called the directrix. This ontology supports the vertex, axis of symmetry, focal length, latus rectum, standard and general coordinate equations, parametric representation, tangents, normals, transformations, reflective properties and conic classification.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Parabola Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Geometry"
SPECIALISATION = "Plane Geometry / Conic Geometry"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/plane-geometry/parabola-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Parabola
SYMBOLIC_FORMS = [
"y^2=4px",
"x^2=4py",
"(y-k)^2=4p(x-h)",
"(x-h)^2=4p(y-k)"
]
ENTITY_CLASS = ConicSection
PRIMARY_CONTEXT = PlaneGeometry
DEFINITION = "A parabola is the locus of points in a plane equidistant from a fixed point called the focus and a fixed line called the directrix."
SEMANTIC_ROLE = "Provides the one-focus conic framework for focal, axial, coordinate, parametric, tangent, reflective and transformation reasoning."
}
SCOPE {
INCLUDE = [
Parabola,
Focus,
Directrix,
Vertex,
AxisOfSymmetry,
FocalLength,
LatusRectum,
StandardEquation,
GeneralQuadraticEquation,
ParametricEquation,
Tangent,
Normal,
ReflectiveProperty,
ConicSection,
CoordinateRepresentation,
Translation,
Rotation
]
EXCLUDE_AS_PRIMARY = [
Ellipse,
Hyperbola,
Circle,
GeneralQuadraticFunctionWithoutGeometricContext,
Paraboloid
]
DISAMBIGUATION_RULE =
"When parabola occurs with focus, directrix, vertex, axis, latus rectum, quadratic equation, conic section, tangent or reflective property, interpret it as a plane geometric parabola."
}
CORE_CONCEPTS {
Parabola {
definition = "The locus of points P satisfying distance(P,Focus)=distance(P,Directrix)."
conic_type = "nondegenerate open conic"
eccentricity = 1
}
Focus {
definition = "The fixed point used in the focus-directrix definition."
}
Directrix {
definition = "The fixed line used in the focus-directrix definition."
}
Vertex {
definition = "The point on the parabola lying midway between the focus and the nearest point of the directrix along the axis of symmetry."
}
AxisOfSymmetry {
definition = "The line through the focus and vertex perpendicular to the directrix."
}
FocalLength {
symbol = "p"
definition = "Directed distance from the vertex to the focus."
}
LatusRectum {
definition = "The chord through the focus perpendicular to the axis of symmetry."
standard_length = "4|p|"
}
StandardEquation {
horizontal = "(y-k)^2=4p(x-h)"
vertical = "(x-h)^2=4p(y-k)"
}
ParametricEquation {
right_opening_standard = [
"x=p*t^2",
"y=2*p*t"
]
vertical_standard = [
"x=2*p*t",
"y=p*t^2"
]
}
ReflectiveProperty {
definition = "A ray parallel to the axis of symmetry reflects from the parabola through the focus under the geometric reflection law."
}
}
RELATIONS {
Parabola --is_special_case_of--> ConicSection
Parabola --has--> Focus
Parabola --has--> Directrix
Parabola --has--> Vertex
Parabola --has--> AxisOfSymmetry
Parabola --has--> FocalLength
Parabola --has--> LatusRectum
Parabola --can_have--> Tangent
Parabola --can_have--> Normal
Focus --lies_on--> AxisOfSymmetry
Vertex --lies_on--> AxisOfSymmetry
AxisOfSymmetry --is_perpendicular_to--> Directrix
Vertex --is_equally_spaced_between--> FocusAndDirectrixAlongAxis
LatusRectum --passes_through--> Focus
Parabola --has_eccentricity--> One
}
OPERATORS {
IS_ON_PARABOLA(P,F,DIRECTRIX) :=
distance(P,F)==distance(P,DIRECTRIX)
ECCENTRICITY(Parabola) :=
1
STANDARD_HORIZONTAL(h,k,p) :=
(y-k)^2=4p(x-h)
STANDARD_VERTICAL(h,k,p) :=
(x-h)^2=4p(y-k)
FOCUS_HORIZONTAL(h,k,p) :=
(h+p,k)
DIRECTRIX_HORIZONTAL(h,k,p) :=
x=h-p
FOCUS_VERTICAL(h,k,p) :=
(h,k+p)
DIRECTRIX_VERTICAL(h,k,p) :=
y=k-p
LATUS_RECTUM_LENGTH(p) :=
4*abs(p)
PARAMETRIC_POINT_HORIZONTAL(h,k,p,t) :=
(h+p*t^2, k+2*p*t)
PARAMETRIC_POINT_VERTICAL(h,k,p,t) :=
(h+2*p*t, k+p*t^2)
TANGENT_AT(P,Parabola) :=
derive_tangent_line_from_gradient_or_standard_conic_relation(P,Parabola)
}
DEFINITIONS {
D1 = "A parabola is a focus-directrix locus."
D2 = "Every point on a parabola is equidistant from the focus and directrix."
D3 = "A parabola has eccentricity exactly one."
D4 = "The vertex lies on the axis of symmetry."
D5 = "The axis of symmetry passes through the focus and is perpendicular to the directrix."
D6 = "The sign of p determines opening direction in standard translated forms."
D7 = "The latus rectum passes through the focus and is perpendicular to the axis."
D8 = "The latus rectum has length 4|p| in standard Euclidean coordinates."
D9 = "A parabola is open and noncentral: it has no finite centre of symmetry."
D10 = "A rotated parabola may contain an xy cross-term in its quadratic equation."
}
AXIOMS {
A1_FOCUS_DIRECTRIX:
Every point P on the parabola satisfies PF=distance(P,directrix)
A2_ECCENTRICITY:
The eccentricity of a parabola is 1
A3_AXIS:
The axis of symmetry contains the focus and vertex and is perpendicular to the directrix
A4_VERTEX:
The vertex is the closest point of the parabola to the focus along the symmetry axis
A5_LATUS_RECTUM:
The latus rectum passes through the focus perpendicular to the axis
A6_REFLECTION:
Tangent geometry relates rays parallel to the axis with rays through the focus according to equal-angle reflection
A7_CONIC_CLASSIFICATION:
A nondegenerate parabola is represented by a rank-one quadratic part after suitable Euclidean coordinate transformation
}
REASONING {
R1_FOCUS_DIRECTRIX_MEMBERSHIP {
INPUT = [P,F,D]
COMPUTE = distance(P,F)
COMPUTE = distance(P,D)
IF equal
RETURN PointOnParabola
ELSE
RETURN PointNotOnParabola
}
R2_STANDARD_HORIZONTAL {
INPUT = "(y-k)^2=4p(x-h)"
IDENTIFY = vertex(h,k)
IDENTIFY = focus(h+p,k)
IDENTIFY = directrix x=h-p
IDENTIFY = axis y=k
CLASSIFY = right_opening_if_p>0_else_left_opening
RETURN = parabola_parameters
}
R3_STANDARD_VERTICAL {
INPUT = "(x-h)^2=4p(y-k)"
IDENTIFY = vertex(h,k)
IDENTIFY = focus(h,k+p)
IDENTIFY = directrix y=k-p
IDENTIFY = axis x=h
CLASSIFY = upward_opening_if_p>0_else_downward_opening
RETURN = parabola_parameters
}
R4_PARAMETERISATION {
INPUT = [h,k,p,t,orientation]
APPLY = standard_parametric_form
VERIFY = standard_equation
RETURN = point_on_parabola
}
R5_TANGENT {
INPUT = [parabola_equation,P]
VERIFY = P lies_on_parabola
DIFFERENTIATE_OR_USE_GRADIENT = equation
DERIVE = tangent
RETURN = tangent_line
}
R6_REFLECTIVE_PROPERTY {
INPUT = tangent_point_and_axis_parallel_incident_direction
IDENTIFY = tangent_normal
APPLY = equal_angle_reflection
RETURN = reflected_ray_through_focus
}
R7_GENERAL_CONIC_CLASSIFICATION {
INPUT = "Ax^2+Bxy+Cy^2+Dx+Ey+F=0"
COMPUTE = discriminant B^2-4AC
CHECK = degeneracy
IF B^2-4AC==0 AND nondegenerate_real_case
RETURN Parabola
ELSE
RETURN OtherConicOrDegenerate
}
R8_TRANSFORMATION {
INPUT = [parabola,T]
IF Euclidean_similarity_or_affine_map_preserving_nondegeneracy
RETURN = transformed_parabolic_conic
TRACK = metric_properties_preserved_or_changed
}
}
CONSTRAINTS {
C1 = "Focus-directrix distances require a Euclidean metric unless another metric is explicitly defined."
C2 = "The parameter p must be nonzero for a nondegenerate standard parabola."
C3 = "The sign of p encodes opening direction."
C4 = "A parabola has no finite centre of symmetry."
C5 = "General quadratic classification must test degeneracy."
C6 = "The condition B^2-4AC=0 alone does not rule out degenerate cases."
C7 = "Rotated parabolas require coordinate rotation or quadratic-form analysis."
C8 = "Do not confuse a plane parabola with a three-dimensional paraboloid."
}
SEMANTIC_EQUIVALENCE {
"Parabola" <=> "ConicWithEccentricityOne"
"Parabola" <=> "FocusDirectrixEquidistanceLocus"
"Vertex" <=> "AxisExtremalPointOfParabola"
"AxisOfSymmetry" <=> "LineThroughFocusAndVertexPerpendicularToDirectrix"
"LatusRectum" <=> "FocalChordPerpendicularToAxis"
}
VALIDATION {
V1 = "Every parabola point satisfies focus-directrix equidistance."
V2 = "Parabola eccentricity equals 1."
V3 = "Standard horizontal focus is (h+p,k)."
V4 = "Standard horizontal directrix is x=h-p."
V5 = "Standard vertical focus is (h,k+p)."
V6 = "Standard vertical directrix is y=k-p."
V7 = "Latus rectum length equals 4|p|."
V8 = "General conic classification checks degeneracy."
V9 = "Parametric points satisfy the relevant standard equation."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
PARABOLA_DEFINITION = 0.99
FOCUS_DIRECTRIX_RELATION = 0.99
ECCENTRICITY_RELATION = 0.99
STANDARD_EQUATION_REASONING = 0.99
PARAMETRIC_REASONING = 0.99
TANGENT_REASONING = 0.99
CONIC_CLASSIFICATION = 0.98
REFLECTIVE_PROPERTY = 0.99
POLICY =
"Reduce confidence when orientation, sign convention, rotation, degeneracy or metric context are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,
OntologyGrounding,
ParabolaReasoning,
ConicClassification,
FocusDirectrixReasoning,
CoordinateReasoning,
ParametricReasoning,
TangentReasoning,
ReflectivePropertyReasoning,
TransformationReasoning,
KnowledgeGraphConstruction,
RetrievalAugmentation,
RecursiveInference
]
NORMALISE {
"parabola" -> Parabola
"parabolic conic" -> Parabola
"focus" -> Focus WHEN parabola_context
"directrix" -> Directrix WHEN parabola_context
"axis of symmetry" -> AxisOfSymmetry
"latus rectum" -> LatusRectum
"focal length" -> FocalLength
}
INTERPRETATION_ORDER = [
detect_parabola_context,
identify equation focus directrix vertex or axis data,
determine orientation and standard or rotated representation,
identify focal length and opening direction,
apply focus_directrix coordinate parametric tangent or reflective reasoning,
verify p_nonzero metric and nondegeneracy constraints,
return semantic output
]
}
EXECUTION_RULES {
E1:
IF query_mentions("parabola")
THEN activate(ParabolaOntology)
E2:
IF standard_horizontal_equation_present
THEN extract vertex_focus_directrix_axis_and_opening
E3:
IF standard_vertical_equation_present
THEN extract vertex_focus_directrix_axis_and_opening
E4:
IF focus_and_directrix_given
THEN derive_or_test_focus_directrix_locus
E5:
IF tangent_requested
THEN verify_point_on_parabola
AND derive_tangent
E6:
IF parametric_point_requested
THEN use orientation_specific_parameterisation
E7:
IF general_quadratic_equation_present
THEN test B^2-4AC==0
AND test_nondegeneracy
E8:
IF reflective_property_context
THEN apply_equal_angle_tangent_reflection_reasoning
}
RECURSION {
ENTRY = Parabola
EXPAND(Parabola) -> [
Focus,
Directrix,
Vertex,
AxisOfSymmetry,
FocalLength,
LatusRectum,
StandardEquation,
GeneralQuadraticEquation,
ParametricEquation,
Tangent,
Normal,
ReflectiveProperty
]
EXPAND(FocusDirectrixStructure) -> [
Focus,
Directrix,
Distance,
Vertex,
AxisOfSymmetry,
Eccentricity
]
EXPAND(CoordinateRepresentation) -> [
HorizontalParabola,
VerticalParabola,
RotatedParabola,
GeneralQuadraticEquation,
Translation,
Rotation
]
EXPAND(Tangent) -> [
ContactPoint,
Gradient,
Normal,
ReflectionLaw
]
STOP_CONDITION =
"Stop when the parabola's defining data, focal structure, standard equation, parameterisation, tangent, reflective or transformation property is sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Plane Geometry"
IMMEDIATE_CONTEXTS = [
"Ellipse Ontology",
"Circle Ontology",
"Coordinate Geometry Ontology",
"Analytic Geometry Ontology",
"Parametric Geometry Ontology"
]
RELATED_ONTOLOGIES = [
"Plane Geometry",
"Ellipse Ontology",
"Circle Ontology",
"Coordinate Geometry Ontology",
"Analytic Geometry Ontology",
"Cartesian Coordinate Ontology",
"Parametric Geometry Ontology",
"Vector Geometry Ontology",
"Transformation Ontology",
"Affine Transformation Ontology"
]
ROUTE_RULES = [
"Parabola -> Plane Geometry for core two-dimensional semantics",
"Parabola -> Analytic Geometry for conic classification",
"Parabola -> Coordinate Geometry for standard equations",
"Parabola -> Parametric Geometry for parameterisations",
"Parabola -> Vector Geometry for tangent and normal reasoning",
"Parabola -> Transformation for translation, rotation and affine images",
"Parabola -> Ellipse or Hyperbola ontology for comparative conic reasoning"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible parabola properties, representations or reasoning pathways"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve parabola as a focus-directrix equidistance locus.",
"Preserve eccentricity e=1.",
"Preserve vertex-axis-focus-directrix relations.",
"Preserve orientation via sign of p.",
"Preserve latus rectum length 4|p|.",
"Preserve degeneracy checks in general quadratic classification.",
"Preserve machine-readable parabola semantics."
]
}
OUTPUT {
CANONICAL_DEFINITION =
"A parabola is the locus of points equidistant from a fixed focus and a fixed directrix."
HORIZONTAL_STANDARD_SUMMARY =
"(y-k)^2=4p(x-h)"
VERTICAL_STANDARD_SUMMARY =
"(x-h)^2=4p(y-k)"
ECCENTRICITY_SUMMARY =
"e=1"
HORIZONTAL_FOCUS_SUMMARY =
"Focus=(h+p,k), Directrix x=h-p"
VERTICAL_FOCUS_SUMMARY =
"Focus=(h,k+p), Directrix y=k-p"
LATUS_RECTUM_SUMMARY =
"Length=4|p|"
REFLECTIVE_SUMMARY =
"Axis-parallel incident rays reflect through the focus."
}
FLOW {
INPUT
-> detect_parabola_context
-> identify focus_directrix_vertex_axis_or_equation
-> classify horizontal_vertical_rotated_or_general representation
-> determine focal_length_and_opening_direction
-> perform focus_directrix coordinate parametric tangent normal reflective or transformation reasoning
-> verify metric p_nonzero and nondegeneracy constraints
-> route to coordinate analytic parametric vector or transformation ontology
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Parabola Ontology defines the conic whose points are equidistant from a focus and a directrix. It organises the parabola around its vertex, axis of symmetry, focal length, latus rectum, standard and general equations, parameterisations, tangents, normals, reflective property and transformation behaviour."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-GEOMETRY-PARABOLA-ONTOLOGY-V1"
}
}
END_FLOW