Class DiscreteGaussianGeneratorGeneric

Page Contents

Class Documentation

class lbcrypto::DiscreteGaussianGeneratorGeneric

The class for Generic Discrete Gaussion Distribution generator.

Public Functions

DiscreteGaussianGeneratorGeneric(BaseSampler **samplers, const double std, const int b, double N)

Basic constructor which does the precomputations.

Parameters
  • samplers – Array containing the base samplers

  • std – Standard deviation of the base samplers

  • base – Log of number of centers that are used for calculating base samplers (Recall that base samplers are centered from 0 to (2^b-1)/2^b)

  • N – smoothing parameter

int64_t GenerateInteger(double mean, double std)

@ brief Returns a generated integer. Uses generic algorithm in UCSD paper, based on Sample Z @ param mean Mean of the distribution @ param variance Variance of the desired distribution @ return A random value within the Discrete Gaussian Distribution

inline int64_t GenerateInteger()
~DiscreteGaussianGeneratorGeneric()

Destructor.