Modern algebra a constructive introduction. - Connell, Ian