Jak rozumiem, w informatyce typy danych nie są oparte na teorii zbiorów z powodu takich rzeczy jak paradoks Russella, ale tak jak w prawdziwych językach programowania nie możemy wyrazić tak złożonych typów danych jak „zestaw, który nie zawiera siebie”, czy możemy powiedzmy, że w praktyce typ jest nieskończonym zbiorem jego członków, w których członkostwo w instancji jest definiowane przez liczbę cech właściwych dla tego typu / zestawu (istnienie pewnych właściwości, metod)? Jeśli nie, jaki byłby kontrprzykład?