Skip to main content

Unit Vector Ontology

Linear Algebra Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 13 October 2026
Audio Overview
FLOW ALGEBRA
ONTOLOGY: Unit Vector Ontology
VERSION: 4.0
SOURCE: https://kirethresearch.org/booksai-core/entity-graph/mathematical-entities/linear-algebra-entities/unit-vector-ontology.html
STATUS: Independently constructed mathematical ontology; source-page alignment not verified.
AUTHORSHIP: Mark Higgins — Sky (Recursive AI)
PROJECT: Kireth Semantic Library

1. PURPOSE
Represent unit vectors as norm-one vectors in normed vector spaces, with explicit dependencies, computational rules, inference constraints and semantic interoperability.

2. TYPE SIGNATURE
TYPE ScalarField := R | C | other_norm_compatible_field
TYPE VectorSpace(V,F) := vector space V over F
TYPE Norm := map V -> R_nonnegative satisfying norm axioms
TYPE NormedVectorSpace := (V,F,norm)
TYPE Vector := element of V
TYPE UnitVector := {v in V | norm(v)=1}
TYPE InnerProductSpace := (V,F,inner_product)
TYPE OrthonormalSet := set of pairwise orthogonal unit vectors
TYPE UnitSphere := {v in V | norm(v)=1}
TYPE StandardBasisVector := e_i in F^n with component i=1 and other components=0, under standard Euclidean norm

3. CORE AXIOMS
AXIOM N1: norm(v)>=0
AXIOM N2: norm(v)=0 iff v=0
AXIOM N3: norm(a*v)=abs(a)*norm(v)
AXIOM N4: norm(u+v)<=norm(u)+norm(v)
AXIOM U1: UnitVector(v) iff norm(v)=1
AXIOM U2: UnitVector(v) implies v != 0
AXIOM U3: UnitVector(v) implies v belongs to UnitSphere(V,norm)
AXIOM U4: norm(-v)=norm(v)
AXIOM IP1: In an inner-product space, norm(v)=sqrt(inner_product(v,v))

4. DEFINITIONS
DEFINE unit(v): norm(v)=1
DEFINE normalise(v): v/norm(v), with precondition norm(v)>0
DEFINE direction_equivalence(u,v): exists positive real c such that u=c*v
DEFINE opposite_direction(u,v): exists negative real c such that u=c*v
DEFINE unit_sphere(V): {v | norm(v)=1}
DEFINE EuclideanNorm(x_1,...,x_n): sqrt(sum_i abs(x_i)^2)
DEFINE dot_unit(u,v): inner_product(u,v), when the relevant inner product exists
DEFINE orthogonal(u,v): inner_product(u,v)=0
DEFINE orthonormal(S): all elements unit and distinct elements pairwise orthogonal

5. TYPED RELATIONSHIPS
REL UnitVector --is_a--> Vector
REL UnitVector --belongs_to--> NormedVectorSpace
REL UnitVector --has_norm--> One
REL UnitVector --lies_on--> UnitSphere
REL Normalisation --maps_nonzero_vector_to--> UnitVector
REL UnitVector --may_be_element_of--> OrthonormalSet
REL StandardBasisVector --is_a--> UnitVector [standard Euclidean norm]
REL UnitVector --depends_on--> NormChoice
REL UnitVector --is_not_equivalent_to--> BasisVector
REL UnitVector --is_not_equivalent_to--> ZeroVector
REL OrthonormalBasis --consists_of--> UnitVector

