Fields that require both CS and pure math

I'm mainly a CS major, but I also want to learn more advanced mathematics. I see lot of cross over between CS and applied math, same can't be said about pure math.

Definition of 'advanced': Something a pure math major learns during and after late undergraduate years.

What are the fields that combines advanced mathematical topics with computer science?

Theoretical computer science and computational group theory are good examples.

-
There are lots of interesting answers to this question, but I don't know what is meant by CS in this context. Is it programming? Theory of computation? Formal Languages? Analysis of algorithms? Something else really cool that I forgot to mention? –  Tom Stephens Aug 9 '10 at 15:28
The more theoretical part of CS, what you said except programming are what I was thinking. Other possibility are database theory, artificial intelligence and networks. –  Chao Xu Aug 9 '10 at 15:57
–  user2468 Aug 24 '12 at 14:45

Cryptography is a field which requires lot of Number theory. Formal languages and automata theory requires some Graph theory, and these automata things can be connected to computer science as well.

-

Semantics of programming languages: the modern version is a mixture of type theory and category theory. Also, there is a lot of subtle issues in logic (linear logic in particular) that crops up.

Design of programming languages: Things like linear logic have influenced the addition of a number of features to languages (or reasonable restrictions). monads in Haskell come straight out of category theory.

Analysis of programming languages: static analysis is nowadays all based on abstract interpretation, which is fundamentally an application of lattices and of Galois connections.

-
+1 category theory and monads! –  awshepard Aug 20 '10 at 12:37

Computational algebraic geometry is the first example that comes to mind. It's used in phylogenetics, see here (you can also look up the book Algebraic Statistics for Computational Biology). It also shows up in robotics and control theory, but I know a lot less about that.

Polytopes (see Coxeter - Regular Polytopes or Grunbaum - Convex Polytopes) also appear in a lot of applications. The only specific one that comes to mind at the moment is the problem of figuring out whether an object (like a robot) can traverse a given maze. The algorithms use the convex hull of the robot to test whether or not it could traverse the maze. I'm sure there are a lot of people more knowledgeable than me on the subject.

-

Much of data mining requires an understanding of high dimensional geometry. Lots of machine learning also requires an understandind of advanced probability theory.

-
+1. Crucial to data mining applications, and also speech recognition, is concept analysis, which involves fairly intense probabalistic logic and very large dimension linear algebra. –  Charles Stewart Aug 9 '10 at 8:26

Robotics. I don't know much about this field but from a theoretical point of view a lot of lie group theory is used (to describe joint motion and position). In particular the lie theory of rigid motions i.e. of the Euclidean group $SE(3)$ is relevant. I would imagine CS would come in more from the computational side when larger calculations are involved. Also its robots which need to be built so plenty of mechanical and electrical engineering going on here.

This is mostly based on a quick glance at http://www.springer.com/computer/ai/book/978-0-387-20874-9. Which is written for an undergraduate math or engineering major.

-

I am working with the Schroedinger equation, which surprisingly leads to graph theory (via cell decompositions).

To get a good grip on these graphs, I did a lot of programming, since doing it by hand takes way too much time.

I generated about 100 examples, and from there, I could easily see what needed to be proved, something which was quite hard prior to that discovery.

It is now part of my thesis (Original article paywalled).

-
sounds very interesting! Did you write up a note about it? –  anon Aug 8 '10 at 13:26
The result will be published later this year. –  Paxinum Aug 9 '10 at 6:37
any chance you could link it here (since this was over 3 years ago)? –  hadsed Nov 29 '13 at 23:21

Number Theory: many large numbers were tested by using computers.

Linear programming: many algorithms have been developed.

-

Today is an open question to find an efficient algorithm/data structure that can be used to index/search information in a high dimensional space (ie d > 20).

I've seen approaches using computational geometry, space filling curves, principal component analysis, etc.

-

Computer graphics is a prime example of a field that needs sophisticated CS and math.

-
Also computer vision. –  Peter Sheldrick Aug 24 '12 at 15:45