monomials: map
valuations: unordered_map
+ typedefs to switch between different implementations by changing only one word :)