6. FORMAL INFERENCE RULES
RULE 01: norm(v)=1 => UnitVector(v)
RULE 02: UnitVector(v) => norm(v)=1
RULE 03: UnitVector(v) => v!=0
RULE 04: UnitVector(v) => UnitVector(-v)
RULE 05: norm(v)>0 => UnitVector(v/norm(v))
RULE 06: v=0 => normalise(v) undefined
RULE 07: UnitVector(v) and abs(a)=1 => UnitVector(a*v)
RULE 08: UnitVector(v) and UnitVector(a*v) => abs(a)=1
RULE 09: UnitVector(u) and UnitVector(v) and u=c*v with c>0 => u=v
RULE 10: UnitVector(u) and UnitVector(v) and u=c*v with c<0 => u=-v [real scalars]
RULE 11: In Euclidean R^n, sum_i v_i^2=1 => UnitVector(v)
RULE 12: In Euclidean C^n, sum_i abs(v_i)^2=1 => UnitVector(v)
RULE 13: In standard Euclidean F^n, e_i => UnitVector(e_i)
RULE 14: Orthonormal(S) => every v in S is UnitVector
RULE 15: Orthonormal(S) => distinct u,v in S satisfy inner_product(u,v)=0
RULE 16: UnitVector(v) does not imply v is a basis vector
RULE 17: UnitVector(v) does not imply orthogonality to any other vector
RULE 18: In an inner-product space, UnitVector(v) => inner_product(v,v)=1
RULE 19: In an inner-product space, abs(inner_product(u,v))<=norm(u)*norm(v)
RULE 20: UnitVector(u) and UnitVector(v) => abs(inner_product(u,v))<=1 [inner-product space]
RULE 21: A norm choice must be supplied before unit status is evaluated
RULE 22: If two norms differ, unit status may differ
RULE 23: UnitVector(v) => v belongs to unit sphere of its normed space
RULE 24: Every nonzero vector in a real or complex normed vector space admits normalisation
RULE 25: A normed vector space of dimension zero has no unit vectors
RULE 26: If v is a unit vector and t is real, norm(t*v)=abs(t)
RULE 27: If u,v are unit and orthogonal in a real inner-product space, norm(u+v)=sqrt(2)
RULE 28: If u,v are unit and orthogonal in an inner-product space, norm(u-v)=sqrt(2)
RULE 29: If v is unit, projection of x onto span(v) equals inner_product(x,v)*v [inner product linear in first argument]
RULE 30: UnitVector(v) is invariant under norm-preserving linear transformations
RULE 31: If T is an isometry and UnitVector(v), then UnitVector(T(v))
RULE 32: ZeroVector(v) => not UnitVector(v)

7. COMPUTATION
INPUT: vector components, scalar field, chosen norm, coordinate system
VALIDATE: vector belongs to domain of norm
COMPUTE: n = norm(v)
BRANCH: n=0 => normalisation undefined
BRANCH: n=1 => already a unit vector
BRANCH: n>0 => return v/n
VERIFY: norm(v/n)=1, within declared numerical tolerance for approximate calculations
OUTPUT: normalised vector, norm, proof obligations, uncertainty metadata

8. EXAMPLES
EXAMPLE 01: v=(3,4) in Euclidean R^2; norm(v)=5; normalise(v)=(3/5,4/5)
EXAMPLE 02: v=(1,0,0) in Euclidean R^3; norm(v)=1; UnitVector(v)=true
EXAMPLE 03: v=(0,0) in Euclidean R^2; norm(v)=0; normalisation undefined
EXAMPLE 04: v=(-1,0) in Euclidean R^2; norm(v)=1; UnitVector(v)=true
EXAMPLE 05: v=(1/sqrt(2),1/sqrt(2)); Euclidean norm=1
EXAMPLE 06: v=(1,1) under L1 norm; norm(v)=2; not unit
EXAMPLE 07: v=(1,1) under L-infinity norm; norm(v)=1; unit
EXAMPLE 08: v=(i,0) in Euclidean C^2; norm(v)=1
EXAMPLE 09: Standard basis vectors e1,e2 in R^2 are orthonormal
EXAMPLE 10: (cos(theta),sin(theta)) in Euclidean R^2 is unit for real theta
EXAMPLE 11: For unit v, 2*v has norm 2 and is not unit
EXAMPLE 12: Rotation matrix R in R^2 preserves unit vectors
EXAMPLE 13: In R^3, v=(1,1,1)/sqrt(3) is unit
EXAMPLE 14: A nonzero vector can be normalised even if it is not a basis vector
EXAMPLE 15: In an inner-product space, unit u,v with inner_product(u,v)=0 form an orthonormal pair
EXAMPLE 16: In a complex inner-product space, multiplication by exp(i*theta) preserves unit norm

