add support for multiple instanciation of a generic theory like set theory. since generic functions are not supported, function names are decorated with the name of the type parameter