Computational introduction to number theory and algebra - Shoup Victor (New York Cambridge University Press, 2005)