A Computational Introduction to Number Theory and Algebra - http://shoup.net/ntb/