Affects of Double-Majoring in Undergrad if Student feels it is Highly Important

Anyone can take the Math subject GRE, but a minor will give you pretty weak preparation, even if the 5th upper level class is chosen to be Topology. Half of the test is calculus/real analysis, and TAing calculus for a couple years will make success on that test much more attainable. Choosing to focus on CS and just doing a math minor will decrease your odds of doing well. You will be competing with students who have been living math for 3+ years on this exam – doing REUs, other research experience, taking every math class offered, half a dozen grad classes, TAing for 3 years, going to dozens of math talks, etc. That said, you could always take the Math GRE and if you don’t do well, just don’t report the score since it’s not required. Math grad school seems to be more competitive than CS, too, but I don’t have any numbers to back this up.

I would recommend starting out taking both Math and CS classes. By the time you get to classes like CS164/170 and Math104/113, it will become clear to you whether you like Math or CS better. At present, you probably know next to nothing about Math or CS. What you may know is some basic calculus and programming. If you can squeeze in a minor in the other subject, that’s great. If not, it’s not a big deal. It’s better to do one major and get a 3.8 than squeeze in two majors and get a 3.5.

You can always pick up a math book and read new stuff on your own. For example, I’ve bought several books on elliptic curves over the years. I’ve never taken a class on elliptic curves, algebraic geometry, or arithmetic geometry. The Math minor at UCB looks pretty good. What would you get out of a major but not the minor? Sure, you could take some interesting classes like algebraic topology or dynamical systems or something, but I find it highly unlikely a CS program wouldn’t admit you because you haven’t studied, say, measure theory or algebraic geometry. These are very difficult subjects that I’m sure have some applications to CS, but I find it hard to believe a computer scientist studying algorithms or FLAT would care about the existence of a non-measurable set. I suppose you might want to know some basic measure theory if you were using fourier analysis in your work, but that’s something you could learn once already in grad school.

I admire your ambition, but I’d recommend just figuring out which field you like more your first year or two, and focusing on that.