estimator.lwe_parameters.LWEParameters.amplify_m

estimator.lwe_parameters.LWEParameters.amplify_m#

LWEParameters.amplify_m(m)[source]#

Return a LWE instance parameters with m samples produced from the samples in this instance.

Parameters:

m – New number of samples.

EXAMPLE:

>>> from sage.all import binomial, log
>>> from estimator import *
>>> schemes.Kyber512
LWEParameters(n=512, q=3329, Xs=D(σ=1.22), Xe=D(σ=1.22), m=512, tag='Kyber 512')
>>> schemes.Kyber512.amplify_m(2**100)
LWEParameters(n=512, q=3329, Xs=D(σ=1.22), Xe=D(σ=4.58), m=..., tag='Kyber 512')

We can produce 2^100 samples by random ± linear combinations of 12 vectors:

>>> float(sqrt(12.)), float(log(binomial(1024, 12) , 2.0)) + 12
(3.46..., 103.07...)