In [5]:
from sdm import Bitstring
import matplotlib.pyplot as plt

In [2]:
bits = 1000

In [67]:
distances = []
for _ in range(10000):
    v1 = Bitstring.init_random(bits)
    v2 = Bitstring.init_random(bits)
    
    a = Bitstring.init_random(bits)
    b = a.copy()
    b.flip_random_bits(800)
    
    chunck_a = a ^ v1
    chunck_b = b ^ v2
    
    dist = chunck_a.distance_to(chunck_b)
    distances.append(dist)

In [68]:
print(1.0*sum(distances)/len(distances))


500.079

In [69]:
plt.hist(distances, bins='fd');



In [ ]: