Function lbcrypto::GetHermiteTrigCoefficients

Function Documentation

std::vector<std::complex<double>> lbcrypto::GetHermiteTrigCoefficients(std::function<int64_t(int64_t)> func, uint32_t p, size_t order, double scale)

Method for calculating the intermediate Hermite trigonometric interpolation (of order 1) coefficients for an input function. These coefficents can be input into EvalPoly over ciphertexts encrypting exp(2*Pi*x) to evaluate the function. The coefficients are divided by 2 to account for the fact that the real part of the output of EvalPoly needs to be taken in order to get the Hermite Trigonometric Interpolation result.

Parameters
  • func – is the function to be approximated

  • p – number of interpolation points

Returns

the coefficients of the intermediate Hermite trigonometric interpolation.