Skip to main content

Surface Ontology

Differential 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 surfaces within the Kireth Research Semantic Library. A surface is a two-dimensional geometric object embedded in or represented within a higher-dimensional ambient space. In differential geometry, smooth surfaces support tangent planes, normal vectors, first and second fundamental forms, area, principal curvatures, Gaussian curvature, mean curvature, geodesics and local parameterisations. This ontology supports regular surfaces, implicit and parametric surfaces, orientation, tangent spaces, normals, curvature, surface area, embeddings and relationships with manifolds, curves, vector geometry and calculus.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Surface Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Geometry"
 SPECIALISATION = "Differential Geometry / Surfaces"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/geometry-ontologies/differential-geometry/surface-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = Surface
 SYMBOLIC_FORMS = [
  "X(u,v)",
  "F(x,y,z)=0",
  "S subset R^3"
 ]
 ENTITY_CLASS = TwoDimensionalGeometricObject
 PRIMARY_CONTEXT = DifferentialGeometry
 DEFINITION = "A surface is a two-dimensional geometric object locally modelled by two parameters and, in differential geometry, typically treated as a smooth two-dimensional manifold embedded in an ambient space."
 SEMANTIC_ROLE = "Provides the two-dimensional smooth-geometry framework for tangent planes, normal fields, surface area, fundamental forms, principal curvatures, Gaussian and mean curvature, geodesics and local parameterisation."
}

SCOPE {
 INCLUDE = [
  Surface,
  SmoothSurface,
  RegularSurface,
  ParametricSurface,
  ImplicitSurface,
  GraphSurface,
  OrientedSurface,
  TangentPlane,
  NormalVector,
  NormalField,
  SurfacePatch,
  CoordinatePatch,
  FirstFundamentalForm,
  SecondFundamentalForm,
  ShapeOperator,
  PrincipalCurvature,
  GaussianCurvature,
  MeanCurvature,
  SurfaceArea,
  Geodesic,
  CurveOnSurface,
  Embedding,
  Immersion
 ]

 EXCLUDE_AS_PRIMARY = [
  Curve,
  GeneralTwoDimensionalTopologicalSpaceWithoutSmoothStructure,
  FractalSurfaceUnlessExplicit,
  DiscreteMeshWithoutSmoothInterpretation,
  AlgebraicSurfaceWithoutDifferentialContext
 ]

 DISAMBIGUATION_RULE =
  "When surface occurs with parameterisation, tangent plane, normal vector, area, curvature, fundamental forms, geodesics or smooth embedding, interpret it as a differential-geometric surface."
}

CORE_CONCEPTS {

 Surface {
  definition = "A two-dimensional geometric object locally described by two independent parameters."
 }

 SmoothSurface {
  definition = "A surface with smooth local parameterisations."
 }

 RegularSurface {
  definition = "A smooth surface whose parameterisation has rank two."
  condition = "X_u × X_v != 0"
 }

 ParametricSurface {
  definition = "A surface represented as X(u,v) in an ambient space."
 }

 ImplicitSurface {
  definition = "A surface represented as a level set F(x,y,z)=0 under regularity conditions."
 }

 GraphSurface {
  definition = "A surface represented as z=f(x,y) or analogous graph form."
 }

 TangentPlane {
  definition = "The affine plane spanned by independent tangent directions at a regular point."
 }

 NormalVector {
  definition = "A vector perpendicular to the tangent plane."
 }

 FirstFundamentalForm {
  definition = "The metric induced on a surface by the ambient inner product."
  coefficients = ["E=<X_u,X_u>", "F=<X_u,X_v>", "G=<X_v,X_v>"]
 }

 SecondFundamentalForm {
  definition = "The bilinear form encoding how the surface bends in the ambient space."
  coefficients = ["e=<X_uu,N>", "f=<X_uv,N>", "g=<X_vv,N>"]
 }

 ShapeOperator {
  definition = "The self-adjoint tangent-space operator describing change of the unit normal."
 }

 PrincipalCurvature {
  definition = "An eigenvalue of the shape operator."
 }

 GaussianCurvature {
  symbol = "K"
  relation = "K=k1*k2"
 }

 MeanCurvature {
  symbol = "H"
  relation = "H=(k1+k2)/2"
 }

 SurfaceArea {
  definition = "The integral of the area element induced by the parameterisation or metric."
 }
}

