Mathematics for Computer Science: Readings
41–50 of 74 posts
Re: Mathematics for Computer Science: Readings
#42Question: why isn't linear algebra in here? I know this is a type of "but this isn't in my favorite list" question but since a lot of universities include it in their CS curriculum, I wonder why it isn't in here. Or did I oversee it? Is in there?
There are a few reasons. First, the purpose of a class like this is to prepare students for further coursework in algorithms and automata/complexity. You need logic, graphs and combinatorics for those a lot more than you need linear algebra. Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes. Third, there's a li…
>Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes.
x math department doesn't have classes on graph theory, combinatorics, or prob & stats?
Re: Mathematics for Computer Science: Readings
#43Is this book suitable for math self-learning?
Re: Mathematics for Computer Science: Readings
#44Earlier quoted context omitted.
There are a few reasons. First, the purpose of a class like this is to prepare students for further coursework in algorithms and automata/complexity. You need logic, graphs and combinatorics for those a lot more than you need linear algebra. Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes. Third, there's a li…
i agree with you that this is in principle math for CS proper (rather than machine learning or numerical algos or something) but >Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes. x math department doesn't have classes on graph theory, combinatorics, or prob & stats?
Re: Mathematics for Computer Science: Readings
#45Earlier quoted context omitted.
There are a few reasons. First, the purpose of a class like this is to prepare students for further coursework in algorithms and automata/complexity. You need logic, graphs and combinatorics for those a lot more than you need linear algebra. Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes. Third, there's a li…
i agree with you that this is in principle math for CS proper (rather than machine learning or numerical algos or something) but >Second, the math department teaches a class in linear algebra. This is a collection of topics that you wouldn't ordinarily find in undergraduate math classes. x math department doesn't have classes on graph theory, combinatorics, or prob & stats?
Discrete mathematics is a grab bag of topics, and it's more fair to say that a discrete math course pulls in selected topics from other areas than to say it provides a focused coverage of any of them. At the depth each topic is taught, you couldn't pull it out into its own semester's worth of lectures. On the other hand, it would be very difficult to compact linear algebra into a discrete math course. Learning linear algebra already requires you to introduce a bunch of new concepts, like fields and vector spaces, linear equations, linear transformations, matrix representation and matrix operations, determinants, inner products...
Equally importantly, linear algebra doesn't really "fit" with the topics of discrete mathematics, pedagogically speaking. It fits well with a treatment of multivariable calculus, but that's only a small part of what's taught in discrete math courses. If you wanted to teach linear algebra in a course covering a bunch of topics, you'd probably want to do a "topics in abstract algebra" course that works through groups, rings, modules, linear algebra and multilinear algebra. But then you're going well beyond what a non-math major should encounter in an undergraduate setting.
Really, linear algebra stands on its own very well. In my opinion it should receive focused coverage and not be mixed with anything else. While graph theory and combinatorics can easily receive the same coverage, their treatment is usually pushed back to advanced undergraduate or graduate level courses because engineers don't usually work with them beyond what's covered in discrete math (which is exactly why we have discrete math as a standalone course). In fact, MIT actually lists linear algebra and multivariable calculus as prerequisites for the focused courses on combinatorics. The same applies for probability theory: you can't really learn probability theory (beyond discrete) without first learning analysis.
Re: Mathematics for Computer Science: Readings
#46Question: why isn't linear algebra in here? I know this is a type of "but this isn't in my favorite list" question but since a lot of universities include it in their CS curriculum, I wonder why it isn't in here. Or did I oversee it? Is in there?
Re: Mathematics for Computer Science: Readings
#47How has this book helped you as a programmer? I am finding it difficult going through it.
My hope is that I find enough feedback on good/bad of cheap or free resources on this topic that I can determine some default recommendations for people curious. The problems can be addressed with supplementary material. Eventually, the defaults would be good enough that the process would happen faster. A larger number of people centering on the same resources might become a community for helping new people. That might increase the inflow. Simultaneously, some percentage of these people are working on tools, esp automated, to make the proof process more productive. Over time, we might have a much larger segment of people working on formal verification than we do now. Maybe even large enough to sustain more tool development by contributions or licensing.
So, that's why I'm looking at books like this with what I think they might help us achieve. I'm way too out of my depth to know if it will work. I just know accessibility, better learning materials, and network effects always help.
Example tools below for sequential programs, concurrency, and hardware:
https://en.wikipedia.org/wiki/SPARK_(programming_language)
https://learntla.com/introduction/
http://prod.sandia.gov/techlib/access-control.cgi/2014/14205...
Re: Mathematics for Computer Science: Readings
#48Question: why isn't linear algebra in here? I know this is a type of "but this isn't in my favorite list" question but since a lot of universities include it in their CS curriculum, I wonder why it isn't in here. Or did I oversee it? Is in there?
Re: Mathematics for Computer Science: Readings
#49Earlier quoted context omitted.
Some famous runner who's name I can't remember and probably didn't exist anyway once said "I can't run 200 miles. But I can run 1 mile - 200 times". Start from page 1 and iterate from there.
This analogy does not capture the problem that the human brain constantly forgets...
Re: Mathematics for Computer Science: Readings
#50Earlier quoted context omitted.
Because 6.042J is "an introduction to discrete mathematics, probability, and mathematical thinking for computer scientists". For linear algebra, see https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra... I'll admit I don't know how the MIT CS curriculum is structured, but I suppose it is in there, just not in this particular course.
This is actually the only math class that's required by the 6-3 degree program, MIT's CS degree. Many people do take linear algebra, though. Source: https://www.eecs.mit.edu/curriculum2016 and I'm a 6-3