2 ms·
Well, a lot of computer science literally belongs to math, as in, is a strict subset of math. (Including the words I just said, see, about subsets.) Specifical
by logicallee 11y ago
Well, a lot of computer science literally belongs to math, as in, is a strict subset of math. (Including the words I just said, see, about subsets.)
Specifically, a lot of computer science belongs to "discrete mathematics", (because there are discrete states not a continuous interval of possibilities, but still math). so even for everything where you thought you were just learning computer science - when you look at sorting, trees, big-O complexity, correctness, graphs, one-way functions, lexical parsing, network theory, control systems, error handling, compression, etc, you're really just ... straight-up doing math, by definition. (or using a library, compiler, operating system, network stack, database engine etc, etc, etc, by someone who has.) I mean that it is literally the field of mathematics. Like when you remove two 'not' in a row you are just straight-up literally doing math.
So firstly, I would say that these are just some of the things that are directly used by people practicing computer science, even if only second-hand - http://en.wikipedia.org/wiki/Discrete_mathematics http://en.wikipedia.org/wiki/Discrete_mathematics - As well as the more specific, Oh, I heard it's impossible to evaluate whether a function will terminate... oh...I heard you can't compress random data at ALL on average... oh the shannon limit means we could never get that much data across this channel... wait, can you get the signal back after a fast Fourier transform - of course! that's what an inverse fourier transform does.. ... can a simple regular expression match if parentheses are matched and only correctly nested - answer: not a REGULAR one - http://stackoverflow.com/questions/133601/can-regular-expressions-be-used-to-match-nested-patterns http://stackoverflow.com/questions/133601/can-regular-expres... etc. etc.
you see this stuff everywhere. but you just look it up and do it - well, it's math! basically all of the 'theoretical' stuff is. so it's not so much about finding parts of 'math' that a computer scientist should know...it's about realizing that most what you use (right down to boolean logic) is strictly math to begin with. you're literally (not metaphorically) doing math every single day, all day, every time you negate a boolean before returning it.
reasoning about database opreations? straight-up set theory.
so it's like your real question is, what is the math that I would find useful if I learned it? And the answer is - as a computer scientist, "computer science" is the math that you would find useful if you learned it . . .
the other stuff, like geometry or calculus, is interesting but a red herring - in a way they could be considered the application logic. your calculus equations are only useful if your functions implementing them bother to ever return a value... you can hardly write two loops without at least thinking about time complexity. bam, math. all the rest of computer science is math too. everything you do every day. it is just part of mathematics. so go ahead and learn more math - what part? the "computer science" part :)