def frequency_test(generator, n_bits, sig_level=None, misc=None, n1=None):
if n1 is None:
n0, n1 = _calculate_n0_n1(generator, n_bits)
else:
n0 = n_bits - n1
x1 = ((n0 - n1) ** 2) / n_bits
p_value = erfc(sqrt(x1 / 2))
if type(misc) is dict:
misc.update(n0=n0, n1=n1, p_value=p_value)
if sig_level is None:
return x1
else:
limit = chi2.ppf(1 - sig_level, 1)
if type(misc) is dict:
misc.update(x=x1, limit=limit)
return x1 <= limit
评论列表
文章目录