(4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and...
Click here to load reader
-
Upload
dervinvictorianobremont -
Category
Documents
-
view
217 -
download
0
Transcript of (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and...
![Page 1: (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algorithm Research_ - Quora](https://reader038.fdocuments.us/reader038/viewer/2022100420/577c7ff21a28abe054a6ac5a/html5/thumbnails/1.jpg)
8/17/2019 (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algo…
http://slidepdf.com/reader/full/4-what-are-the-mathematics-needed-for-pursuing-a-phd-in-theoretical-computer 1/4
4/28/2016 (4) What are the mathematics needed for pursuing a PhD in Theoretical Computer Science and specifically in algorithm r…
https://www.quora.com/What-are-the-mathematics-needed-for-pursuing-a-PhD-in-Theoretical-Computer-Science-and-specifically-… 1/4
+3
What are the mathematics needed for pursuing a PhD in
Theoretical Computer Science and specifically in
algorithm research?I appreciate all the answers and I hope a PhD student who actually works in that area
would answer the question. I'd also like to know about the more specific topics for eachbranch of mathematics like for example the Monte Carlo method in Probability theory
mentioned by Obinna.
There's more on Quora...
Pick new people and topics to follow and see the
best answers on Quora.
Update Your Interests
How do I begin research in theoretical computer
science?
If one wants to pursue an essentially theoretical
computer science field, should he do the Mathematics
Subject GRE or the Computer Science one...
What are some interesting topics to pursue in
computer science research?
What are the best universities/faculty for a PhD in
theoretical computer science?
What courses/topics can I teach myself frommaths/physics/theoretical computer science while
pursuing graduate studies in computational neuros...
What are current research areas/problems in
Theoretical Computer Science?
Can you help me decide whether I should get a PhD
in theoretical computer science?
Wrt specific to Computer Science, what is a PhD and
generally what does completing one entail?
What universities are best for pursuing a PhD in
computer science in the US?
Would it be better to major in math or computer
science if one wants to do research in theoreticalcomputer science?
More Related Questions
PhD in Computer Science Computer Science Research
Answer Follow 92 Comment Share DownvoteRequest
8 Ans wers
It varies by your specific topic. I study graph algorithms (in particular, distance sensitivity oracles)
and none of the papers I'm reading use sophisticated math. The most they use is some standardtechniques involving Chernoff bounds* and high-school level probability.
That being said, it's good to have as extensive a math background as possible, since the ideas from
math may inspire your research results.
* I didn't know these before I started, but it was easy to look them up.
Written Apr 27, 2014 • View Upvotes
Jessica Su, Stanford algorithms TA
7.6k Views • Upvoted by Jeff Nelson, Invented Chromebook. Former Googler. and Karthik
Abinav, PhD student in Computer Science from UMD
Most Viewed Writer in Computer Science Research
Upvote Downvote Comments 2+89
EDIT - I recently created a blog on Quora where I post videos related to TCS. You might find it
useful. See Video Lectures In Theoretical Computer Science
If you take a look at STOC, FOCS and SODA papers, one math topic that will probably stand out is
Probability theory. Probability is widely used in theoretical computer science research. I don't
mean elementary probability covered in undergraduate courses, I mean more advanced topics like
monte-carlo, markov chains, martingales, e.t.c. See these books: Randomized Algorithms and
Probability and Computing
Obviously, Linear Algebra, Combinatorics, Graph theory, Data Structures, Combinatorial
Optimization, Approximation Algorithms, Computational Complexity Theory are a must-
learn. Depending on the area you are going into, you might also be interested in topics like Discrete
and Computational Geometry.
Apart from those mentioned above, other useful math topics are:
Note that they are listed in order of importance (in my opinion).
Obinna Okechukwu, Knows a little about algorithms
3.6k Views • Obinna has 30+ answers in Algorithms
1. Abstract Algebra
2. Game Theory
3. Circuit Complexity
4. Matroid Theory
5. Lattice Theory
6. Set Theory
7. Number Theory
8. Algebraic Geometry
Related Questions
Question Stats
92 Followers
18,197 Views
Last Asked Jun 29, 2015
Edits
Ask QuestionAsk or Search Quora Read Answer Notifications Dervin4
![Page 2: (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algorithm Research_ - Quora](https://reader038.fdocuments.us/reader038/viewer/2022100420/577c7ff21a28abe054a6ac5a/html5/thumbnails/2.jpg)
8/17/2019 (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algo…
http://slidepdf.com/reader/full/4-what-are-the-mathematics-needed-for-pursuing-a-phd-in-theoretical-computer 2/4
4/28/2016 (4) What are the mathematics needed for pursuing a PhD in Theoretical Computer Science and specifically in algorithm r…
https://www.quora.com/What-are-the-mathematics-needed-for-pursuing-a-PhD-in-Theoretical-Computer-Science-and-specifically-… 2/4
Basically, any math you can pick up along the way will help you a lot. The more math you are able
to learn, the better for you.
Disclaimer - I am an undergraduate student, and not a phd student, so my answer might not be
totally correct. I hope some phd student can make some corrections to this answer.
Updated Mar 15, 2014 • View Upvotes
Upvote Downvote Comment32
Probability is used a lot, over and over again. There is a lot of linear algebra (ring, field theory) in
Cryptography, and Quantum. There is quite a bit of calculus, but also very specific tricks. Theory
CS uses a lot of math, but the skills are more of a specific kind. Being a Math major in a TCS PhD,
I feel inadequate most of the time because the pure math subjects I know, aren't directly applied
anywhere. They however help me to learn the math tools used in TCS faster and better.
Written Jan 19, 2014 • View Upvotes • Answer requested by Anurag Bishnoi
Shikha Singh, Pursuing a PhD in Computer Science3.6k Views • Upvoted by Jessica Su, CS PhD student at Stanford and Karthik Abinav, PhD
student in Computer Science from UMD
Upvote Downvote Comment 131
One that I haven't seen mentioned, but is very handy to know something about:
Convex analysis and optimization.
A surprisingly large fraction of computer science (both upper and lower bounds) can be framed as
instantiations of convex optimization problems, or invocations of the min-max theorem or another
form of duality. (e.g. the classic min-cut = max-flow theorem, Yao's min-max principle for proving
lower bounds on randomized algorithms, the equivalence of weak and strong learnability, the hard
core lemma in complexity theory, and many other things are really just applications of Lagrangian
duality)
Also, as others have said, probability is a workhorse... If you want to learn the most relevant stuff, I
recommend the book "Concentration of Measure for the Analysis of Randomized Algorithms" by
Dubhashi and Panconesi.
Written Oct 14, 2014 • View Upvotes
Aaron Roth, I am a professor of theoretical computer science.
1.8k Views • Upvoted by Jessica Su, CS PhD student at Stanford and Justin Rising
Upvote Downvote Comment21
The three pillars of TCS ( at least the math part ) are
As you grow as a researcher you pick up other different topics befitting your orientation. They are
not must but they will immensely help you. Most of the topics are already mentioned in Obinna's
answer.
Written Jan 28, 2014 • View Upvotes
Sagnik Mukhopadhyay, PhD In Theoretical Computer Science, TIFR
1.8k Views
1. Probability. You need to have good idea about Markov chains, CLT, convergence and if
possible, martingales. But I seldom saw application of continuous measures in the TCS.
2. Linear algebra. I cannot emphasis more. This is a must. Probability is used mainly as a tool set
for analysis, but linear algebra, more of than not, gives you idea of improvement.
3. Combinatorics. Classic and vintage. And used left and right in almost all the legs of TCS.
Upvote Downvote Comment38
I'm doing my PhD in theoretical CS, studying solution algorithms for stochastic games. I need lots
and lots of mathematics. Here is roughly a list of topics that I use:
Clemens Wiltsche, PhD at Oxford in Computer Science, Game Theory
1k Views
Game theory :-)
Linear algebra
Geometry
Boolean algebra
Measure theory and probability theory
![Page 3: (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algorithm Research_ - Quora](https://reader038.fdocuments.us/reader038/viewer/2022100420/577c7ff21a28abe054a6ac5a/html5/thumbnails/3.jpg)
8/17/2019 (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algo…
http://slidepdf.com/reader/full/4-what-are-the-mathematics-needed-for-pursuing-a-phd-in-theoretical-computer 3/4
4/28/2016 (4) What are the mathematics needed for pursuing a PhD in Theoretical Computer Science and specifically in algorithm r…
https://www.quora.com/What-are-the-mathematics-needed-for-pursuing-a-PhD-in-Theoretical-Computer-Science-and-specifically-… 3/4
It is always useful to have a large set of tools in mind. The key, however, is to know how to use the
tools from mathematics. First, one needs to know how to write down a formal proof. For example,
in natural language it is easy to mess up the order of quantifiers, so every step has to be very
carefully stated. Then, of course the proof itself needs to be found. This is the part where research
comes in, because it requires insight. Then proofs look a bit like this: (from Abstruse Goose |
Obvious , CC BY-NC 3.0 US)
Written Sep 30, 2015 • View Upvotes
Optimisation and convex analysis
Topology
Descriptive set theory
Complexity theory
Graph theory
Upvote Downvote Comment6
It really varies tremendously depending on what you're going to study.
Background: I'm currently waiting for my adviser to approve my PhD dissertation; if he does I'll be
defending in a few weeks. My research is in graph algorithms. Prior to my PhD I did a research-
based Master's, also in the area of graph theory.
As an undergrad, I had quite a bit of math - since my major was computer science, I was pretty
much required to minor in math. Since I started grad school, I've used algebra, graph theory, and
logarithms.
That's it. I did take a few semesters of combinatorics and audited linear algebra, but I never actually
used them for my research (although a few problems from my combinatorics class did come up inmy phd-level algorithms class). Since my specialty is algorithms, I needed to be able to calculate
runtimes, which requires basic algebra and logarithms, and since I'm specifically working on graph
algorithms I obviously needed to know graph theory. If you don't understand big-Oh notation, sit
down with Cormen et al until you do; you MUST understand how asymptotic runtime works.
But even if it's not directly applicable, what about background material? No matter what topic you
choose, you need to know how to do mathematical proof. That means you need to take discrete
math - it might have another name (my undergraduate university originally called it Algorithms) but
it'll be a course that teaches you how to do proofs. The class that was responsible for me deciding to
go to grad school (and which I later ended up teaching for three years) is Foundations of Computer
Science, which covers finite automata, Turing machines, etc, but most importantly teaches you to
prove things, and more importantly, how NOT to "prove" things - how to a avoid sloppy thinking.
So definitely start by learning to do proofs. After that, find a professor who specializes in the areayou'd like to work in, and ask him or her what kind of background you need. Theoretical computer
science is a huge field, and it's not possible for you to have the background for everything - find out
what you're interested in and specialize.
But understand algebra, algorithms. and proofs.
William Springer, PhD in Computer Science, former TA for Foundations ofComputer Science, author
1.1k Views
![Page 4: (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algorithm Research_ - Quora](https://reader038.fdocuments.us/reader038/viewer/2022100420/577c7ff21a28abe054a6ac5a/html5/thumbnails/4.jpg)
8/17/2019 (4) What Are the Mathematics Needed for Pursuing a PhD in Theoretical Computer Science and Specifically in Algo…
http://slidepdf.com/reader/full/4-what-are-the-mathematics-needed-for-pursuing-a-phd-in-theoretical-computer 4/4
4/28/2016 (4) What are the mathematics needed for pursuing a PhD in Theoretical Computer Science and specifically in algorithm r…
https://www.quora.com/What-are-the-mathematics-needed-for-pursuing-a-PhD-in-Theoretical-Computer-Science-and-specifically-… 4/4
3 Answers Collapsed (Why?)
Written Oct 14, 2014 • View Upvotes
Upvote Downvote Comment 16
I'd say: U have to necessarily know EVERYTHING in
. If not at the start of your PhD, you MUST be familiar with the contents of all the chapters
in this book at least an year into your PhD.
This book is the first step towards any study in Algorithms / Theoretical Computer Science and is
followed by professors in most part of the world.
The book extensively covers:
Besides, if any of the polynomial algorithms that you came across in your undergrad has urged to
do your PhD, be aware that most tractable algorithms have already been found and it is immensely
hard to get any work published in the area of polynomial-time algorithms - unless of course
someone proves P=NP and throws the whole field wide open, crashing sooo many cryptographic
algorithms based out of this premise.
Current areas of work in Theory may include combinatorial optimization, randomized schemes,
approximation algorithms, parameterized complexity etc.
Written Jan 18, 2014 • View Upvotes
Anonymous
580 Views
Introduction to Algorithms: Thomas H.
Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: 9780262033848: Amazon.com:
Books
Asymptotic analysis
Sorting algorithms
Lower bound analysis
Dynamic programming
Greedy algorithms
Basic graph algorithms (shortest paths, spanning trees etc.)
Network flow (ford-fulkerson, edmond-karp etc)
Basic + advanced data structures including red-black trees, fibonacci and binomial heaps.
Amortized analysis.
Number theoretic algorithms (chinese remainder, euclid types)
Basic notion of NP-Completeness, reductions and approximation algorithms.
Geometric algorithms (convex hull etc.)
Upvote Downvote Comment 14
Top Stories from Your Feed
Answer written • Apr 21
Who is the smartest human being
that's ever lived?
Angelino Desmet, Philomath
811.4k Views • Upvoted by John
Lagoutaris, SAT 99th percentile and
Debojyoti Das, Avid Reader of History and
Controversy.
Popular on Quora
What happens if you stop using
shampoo on your hair for a year?
'
Wendi Tibbets, Unhairy person, with
quite the head of hair.
504.7k Views
Popular on Quora
Which country is the most difficult
to invade?
Sam Montgomery, I live in a Country
and am a citizen of two.
242k Views • Most Viewed Writer in
Countries
Read In Feed Read In Feed Read In Feed