- What is CS-4342 all about?
Linear algebra is one of the most useful areas of mathematics,
with many applications across computer science, engineering,
statistics, and data science. It is also a building block for
other mathematical areas such as machine learning: the language
of linear algebra is assumed as background in any advanced math.
Basic linear algebra is often considered "easy" by students,
not needing anything more than high-school algebra but at
the same time, it's hard to get a feel for it. Students often
say "I got an A in the course but I can't tell you what it's about".
The goal of this course is to provide both intuition and
to show how linear algebra is used in modern applications.
- Who should take this course?
All engineering, physics and math students should take
linear algebra. For CS students, linear algebra is an
important elective - see my thoughts on this topic.
- I've taken the Math Dept linear algebra course. Should
I take this?
If you came out that course with strong intuition and know how
to apply linear algebra, there will be considerable repetition
in terms of the theory; you will certainly learn a lot from
If not, seeing linear algebra from a different perspective can
strengthen a core skill.
- I haven't taken CS-1112. Can I take this course?
You need to be comfortable programming in Java. Very little
of the programming involves objects or anything advanced in Java,
but it does need comfort with basic programming: loops,
- I've taken CS-1112, but in another language. Can I take this course?
If you're not comfortable with Java, this course
might be exceptionally challenging. We are not going to teach
Java in the course.
- Is this a programming-intensive course?
Yes and no. It's not as programming-intensive as, let's say,
CS-2113 but there will be a fair bit of programming. Most of
the programming consists of modifying small programs.
It's really an excellent way to learn the material.
- I'm not a CS student and am not strong in programming.
What are my options in this course?
Non-CS students may have the option of working in teams
to ease the programming challenge, with prior arrangement
with the instructor.
- What is the math background I need for the course?
The mathematics needed only assumes high-school algebra. That
said, this is a proof-oriented course and one that will move
rapidly through the material. If you haven't done calculus,
you'll likely not have the mathematical experience needed.
- Is this a math-intensive course?
Yes. We'll certainly do proofs.