Contemporary abstract algebra - Gallian, Joseph A (1999)