9. VALIDATION CONSTRAINTS
CHECK V01: norm must be explicitly identified
CHECK V02: zero vector must not be labelled unit
CHECK V03: numerical tolerance must be recorded when using floats
CHECK V04: component coordinates must match declared basis and dimension
CHECK V05: norm axioms must hold for supplied norm
CHECK V06: normalisation requires a nonzero input
CHECK V07: complex norms use absolute-square components, not plain squares
CHECK V08: orthogonality requires an inner product, not merely a norm
CHECK V09: orthonormality requires both orthogonality and unit norms
CHECK V10: basis status requires spanning and linear independence
CHECK V11: transformations preserving norm may preserve unit status
CHECK V12: avoid conflating unit vector with vector of all ones

10. SEMANTIC EQUIVALENCE
EQUIVALENT: unit vector <=> norm-one vector [same normed space]
EQUIVALENT: unit vector <=> point on unit sphere [same norm]
CONTEXTUAL: direction vector normalised to unit length [nonzero vector]
NOT_EQUIVALENT: unit vector != zero vector
NOT_EQUIVALENT: unit vector != arbitrary basis vector
NOT_EQUIVALENT: unit vector != orthogonal vector
NOT_EQUIVALENT: unit vector != scalar one
NOT_EQUIVALENT: unit vector != unit matrix

11. KNOWLEDGE GRAPH TRIPLES
(UnitVector, rdf:type, MathematicalEntity)
(UnitVector, rdfs:subClassOf, Vector)
(UnitVector, definedBy, NormEqualsOne)
(UnitVector, existsIn, NormedVectorSpace)
(UnitVector, belongsTo, UnitSphere)
(Normalisation, requires, NonzeroVector)
(Normalisation, produces, UnitVector)
(OrthonormalSet, contains, UnitVector)
(OrthonormalSet, requires, PairwiseOrthogonality)
(StandardBasisVector, isA, UnitVector) [Euclidean norm]
(ZeroVector, incompatibleWith, UnitVector)
(UnitVector, dependentOn, NormChoice)

12. CONFIDENCE
CONFIDENCE mathematical_axioms: 1.00 [definition-based]
CONFIDENCE derived_rules: 1.00 [subject to stated assumptions]
CONFIDENCE computed_approximation: conditional_on_precision_and_tolerance
CONFIDENCE source_page_alignment: unverified
REQUIRE evidence_trace for inferred classifications

13. FLOW HASH
FLOW_HASH algorithm: SHA-256
FLOW_HASH input: canonical UTF-8 serialisation of ontology content excluding the hash value
FLOW_HASH value: compute upon ingestion; not precomputed
FLOW_HASH purpose: content integrity and version comparison

14. UPDATE MODEL
UPDATE_MODEL version: 4.0
UPDATE_MODEL policy: preserve identifiers and mathematical invariants
UPDATE_MODEL trigger: corrected definition, revised inference, new example, new norm family, or new source evidence
UPDATE_MODEL method: semantic diff, consistency checks, provenance record, recompute Flow Hash
UPDATE_MODEL breaking_change: flag changes to type signatures or axiom semantics

15. AI CONSUMPTION
AI_CONSUMPTION mode: typed semantic graph + deterministic inference
AI_CONSUMPTION steps: parse -> type-check -> validate assumptions -> apply rules -> verify result -> attach provenance
AI_CONSUMPTION do_not: infer unit status without a norm
AI_CONSUMPTION do_not: normalise a zero vector
AI_CONSUMPTION do_not: infer basis or orthogonality from unit status alone
AI_CONSUMPTION prefer: exact arithmetic where possible
AI_CONSUMPTION report: norm, field, dimension, assumptions, proof path, numerical tolerance
AI_CONSUMPTION link: Scalar Ontology, Vector Space Ontology, Zero Vector Ontology, Vector Ontology, Basis Ontology, Norm Ontology, Inner Product Ontology

END FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