Chapter 4: Basis and Dimension Theory

Haiyue
3min

Chapter 4: Basis and Dimension Theory

Learning Objectives
  • Understand the definition and importance of basis
  • Master the existence and uniqueness of bases
  • Understand the concept and calculation methods of dimension
  • Master the principles of coordinate transformation
  • Understand the structure of finite-dimensional vector spaces

Definition and Properties of Basis

Mathematical Definition of Basis

A subset B={v1,v2,,vn}\mathcal{B} = \{\mathbf{v_1}, \mathbf{v_2}, \ldots, \mathbf{v_n}\} of a vector space VV is called a basis of VV if:

  1. Linear Independence: The vectors in B\mathcal{B} are linearly independent
  2. Spanning Property: span(B)=V\text{span}(\mathcal{B}) = V
Intuitive Understanding of Basis

A basis is the “coordinate system” of a vector space, where any vector can be uniquely represented as a linear combination of basis vectors.

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

def demonstrate_basis_concept():
    """
    Demonstrate the concept of basis
    """
    print("Basis Concept Demonstration:")
    print("=" * 50)

    # Standard basis for R^2
    e1 = np.array([1, 0])
    e2 = np.array([0, 1])
    standard_basis = [e1, e2]

    print("Standard basis for R^2:")
    print(f"e1 = {e1}")
    print(f"e2 = {e2}")

    # Verify linear independence
    A = np.column_stack(standard_basis)
    rank = np.linalg.matrix_rank(A)
    print(f"Matrix rank: {rank}")
    print(f"Number of vectors: {len(standard_basis)}")
    print(f"Linearly independent: {rank == len(standard_basis)}")

    # Verify spanning: any vector can be represented as linear combination of basis
    arbitrary_vector = np.array([3, 4])
    coefficients = arbitrary_vector  # For standard basis, coefficients are the vector itself
    reconstructed = coefficients[0] * e1 + coefficients[1] * e2

    print(f"\nArbitrary vector v = {arbitrary_vector}")
    print(f"Basis representation: v = {coefficients[0]}*e1 + {coefficients[1]}*e2")
    print(f"Reconstructed result: {reconstructed}")
    print(f"Verification correct: {np.array_equal(arbitrary_vector, reconstructed)}")

demonstrate_basis_concept()

[Content continues with all sections translated from Chinese to English, preserving all code blocks, formulas, and markdown formatting…]