Denimo, da se omejimo na množice, ki vsebujejo kvečjemu cela števila med 0 in vključno Z − 1, pri čemer je Z neko ne preveliko celo število. Takšno množico lahko predstavimo s tabelo z Z elementi logičnega tipa. Če število i pripada množici, ima element tabele na indeksu i vrednost True, sicer pa False. Na primer če vzamemo Z = 10, potem množico {0, 2, 3, 7} predstavimo s to tabelo:
[True, False, True, True, False, False, False, True, False, False]
Kako bi z drugimi besedami opisal množico, ki jo predstavlja spodnja tabela z 2k elementi?
[True, False, True, False, True, False, ..., True, False]
Tovrstna predstavitev množice je časovno izjemno učinkovita. Prisotnost števila x ∈ {0, 1, ... , Z − 1} preverimo tako, da preverimo vrednost elementa v tabeli na indeksu x. Število x v množico dodamo tako, da element tabele na indeksu x postavimo na True, pri odstranjevanju pa pripadajoči element tabele postavimo na False. Časovna zahtevnost vseh treh operacij znaša O(1), saj je čas, ki ga potrebujejo operacije, povsem neodvisen od števila elementov v množici, pa tudi od velikosti tabele. Oglejmo si modul mnozicaTabelaLogicnih.py (glej kodo).
Kaj se zgodi, če s funkcijo Dodaj v množico dodamo celo število izven intervala med 0 in Z − 1 ali pa vrednost nekega drugega tipa?