RELATIONS {
 Surface --is_special_case_of--> GeometricObject
 SmoothSurface --is_special_case_of--> Surface
 RegularSurface --is_special_case_of--> SmoothSurface
 ParametricSurface --represents--> Surface
 ImplicitSurface --represents--> Surface
 Surface --has_at_regular_point--> TangentPlane
 Surface --has_at_regular_point--> NormalDirection
 OrientedSurface --has--> GlobalNormalChoice
 Surface --has--> FirstFundamentalForm
 EmbeddedSurface --has--> SecondFundamentalForm
 SecondFundamentalForm --relates_to--> ShapeOperator
 ShapeOperator --has_eigenvalues--> PrincipalCurvature
 PrincipalCurvature --determines--> GaussianCurvature
 PrincipalCurvature --determines--> MeanCurvature
 Surface --has_measure--> SurfaceArea
 CurveOnSurface --lies_on--> Surface
 Surface --can_have--> Geodesic
 Surface --can_be--> EmbeddedSubmanifold
}

OPERATORS {
 SURFACE_POINT(X,u,v) :=
  X(u,v)

 PARTIAL_U(X,u,v) :=
  X_u

 PARTIAL_V(X,u,v) :=
  X_v

 IS_REGULAR(X,u,v) :=
  X_u × X_v != 0

 TANGENT_PLANE(X,u,v) :=
  span(X_u,X_v) translated_to X(u,v)

 UNIT_NORMAL(X,u,v) :=
  (X_u × X_v)/norm(X_u × X_v)
  WHEN X_u × X_v != 0

 AREA_ELEMENT(X,u,v) :=
  norm(X_u × X_v) du dv

 SURFACE_AREA(X,D) :=
  double_integral_D norm(X_u × X_v) du dv

 FIRST_FUNDAMENTAL_FORM(X) :=
  [[E,F],[F,G]]

 SECOND_FUNDAMENTAL_FORM(X,N) :=
  [[e,f],[f,g]]

 SHAPE_OPERATOR(I,II) :=
  I^-1 * II
  under compatible sign convention

 GAUSSIAN_CURVATURE(k1,k2) :=
  k1*k2

 MEAN_CURVATURE(k1,k2) :=
  (k1+k2)/2
}

DEFINITIONS {
 D1 = "A regular parametric surface has two independent tangent directions."
 D2 = "The tangent plane is spanned by X_u and X_v."
 D3 = "The unit normal is proportional to X_u×X_v."
 D4 = "The first fundamental form determines intrinsic metric quantities."
 D5 = "The second fundamental form describes extrinsic bending."
 D6 = "Principal curvatures are eigenvalues of the shape operator."
 D7 = "Gaussian curvature is the product of principal curvatures."
 D8 = "Mean curvature is half the sum of principal curvatures."
 D9 = "Surface area is obtained by integrating the area element."
 D10 = "A geodesic on a surface has zero tangential covariant acceleration."
}

AXIOMS {
 A1_LOCAL_PARAMETERISATION:
  A smooth surface is locally parameterised by two variables

 A2_REGULARITY:
  A regular surface patch satisfies X_u×X_v!=0

 A3_TANGENT_SPACE:
  The tangent plane is generated by the parameter tangent vectors

 A4_NORMAL:
  A normal vector is perpendicular to every tangent vector

 A5_FIRST_FUNDAMENTAL_FORM:
  The induced metric is obtained from ambient inner products of tangent basis vectors

 A6_SECOND_FUNDAMENTAL_FORM:
  Extrinsic curvature is encoded by derivatives of the normal or second derivatives of the immersion

 A7_GAUSSIAN_CURVATURE:
  K=k1*k2

 A8_MEAN_CURVATURE:
  H=(k1+k2)/2 under the adopted convention
}

REASONING {

 R1_SURFACE_CLASSIFICATION {
  INPUT = surface_representation
  IDENTIFY = parametric_implicit_graph_or_abstract_form
  TEST = smoothness
  TEST = regularity
  RETURN = surface_type
 }

 R2_TANGENT_PLANE {
  INPUT = [X,u,v]
  COMPUTE = X_u
  COMPUTE = X_v
  VERIFY = independence
  RETURN = tangent_plane
 }

 R3_NORMAL_VECTOR {
  INPUT = [X,u,v]
  COMPUTE = X_u×X_v
  IF nonzero
   NORMALISE = unit_normal
  RETURN = normal
 }

 R4_SURFACE_AREA {
  INPUT = [X,D]
  COMPUTE = norm(X_u×X_v)
  INTEGRATE = over_parameter_domain_D
  RETURN = surface_area
 }

 R5_FIRST_FUNDAMENTAL_FORM {
  INPUT = tangent_basis
  COMPUTE = E,F,G
  RETURN = induced_metric
 }

 R6_SECOND_FUNDAMENTAL_FORM {
  INPUT = second_derivatives_and_unit_normal
  COMPUTE = e,f,g
  RETURN = extrinsic_form
 }

 R7_CURVATURE {
  INPUT = first_and_second_fundamental_forms
  COMPUTE = shape_operator
  COMPUTE = eigenvalues k1,k2
  DERIVE = K=k1*k2
  DERIVE = H=(k1+k2)/2
  RETURN = curvature_information
 }

 R8_IMPLICIT_SURFACE {
  INPUT = F(x,y,z)=0
  COMPUTE = grad(F)
  IF grad(F)!=0
   RETURN = regular_level_surface_with_normal_grad(F)
  ELSE
   RETURN = singular_or_undetermined_point
 }

 R9_GEODESIC {
  INPUT = curve_on_surface_and_induced_connection
  COMPUTE = covariant_acceleration
  IF zero
   RETURN Geodesic
  ELSE
   RETURN NonGeodesic
 }
}

