Skip to main content

Reflection Ontology

Transformational Geometry
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 mathematical ontology of geometric reflection within the Kireth Research Semantic Library. A reflection is an isometry that maps points across a mirror line in two dimensions or a mirror plane in three dimensions so that the mirror is the perpendicular bisector of each point-image segment. This ontology supports mirror lines and planes, images and preimages, orientation reversal, fixed sets, coordinate rules, matrix representations, composition, glide reflections, symmetry and relationships with isometries, affine transformations and vector geometry.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Reflection Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Geometry"
 SPECIALISATION = "Transformational Geometry / Isometries"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/transformational-geometry/reflection-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = Reflection
 SYMBOLIC_FORMS = [
  "R_m(P)",
  "R_Pi(P)",
  "(x,y)->(x,-y)",
  "(x,y)->(-x,y)"
 ]
 ENTITY_CLASS = OrientationReversingIsometry
 PRIMARY_CONTEXT = TransformationalGeometry
 DEFINITION = "A reflection is a geometric isometry that maps each point to its mirror image across a specified line in two dimensions or plane in three dimensions."
 SEMANTIC_ROLE = "Provides the mirror isometry for symmetry, fixed-set, coordinate, matrix, congruence, composition and orientation reasoning."
}

SCOPE {
 INCLUDE = [
  Reflection,
  MirrorLine,
  MirrorPlane,
  ReflectionAxis,
  Image,
  Preimage,
  PointReflectionAcrossLine,
  PointReflectionAcrossPlane,
  CoordinateReflection,
  ReflectionMatrix,
  FixedPoint,
  FixedLine,
  FixedPlane,
  InverseReflection,
  CompositionOfReflections,
  ReflectionSymmetry,
  GlideReflection,
  Isometry,
  OrthogonalTransformation
 ]

 EXCLUDE_AS_PRIMARY = [
  Rotation,
  Translation,
  Scaling,
  Shear,
  PointInversionUnlessExplicitlyDefined,
  GeneralImproperOrthogonalMapWithoutMirrorInterpretation
 ]

 DISAMBIGUATION_RULE =
  "When a geometric transformation maps points to mirror images across a line or plane while preserving distance and reversing orientation, interpret it as a reflection."
}

CORE_CONCEPTS {

 Reflection {
  definition = "An isometry determined by a mirror line in 2D or mirror plane in 3D."
 }

 MirrorLine {
  definition = "The line of fixed points for a planar reflection."
 }

 MirrorPlane {
  definition = "The plane of fixed points for a spatial reflection."
 }

 Image {
  definition = "The reflected point or object."
 }

 Preimage {
  definition = "The original point or object before reflection."
 }

 PerpendicularBisectorProperty {
  definition = "For point P and image P', the mirror is the perpendicular bisector of segment PP'."
 }

 ReflectionMatrix {
  definition = "An orthogonal matrix with determinant -1 representing a reflection through a subspace through the origin."
 }

 FixedPoint {
  definition = "A point lying on the mirror and therefore unchanged."
 }

 InverseReflection {
  definition = "A reflection is self-inverse."
  form = "R^-1=R"
 }

 ReflectionSymmetry {
  definition = "A geometric object has reflection symmetry if reflection in a mirror line or plane maps the object onto itself."
 }

 GlideReflection {
  definition = "A composition of reflection in a line with translation parallel to that line."
 }
}

RELATIONS {
 Reflection --is_special_case_of--> Isometry
 Reflection --is_special_case_of--> AffineTransformation
 Reflection --preserves--> Distance
 Reflection --preserves--> Angle
 Reflection --preserves--> Collinearity
 Reflection --preserves--> Parallelism
 Reflection --preserves--> Area
 Reflection --preserves--> Volume
 Reflection --reverses--> Orientation
 PlanarReflection --has_fixed_set--> MirrorLine
 SpatialReflection --has_fixed_set--> MirrorPlane
 MirrorLine --perpendicularly_bisects--> PointImageSegment
 MirrorPlane --perpendicularly_bisects--> PointImageSegment
 Reflection --is_self_inverse--> Reflection
 Reflection --can_compose_with--> Reflection
 ReflectionSymmetry --uses--> Reflection
 GlideReflection --is_composition_of--> ReflectionAndTranslation
}

