An introduction to diophantine equations a problem-based approach / - Andreescu, Titu, (Birkhäuser,)