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 basis, principally within linear algebra and vector-space theory. A basis is an ordered or unordered set of linearly independent vectors that spans a vector space or subspace. This record is intended for semantic retrieval, recursive mathematical reasoning, ontology linking, and AI consumption within the Kireth Research Semantic Library.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Basis Ontology"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Algebra"
SPECIALISATION = "Linear Algebra"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/algebra-ontologies/basis-ontology.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = Basis
SYMBOLIC_FORMS = ["B", "{v1,...,vn}", "(v1,...,vn)"]
ENTITY_CLASS = VectorSpaceStructure
PRIMARY_CONTEXT = LinearAlgebra
DEFINITION = "A basis of a vector space V is a set of vectors in V that is linearly independent and spans V."
FINITE_FORM = "B={v1,...,vn} is a basis of V iff span(B)=V and B is linearly independent."
}
SCOPE {
INCLUDE = [
Basis,
OrderedBasis,
StandardBasis,
OrthonormalBasis,
BasisOfSubspace,
BasisOfColumnSpace,
BasisOfRowSpace,
BasisOfKernel,
BasisOfImage,
CoordinateBasis,
ChangeOfBasis,
BasisExtension,
BasisReduction,
DimensionRelationship
]
EXCLUDE_AS_PRIMARY = [
DatabaseBasis,
ChemicalBasis,
LegalBasis,
PhilosophicalBasis,
EverydayMeaningOfBasis
]
DISAMBIGUATION_RULE =
"When basis occurs with vector, span, dimension, linear independence, matrix, coordinates, subspace, kernel, image, row space or column space, interpret it as a linear-algebraic basis."
}
CORE_CONCEPTS {
Basis {
definition =
"A set B contained in vector space V such that B spans V and is linearly independent."
requirements = [
Spanning,
LinearIndependence
]
consequence =
"Every vector in V has a unique representation as a linear combination of basis vectors."
}
SpanningSet {
definition =
"A set S spans V when every vector in V can be expressed as a linear combination of vectors from S."
symbolic_form =
"span(S)=V"
}
LinearIndependence {
definition =
"Vectors v1,...,vn are linearly independent when a1v1+...+anvn=0 implies a1=...=an=0."
}
CoordinateRepresentation {
definition =
"Relative to an ordered basis B=(v1,...,vn), every vector v has unique coordinates [v]_B."
symbolic_form =
"v=c1v1+...+cnvn"
}
Dimension {
definition =
"The dimension of a finite-dimensional vector space is the number of vectors in any basis."
symbolic_form =
"dim(V)=|B|"
}
StandardBasis {
definition =
"The canonical basis of F^n consisting of coordinate unit vectors."
example =
"e1=(1,0,...,0), ..., en=(0,...,0,1)"
}
OrthonormalBasis {
definition =
"A basis whose vectors are mutually orthogonal and each have norm 1."
}
OrderedBasis {
definition =
"A basis equipped with a specified ordering, required for coordinate vectors and change-of-basis matrices."
}
}
RELATIONS {
Basis --is_subset_of--> VectorSpace
Basis --must_be--> LinearlyIndependentSet
Basis --must_span--> VectorSpace
Basis --determines--> Coordinates
Basis --determines--> Dimension
VectorSpace --has_basis--> Basis
Subspace --has_basis--> Basis
Basis --can_be_ordered_as--> OrderedBasis
Basis --can_be_specialised_as--> StandardBasis
Basis --can_be_specialised_as--> OrthonormalBasis
Basis --supports--> ChangeOfBasis
Basis --supports--> MatrixRepresentation
ColumnSpace --has_basis--> ColumnSpaceBasis
RowSpace --has_basis--> RowSpaceBasis
Kernel --has_basis--> KernelBasis
Image --has_basis--> ImageBasis
Basis --defines--> CoordinateSystem
Basis --participates_in--> DimensionTheorem
}
OPERATORS {
IS_BASIS(B,V) :=
IS_LINEarly_INDEPENDENT(B) AND SPAN(B)==V
BASIS(S) :=
MAXIMAL_LINEarly_INDEPENDENT_SUBSET(S)
SPAN(B) :=
{finite linear combinations of vectors in B}
DIMENSION(V) :=
CARDINALITY(any_basis_of(V))
COORDINATES(v,B) :=
UNIQUE coefficients [c1,...,cn] such that v=sum(ci*bi)
STANDARD_BASIS(F^n) :=
[e1,...,en]
EXTEND_TO_BASIS(S,V) :=
ADD vectors to linearly independent S until span(S)==V
REDUCE_TO_BASIS(S) :=
REMOVE linearly dependent vectors while preserving span
CHANGE_OF_BASIS(B,C) :=
matrix mapping coordinates from basis B to basis C
}
DEFINITIONS {
D1: "B is a basis of V iff span(B)=V and B is linearly independent."
D2: "Every vector v in V has a unique representation as a linear combination of basis vectors."
D3: "Any two finite bases of the same vector space have the same number of vectors."
D4: "dim(V) equals the cardinality of any finite basis of V."
D5: "A linearly independent set can be extended to a basis."
D6: "A spanning set can be reduced to a basis by deleting dependent vectors."
D7: "Pivot columns of a matrix identify a basis for its column space when selected from the original matrix."
D8: "Nonzero rows of an RREF matrix form a basis for its row space."
D9: "A basis of ker(T) spans the kernel and contains no redundant vectors."
D10: "A basis of im(T) spans the image and determines rank."
}
AXIOMS {
A1_INDEPENDENCE:
IF B is a basis of V
THEN B is linearly independent
A2_SPANNING:
IF B is a basis of V
THEN span(B)=V
A3_UNIQUENESS:
IF B is a basis of V
THEN every v in V has a unique coordinate representation relative to B
A4_EQUAL_CARDINALITY:
IF B1 and B2 are finite bases of V
THEN |B1|=|B2|
A5_DIMENSION:
IF B is a finite basis of V
THEN dim(V)=|B|
A6_EXTENSION:
IF S is linearly independent in V
THEN S can be extended to a basis of V
A7_REDUCTION:
IF S spans finite-dimensional V
THEN some subset B of S is a basis of V
}
REASONING {
R1_BASIS_TEST {
INPUT = [candidate_set B, vector_space V]
TEST_1 = linear_independence(B)
TEST_2 = span(B)==V
IF TEST_1 AND TEST_2
RETURN "B is a basis of V"
ELSE
RETURN "B is not a basis of V"
}
R2_MATRIX_COLUMN_SPACE_BASIS {
INPUT = matrix A
REDUCE = RREF(A)
IDENTIFY = pivot_columns
SELECT = corresponding_columns_from_original_A
RETURN = selected_columns
}
R3_ROW_SPACE_BASIS {
INPUT = matrix A
REDUCE = RREF(A)
SELECT = nonzero_rows(RREF(A))
RETURN = selected_rows
}
R4_KERNEL_BASIS {
INPUT = matrix A
SOLVE = "Ax=0"
PARAMETRISE = free_variables
EXTRACT = parameter_vectors
RETURN = linearly_independent_spanning_vectors
}
R5_IMAGE_BASIS {
INPUT = linear transformation T represented by A
RETURN = basis(column_space(A))
}
R6_COORDINATE_EXTRACTION {
INPUT = [vector v, ordered_basis B]
SOLVE = "v=c1b1+...+cnbn"
RETURN = "[v]_B=(c1,...,cn)"
}
R7_DIMENSION {
INPUT = basis B
RETURN = cardinality(B)
}
R8_EXTEND_BASIS {
INPUT = [linearly independent set S, vector space V]
WHILE span(S) != V
ADD vector not in span(S)
RETURN = S
}
R9_REDUCE_SPANNING_SET {
INPUT = spanning_set S
REMOVE each vector expressible as a linear combination of the others
RETURN = resulting_basis
}
}
CONSTRAINTS {
C1: "A basis must satisfy both spanning and linear-independence conditions."
C2: "A spanning set with redundant vectors is not necessarily a basis."
C3: "A linearly independent set that does not span the full target space is not a basis of that space."
C4: "Basis vectors must belong to the vector space or subspace for which they form a basis."
C5: "Coordinates depend on the chosen ordered basis."
C6: "Dimension is basis-independent even though particular basis vectors may differ."
C7: "For a column-space basis, select original matrix columns corresponding to pivot positions, not RREF columns."
C8: "For a row-space basis, nonzero rows of an RREF matrix may be used."
}
SEMANTIC_EQUIVALENCE {
"BasisOf(V)" <=> "LinearlyIndependentSpanningSet(V)"
"dim(V)" <=> "number of vectors in any finite basis of V"
"basis of image" <=> "basis of range"
"basis of matrix image" <=> "basis of column space"
}
VALIDATION {
V1 = "Every basis is linearly independent."
V2 = "Every basis spans its vector space."
V3 = "Every vector has unique coordinates relative to an ordered basis."
V4 = "All finite bases of a vector space have equal cardinality."
V5 = "Basis cardinality equals dimension."
V6 = "A linearly independent subset can be extended to a basis."
V7 = "A finite spanning set can be reduced to a basis."
V8 = "Pivot columns of the original matrix provide a basis for column space."
V9 = "Nonzero rows of RREF provide a basis for row space."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
BASIS_DEFINITION = 0.99
SPANNING_REQUIREMENT = 0.99
INDEPENDENCE_REQUIREMENT = 0.99
UNIQUE_COORDINATES = 0.99
DIMENSION_RELATION = 0.99
BASIS_EXTENSION = 0.99
BASIS_REDUCTION = 0.99
POLICY =
"Reduce confidence when basis occurs without sufficient mathematical context to distinguish linear-algebra meaning from ordinary-language meanings."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,
OntologyGrounding,
MathematicalReasoning,
EntityResolution,
CoordinateReasoning,
MatrixReasoning,
KnowledgeGraphConstruction,
RetrievalAugmentation,
RecursiveInference
]
NORMALISE {
"basis of V" -> Basis
"basis vectors" -> Basis
"coordinate basis" -> OrderedBasis
"standard basis" -> StandardBasis
"orthonormal basis" -> OrthonormalBasis
"basis for column space" -> ColumnSpaceBasis
"basis for row space" -> RowSpaceBasis
"basis for null space" -> KernelBasis
"basis for kernel" -> KernelBasis
"basis for image" -> ImageBasis
"basis for range" -> ImageBasis
}
INTERPRETATION_ORDER = [
identify_vector_space_or_subspace,
identify_candidate_vectors,
test_linear_independence,
test_spanning,
establish_basis_status,
derive_dimension,
derive_coordinates_if_ordered,
route_to_specialised_basis_context,
apply_change_of_basis_if_required,
return_semantic_result
]
}
EXECUTION_RULES {
E1:
IF query_mentions("basis") AND linear_algebra_context
THEN activate(BasisOntology)
E2:
IF request=="is this a basis"
THEN test(linear_independence)
AND test(spanning)
E3:
IF request=="find basis of column space"
THEN row_reduce(matrix)
THEN identify_pivot_columns
THEN select_original_columns
E4:
IF request=="find basis of row space"
THEN row_reduce(matrix)
THEN select_nonzero_rows
E5:
IF request=="find basis of kernel"
THEN solve_homogeneous_system
THEN extract_parameter_vectors
E6:
IF request=="find dimension"
THEN count_vectors_in_basis
E7:
IF request=="find coordinates"
THEN require_ordered_basis
THEN solve_for_basis_coefficients
E8:
IF request=="extend to a basis"
THEN preserve_existing_independent_vectors
AND add_vectors_until_spanning
E9:
IF request=="reduce spanning set to basis"
THEN remove_redundant_vectors
WHILE preserving_span
}
RECURSION {
ENTRY = Basis
EXPAND(Basis) -> [
VectorSpace,
Subspace,
Span,
LinearIndependence,
Dimension,
Coordinates,
OrderedBasis,
StandardBasis,
OrthonormalBasis,
ChangeOfBasis
]
EXPAND(Span) -> [
LinearCombination,
GeneratingSet,
VectorSpace
]
EXPAND(LinearIndependence) -> [
LinearCombination,
ZeroVector,
DependenceRelation
]
EXPAND(Dimension) -> [
BasisCardinality,
Rank,
Nullity
]
EXPAND(ChangeOfBasis) -> [
OrderedBasis,
CoordinateVector,
TransitionMatrix,
MatrixRepresentation
]
STOP_CONDITION =
"Stop when basis status or requested derived information is resolved with sufficient confidence and no required dependencies remain unresolved."
}
ROUTING {
PARENT_ONTOLOGY = "Algebra Ontology"
IMMEDIATE_CONTEXTS = [
"Linear Algebra Ontology",
"Vector Space Ontology"
]
RELATED_ONTOLOGIES = [
"Vector Space Ontology",
"Subspace Ontology",
"Span Ontology",
"Linear Independence Ontology",
"Dimension Ontology",
"Matrix Ontology",
"Column Space Ontology",
"Row Space Ontology",
"Kernel Ontology",
"Null Space Ontology",
"Image Ontology",
"Rank Ontology",
"Linear Transformation Ontology"
]
ROUTE_RULES = [
"Basis -> Span when generating-set reasoning is required",
"Basis -> Linear Independence when redundancy testing is required",
"Basis -> Dimension when cardinality reasoning is required",
"Basis -> Column Space for matrix-column bases",
"Basis -> Row Space for matrix-row bases",
"Basis -> Kernel for null-space bases",
"Basis -> Image for range bases",
"Basis -> Change Of Basis for coordinate-system conversion"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible concepts, operators or relations"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve the canonical basis definition.",
"Preserve the dual requirements of spanning and linear independence.",
"Preserve uniqueness of coordinates relative to an ordered basis.",
"Preserve dimension as basis cardinality in finite-dimensional spaces.",
"Preserve correct distinction between original matrix pivot columns and RREF pivot columns when constructing column-space bases."
]
}
OUTPUT {
CANONICAL_DEFINITION =
"A basis of a vector space V is a linearly independent set of vectors that spans V."
SYMBOLIC_SUMMARY =
"B basis of V <=> span(B)=V and B is linearly independent"
COORDINATE_SUMMARY =
"v=c1b1+...+cnbn uniquely for ordered basis B=(b1,...,bn)"
DIMENSION_SUMMARY =
"dim(V)=|B| for any finite basis B of V"
COLUMN_SPACE_SUMMARY =
"basis(Col(A)) = pivot columns selected from original A"
ROW_SPACE_SUMMARY =
"basis(Row(A)) = nonzero rows of RREF(A)"
}
FLOW {
INPUT
-> detect_term("basis")
-> disambiguate_linear_algebra_context
-> identify_vector_space_or_subspace
-> identify_candidate_vectors_or_generate_set
-> test_linear_independence
-> test_spanning
-> establish_basis
-> derive_unique_coordinate_representation
-> derive_dimension
-> route_to_specialised_basis_context
-> connect_matrix_space_relations
-> connect_kernel_image_relations
-> apply_change_of_basis_when_required
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"A basis is a linearly independent spanning set for a vector space or subspace. Every vector has a unique representation relative to an ordered basis, and the number of vectors in any finite basis equals the dimension of the space. Bases provide the coordinate framework underlying vector spaces, matrices, linear transformations, column spaces, row spaces, kernels and images."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-ALGEBRA-BASIS-ONTOLOGY-V1"
}
}
END_FLOW