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 geometric line within the Kireth Research Semantic Library. A line is a fundamental one-dimensional geometric entity extending indefinitely in both directions. This ontology supports incidence, collinearity, slope, direction, parallelism, perpendicularity, intersections, equations, constructions, transformations and relationships with points, segments, rays, planes and curves.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Line Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Geometry"
SPECIALISATION = "Plane Geometry / Core Geometric Entity"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/plane-geometry/line-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Line
SYMBOLIC_FORMS = ["l", "AB", "Ax+By+C=0", "y=mx+c", "r=a+t*d"]
ENTITY_CLASS = OneDimensionalGeometricEntity
PRIMARY_CONTEXT = Geometry
DEFINITION = "A line is a one-dimensional straight geometric entity extending indefinitely in both directions."
SEMANTIC_ROLE = "Provides a fundamental carrier for points, direction, incidence, alignment, intersection, parallelism and perpendicularity."
}
SCOPE {
INCLUDE = [
Line,
StraightLine,
InfiniteLine,
CoordinateLine,
VectorLine,
HorizontalLine,
VerticalLine,
ParallelLine,
PerpendicularLine,
SecantLine,
TangentLine,
Transversal,
LineOfSymmetry,
ConstructibleLine,
ImageLine,
FixedLine
]
EXCLUDE_AS_PRIMARY = [
LineSegment,
Ray,
Curve,
PhysicalStringOrWire,
TextLine
]
DISAMBIGUATION_RULE =
"When line occurs with points, slope, coordinates, planes, intersections, parallelism, perpendicularity, tangents, secants or geometric constructions, interpret it as a geometric line."
}
CORE_CONCEPTS {
Line {
definition = "A straight one-dimensional geometric object extending without endpoints in both directions."
intrinsic_dimension = 1
}
Direction {
definition = "The orientation of a line, representable by slope, angle or direction vector."
}
Incidence {
definition = "Relation expressing that a point lies on a line."
}
Collinearity {
definition = "Property of multiple points lying on a common line."
}
ParallelLine {
definition = "A line with the same direction as another line and distinct from it in Euclidean plane geometry."
}
PerpendicularLine {
definition = "A line meeting another line at a right angle."
}
TangentLine {
definition = "A line meeting a curve or surface with first-order contact at a specified point."
}
SecantLine {
definition = "A line intersecting a curve in two or more points in the relevant context."
}
Transversal {
definition = "A line intersecting two or more other lines."
}
CoordinateLine {
definition = "A line represented by an equation in a coordinate system."
}
VectorLine {
definition = "A line represented by a point vector and nonzero direction vector."
form = "r=a+t*d"
}
}
RELATIONS {
Line --is_geometric_entity_of--> Geometry
Line --has--> Direction
Line --contains--> Point
PairOfDistinctPoints --determines--> Line
Point --can_lie_on--> Line
Line --can_intersect--> Line
Line --can_intersect--> Circle
Line --can_be_parallel_to--> Line
Line --can_be_perpendicular_to--> Line
Line --can_be_tangent_to--> Curve
Line --can_be_secant_to--> Curve
Line --can_act_as--> Transversal
Line --can_be_transformed_to--> Line
Line --can_lie_in--> Plane
CoordinateLine --can_be_represented_by--> LinearEquation
VectorLine --can_be_represented_by--> ParametricEquation
}
OPERATORS {
LINE_THROUGH(A,B) :=
unique_line_through_distinct_points(A,B)
IS_INCIDENT(P,L) :=
P lies_on L
IS_COLLINEAR(P1,...,Pn) :=
EXISTS line L SUCH_THAT every Pi lies_on L
INTERSECT(L1,L2) :=
common_point_set(L1,L2)
IS_PARALLEL(L1,L2) :=
same_direction(L1,L2) AND L1!=L2 WHEN Euclidean_plane_context
IS_PERPENDICULAR(L1,L2) :=
angle_between(L1,L2)=pi/2
SLOPE(L) :=
gradient_of_nonvertical_coordinate_line(L)
DIRECTION_VECTOR(L) :=
any_nonzero_vector_parallel_to(L)
LINE_EQUATION(P,d) :=
derive_coordinate_or_vector_equation(P,d)
TRANSFORM_LINE(L,T) :=
image_of_line_under_transformation(L,T)
DISTANCE_POINT_TO_LINE(P,L) :=
shortest_metric_distance(P,L)
}
DEFINITIONS {
D1 = "A line is one-dimensional."
D2 = "A line has no endpoints."
D3 = "Two distinct points determine a unique Euclidean line."
D4 = "Points lying on the same line are collinear."
D5 = "Parallel lines share direction and do not meet in Euclidean plane geometry."
D6 = "Perpendicular lines meet at a right angle."
D7 = "A vertical Cartesian line has undefined ordinary slope."
D8 = "A tangent line has local first-order contact with a curve."
D9 = "A secant intersects a curve at two or more relevant points."
D10 = "A line may have multiple equivalent equation forms."
}
AXIOMS {
A1_ONE_DIMENSION:
A geometric line has intrinsic dimension one
A2_NO_ENDPOINTS:
A line extends indefinitely in both directions
A3_TWO_POINT_DETERMINATION:
In Euclidean geometry, two distinct points determine exactly one line
A4_INCIDENCE:
A point either lies on a line or does not
A5_DIRECTION:
A line possesses a direction up to nonzero scalar multiple in vector representation
A6_TRANSFORMATION:
Standard affine transformations map lines to lines
A7_METRIC_RELATIONS:
Parallelism and perpendicularity depend on the active geometry and metric structure
}
REASONING {
R1_LINE_FROM_POINTS {
INPUT = [A,B]
REQUIRE = A!=B
CONSTRUCT_OR_DERIVE = unique_line
RETURN = Line
}
R2_POINT_ON_LINE {
INPUT = [P,L]
IF coordinate_context
SUBSTITUTE = coordinates_of_P_into_equation_of_L
RETURN = truth_status
ELSE
TEST = incidence_relation
}
R3_COLLINEARITY {
INPUT = points
TEST = common_line_condition
IF coordinate_context
USE = determinant_slope_or_rank_test
RETURN = CollinearOrNot
}
R4_INTERSECTION {
INPUT = [L1,L2]
IF coordinate_context
SOLVE = line_equations
CLASSIFY = intersecting_parallel_or_coincident
RETURN = relation_and_intersection
}
R5_PARALLELISM {
INPUT = [L1,L2]
IF slope_context
COMPARE = slopes_with_vertical_case_handled
ELSE IF vector_context
TEST = scalar_multiple_direction_vectors
RETURN = ParallelStatus
}
R6_PERPENDICULARITY {
INPUT = [L1,L2]
IF slope_context_and_both_nonvertical
TEST = m1*m2==-1
ELSE IF vector_context
TEST = d1·d2==0
RETURN = PerpendicularStatus
}
R7_TANGENT {
INPUT = [curve C, point P]
REQUIRE = P lies_on C
IF differentiable_context
DERIVE = tangent_direction_from_derivative_or_gradient
RETURN = tangent_line
}
R8_TRANSFORMATION {
INPUT = [L,T]
APPLY = transformation_to_sufficient_points_or_parametric_form
RETURN = image_line
}
}
CONSTRAINTS {
C1 = "A line must not be confused with a segment or ray."
C2 = "Two coincident points do not determine a unique line direction."
C3 = "Ordinary slope is undefined for vertical lines."
C4 = "Parallelism depends on geometry; Euclidean interpretation is not universal."
C5 = "Perpendicularity depends on angle or inner-product structure."
C6 = "Coincident lines must be distinguished from parallel distinct lines."
C7 = "Tangent definitions depend on curve regularity and context."
C8 = "A transformation may fail to preserve straight lines unless it belongs to a suitable transformation class."
}
SEMANTIC_EQUIVALENCE {
"Line" <=> "InfiniteStraightOneDimensionalGeometricEntity"
"CoordinateLine" <=> "LineRepresentedByLinearEquation"
"VectorLine" <=> "AffineOneParameterSet"
"ParallelLines" <=> "DistinctLinesWithSameDirection" WHEN Euclidean_plane_context
"PerpendicularLines" <=> "LinesMeetingAtRightAngle"
}
VALIDATION {
V1 = "Line is one-dimensional."
V2 = "Line has no endpoints."
V3 = "Two distinct Euclidean points determine one line."
V4 = "Points on a line satisfy its defining equation in coordinate form."
V5 = "Parallel and coincident lines are distinguished."
V6 = "Perpendicular lines satisfy right-angle criteria."
V7 = "Vector direction is nonzero."
V8 = "Affine transformations preserve linehood."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
LINE_DEFINITION = 0.99
INCIDENCE_RELATION = 0.99
COLLINEARITY_RELATION = 0.99
PARALLELISM_RELATION = 0.99
PERPENDICULARITY_RELATION = 0.99
COORDINATE_LINE_RELATION = 0.99
TRANSFORMATION_RELATION = 0.99
POLICY =
"Reduce confidence when geometry type, metric, coordinate frame, line representation or tangency context are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,
OntologyGrounding,
GeometricEntityResolution,
IncidenceReasoning,
CollinearityReasoning,
ParallelismReasoning,
PerpendicularityReasoning,
CoordinateReasoning,
TangencyReasoning,
TransformationReasoning,
KnowledgeGraphConstruction,
RetrievalAugmentation,
RecursiveInference
]
NORMALISE {
"line" -> Line WHEN geometry_context
"straight line" -> Line
"geometric line" -> Line
"parallel line" -> ParallelLine
"perpendicular line" -> PerpendicularLine
"tangent line" -> TangentLine
"secant line" -> SecantLine
"transversal" -> Transversal
}
INTERPRETATION_ORDER = [
detect_geometric_line_context,
identify_geometry_and_dimension,
identify_points_direction_or_equation,
classify_line_role,
identify_incidence_intersection_parallelism_or_perpendicularity_context,
perform_line_specific_reasoning,
verify_representation_and_metric_constraints,
return_semantic_output
]
}
EXECUTION_RULES {
E1:
IF query_mentions("line")
AND geometry_context
THEN activate(LineOntology)
E2:
IF two_distinct_points_given
THEN derive_unique_line
E3:
IF point_membership_requested
THEN test_incidence
E4:
IF collinearity_requested
THEN test_common_line_condition
E5:
IF parallelism_requested
THEN compare_direction_with_vertical_case_handling
E6:
IF perpendicularity_requested
THEN use_angle_slope_or_dot_product_criterion
E7:
IF tangent_context
THEN route_to_curve_tangency_reasoning
E8:
IF transformation_context
THEN compute_image_line
}
RECURSION {
ENTRY = Line
EXPAND(Line) -> [
Direction,
Incidence,
Collinearity,
ParallelLine,
PerpendicularLine,
TangentLine,
SecantLine,
Transversal,
CoordinateLine,
VectorLine
]
EXPAND(CoordinateLine) -> [
LinearEquation,
Slope,
Intercept,
VerticalLine,
HorizontalLine,
Intersection
]
EXPAND(VectorLine) -> [
AnchorPoint,
DirectionVector,
Parameter,
AffineCombination
]
EXPAND(TangentLine) -> [
Curve,
ContactPoint,
Derivative,
Gradient,
NormalLine
]
STOP_CONDITION =
"Stop when the line's role, equation, direction, incidence, intersection, parallelism, perpendicularity, tangency or transformation property is sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Plane Geometry"
IMMEDIATE_CONTEXTS = [
"Point Ontology",
"Geometry Ontology",
"Coordinate Geometry Ontology",
"Vector Geometry Ontology"
]
RELATED_ONTOLOGIES = [
"Plane Geometry",
"Point Ontology",
"Coordinate Geometry Ontology",
"Analytic Geometry Ontology",
"Cartesian Coordinate Ontology",
"Vector Geometry Ontology",
"Parametric Geometry Ontology",
"Geometric Construction Ontology",
"Transformation Ontology",
"Affine Transformation Ontology"
]
ROUTE_RULES = [
"Line -> Point for incidence and two-point determination",
"Line -> Coordinate Geometry for slope and line equations",
"Line -> Vector Geometry for direction-vector representation",
"Line -> Parametric Geometry for r=a+t*d",
"Line -> Geometric Construction for constructible lines",
"Line -> Transformation for image-line reasoning",
"Line -> Geometry for general spatial semantics"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible line roles, relations or reasoning pathways"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve line as an infinite one-dimensional straight entity.",
"Preserve distinction among line, segment and ray.",
"Preserve incidence and collinearity semantics.",
"Preserve vertical-line slope exception.",
"Preserve parallel/coincident distinction.",
"Preserve transformation-specific line preservation.",
"Preserve machine-readable line semantics."
]
}
OUTPUT {
CANONICAL_DEFINITION =
"A line is a one-dimensional straight geometric entity extending indefinitely in both directions."
DIMENSION_SUMMARY =
"dim(Line)=1"
INCIDENCE_SUMMARY =
"A point P is incident with line L iff P lies on L."
TWO_POINT_SUMMARY =
"Two distinct Euclidean points determine a unique line."
PARALLEL_SUMMARY =
"Parallel Euclidean lines have the same direction and are distinct."
PERPENDICULAR_SUMMARY =
"Perpendicular lines meet at a right angle."
VECTOR_SUMMARY =
"A vector line can be written r=a+t*d with d!=0."
}
FLOW {
INPUT
-> detect_geometric_line_context
-> identify_line_or_candidate_relation
-> identify_geometry_dimension_coordinate_or_vector_representation
-> identify_points_direction_equation_or_role
-> evaluate_incidence_collinearity_intersection_parallelism_perpendicularity_or_tangency
-> perform_line_specific_reasoning
-> verify_dimensional_metric_and_representation_constraints
-> route_to_point_coordinate_vector_construction_or_transformation_ontology
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Line Ontology defines the fundamental one-dimensional straight entity of geometry. A line extends indefinitely in both directions and supports incidence, collinearity, direction, parallelism, perpendicularity, intersections, tangency, coordinate equations, vector representations and geometric transformations."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-GEOMETRY-LINE-ONTOLOGY-V1"
}
}
END_FLOW