What to self-study, after studying AP Calculus BC and finishing Rudin's Principles of Mathematical Analysis? I am a senior in high school who has taught myself Calculus BC and I got a 5.  However, I have taken all the math I can at my school.  I also taught myself multi-variable calculus and much of differential equations, and some real analysis.
I plan on finishing my study of differential equations before school starts in early September.  I am currently working through Rudin's Principles of Mathematical Analysis and plan to finish that by the end of the first nine weeks of school.  I have not had linear algebra, but I am a fast learner.  What course progression would you recommend for the next 3 nine weeks, if I were to do a subject per nine weeks (I plan on spending a lot of time on this independent study as I am given in school time)?  What textbooks would you recommend?
P.S. I am very interested in analysis and learning more about topology, but more generally pure mathematics. 
 A: I think hands down the most important thing to learn before studying higher materials is Linear Algebra and Abstract Algebra.
At this stage, it is hard for you to say whether you like it or not as it is very different and you haven't seen it before.  It takes a while to get use to, and I think that shooting for a solid understanding of such an enormous area in 9 weeks is overly ambitious. Let me emphasize, Algebra is incredibly important. 
An excellent book for Linear Algebra is Halmos' "Finite Dimensional Vector Spaces."
(If you don't have any problems with understanding Rudin's 3E, and you can do most of the exercises, then you are at the right level of maturity to just start with this book.  It is really a great book.)
Hope that helps,
A: I have to warn you that your estimate on the amount of time to finish Rudin (if done correctly) may be off. 
Here's why. Up to now, you've taken the standard advanced course in high school mathematics and done quite well. This is a feat to be proud of, and unfortunately, you've done so well that you are a year ahead of the game. I say unfortunately, because the next natural step would be to take a proof based math class and learn the fundamental skill of writing clear, coherent mathematical proofs. It doesn't matter the subject through which this is done, but this is the step that should happen next.  
The problem is this next step is difficult (if not detrimental) to take alone. You need someone to read your proofs, to make sure your arguments make sense and are understandable to another person, and to check that your sentences end in (goddamn) periods.
You can't do the exercises in Rudin (and for that matter learn basic analysis) 
without having the skills of proof writing. And for that reason, I advise you to try to find someone to help you acquire this skill. Here are three ideas.
(1) Where are you from? There may be math classes at a local university you can take and get credit for. This will have the added benefit that you will meet other people who like math. Talking about Math is a lot of fun. And while, many mathematicians learn a great deal through self study, it's typically in the context of a mathematically inclined environment. It might be surprising to learn how much of the stuff you think you know is wrong when there is someone there you try to explain it to. 
(2) If that fails, try to find a correspondence course. This way you at least get feedback and keep the postal service afloat. 
(3) Find a teacher at your school. Many (maybe all) were probably math majors at one point, and could read over your proofs and give feedback. 
However, if none of these options are available, I would advise you to stick to the more computationally minded brand of mathematics that you have seen in calculus and differential equations. There are great treatments of linear algebra in this vein. Try Gilbert Strang's 'linear algebra and applications' which has an associated lecture series on MIT open course ware. Another option is to try to learn some programming. Java's great. And tackling a programming problem will stimulate you in a way you might have once thought was reserved only for mathematics. 
If all else fails. Fly a kite, learn to surf, and prefect a secret BBQ sauce recipe. It's your last year of high school! Live It Up.  
A: If you enjoyed calculus and are trying to learn more in depth to how it works I would suggest reading this book: Elementary Analysis. 
A: You might enjoy the book Concrete Mathematics.  It is full of very cool stuff useful to CS and which is just plain fun on its own.   
A: I would suggest reading a set of Open Problems {the idea is not to solve them; not yet!!} but to get to start thinking about these problems in your own way. They are very motivational. The idea is to get started before you reach graduate school. Many open problems in Mathematics are easy to understand and can motivate you to read the literature. Is that not putting the carriage before the horse??? Not quiet. You need to get used to this problem solving  - develop your own method of solving these problems. There is a huge list on Wikipedia -- Mathematics Section. Google "Open Problems in Mathematics"
Professor Paul Garrity has a nice site on "Algebraic Geometry". It starts off with high school algebra and move on to Graduate Level.  http://math.lssu.edu/bsnyder/PCMI/MathFest/compilemeforamsbook.pdf ... nice for self study.
A: In light of how my own self-studying has gone over the years (I would say that a very substantial fraction of what I know I have learned outside of my coursework), I have two pieces of general advice, and some particular book recommendations.
First, don't ever strap yourself down to just one book. If you ever get stuck and feel that you don't understand something, or more commonly: if you can follow the formal proofs of the theorems but don't really feel like you get it, chances are the exposition does not match the background you currently posses (or even more often: the exposition itself is poor). In such situations, there are two possible resolutions: either the relevant bit of explanation can be found later in the book (which means you'll have to wade through material that you don't feel comfortable about) or another book may have a better (or more suited to your particular background) exposition. You should always explore both possibilities!
Second, don't ever think that your learning of particular material is always done. It is important to periodically revisit your understanding of the foundations because in a way, as you learn more and more, your understanding of mathematics itself will grow, and what used to make sense to you in a certain way before may now make sense to you in a different, usually more compact and always more illuminating, way. This echoes my first advice to read different books, even on subjects you already think you know.
Regarding books, I recommend you start reading all of these, as concurrently as you can:


*

*Finite-Dimensional Vector Spaces by Halmos

*Linear Algebra by Hoffman & Kunze

*Linear Algebra Done Right by Axler

*Abstract Algebra (A Concrete Introduction) by Redfield

*Algebra: Chaper 0 by Paulo Aluffi (this is the full title of the book, it should be read after you have gotten a feel for Linear Algebra and Abstract Algebra)

