From 04815a43e1215fa31db7aaa8ca66786d058f53c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Chapoton?= Date: Sun, 10 Mar 2019 11:27:34 +0100 Subject: [PATCH] py3: partial fix for crypto/lwe --- src/sage/crypto/lwe.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/sage/crypto/lwe.py b/src/sage/crypto/lwe.py index c03574c5c0e..be3624d6edb 100644 --- a/src/sage/crypto/lwe.py +++ b/src/sage/crypto/lwe.py @@ -90,7 +90,7 @@ from sage.functions.log import log from sage.functions.other import sqrt, floor, ceil -from sage.misc.functional import cyclotomic_polynomial +from sage.misc.functional import cyclotomic_polynomial, round from sage.misc.randstate import set_random_seed from sage.misc.prandom import randint from sage.modules.free_module import FreeModule @@ -105,6 +105,7 @@ from sage.stats.distributions.discrete_gaussian_integer import DiscreteGaussianDistributionIntegerSampler from sage.stats.distributions.discrete_gaussian_polynomial import DiscreteGaussianDistributionPolynomialSampler + class UniformSampler(SageObject): """ Uniform sampling in a range of integers. @@ -312,7 +313,7 @@ def __init__(self, n, q, D, secret_dist='uniform', m=None): self.__s = vector(self.K, self.n, [self.D() for _ in range(n)]) else: try: - lb, ub = map(ZZ,secret_dist) + lb, ub = map(ZZ, secret_dist) self.__s = vector(self.K, self.n, [randint(lb,ub) for _ in range(n)]) except (IndexError, TypeError): raise TypeError("Parameter secret_dist=%s not understood."%(secret_dist)) @@ -767,7 +768,7 @@ def balance_sample(s, q=None): EXAMPLES:: sage: from sage.crypto.lwe import balance_sample, samples, Regev - sage: list(map(balance_sample, samples(10, 5, Regev))) + sage: [balance_sample(s) for s in samples(10, 5, Regev)] [((-9, -4, -4, 4, -4), 4), ((-8, 11, 12, -11, -11), -7), ... ((-11, 12, 0, -6, -3), 7), ((-7, 14, 8, 11, -8), -12)] @@ -776,7 +777,7 @@ def balance_sample(s, q=None): sage: from sage.crypto.lwe import balance_sample, DiscreteGaussianDistributionPolynomialSampler, RingLWE, samples sage: D = DiscreteGaussianDistributionPolynomialSampler(ZZ['x'], 8, 5) sage: rlwe = RingLWE(20, 257, D) - sage: list(map(balance_sample, samples(10, 8, rlwe))) + sage: [balance_sample(s) for s in samples(10, 8, rlwe)] [((-64, 107, -91, -24, 120, 54, 38, -35), (-84, 121, 28, -99, 91, 54, -60, 11)), ... ((-40, -117, 35, -69, -11, 10, 122, 48), (-80, -2, 119, -91, 27, 66, 121, -1))]