English Beginner A Computational Introduction to Number Theory and Algebra Victor Shoup 2005 View book