// True iff there exists a value that can have this type public boolean isInhabitable() { if (isBottom()) { return false; } else if (objs == null) { return true; } for (ObjectType obj : objs) { if (!obj.isInhabitable()) { return false; } } return true; }