Prefer to represent equality classes with construct types instead of type variables