CONSTRAINTS {
 C1 = "Surface parameterisation and geometric surface image are distinct concepts."
 C2 = "Regularity requires rank two or X_u×X_v!=0."
 C3 = "Unit normal orientation may have two choices."
 C4 = "The second fundamental form depends on the chosen normal orientation."
 C5 = "Mean-curvature sign convention may vary."
 C6 = "Gaussian curvature is intrinsic despite being computable from extrinsic data."
 C7 = "Surface area integrals must account for parameterisation multiplicity."
 C8 = "Implicit level-set regularity requires nonzero gradient."
 C9 = "A tangent plane exists only at regular points."
}

SEMANTIC_EQUIVALENCE {
 "Surface" <=> "TwoDimensionalGeometricObject"
 "RegularSurface" <=> "SmoothSurfaceWithRankTwoParameterisation"
 "TangentPlane" <=> "SpanOfIndependentSurfaceTangentVectors"
 "UnitNormal" <=> "NormalisedCrossProductOfParameterTangents"
 "GaussianCurvature" <=> "ProductOfPrincipalCurvatures"
 "MeanCurvature" <=> "HalfSumOfPrincipalCurvatures"
}

VALIDATION {
 V1 = "Regularity test checks rank two."
 V2 = "Tangent vectors lie in the tangent plane."
 V3 = "Normal is perpendicular to tangent basis."
 V4 = "First fundamental form is symmetric."
 V5 = "Area element is nonnegative."
 V6 = "Principal curvatures are shape-operator eigenvalues."
 V7 = "Gaussian curvature equals k1*k2."
 V8 = "Mean curvature convention is declared or internally consistent."
 V9 = "Implicit-surface normal uses gradient only at regular points."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 SURFACE_DEFINITION = 0.99
 REGULARITY_REASONING = 0.99
 TANGENT_PLANE_REASONING = 0.99
 NORMAL_REASONING = 0.99
 AREA_REASONING = 0.99
 FUNDAMENTAL_FORM_REASONING = 0.98
 CURVATURE_REASONING = 0.98
 GEODESIC_REASONING = 0.98

 POLICY =
  "Reduce confidence when parameterisation, orientation, regularity, curvature convention, ambient metric or domain multiplicity are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  SurfaceReasoning,
  DifferentialGeometryReasoning,
  TangentPlaneReasoning,
  NormalVectorReasoning,
  SurfaceAreaReasoning,
  FundamentalFormReasoning,
  CurvatureReasoning,
  GeodesicReasoning,
  ImplicitSurfaceReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "surface" -> Surface WHEN differential_geometry_context
  "smooth surface" -> SmoothSurface
  "regular surface" -> RegularSurface
  "parametric surface" -> ParametricSurface
  "implicit surface" -> ImplicitSurface
  "tangent plane" -> TangentPlane
  "surface normal" -> NormalVector
  "Gaussian curvature" -> GaussianCurvature
  "mean curvature" -> MeanCurvature
 }

 INTERPRETATION_ORDER = [
  detect_surface_context,
  identify representation_parameter_domain_and_ambient_space,
  determine smoothness_regularity_and_orientation,
  identify tangent_normal_area_metric_second_form_curvature_or_geodesic goal,
  differentiate_or_integrate_as_required,
  apply surface_specific formulas,
  verify regularity_orientation_and_convention constraints,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("surface")
  AND differential_geometry_context
  THEN activate(SurfaceOntology)

 E2:
  IF parametric_surface
  THEN compute X_u_and_X_v
  AND test X_u×X_v!=0

 E3:
  IF tangent_plane_requested
  THEN span X_u_and_X_v at regular point

 E4:
  IF normal_requested
  THEN use X_u×X_v
  AND normalise when unit normal required

 E5:
  IF surface_area_requested
  THEN integrate norm(X_u×X_v)

 E6:
  IF curvature_requested
  THEN compute first_and_second_fundamental_forms
  AND derive shape_operator

 E7:
  IF implicit_surface
  THEN use grad(F) as normal only when grad(F)!=0

 E8:
  IF geodesic_requested
  THEN route to induced_connection reasoning
}

