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 torus within the Kireth Research Semantic Library. A torus is a surface of revolution generated by rotating a circle around a coplanar axis that does not intersect the circle in the standard ring-torus case. This ontology supports major radius, minor radius, inner and outer radius, surface area, enclosed volume, coordinate equations, parametric representation, cross-sections, symmetry, topology, transformations and relationships with circles, surfaces of revolution and differential geometry.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Torus Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Geometry"
SPECIALISATION = "Solid Geometry / Surfaces of Revolution"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/solid-geometry/torus-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Torus
SYMBOLIC_FORMS = [
"((sqrt(x^2+y^2)-R)^2+z^2=r^2)",
"((x^2+y^2+z^2+R^2-r^2)^2=4R^2(x^2+y^2))"
]
ENTITY_CLASS = SurfaceOfRevolution
PRIMARY_CONTEXT = SolidGeometry
DEFINITION = "A torus is a surface of revolution generated by rotating a circle around a coplanar axis, with the standard ring torus arising when the axis lies outside the generating circle."
SEMANTIC_ROLE = "Provides the canonical genus-one surface framework for rotational geometry, topology, coordinate, parametric, area, volume and transformation reasoning."
}
SCOPE {
INCLUDE = [
Torus,
RingTorus,
HornTorus,
SpindleTorus,
MajorRadius,
MinorRadius,
GeneratingCircle,
AxisOfRevolution,
InnerRadius,
OuterRadius,
SurfaceArea,
EnclosedVolume,
ParametricTorus,
ImplicitTorus,
Meridian,
ParallelCircle,
CrossSection,
Symmetry,
Genus,
SurfaceOfRevolution
]
EXCLUDE_AS_PRIMARY = [
Sphere,
Cylinder,
GeneralDonutLikeObjectWithoutTorusGeometry,
HigherDimensionalTorus,
PhysicalDoughnutWithoutMathematicalAbstraction
]
DISAMBIGUATION_RULE =
"When torus occurs with major radius, minor radius, generating circle, donut-shaped surface, genus one, surface of revolution, toroidal coordinates or standard torus equations, interpret it as a geometric torus."
}
CORE_CONCEPTS {
Torus {
definition = "A surface generated by revolving a circle around a coplanar axis."
}
RingTorus {
definition = "A torus with major radius R greater than minor radius r."
condition = "R>r>0"
}
HornTorus {
definition = "A limiting torus where the generating circle is tangent to the axis of revolution."
condition = "R=r>0"
}
SpindleTorus {
definition = "A self-intersecting or overlapping toroidal surface produced when the axis of revolution intersects the generating circle."
condition = "0<R<r"
}
MajorRadius {
symbol = "R"
definition = "Distance from the axis of revolution to the centre of the generating circle."
}
MinorRadius {
symbol = "r"
definition = "Radius of the generating circle."
}
InnerRadius {
ring_torus_formula = "R-r"
}
OuterRadius {
ring_torus_formula = "R+r"
}
AxisOfRevolution {
definition = "The line about which the generating circle is revolved."
}
GeneratingCircle {
definition = "The circle whose revolution creates the toroidal surface."
}
Meridian {
definition = "A circular cross-section obtained by intersecting the torus with a plane through the axis of revolution."
}
ParallelCircle {
definition = "A circle on the torus generated by fixing the meridional parameter and varying the rotational parameter."
}
Genus {
ring_torus_value = 1
definition = "Topological number of handles of the surface."
}
}
RELATIONS {
Torus --is_special_case_of--> SurfaceOfRevolution
Torus --is_generated_by--> GeneratingCircle
GeneratingCircle --revolves_about--> AxisOfRevolution
Torus --has--> MajorRadius
Torus --has--> MinorRadius
RingTorus --is_special_case_of--> Torus
HornTorus --is_special_case_of--> Torus
SpindleTorus --is_special_case_of--> Torus
RingTorus --has--> InnerRadius
RingTorus --has--> OuterRadius
Torus --has--> Meridian
Torus --has--> ParallelCircle
RingTorus --has_genus--> One
Torus --can_have--> CrossSection
Torus --can_be_transformed_by--> ThreeDimensionalTransformation
}
OPERATORS {
CLASSIFY_TORUS(R,r) :=
IF R>r>0 THEN RingTorus
ELSE IF R==r AND r>0 THEN HornTorus
ELSE IF 0<R<r THEN SpindleTorus
ELSE InvalidOrDegenerate
INNER_RADIUS(R,r) :=
R-r
OUTER_RADIUS(R,r) :=
R+r
SURFACE_AREA_RING_TORUS(R,r) :=
4*pi^2*R*r
VOLUME_RING_TORUS(R,r) :=
2*pi^2*R*r^2
PARAMETRIC_POINT(R,r,u,v) :=
(
(R+r*cos(v))*cos(u),
(R+r*cos(v))*sin(u),
r*sin(v)
)
IMPLICIT_EQUATION(R,r) :=
(x^2+y^2+z^2+R^2-r^2)^2=4*R^2*(x^2+y^2)
MERIDIAN_SECTION(R,r) :=
two_or_related_circular_profiles_in_axis_plane_depending_on_section_model
TRANSFORM_TORUS(TORUS,T) :=
image_of_torus_under_3D_transformation(TORUS,T)
}
DEFINITIONS {
D1 = "A torus is a surface of revolution."
D2 = "The major radius measures from the revolution axis to the generating-circle centre."
D3 = "The minor radius is the radius of the generating circle."
D4 = "A ring torus satisfies R>r>0."
D5 = "A horn torus satisfies R=r>0."
D6 = "A spindle torus satisfies 0<R<r."
D7 = "A ring torus has topological genus one."
D8 = "The ring-torus surface area is 4*pi^2*R*r."
D9 = "The enclosed ring-torus volume is 2*pi^2*R*r^2."
D10 = "A standard torus centred on the z-axis is rotationally symmetric about that axis."
}
AXIOMS {
A1_REVOLUTION:
A standard torus is generated by revolving a circle about a coplanar axis
A2_MAJOR_RADIUS:
Major radius is measured from axis of revolution to generating-circle centre
A3_MINOR_RADIUS:
Minor radius equals radius of generating circle
A4_RING_CONDITION:
Standard non-self-intersecting ring torus requires R>r>0
A5_ROTATIONAL_SYMMETRY:
Standard torus is invariant under rotations about its axis of revolution
A6_SURFACE_AREA_RING:
Ring-torus surface area equals 4*pi^2*R*r
A7_VOLUME_RING:
Ring-torus enclosed volume equals 2*pi^2*R*r^2
A8_TOPOLOGY_RING:
Ring-torus surface is a compact orientable genus-one surface
}
REASONING {
R1_TORUS_CLASSIFICATION {
INPUT = [R,r]
REQUIRE = r>0
IF R>r
RETURN RingTorus
ELSE IF R==r
RETURN HornTorus
ELSE IF 0<R<r
RETURN SpindleTorus
ELSE
RETURN InvalidOrDegenerate
}
R2_PARAMETRIC_REASONING {
INPUT = [R,r,u,v]
COMPUTE = standard_parametric_coordinates
VERIFY = implicit_equation
RETURN = point_on_torus
}
R3_SURFACE_AREA {
INPUT = [R,r]
REQUIRE = R>r>0
APPLY = Pappus_surface_or_direct_parameterisation
RETURN = 4*pi^2*R*r
}
R4_VOLUME {
INPUT = [R,r]
REQUIRE = R>r>0
APPLY = Pappus_centroid_theorem_or_integration
RETURN = 2*pi^2*R*r^2
}
R5_INNER_OUTER_RADIUS {
INPUT = [R,r]
REQUIRE = RingTorus
COMPUTE = inner=R-r
COMPUTE = outer=R+r
RETURN = radii
}
R6_AXIS_PLANE_SECTION {
INPUT = [torus,plane_through_axis]
INTERSECT = torus_with_plane
CLASSIFY = circular_generating_profiles_or_union_components
RETURN = meridional_section
}
R7_PERPENDICULAR_SECTION {
INPUT = [torus,plane_perpendicular_to_axis]
INTERSECT = torus_with_plane
CLASSIFY = zero_one_or_two_circular_components_depending_on_offset
RETURN = section
}
R8_TOPOLOGY {
INPUT = standard_ring_torus
IDENTIFY = one_handle
RETURN = genus_one_compact_orientable_surface
}
R9_TRANSFORMATION {
INPUT = [torus,T]
IF rigid_or_similarity
RETURN torus_with_transformed_axis_and_scaled_radii
ELSE IF general_affine
RETURN affine_toroidal_surface_not_generally_standard_torus
}
}
CONSTRAINTS {
C1 = "Surface-area and volume formulas 4*pi^2*R*r and 2*pi^2*R*r^2 assume a standard ring torus."
C2 = "Ring, horn and spindle tori must be distinguished."
C3 = "A torus surface must be distinguished from the enclosed toroidal solid."
C4 = "Major and minor radii must not be interchanged."
C5 = "The standard implicit equation assumes a torus centred around the z-axis."
C6 = "General affine transformations do not generally preserve standard torus form."
C7 = "Topological genus-one statements apply to the ordinary ring-torus surface."
C8 = "Higher-dimensional tori require a different ontology."
}
SEMANTIC_EQUIVALENCE {
"Torus" <=> "CircularSurfaceOfRevolution"
"RingTorus" <=> "StandardNonSelfIntersectingTorus"
"MajorRadius" <=> "AxisToGeneratingCircleCentreDistance"
"MinorRadius" <=> "GeneratingCircleRadius"
"DonutSurface" <=> "Torus" WHEN mathematical_context
}
VALIDATION {
V1 = "Ring torus satisfies R>r>0."
V2 = "Horn torus satisfies R=r>0."
V3 = "Spindle torus satisfies 0<R<r."
V4 = "Inner radius equals R-r for ring torus."
V5 = "Outer radius equals R+r."
V6 = "Surface area equals 4*pi^2*R*r for ring torus."
V7 = "Enclosed volume equals 2*pi^2*R*r^2 for ring torus."
V8 = "Parametric points satisfy the implicit torus equation."
V9 = "Ring-torus genus equals one."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
TORUS_DEFINITION = 0.99
CLASSIFICATION = 0.99
PARAMETRIC_REASONING = 0.99
SURFACE_AREA_REASONING = 0.99
VOLUME_REASONING = 0.99
TOPOLOGICAL_REASONING = 0.99
CROSS_SECTION_REASONING = 0.97
POLICY =
"Reduce confidence when torus class, major/minor radii, enclosed-solid versus surface meaning, section plane or transformation class are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,
OntologyGrounding,
TorusReasoning,
SurfaceOfRevolutionReasoning,
ParametricReasoning,
ImplicitSurfaceReasoning,
SurfaceAreaReasoning,
VolumeReasoning,
CrossSectionReasoning,
TopologicalReasoning,
SymmetryReasoning,
TransformationReasoning,
KnowledgeGraphConstruction,
RetrievalAugmentation,
RecursiveInference
]
NORMALISE {
"torus" -> Torus
"ring torus" -> RingTorus
"horn torus" -> HornTorus
"spindle torus" -> SpindleTorus
"major radius" -> MajorRadius
"minor radius" -> MinorRadius
"toroidal surface" -> Torus
"donut" -> Torus WHEN mathematical_geometry_context
}
INTERPRETATION_ORDER = [
detect_torus_context,
identify axis_of_revolution generating_circle major_radius and minor_radius,
classify ring horn spindle or degenerate type,
distinguish surface from enclosed toroidal solid,
identify area volume coordinate parametric cross_section topology symmetry or transformation goal,
apply torus_specific formulas_and_theorems,
verify type_and_parameter_constraints,
return semantic output
]
}
EXECUTION_RULES {
E1:
IF query_mentions("torus")
AND geometry_context
THEN activate(TorusOntology)
E2:
IF R_and_r_given
THEN classify ring_horn_or_spindle
E3:
IF surface_area_requested
AND ring_torus_context
THEN compute 4*pi^2*R*r
E4:
IF volume_requested
AND ring_torus_context
THEN compute 2*pi^2*R*r^2
E5:
IF parametric_representation_requested
THEN use standard_two_angle_parameterisation
E6:
IF implicit_equation_requested
THEN return standard_z_axis_torus_equation when frame matches
E7:
IF topology_requested
AND ring_torus_context
THEN return genus_one_structure
E8:
IF transformation_context
THEN classify rigid_similarity_or_affine map
}
RECURSION {
ENTRY = Torus
EXPAND(Torus) -> [
RingTorus,
HornTorus,
SpindleTorus,
MajorRadius,
MinorRadius,
GeneratingCircle,
AxisOfRevolution,
Meridian,
ParallelCircle,
SurfaceArea,
EnclosedVolume,
ParametricTorus,
ImplicitTorus,
CrossSection,
Symmetry,
Genus
]
EXPAND(RingTorus) -> [
InnerRadius,
OuterRadius,
SurfaceArea,
Volume,
GenusOne,
RotationalSymmetry
]
EXPAND(ParametricTorus) -> [
MeridionalParameter,
RotationalParameter,
CoordinateMap,
SurfaceNormal
]
EXPAND(CrossSection) -> [
AxisPlaneSection,
PerpendicularPlaneSection,
Circle,
MultipleComponents
]
STOP_CONDITION =
"Stop when the torus's type, radii, coordinate representation, surface measure, enclosed volume, cross-section, topology, symmetry or transformation property is sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Solid Geometry"
IMMEDIATE_CONTEXTS = [
"Solid Geometry Ontology",
"Circle Ontology",
"Cylinder Ontology",
"Parametric Geometry Ontology"
]
RELATED_ONTOLOGIES = [
"Solid Geometry Ontology",
"Circle Ontology",
"Cylinder Ontology",
"Sphere Ontology",
"Coordinate Geometry Ontology",
"Analytic Geometry Ontology",
"Parametric Geometry Ontology",
"Vector Geometry Ontology",
"Transformation Ontology",
"Affine Transformation Ontology",
"Topology Ontologies"
]
ROUTE_RULES = [
"Torus -> Solid Geometry Ontology for general three-dimensional semantics",
"Torus -> Circle for generating-circle geometry",
"Torus -> Parametric Geometry for two-parameter surface representation",
"Torus -> Analytic Geometry for implicit quartic representation",
"Torus -> Vector Geometry for normals and tangent-plane reasoning",
"Torus -> Transformation for rigid, similarity and affine images",
"Torus -> Topology for genus-one surface reasoning",
"Torus -> Cylinder or Sphere for comparative curved-surface reasoning"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible torus classes, formulas, relations or reasoning pathways"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve torus as a surface of revolution generated by a circle.",
"Preserve major-versus-minor radius distinction.",
"Preserve ring-horn-spindle classification.",
"Preserve surface-versus-enclosed-solid distinction.",
"Preserve ring-torus area and volume formulas.",
"Preserve genus-one topology for standard ring torus.",
"Preserve machine-readable torus semantics."
]
}
OUTPUT {
CANONICAL_DEFINITION =
"A torus is a surface of revolution generated by rotating a circle around a coplanar axis."
CLASSIFICATION_SUMMARY =
"R>r: ring torus; R=r: horn torus; 0<R<r: spindle torus."
INNER_RADIUS_SUMMARY =
"r_inner=R-r for a ring torus."
OUTER_RADIUS_SUMMARY =
"r_outer=R+r."
SURFACE_AREA_SUMMARY =
"A=4*pi^2*R*r for a ring torus."
VOLUME_SUMMARY =
"V=2*pi^2*R*r^2 for the enclosed ring-torus solid."
PARAMETRIC_SUMMARY =
"x=(R+r cos v)cos u, y=(R+r cos v)sin u, z=r sin v."
TOPOLOGY_SUMMARY =
"The standard ring-torus surface is compact, orientable and genus one."
}
FLOW {
INPUT
-> detect_torus_context
-> identify axis_of_revolution generating_circle major_radius_and_minor_radius
-> classify ring_horn_spindle_or_degenerate torus
-> distinguish torus_surface_from_enclosed_toroidal_solid
-> identify surface_area volume parametric implicit cross_section topology symmetry or transformation goal
-> apply torus_specific geometry
-> verify class_parameter_coordinate_frame_and_transformation constraints
-> route to solid_geometry circle parametric analytic vector topology or transformation ontology
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Torus Ontology defines the circular surface of revolution generated by rotating a circle around a coplanar axis. It supports ring, horn and spindle classifications, major and minor radii, surface area, enclosed volume, parametric and implicit representations, cross-sections, rotational symmetry, genus-one topology and transformation reasoning."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-GEOMETRY-TORUS-ONTOLOGY-V1"
}
}
END_FLOW