
Mathematics for Computer Science - moks
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/video-lectures/
======
cdelahousse
Oh man. This course brings back so many memories of suffering through this
material. But I can't emphasize how important this stuff is to know if you
want to know anything significant in Computer Science.

What helped me ace the the exam was doing a hundreds of problems. I couldn't
answer them most of the time, so I'd need an answer key nearby to get unstuck.

Drill, drill, drill. Just like you'd expect to drill for calculus, you can
drill for this class.

What I found helpful was Rosen's "Discrete Mathematics and Its Applications".
The material wasn't the best, but the problems are excellent. You can buy an
older edition of the book and its solution manual for next to nothing on used
book sites like abebooks.com

~~~
georgehm
> I couldn't answer them most of the time, so I'd need an answer key nearby to
> get unstuck.

This happens with a lot of books out there. It would have been great if the
authors of MCS gave solutions for at least some select questions.

------
UUMMUU
I know it's not related to this but if anyone has not watched the Linear
Algebra lectures by Gilbert Strang of MIT. They are definitely worth a look as
a strong foundation in Linear Algebra never hurt anyone.
([http://web.mit.edu/18.06/www/videos.shtml](http://web.mit.edu/18.06/www/videos.shtml))

Also available on iTunes U.

~~~
Niksko
Thanks for the resource. I never really paid attention when I took linear
algebra, and I've always regretted it since it seems to rear it's head
everywhere.

~~~
UUMMUU
I was the same way. I went through it thinking it was very abstract and had no
real application. It wasn't until after that I realized it was basically used
(in some way/shape/form) everywhere.

------
cdelahousse
If some of you feel a bit overwhelmed with the material, you may be well
served by watching the first few lecture's of the following playlist:

[https://www.youtube.com/channel/UCG96LXNYz9x7eTqSRtQ2R9A](https://www.youtube.com/channel/UCG96LXNYz9x7eTqSRtQ2R9A)

It is Carleton University's freshman/first year Discrete Structures/Math
course (COMP1805). They cover a lot of the same material, but at a more
leisure pace and assume a lot less background.

~~~
cdelahousse
Looking over the second part of the MIT course, I see that a lot of the same
material is covered in this free textbook.

[http://cglab.ca/~michiel/DiscreteStructures/](http://cglab.ca/~michiel/DiscreteStructures/)

------
farresito
The reading material is fantastic. If anyone wants a more recent version of
it, here's the link:

[https://courses.csail.mit.edu/6.042/spring15/mcs.pdf](https://courses.csail.mit.edu/6.042/spring15/mcs.pdf)

~~~
discardorama
That's not just "reading material" ... it's a frigging 1000-page book! :-D

~~~
farresito
It all started with a 300 page reading notes, which, in my opinion, is pretty
long already, but, boy, 1000 pages is a lot indeed :).

------
dnissley
I've been trying to self-study mathematics since around the new year. I
initially tried following this course, but with only a background of high
school math through precalculus I found this to be overwhelming.

So after a bit of research I decided to start working my way through "How to
Prove It" by Velleman, which has introduced me to many of the concepts that
seem to be pre-requisites for this course: set theory, logic, proof
strategies, etc.

~~~
bargl
I did something similar last year with Statistics and Probability. The best
place I've found for a linear course for online math is
[https://www.khanacademy.org/](https://www.khanacademy.org/)

I was able to start at the beginning and get all the necessary math to
actually step forward to some of the more complex courses. I'd suggest
starting there.

~~~
dnissley
I did start there actually. As much as I love Khan Academy there are lots of
holes and the quality/thoroughness of video explanations really seem to drop
off the further along you go.

To me they were most useful when I just needed a refresher on the precise
operations to go through in order to solve a particular kind of problem, but
already understood it. It's hard to beat a textbook for learning material that
is completely new to me.

------
carlsednaoui
I'm looking to gain the math foundation needed do inch my way towards data
science. Could anyone on HN recommend a good path to take? For simplicity's
sake, imagine my math level is 0.

Also, curious to know if anyone has good book suggestions or places with
practice problems.

Edit: This is the best list I've been able to find so far
[http://datasciencemasters.org/#math](http://datasciencemasters.org/#math)

~~~
hevelvarik
I am self-teaching myself mathematics for a few years now and will suggest the
following: Algebra and Trig, a subset of which is known as pre-calc. Don't
short yourself on this because it is basic and you don't want to be struggling
with it at the same you are struggling with the higher level stuff. I cannot
recommend Sheldon Axler's Algebra and Trigonmetry highly enough. After much
searching I found that and have been through it 3 times.

Next Calculus: I recommend Gilbert Strang's text book which will take you
through what in uni is called Caculus 3, 1 being intro, 2 being differential
and 3 being integral. I in the midst of this book and so can't speak to
further but my plan is to move onto Strang's linear Algebra. After that, where
to go depends on particular interest but leaving any of that out, in my
opinion, will just handicap your further studies. Moder education does a lot
of things wrong but the standard math sequence in use everywhere isn't one of
them imo.

~~~
carlsednaoui
Thanks so much for the recommendations, hevelvarik.

Just to confirm, are these the right books?

\- [http://www.amazon.com/Algebra-Trigonometry-Sheldon-
Axler/dp/...](http://www.amazon.com/Algebra-Trigonometry-Sheldon-
Axler/dp/047047081X)

\-
[https://open.umn.edu/opentextbooks/BookDetail.aspx?bookId=10](https://open.umn.edu/opentextbooks/BookDetail.aspx?bookId=10)
/
[http://ocw.mit.edu/ans7870/resources/Strang/Edited/Calculus/...](http://ocw.mit.edu/ans7870/resources/Strang/Edited/Calculus/Calculus.pdf)

~~~
Enzolangellotti
In addition, get Israel Gelfand's books
([http://gcpm.rutgers.edu/books.html](http://gcpm.rutgers.edu/books.html)).

------
hkailahi
MIT OpenCourseWare has been a great tool for me as an undergrad. Since the
start of year, I've watched the CS and Econ uploads concurrently with the
courses I've taken.

It's not that the lectures are better, but getting a second chance to see the
topics under slightly different contexts has been pretty effective for study.
I've had the same experience with Khan Academy in my lower division courses.

------
vowelless
This is a similar course with some overlap:
[http://www.cs.cmu.edu/~15251/](http://www.cs.cmu.edu/~15251/)

~~~
aroman
I haven't looked at the MIT course in detail, but doesn't it seem like
Concepts would be more similar to this than 251?

------
daveed
I just want to put a plug in for the video lecture portion of this. Tom
Leighton is an excellent lecturer. There is plenty of electronic
textbooks/courses, but I really do think he explains the course material in an
engaging and lucid way.

------
xigency
This seems extremely useful. My school did not have a consolidated math class
like this, although computer science and software engineering students were
required to take various courses in math, particularly discrete and
combinatorial math and linear algebra.

I do know that there were many students who double majored in Math / Computer
Science although there was a restriction on minoring in mathematics as a CS
student because of the large number of prerequisites. Still, it seems useful
to combine proofs, induction, graph theory and related domains into one
course. I did opt for taking a large number of math classes and some fairly
high-level electives, and I have to say the most interesting area I came
across was the use of generating functions for solving recurrence relations
and the study of the Catalan numbers. For those of you unfamiliar with the
Catalan numbers, it is the sequence of the number of binary trees that can be
created with a certain number of elements. Another area they come up in (among
a large number of problems) is creating paths by Manhattan distance.

The Catalan numbers also count the number of expressions with matching pairs
of parentheses.

~~~
_asummers
Catalan numbers show up all over the place and are a really useful sequence.
My combinatorics course in undergrad had a "Catalan Problem of the Week" where
you would have to show that the Catalan sequence solves a particular problem.

------
nimish
Concrete Mathematics is also a good background.

~~~
qntty
One of my favorite math books ever, but definitely not for the faint of heart.
It's starts off slow but gets hard fast.

------
deevus
Having done an equivalent course in Australia I can say: despite being a
struggle at the time to get my head around the content, in hindsight knowing
this stuff is invaluable as you continue with your degree.

Discrete Mathematics has been invaluable in Formal Languages (Turing
machines), Algorithms and Data Security.

------
ilaksh
Math is just manually running code in your head. Which is just an ignorant and
wasteful obsoleted vanity, like remembering and performing a series of notes.

~~~
oskarkv
Is thinking obsolete too?

------
abhididdigi
Being a CS student in my Bachelors I was able to spend sometime on Number
Theory. But the lectures here blew mind.

------
JAFTEM
I believe this is a pre-req to CLRS too.

