This course is an introduction to linear algebra with an emphasis on computational applications. The study of linear equations, linear functions, and their representations pervades numerous fields of study. Students will learn and practice fundamental ideas of linear algebra and simultaneously be exposed to and work with real-world applications of these ideas. As the complementary course to COMS 3203, this course will continue emphasizing a rigorous approach to mathematics, which will serve as a foundation for future courses like computer graphics, machine learning, and robotics. The learning and usage of Python and libraries such as NumPy is an essential component of the course, as is the development of basic skills of computational programming.
- Identify and utilize properties of linear functions to manipulate and operate on them.
- Perform fundamental matrix operations and understand their interpretation as systems of linear equations and linear transformations.
- Identify and utilize properties of vector spaces, including bases, norms, projections, and orthogonality.
- Perform decompositions of matrices and their representations, including eigendecomposition, singular value decomposition, and spectral decomposition.
- Formulate and solve example applications in computer science and engineering for which linear algebra is used, such as Markov chains, regression, principal components analysis, and spectral graph theory.
- Demonstrate proficiency in Python for elementary programming tasks.
- Demonstrate proficiency in NumPy and related libraries for scientific computational tasks involving real data.
- Calculus I; Calculus II or Calculus III or equivalent strongly recommended
- Programming experience: COMS 1004 or COMS 1007 or equivalent
List of Topics
- Vectors, linear functions
- Matrices and matrix operations
- Systems of linear equations
- Gaussian elimination
- Linear transformations
- Vector spaces
- Linear independence, bases
- Dimension, rank
- Coordinate systems and transformations
- Norms, orthogonality
- Gram-Schmidt, QR factorization
- Least squares
- Data fitting
- Eigenvalues and eigenvectors
- Similarity transformations
- Markov chains, PageRank
- Discrete dynamical systems
- Spectral decomposition
- Singular value decomposition
- Principal component analysis
- Quadratic forms
- Constrained optimization