Structures and Algorithms - Jens Erik Fenstad (Springer, 2018)