OPERATORS {
 REFLECT_POINT_ACROSS_LINE(P,L) :=
  mirror_image_of_P_across_L

 REFLECT_POINT_ACROSS_PLANE(P,Pi) :=
  mirror_image_of_P_across_Pi

 REFLECT_ACROSS_X_AXIS((x,y)) :=
  (x,-y)

 REFLECT_ACROSS_Y_AXIS((x,y)) :=
  (-x,y)

 REFLECT_ACROSS_ORIGIN((x,y)) :=
  (-x,-y) WHEN treated_as_half_turn_not_line_reflection

 REFLECT_ACROSS_LINE_Y_EQ_X((x,y)) :=
  (y,x)

 REFLECT_ACROSS_LINE_Y_EQ_NEG_X((x,y)) :=
  (-y,-x)

 INVERSE_REFLECTION(R) :=
  R

 FIXED_SET(R) :=
  mirror_line_or_plane

 IS_REFLECTION_SYMMETRY(S,M) :=
  REFLECT(S,M)==S

 COMPOSE_REFLECTIONS(R2,R1) :=
  R2∘R1
}

DEFINITIONS {
 D1 = "A reflection preserves distances."
 D2 = "A reflection preserves angles."
 D3 = "A reflection reverses orientation."
 D4 = "The mirror is fixed pointwise."
 D5 = "The mirror is the perpendicular bisector of each segment joining a point to its image."
 D6 = "A reflection is its own inverse."
 D7 = "Two reflections in intersecting lines compose to a rotation."
 D8 = "Two reflections in parallel lines compose to a translation."
 D9 = "Reflection matrices are orthogonal with determinant -1."
 D10 = "Reflection symmetry occurs when a nonidentity reflection leaves an object invariant."
}

AXIOMS {
 A1_DISTANCE_PRESERVATION:
  d(R(P),R(Q))=d(P,Q)

 A2_ANGLE_PRESERVATION:
  Reflection preserves angle measure

 A3_ORIENTATION_REVERSAL:
  Reflection reverses orientation

 A4_FIXED_MIRROR:
  Every point on the mirror line or plane is fixed

 A5_PERPENDICULAR_BISECTION:
  The mirror line or plane is the perpendicular bisector of PP' for each nonfixed point P

 A6_SELF_INVERSE:
  R∘R=I

 A7_ORTHOGONAL_MATRIX:
  An origin-centred reflection matrix satisfies R^T R=I and det(R)=-1

 A8_REFLECTION_COMPOSITION:
  Composition type depends on the relative position of the reflecting lines or planes
}

REASONING {

 R1_POINT_IMAGE_2D {
  INPUT = [P,mirror_line]
  PROJECT = perpendicular_foot H of P on mirror_line
  CONSTRUCT = P' such_that H is midpoint_of_PP'
  RETURN = reflected_point
 }

 R2_POINT_IMAGE_3D {
  INPUT = [P,mirror_plane]
  PROJECT = perpendicular_foot H of P on mirror_plane
  CONSTRUCT = P' such_that H is midpoint_of_PP'
  RETURN = reflected_point
 }

 R3_STANDARD_COORDINATE_REFLECTION {
  INPUT = [point,standard_mirror]
  APPLY = coordinate_rule
  RETURN = reflected_coordinates
 }

 R4_FIXED_SET {
  INPUT = reflection
  IDENTIFY = mirror
  RETURN = mirror_line_or_plane
 }

 R5_INVERSE {
  INPUT = reflection R
  RETURN = R
 }

 R6_COMPOSITION_INTERSECTING_LINES {
  INPUT = [reflection_in_L1,reflection_in_L2]
  REQUIRE = lines_intersect
  COMPUTE = twice_signed_angle_from_L1_to_L2
  RETURN = rotation_about_intersection_point
 }

 R7_COMPOSITION_PARALLEL_LINES {
  INPUT = [reflection_in_L1,reflection_in_L2]
  REQUIRE = lines_parallel
  COMPUTE = translation_perpendicular_to_lines_of_twice_separation
  RETURN = translation
 }

 R8_REFLECTION_SYMMETRY {
  INPUT = [object S,mirror M]
  APPLY = reflection
  TEST = image_equals_original
  RETURN = SymmetryOrNot
 }

 R9_MATRIX_REASONING {
  INPUT = reflection_matrix
  VERIFY = orthogonality
  VERIFY = determinant_minus_one
  IDENTIFY = fixed_subspace
  RETURN = geometric_reflection_interpretation
 }
}

