What are some course of study recommendations for an aspiring math major? I am currently a high school senior studying AP Calculus BC and an introductory course on differential equations in which I am reading from George Simmons' Differential Equations with Applications and Historical Notes. I love Simmons' clear explanations and his general approach to the subject.
The AP Calculus class, however, is slightly too easy for me, and I'm looking for something a bit more. The textbooks we have been given (Yes, that is plural; my school system loves spending tax dollars) for the course are dull and have boring problems.
I've heard much acclaim for Spivak's Calculus, and I've heard that it has problems on the more difficult side, which is what I'm looking for. Is this recommended or is it too much of a leap?
Also, would Understanding Analysis by Stephen Abbott be of any use to me? I've heard great things about that book too, but I'm not entirely sure where real analysis fits in the typical path that undergraduates take.
I plan on dual majoring in mathematics and computer science, and so I will likely take discrete structures, linear algebra, and multivariable calculus in my first year. Are there any books for these that would be useful or particularly eye-opening? Or just any math recommendations in general?
Thanks!
 A: If you're doing math at the level of Simmons' Differential Equations, then you're quite ahead of the average high school student and can start studying some elementary university-level math. Beware, though: this is going to be quite different than the math you have done in high school, and it takes a good amount of time to get used to it.
There are several different approaches to learning some preparatory math for university. Since you are looking for books, here are few I'd expect you to be able to go through at a reasonable pace.

General Recommendation
IMO the best thing you can do is to not delve into particular topics (which you will have to do as part of core courses anyway) and instead get used to arguments and constructions which you will encounter heavily during your undergrad. My recommendation is to take a look at Evan Chen's Napkin, which is made specifically for the purpose of getting advanced high schoolers interested in modern math.
The book can be found for free on Chen's website and acts as a 'greatest hits' compilation of modern math. It's meant for recreational reading (quite thorough, though) and includes a lot of intuitive exercises which you could have fun doing. Don't read it cover to cover, but take a look at whatever interests you; the book gets a lot of the philosophy behind doing math right. You'll likely gain a good amount of mathematical maturity and end up with the flavor of math.

Your Request

*

*Understanding Analysis by Abbott is a very good book, and I can recommend it without qualms. In many ways it is the natural step forward for someone who likes calculus.

*Real Mathematical Analysis by Charles C. Pugh is the book I would recommend to you in particular. It will keep you busy for a good while and should get you through analysis courses without any difficulty.

*Analysis I & II by Tao are excellent books for self-study. Again, they will introduce the 'flavor' of doing math very well, but are quite advanced and sometimes do things differently from a general analysis sequence.

You mentioned Spivak's Calculus. This is a book I would not recommend to mathematicians, but rather to physics undergrads looking to get a solid foundation in calculus. The problems you will encounter are difficult but not very interesting from a mathematical point of view. On the other hand, physicists routinely pursue such problems.
There is no standard reference for Multivariable Calculus. I have yet to find a 'good' book on the topic which is quite sad since it's the taster for a huge chunk of math. However, the latter two analysis textbooks I have recommended above should cover it quite nicely, although slightly differently.
I don't know how much analysis is used in computer science. In my undergrad we've primarily used linear algebra and combinatorics. The subject has a very different flavor.
Someone also mentioned Baby Rudin. Don't read that book. You will encounter it in your undergrad with 100% certainty and there's no point getting caught up with it prematurely. It's a good book, but it's also a bit of a rite of passage - I really like it now after I already know everything in it; it's exceptional for reference, but absolutely terrible to study out of since he gives almost zero motivation.
Non-Analysis Textbooks

*

*A Walk through Combinatorics by Miklos Bona is a book I would easily expect a high school student to read, and contains a lot of arguments commonly used in Computer Science. It covers all the basic counting methods, elementary graph theory, and ends with a section that takes you on a tour of combinatorics.

*Linear Algebra Done Right by Axler is the standard Linear Algebra reference, and going through the first three chapters should be quite fun for you.

*Elementary Number Theory by Burton is a treat. If you are inclined toward number theory at all then it will be a wonderful read, and a LOT of topics in the book have unprecedented applications in computer science.

*Algebraic Geometry by Hartshorne is a book I would recommend even to middle school stude - er, no, that one's just a joke.

I don't think a high school student should be straying significantly from the references I've given above. At this point you should be more interested in having fun learning new things rather than any significant study - you've got 4 years for that. Napkin will cover any interest you have in advanced math. All the above textbooks are very friendly and easy to read, and most contain challenging (or at least thought-provoking) questions.
Have fun!