RECURSION {
 ENTRY = Surface

 EXPAND(Surface) -> [
  SmoothSurface,
  RegularSurface,
  ParametricSurface,
  ImplicitSurface,
  GraphSurface,
  OrientedSurface,
  TangentPlane,
  NormalVector,
  FirstFundamentalForm,
  SecondFundamentalForm,
  ShapeOperator,
  PrincipalCurvature,
  GaussianCurvature,
  MeanCurvature,
  SurfaceArea,
  Geodesic,
  CurveOnSurface
 ]

 EXPAND(FirstFundamentalForm) -> [
  E,
  F,
  G,
  Length,
  Angle,
  AreaElement
 ]

 EXPAND(SecondFundamentalForm) -> [
  e,
  f,
  g,
  ShapeOperator,
  NormalCurvature
 ]

 EXPAND(Curvature) -> [
  PrincipalCurvature,
  GaussianCurvature,
  MeanCurvature,
  NormalCurvature
 ]

 EXPAND(CurveOnSurface) -> [
  TangentVector,
  NormalCurvature,
  GeodesicCurvature,
  Geodesic
 ]

 STOP_CONDITION =
  "Stop when the surface's parameterisation, regularity, tangent plane, normal, area, metric, curvature, orientation or geodesic property is sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Differential Geometry"

 IMMEDIATE_CONTEXTS = [
  "Differential Geometry Ontology",
  "Curve Ontology",
  "Vector Geometry Ontology",
  "Parametric Geometry Ontology"
 ]

 RELATED_ONTOLOGIES = [
  "Differential Geometry",
  "Differential Geometry Ontology",
  "Curve Ontology",
  "Vector Geometry Ontology",
  "Parametric Geometry Ontology",
  "Coordinate Geometry Ontology",
  "Smooth Manifold Ontologies",
  "Riemannian Geometry Ontologies",
  "Calculus & Analysis Ontologies",
  "Transformation Ontology"
 ]

 ROUTE_RULES = [
  "Surface -> Differential Geometry Ontology for parent smooth-geometry semantics",
  "Surface -> Curve for curves lying on surfaces",
  "Surface -> Parametric Geometry for local parameterisations",
  "Surface -> Vector Geometry for tangent and normal fields",
  "Surface -> Calculus for derivatives and surface integrals",
  "Surface -> Manifold Ontologies for intrinsic two-manifold reasoning",
  "Surface -> Riemannian Geometry for induced metrics and geodesics",
  "Surface -> Transformation for reparameterisations and diffeomorphic images"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

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

 RULES = [
  "Preserve surface-as-two-dimensional-object semantics.",
  "Preserve parameterisation-versus-image distinction.",
  "Preserve regularity requirement.",
  "Preserve tangent-plane and normal definitions.",
  "Preserve first-versus-second fundamental form distinction.",
  "Preserve principal, Gaussian and mean curvature relations.",
  "Preserve orientation and convention awareness.",
  "Preserve machine-readable surface semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "A differential-geometric surface is a smooth two-dimensional geometric object locally represented by two parameters."

 REGULARITY_SUMMARY =
  "A parametric surface is regular where X_u×X_v!=0."

 TANGENT_SUMMARY =
  "The tangent plane is spanned by X_u and X_v."

 NORMAL_SUMMARY =
  "A unit normal is (X_u×X_v)/|X_u×X_v|."

 AREA_SUMMARY =
  "dA=|X_u×X_v| du dv."

 FIRST_FORM_SUMMARY =
  "I=E du^2+2F du dv+G dv^2."

 CURVATURE_SUMMARY =
  "Principal curvatures k1,k2 give K=k1*k2 and H=(k1+k2)/2."

 IMPLICIT_SUMMARY =
  "For F(x,y,z)=0 with grad(F)!=0, grad(F) is normal to the surface."
}

FLOW {
 INPUT
 -> detect_surface_context
 -> identify parametric_implicit_graph_or_abstract representation
 -> identify parameter_domain_ambient_space_smoothness_and_orientation
 -> test regularity
 -> identify tangent_normal_area_first_form_second_form_curvature_or_geodesic goal
 -> perform derivative_integral_metric_or_shape_operator reasoning
 -> verify regularity_orientation_convention_and_parameterisation constraints
 -> route to differential_geometry curve vector parametric calculus manifold_or_riemannian ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Surface Ontology defines smooth two-dimensional geometric objects and supports regularity, tangent planes, normals, surface area, first and second fundamental forms, shape operators, principal curvatures, Gaussian and mean curvature, implicit and parametric representations, curves on surfaces and geodesic reasoning."
}

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

}

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