CONSTRAINTS {
 C1 = "Mirror line or plane must be specified or inferable."
 C2 = "Reflection reverses orientation."
 C3 = "A point on the mirror is fixed."
 C4 = "Reflection is self-inverse."
 C5 = "Reflection across the origin in 2D is a 180-degree rotation, not a line reflection."
 C6 = "Composition of reflections depends on mirror geometry."
 C7 = "Matrix reflection formulas depend on basis and origin."
 C8 = "Improper orthogonal transformations may be reflection compositions and need not be a single mirror reflection in all dimensions."
}

SEMANTIC_EQUIVALENCE {
 "Reflection" <=> "MirrorIsometry"
 "MirrorLine" <=> "FixedLineOfPlanarReflection"
 "MirrorPlane" <=> "FixedPlaneOfSpatialReflection"
 "InverseReflection" <=> "ReflectionItself"
 "ReflectionMatrix" <=> "OrthogonalDeterminantMinusOneMirrorMap"
}

VALIDATION {
 V1 = "Distances are preserved."
 V2 = "Angles are preserved."
 V3 = "Orientation is reversed."
 V4 = "Mirror points are fixed."
 V5 = "Mirror perpendicularly bisects each point-image segment."
 V6 = "Applying reflection twice gives identity."
 V7 = "Origin-centred reflection matrix is orthogonal with determinant -1."
 V8 = "Reflection-symmetry test compares reflected object with original."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 REFLECTION_DEFINITION = 0.99
 POINT_IMAGE_REASONING = 0.99
 FIXED_SET_REASONING = 0.99
 INVERSE_REASONING = 0.99
 COMPOSITION_REASONING = 0.99
 MATRIX_REASONING = 0.99
 SYMMETRY_REASONING = 0.99

 POLICY =
  "Reduce confidence when mirror geometry, coordinate basis, orientation convention, dimension or composition order are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  ReflectionReasoning,
  IsometryReasoning,
  CoordinateReasoning,
  MatrixReasoning,
  VectorReasoning,
  CompositionReasoning,
  FixedSetReasoning,
  SymmetryReasoning,
  CongruenceReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "reflection" -> Reflection WHEN geometry_context
  "geometric reflection" -> Reflection
  "mirror line" -> MirrorLine
  "mirror plane" -> MirrorPlane
  "line of reflection" -> MirrorLine
  "plane of reflection" -> MirrorPlane
  "reflection symmetry" -> ReflectionSymmetry
  "mirror image" -> Image WHEN reflection_context
 }

 INTERPRETATION_ORDER = [
  detect_reflection_context,
  identify planar_or_spatial_dimension,
  identify mirror_line_or_plane,
  identify source_point_or_object,
  identify coordinate_basis_if_needed,
  compute image_fixed_set_inverse_composition_or_symmetry as requested,
  verify perpendicular_bisector_distance_angle_and_orientation properties,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("reflection")
  AND geometry_context
  THEN activate(ReflectionOntology)

 E2:
  IF standard_coordinate_mirror
  THEN apply canonical_coordinate_rule

 E3:
  IF arbitrary_line_or_plane
  THEN project_perpendicularly_and_double_across_mirror

 E4:
  IF inverse_requested
  THEN return same_reflection

 E5:
  IF composition_of_two_reflections
  AND mirrors_intersect
  THEN return rotation_by_twice_angle_between_mirrors

 E6:
  IF composition_of_two_reflections
  AND mirrors_parallel
  THEN return translation_by_twice_separation_with_direction_from_first_to_second

 E7:
  IF reflection_symmetry_requested
  THEN test reflected_object_equals_original

 E8:
  IF matrix_representation_used
  THEN verify orthogonality_and_determinant_minus_one
}

