3 ms·
(Assuming this class is based on the Sipser book)Theory of comp needs: comfortably with algebraic manipulation, basic understanding of sets, the light touch of
by soganess 5y ago
(Assuming this class is based on the Sipser book)Theory of comp needs: comfortably with algebraic manipulation, basic understanding of sets, the light touch of asymptotics usually learned in algos, strong comfort with boolean things, and the ability to grawk shorter proofs.
- amilios 5y agoSorry I just want to interject that it's "grok" not "grawk", that's an interesting spelling ahaha
- soganess 5y agoHilarious! Thanks for the heads up.
- barrenko 5y agoAnother Q, what is the difference between "computation" and calculation? Recently got into "Science of functional programming" (Sergei Winitzki) and "Program design by calculation" (J.N. Oliveira ), so was wondering if this would be a beneficial pre or post course.
- soganess 5y agoThe classic CS route for readiness to take ToC is programming+data structure (which if you are asking about taking ToC course, you probably have under your belt) Then algos which is usually the first time a student encounter asymptotic analysis (but like baby steps, its usually like only the first 3 weeks of the course and then the students use those skills during the course, like practice.) Some schools offer a discrete math course which I think helps everyone get up to speed on the math required, but, depending on your background can seems like a lot (I still remember it feeling like a lot to me, and I took it mannnnnny moons ago.) So I would call both of those "post" courses. To answer your question about C v C: As a first pass, it is fair to think of a computation as a calculation because they are the same thing many times! But I wouldn't, for example, consider controls (like a for loop) as a calculation but it is very much part of your model of computation (or if you are doing functional, a for-loop is not part of your model.) The two sentence elevator pitch for ToC is "You rigorously define and learn three increasing more powerful models of computation, then you find out that there are many more models, but they are not more powerful. So then you quantify and analyze what that condition means and how it effects our ability to compute actual hard problems."