Applied abstract algebra - Lidi, Rudolf (Springer, 2011)