RECURSION {
 ENTRY = Reflection

 EXPAND(Reflection) -> [
  MirrorLine,
  MirrorPlane,
  Image,
  Preimage,
  PerpendicularBisectorProperty,
  CoordinateReflection,
  ReflectionMatrix,
  FixedPoint,
  FixedLine,
  FixedPlane,
  InverseReflection,
  CompositionOfReflections,
  ReflectionSymmetry,
  GlideReflection,
  Isometry
 ]

 EXPAND(PlanarReflection) -> [
  MirrorLine,
  NormalDirection,
  FixedLine,
  CoordinateRule,
  OrientationReversal
 ]

 EXPAND(SpatialReflection) -> [
  MirrorPlane,
  NormalVector,
  FixedPlane,
  PlaneEquation,
  OrientationReversal
 ]

 EXPAND(CompositionOfReflections) -> [
  Rotation,
  Translation,
  Identity,
  GlideReflectionContexts
 ]

 STOP_CONDITION =
  "Stop when the reflection's mirror, image, fixed set, coordinate or matrix representation, inverse, composition or symmetry property is sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Transformational Geometry"

 IMMEDIATE_CONTEXTS = [
  "Transformation Ontology 2",
  "Translation Ontology",
  "Rotation Ontology",
  "Vector Geometry Ontology"
 ]

 RELATED_ONTOLOGIES = [
  "Transformational Geometry",
  "Transformation Ontology 2",
  "Translation Ontology",
  "Rotation Ontology",
  "Coordinate Geometry Ontology",
  "Cartesian Coordinate Ontology",
  "Vector Geometry Ontology",
  "Linear Transformation Ontology",
  "Affine Transformation Ontology",
  "Matrix Ontology",
  "Automorphism Ontology"
 ]

 ROUTE_RULES = [
  "Reflection -> Transformation Ontology 2 for general mapping semantics",
  "Reflection -> Vector Geometry for normals and perpendicular projection",
  "Reflection -> Coordinate Geometry for coordinate reflection rules",
  "Reflection -> Linear Transformation for origin-centred mirror maps",
  "Reflection -> Affine Transformation for mirrors not through the origin",
  "Reflection -> Matrix for computational representation",
  "Reflection -> Rotation or Translation for compositions of two reflections",
  "Reflection -> Automorphism when acting as a structure-preserving self-map"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible reflection representations, invariants or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve mirror-isometry semantics.",
  "Preserve fixed mirror line or plane semantics.",
  "Preserve orientation reversal.",
  "Preserve self-inverse relation.",
  "Preserve perpendicular-bisector property.",
  "Preserve composition rules for parallel and intersecting mirrors.",
  "Preserve machine-readable reflection semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "A reflection is an isometry that maps points to mirror images across a specified line or plane."

 X_AXIS_SUMMARY =
  "(x,y)->(x,-y)"

 Y_AXIS_SUMMARY =
  "(x,y)->(-x,y)"

 Y_EQUALS_X_SUMMARY =
  "(x,y)->(y,x)"

 INVERSE_SUMMARY =
  "R^-1=R"

 FIXED_SET_SUMMARY =
  "The mirror line or plane is fixed pointwise."

 COMPOSITION_SUMMARY =
  "Two intersecting-line reflections compose to a rotation; two parallel-line reflections compose to a translation."

 MATRIX_SUMMARY =
  "An origin-centred reflection matrix is orthogonal with determinant -1."

 INVARIANT_SUMMARY =
  "Reflections preserve distance, angle, collinearity, parallelism, area and volume while reversing orientation."
}

FLOW {
 INPUT
 -> detect_reflection_context
 -> identify planar_or_spatial_dimension
 -> identify mirror_line_or_plane
 -> identify source_point_or_object_and_coordinate_basis
 -> compute image_fixed_set_inverse_composition_or_symmetry
 -> verify perpendicular_bisector_distance_angle_and_orientation properties
 -> route to transformation vector coordinate linear affine matrix rotation_translation_or_symmetry ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Reflection Ontology defines the orientation-reversing isometry that maps points across a mirror line or plane. It supports exact image construction, fixed-set reasoning, coordinate and matrix representations, self-inverse behaviour, reflection symmetry and the composition rules linking pairs of reflections to rotations and translations."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-GEOMETRY-REFLECTION-ONTOLOGY-V1"
}

}

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