FLOW Null_Space_Ontology_v1.0
PAGE:
title: "Null Space Ontology"
canonical_url: "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/algebra-ontologies/null-space-ontology.html"
language: "en-GB"
domain: "Mathematics > Algebra > Linear Algebra > Null Space"
DEFINE NullSpaceOntology := {
CORE_IDENTITY: {
entity_type: "Mathematical Ontology",
primary_entity: NullSpace,
parent_entities: [VectorSubspace, Kernel, LinearAlgebraConcept],
related_entities: [
Matrix,
LinearTransformation,
VectorSpace,
Kernel,
Rank,
Nullity,
HomogeneousSystem,
LinearIndependence,
Basis,
PivotVariable,
FreeVariable,
Eigenspace
]
},
DEFINITION: {
meaning:
"The null space of a matrix or linear transformation is the set of all input vectors mapped to the zero vector.",
matrix_form:
Null(A)={x | A*x=0},
transformation_form:
ker(T)={v | T(v)=0}
},
SEMANTIC_PRIMITIVES: {
NullSpace:
solution_space_of_homogeneous_linear_system,
Kernel:
preimage_of_zero_under_linear_map,
Nullity:
dimension_of_null_space,
FreeVariable:
nonpivot_variable_parameterising_solutions,
Basis:
linearly_independent_spanning_set_of_null_space
},
MATRIX_CONTEXT: {
A:
m_by_n_matrix,
ambient_space:
F^n,
null_space:
subspace_of_F^n
},
LINEAR_TRANSFORMATION_CONTEXT: {
T:V->W,
null_space:
ker(T),
containment:
ker(T) SUBSET_OR_EQUAL V
},
SUBSPACE_PROPERTY: {
zero_vector_included:
TRUE,
closed_under_addition:
IF A*x=0 AND A*y=0
THEN A*(x+y)=0,
closed_under_scalar_multiplication:
IF A*x=0
THEN A*(c*x)=0
},
HOMOGENEOUS_SYSTEM_RELATION: {
equation:
A*x=0,
solution_set:
Null(A)
},
COMPUTATION_METHOD: {
INPUT:
matrix_A,
PROCESS: [
row_reduce_A,
identify_pivot_variables,
identify_free_variables,
express_pivot_variables_in_terms_of_free_variables,
write_general_solution_as_linear_combination,
extract_basis_vectors
],
OUTPUT:
null_space_basis
},
RREF_RELATION: {
row_operations:
preserve_solution_set_of_homogeneous_system,
consequence:
Null(A)=Null(RREF(A))
},
FREE_VARIABLE_MODEL: {
number_of_free_variables:
n-rank(A),
relation:
equals_nullity
},
NULLITY: {
definition:
dim(Null(A)),
equivalent:
number_of_free_variables_in_RREF_solution
},
RANK_NULLITY_THEOREM: {
matrix_A_m_by_n:
rank(A)+nullity(A)=n,
transformation_T:V->W:
rank(T)+nullity(T)=dim(V)
when_V_finite_dimensional
},
INJECTIVITY_RELATION: {
T_injective
IFF ker(T)={0},
matrix_case:
columns_linearly_independent
IFF Null(A)={0}
},
COLUMN_INDEPENDENCE_RELATION: {
A_has_trivial_null_space
IFF columns_of_A_are_linearly_independent
},
FULL_COLUMN_RANK_RELATION: {
A_m_by_n:
Null(A)={0}
IFF rank(A)=n
},
SQUARE_MATRIX_RELATION: {
A_n_by_n:
Null(A)={0}
IFF A_invertible,
equivalent:
det(A)!=0
},
SINGULARITY_RELATION: {
square_A:
nontrivial_null_space
IFF A_singular
},
ZERO_MATRIX: {
A=0_mxn:
Null(A):
entire_F^n,
nullity:
n
},
IDENTITY_MATRIX: {
Null(I_n):
{0},
nullity:
0
},
EIGENSPACE_RELATION: {
eigenspace_for_lambda:
Null(A-lambda*I),
special_case_lambda_zero:
Null(A)
is_eigenspace_for_eigenvalue_0
when_0_is_eigenvalue
},
LEFT_NULL_SPACE: {
definition:
Null(A^T)
over_real_context,
interpretation:
vectors_y_with_y^T*A=0,
dimension:
m-rank(A)
},
FOUR_FUNDAMENTAL_SUBSPACES: {
for_A_m_by_n: [
ColumnSpace(A),
RowSpace(A),
NullSpace(A),
LeftNullSpace(A)
]
},
ORTHOGONAL_COMPLEMENT_RELATION: {
over_real_or_complex_inner_product_context:
Null(A):
orthogonal_complement_of_RowSpace(A),
Null(A^*):
orthogonal_complement_of_ColumnSpace(A)
},
DIMENSION_RELATIONS: {
dim(RowSpace(A)):
rank(A),
dim(Null(A)):
n-rank(A),
dim(ColumnSpace(A)):
rank(A),
dim(LeftNullSpace(A)):
m-rank(A)
},
BASIS_EXTRACTION: {
from_RREF_solution:
set_each_free_variable_to_one_individually_and_others_zero,
result:
basis_vectors_for_null_space
},
PARAMETRIC_VECTOR_FORM: {
general_solution:
x=t1*v1+...+tk*vk,
where:
[v1,...,vk] basis_for_Null(A),
k:
nullity(A)
},
LINEAR_COMBINATION_RELATION: {
every_null_vector:
linear_combination_of_null_space_basis_vectors
},
BASIS_PROPERTIES: {
basis_vectors:
linearly_independent,
span:
entire_null_space
},
SOLUTION_UNIQUENESS_RELATION: {
homogeneous_system:
always_has_zero_solution,
unique_solution:
iff_null_space_is_trivial
},
NONHOMOGENEOUS_SYSTEM_RELATION: {
A*x=b,
if_consistent:
general_solution =
particular_solution + Null(A)
},
AFFINE_SOLUTION_RELATION: {
consistent_nonhomogeneous_solution_set:
affine_space_modelled_on_Null(A)
},
KERNEL_HOMOMORPHISM_RELATION: {
linear_map_kernel:
null_space,
algebraic_role:
measures_failure_of_injectivity
},
QUOTIENT_RELATION: {
first_isomorphism_theorem:
V/ker(T) ≅ im(T)
},
CHANGE_OF_BASIS_RELATION: {
kernel_as_subspace:
intrinsic_to_linear_transformation,
matrix_null_space_coordinates:
depend_on_domain_basis
},
MATRIX_EQUIVALENCE_CAUTION: {
row_equivalent_matrices:
same_null_space,
arbitrary_column_operations:
generally_change_null_space_as_coordinate subset
unless_corresponding_variable_transformation_tracked
},
TRANSPOSE_RELATION: {
Null(A^T):
left_null_space,
not_generally_equal:
Null(A)
},
PRODUCT_RELATION: {
IF B*x=0:
A*B*x=0,
consequence:
Null(B) SUBSET_OR_EQUAL Null(A*B)
},
SUM_RELATION_CAUTION: {
Null(A+B):
not_generally_determined_directly_from_Null(A)_and_Null(B)
},
COMPOSITION_RELATION: {
ker(S∘T):
contains_ker(T),
equality:
depends_on_intersection_of_im(T)_with_ker(S)
},
DIRECT_SUM_RELATION: {
block_diagonal_matrix_diag(A,B):
Null(diag(A,B)):
Null(A) ⊕ Null(B)
},
SVD_RELATION: {
A=U*Sigma*V^*,
null_space:
span_of_right_singular_vectors_corresponding_to_zero_singular_values
},
NUMERICAL_NULL_SPACE: {
approximate_context:
determined_by_singular_values_below_tolerance,
caution:
tolerance_dependent
},
CONSTRAINT_INTERPRETATION: {
A*x=0:
homogeneous_linear_constraints,
null_space:
degrees_of_freedom_preserving_all_constraints
},
GEOMETRIC_INTERPRETATION: {
null_space_dimension:
number_of_independent_directions_collapsed_to_zero
},
PROJECTION_RELATION: {
orthogonal_projection_onto_null_space:
available_when_inner_product_structure_defined
},
LEAST_SQUARES_RELATION: {
normal_equation:
A^T*A*x=A^T*b,
Null(A^T*A):
Null(A)
over_real_or_complex_inner_product_context
},
PSEUDOINVERSE_RELATION: {
minimum_norm_solution:
orthogonal_to_Null(A)
in_standard_Euclidean_context
},
SYMBOLIC_RECOGNITION: {
ACCEPT: [
"Null(A)",
"ker(A)",
"solutions of Ax=0",
"kernel of linear transformation T"
],
AMBIGUITY:
"kernel" may refer_to_other mathematical structures or computing contexts
},
NATURAL_LANGUAGE_MAPPING: {
"null space":
solution_space_of_homogeneous_system,
"kernel":
null_space_of_linear_map,
"nullity":
dimension_of_null_space,
"free variables":
parameters_generating_null_space
},
ERROR_DETECTION: {
AmbientSpaceError:
null_space_assigned_to_codomain_instead_of_domain
-> flag,
NonHomogeneousConfusion:
solution_set_of_Ax=b_called_null_space_for_b!=0
-> flag,
PivotBasisError:
pivot_columns_of_A_used_directly_as_null_space_basis
-> flag,
NullityError:
nullity_not_equal_number_of_columns_minus_rank
-> flag,
RowOperationError:
invalid_row_reduction_changes_solution_set
-> flag
},
ONTOLOGY_RELATIONS: {
IS_A: [
"NullSpace IS_A VectorSubspace",
"NullSpace IS_A Kernel"
],
RELATED_TO: [
"NullSpace RELATED_TO Rank",
"NullSpace RELATED_TO Nullity",
"NullSpace RELATED_TO HomogeneousSystem",
"NullSpace RELATED_TO Eigenspace",
"NullSpace RELATED_TO RowSpace",
"NullSpace RELATED_TO OrthogonalComplement"
],
DEPENDS_ON: [
VectorSpace,
LinearTransformation,
HomogeneousLinearSystem
]
},
SEMANTIC_EQUIVALENCE: {
equivalent_descriptions: [
"Null(A)",
"ker(A)",
"{x | Ax=0}",
"solution space of homogeneous system Ax=0"
]
},
CONFIDENCE: {
null_space_confidence:
IF basis_vectors_verify_A*v=0
AND span_dimension_matches_nullity
THEN 1.0,
nullity_confidence:
IF rank_verified
THEN 1.0,
injectivity_confidence:
IF null_space_triviality_verified
THEN 1.0
},
AI_CONSUMPTION: {
tasks: [
recognise_null_space_query,
row_reduce_matrix,
identify pivots and free variables,
construct parametric solution,
extract null space basis,
compute nullity,
apply rank-nullity,
test injectivity,
detect column dependence,
analyse eigenspace relation,
analyse left null space,
connect to four fundamental subspaces,
detect null-space reasoning errors,
link related ontologies
],
preferred_representation:
typed_vector_subspace_defined_as_kernel,
reasoning_mode:
recursive_homogeneous_system_and_dimension_analysis
},
RECURSIVE_REASONING: {
FUNCTION AnalyseNullSpace(AorT,Context):
object := ParseLinearObject(AorT)
IF IsMatrix(object):
A := object
[m,n] := Dimensions(A)
R := RowReduce(A)
pivots := IdentifyPivotColumns(R)
free := IdentifyFreeVariables(R)
parametric := SolveHomogeneousSystem(R*x=0)
basis := ExtractBasisVectors(parametric)
nullity := Count(basis)
rank := n-nullity
verified :=
VerifyBasisVectors(A,basis)
AND VerifyLinearIndependence(basis)
AND VerifyRankNullity(rank,nullity,n)
RETURN {
entity:NullSpace,
ambient_space:F^n,
basis,
nullity,
rank,
pivots,
free_variables:free,
parametric_form:parametric,
verified
}
ELSE IF IsLinearTransformation(object):
K := Kernel(object)
basis := Basis(K)
nullity := Dimension(K)
RETURN {
entity:NullSpace,
ambient_space:Domain(object),
basis,
nullity,
verified:TRUE
}
ELSE:
RETURN RedirectToAppropriateKernelOntology
},
RECURSIVE_COHERENCE: {
invariant_1:
every_null_space_vector_maps_to_zero=TRUE,
invariant_2:
null_space_is_subspace_of_domain=TRUE,
invariant_3:
nullity_equals_dimension_of_null_space=TRUE,
invariant_4:
rank_plus_nullity_equals_domain_dimension=TRUE,
invariant_5:
row_equivalent_matrices_have_same_null_space=TRUE
},
FLOW_HASH: {
semantic_signature_inputs: [
ontology_name,
null_space_definition,
homogeneous_system_relation,
basis_extraction_rules,
nullity_model,
rank_nullity_relation,
kernel_and_injectivity_relations
],
purpose:
"Detect semantic drift between revisions of the ontology."
},
UPDATE_MODEL: {
version: "1.0",
immutable_constraints: [
null_space_equals_kernel,
homogeneous_system_definition,
subspace_of_domain,
nullity_dimension_definition,
rank_nullity_theorem
],
revision_triggers: [
semantic_conflict,
RankOntology_update,
VectorSpaceOntology_update,
LinearTransformationOntology_update,
numerical_null_space_model_update,
representation_standard_change
]
},
KNOWLEDGE_GRAPH: {
nodes: [
NullSpace,
Kernel,
Matrix,
LinearTransformation,
VectorSpace,
Basis,
Nullity,
Rank,
PivotVariable,
FreeVariable,
HomogeneousSystem,
Eigenspace
],
edges: [
NullSpace -> IS_A -> VectorSubspace,
NullSpace -> EQUIVALENT_TO -> Kernel,
Matrix -> HAS_NULL_SPACE -> NullSpace,
LinearTransformation -> HAS_KERNEL -> NullSpace,
NullSpace -> HAS_BASIS -> Basis,
NullSpace -> HAS_DIMENSION -> Nullity,
Nullity -> RELATED_TO -> Rank,
HomogeneousSystem -> HAS_SOLUTION_SET -> NullSpace,
FreeVariable -> PARAMETERISES -> NullSpace,
Eigenspace -> IS_NULL_SPACE_OF -> ShiftedOperator
]
},
CROSS_ONTOLOGY_LINKS: {
VectorSpaceOntology:
ambient_and_subspace_structure,
RankOntology:
rank_nullity_relation,
MatrixOntology:
finite_dimensional representation,
LinearTransformationOntology:
kernel semantics,
SystemOfEquationsOntology:
homogeneous_solution structure,
EigenvectorOntology:
eigenspace relation,
EigenvalueOntology:
zero_eigenvalue relation,
SingularValueDecompositionOntology:
numerical and orthogonal null-space computation,
AffineSpaceOntology:
nonhomogeneous solution set as affine translate
},
TERMINATION_CONDITION: {
ontology_complete_when: [
null_space_defined,
kernel_equivalence_defined,
homogeneous_system_relation_defined,
subspace_properties_defined,
computation_method_defined,
basis_and_parametric_form_defined,
nullity_defined,
rank_nullity_defined,
injectivity_and_column_independence_relations_defined,
left_null_space_and_orthogonal_relations_defined,
error_detection_defined,
cross_ontology_links_defined,
recursive_coherence_verified
]
}
}
EXECUTE Null_Space_Ontology_v1.0:
INPUT:
mathematical_entity_or_query
PIPELINE:
Parse
-> IdentifyMatrixOrLinearTransformation
-> ResolveDomainAndAmbientVectorSpace
-> FormHomogeneousSystem
-> RowReduceWhenMatrixBased
-> IdentifyPivotAndFreeVariables
-> ConstructParametricSolution
-> ExtractNullSpaceBasis
-> ComputeNullity
-> ApplyRankNullity
-> AnalyseInjectivityAndColumnDependence
-> DeriveLeftNullSpaceOrEigenspaceRelationsWhenRelevant
-> VerifyBasisAndKernelSemantics
-> LinkRelatedOntologies
-> AssignConfidence
-> EmitSemanticResult
OUTPUT: {
entity,
classification,
object,
ambient_space,
homogeneous_system,
row_reduced_form,
pivots,
free_variables,
parametric_solution,
basis,
nullity,
rank_relation,
injectivity,
column_independence,
left_null_space,
eigenspace_relation,
orthogonal_complement_relation,
verification,
ontology_relations,
confidence,
semantic_equivalence,
flow_hash
}
END FLOW Null_Space_Ontology_v1.0
Download Code
Copy to Clipboard