This replaces the unordered sets used for function and predicate declarations with ordered sets. This is useful when these declarations are supposed to be processed in a stable and meaningful order.