Skip to content

MATH257

MATH257 (Linear Algebra with Computational Applications) is a 3-credit-hour class that is one of the math courses required for both EE and CE majors as part of the ECE core curriculum. It is offered in the fall, spring, and summer.

Content Covered

  • Linear equations, linear systems
  • Matrix operations, LU decomposition
  • Vector spaces, subspaces
  • Basis and dimension
  • Linear transformations
  • Eigenvalues, eigenvectors
  • Inner products and norms
  • Orthogonality, orthogonal projections, linear regression
  • Equilibrium, linear dynamical systems
  • Gram-Schmidt method, QR decomposition
  • Principle Component Analysis
  • Singular value decomposition, pseudo-inverse

MATH257 is the first linear algebra course that covers many fundamental concepts in linear algebra. It starts with linear equations and linear systems, and introducing the concept of vectors and matrices to solve linear systems. The course then delves into matrix operations such as addition and multiplication, and the different types of matrices such as elementary and inverse matrices. All of these concepts are regularly utilized as you proceed onto more difficult topics such as subspaces, eigenvectors, linear transformations, and orthogonal projections, so make sure you are comfortable with the fundamentals.

Prerequisites

  • MATH221
  • CS101 or equivalent programming experience*

MATH221 is the only official prerequisite for this course. It is important to be familiar with calculus before taking MATH257, as it is used in the course.

*This is only a recommendation and is not enforced when registering for the course. However, it is useful to know basic programming skills and to have familiarity with Python syntax before taking this course. Coding is not taught in lecture, so it is up to the students to learn this portion by themselves.

When to Take It

Students should take it whenever available after they have gained credit for MATH221, but most students take it after and while taking MATH241. The course is a prerequisite for ECE313.

Course Structure

This is a relatively new course, so the course structure might change a lot every semester. Make sure to check the course website for the latest update.

Every week there are online lecture videos, two in-person lectures, and one online lab. There is also an online lecture option. Generally, you start off watching the online lecture videos to learn new concepts, and then go to in-person lectures to learn more in-depth about those new concepts. As of Spring 2026, there are no longer dicussions, but this is subject to change. The lab is online on Zoom every Friday, where you work by yourself or with other students to complete Python programming assignments on PrairieLearn/Jupyter Notebook.

The course has homework assigned weekly on PrairieLearn, where you practice the concepts learned in lecture. The time to finish each homework varies, but most of them take about 1-2 hours. The homeworks give you unlimited attempts to get full credit, but most questions require you to correctly answer 2-3 different variants to obtain full credit. There is also a weekly lab assignment, which consists of 2-3 Python questions similar to the lab section.

There are three midterms and one final exam in the course. Each midterm is 50 minutes long with about 12-13 questions, consisting of conceptual and computational questions. Usually, midterms are more conceptual and less computational compared to homeworks. There are also two Python quizzes, 3-4 questions each, based on content learned in the lab section and lab homework. Both the midterms and Python quizzes are administered at the CBTF. It is recommended to review homework problems and the extra practice problems provided on PrairieLearn to study for the midterms. There are also tests from MATH415 (previous version of MATH257) provided but these do not follow the same structure as the midterms. Still, they can be useful to work on conceptual understanding. The final exam is similar to the midterms, except that it is twice the length and 2 hours long. The final exam is also administered at the CBTF. There might be a separate Python final depending on the availability of the CBTF. If your final exam score is higher than any of your midterm scores, it will replace your lowest midterm score.

Instructors

The instructors for this course vary based on availability and student demand. The current course director is Professor Chuang. This semester (Spring 2026), the instructor list includes Professors Jer-Chin Chuang, Felix Leditzky and Anil Hirani.

Course Tips

  • The midterms are only 50 minutes long, so be sure to allocate your time wisely when taking the exams.
  • Do Prairielearn extra practice problems for computational/conceptual practice and the old MATH415 practice exams for conceptual practice for the midterms.
  • Lectures move very fast and cover a lot of content, so be sure to stay up to date to avoid falling behind.
  • Try to get familiar with the notation used in the course as early as possible, as they are used constantly in later concepts.
  • Asks questions on Campuswire and on the MATH257 discord, as there are people available who are happy to help.
  • It is sometimes good to visualize concepts in lower dimensions (2D or 3D) before generalizing them in higher dimensions.
  • Python part might be challenging, especially for students without prior experience. Make sure to follow lab assignments and understand every step of it, since Python questions in homeworks and exams are very similar to each other.

Life After

After taking MATH257, ECE students are required to take ECE313, which delves into probability theory.

Infamous Topics

Topics covered in midterm 2 are known to be a significant step-up from midterm 1, as you dive into subspaces and dimensions, which can be confusing to understand and visualize. Historically, midterm 2 averages are the lowest out of all the midterms. Linear transformations and change of basis can also get quite conceptually confusing, as you have to translate from one vector space to another. Some later concepts such as the Gram-Schmidt method and singular value decomposition are quite heavy in their calculations, involving several matrix operations in one problem.

Resources

3Blue1Brown has an amazing video series on linear algebra, in which he includes well-made visualizations of certain concepts learned in the course.