Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Mathematical Foundations of Computing (2015) [pdf] (stanford.edu)
103 points by lainon on May 27, 2017 | hide | past | favorite | 19 comments


I took this class. Keith is a wonderful teacher. This class sparked a love of math within me and was a mind expanding experience.


These notes are a great example of simple ideas (like summation of integers, basic inductive proofs, etc.), presented with clarity and in an inviting way. It's fun to read the structure of the arguments even though one knows the result already.


[flagged]


Please don't post like this here.


man these comments are turning hn into Reddit. no one cares about your smugness here. at the bare minimum explain wtf you're implying with this bs meme response (instead of ya know just showing off to how clever you think you are)


Nah they aren't.

HN have superior signal to noise ratio in the comments and even better; enlightened discussions mostly.

Let's not pretend this is a faculty club, this still is the Internet.


You sound like someone who knows a lot about computer science. If that's the case, this PDF is probably not for you because the (perfectly correct and valid) math in it is very, very basic/elementary. You should be reading something more appropriate for your level of mathematical sophistication.


I'd argue that's exactly what computer science is.


The parent may have a point.

"Computer science is no more about computers than astronomy is about telescopes."

(attributed to E. Dijkstra)

To a large degree, computer science is a branch of (discrete) mathematics.


Saying that computer science is not about computers is an insightful thing to say. It is good to try to understand why someone would say something like this.

But it is not the only perspective one can take. Allen Newell, Alan J. Perlis, and Herbert A. Simon argue that computer science is the study of computers [1]. I think this is also an insightful thing to say, and it is good to try to understand why they would say that.

And even if I disagreed with them, I still wouldn't dismiss all writings of three (!) Turing-award winners based on a single wrong opinion.

[1] http://www.cs.cmu.edu/~choset/whatiscs.html


Thanks for the link. Winners or no winners, their analysis of the question is hard to disagree with.


About 80% of computer science is (discrete) math or (constructive) formal logic. Another 50% is electrical engineering, and the final 70% is operations research, quantum mechanics, and philosophy. The remainder is biology, psychology, and a sprinkling of physics. But the majority is really programming.


Right. There are three kinds of people - the ones that can count and the ones that can't...

Also, there is a difference between rocket science and computer science, in that the former is all about hardware while the latter is all about software (in the most general sense).


But a lot of the reason it's useful/interesting that say sorting is n log n is because we have computers to actually implement sorting. I'm not sure the problem was even posed before computers.


Mathematicians have a long history of being concerned about computational efficiency. Two examples that come to mind are FFT and Euclidean algorithm. I'm certain there are many others.


But before computers it was just called Mathematics. Computers are really essential for the existence of Computer Science.


Before electronic computing machines pretty much took over, "computer" was a job title/description. The exciting part of Turing's On computable numbers, with an application to the Entscheidungsproblem was his abstraction of what computers actually do to a simple machine. Large chunks of what's currently being explored is in relation to problems that we may or may not be able to solve using machines we're not even sure can, in principle, be built, and on that level "computer science" assumes spherical cows in a frictionless vacuum. It's nice that we have relatively compact, fast and nearly ubiquitous machines with which to apply some of what's been discovered along the way, but fundamentally "computer science" is the mathematics of process.


But note that the term "algorithm" is much older than automatic computers; speaking of the problem of sorting, it also had existed for many years prior in the form of various playing card puzzles, but not only - one famous example being Tower of Hanoi.


If you interpret "computer" as a concepts rather than a specific class of devices, your view might shift.


I do find it curious the fact that "computer" even as a concept (e.g. the Turing Machine) occupies a very small place in the minds of computer scientists today. (This is similar to how little the modern Number Theory is concerned with, well, numbers.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: