Versions in this module Expand all Collapse all v4 v4.1.0 Nov 22, 2022 v4.0.0 Oct 4, 2022 Changes in this version + const CoeffsToSlots + const Cos1 + const Cos2 + const Sin + const SlotsToCoeffs + func ApproximateCos(K, degree int, dev float64, scnum int) []complex128 + func BigintCos(x *big.Float) (cosx *big.Float) + func BigintSin(x *big.Float) (sinx *big.Float) + func NewFloat(x float64) (y *big.Float) + type EncodingMatrix struct + func NewHomomorphicEncodingMatrixFromLiteral(mParams EncodingMatrixLiteral, encoder ckks.Encoder) EncodingMatrix + type EncodingMatrixLiteral struct + BSGSRatio float64 + BitReversed bool + LevelStart int + LinearTransformType LinearTransformType + LogN int + LogSlots int + RepackImag2Real bool + Scaling float64 + ScalingFactor [][]float64 + func (mParams *EncodingMatrixLiteral) Depth(actual bool) (depth int) + func (mParams *EncodingMatrixLiteral) Levels() (levels []int) + func (mParams *EncodingMatrixLiteral) MarshalBinary() (data []byte, err error) + func (mParams *EncodingMatrixLiteral) Rotations() (rotations []int) + func (mParams *EncodingMatrixLiteral) UnmarshalBinary(data []byte) error + type EvalModLiteral struct + ArcSineDeg int + DoubleAngle int + K int + LevelStart int + MessageRatio float64 + Q uint64 + ScalingFactor float64 + SineDeg int + SineType SineType + func (evm *EvalModLiteral) Depth() (depth int) + func (evm *EvalModLiteral) MarshalBinary() (data []byte, err error) + func (evm *EvalModLiteral) QDiff() float64 + func (evm *EvalModLiteral) UnmarshalBinary(data []byte) (err error) + type EvalModPoly struct + func NewEvalModPolyFromLiteral(evm EvalModLiteral) EvalModPoly + func (evp *EvalModPoly) A() float64 + func (evp *EvalModPoly) B() float64 + func (evp *EvalModPoly) K() float64 + func (evp *EvalModPoly) LevelStart() int + func (evp *EvalModPoly) MessageRatio() float64 + func (evp *EvalModPoly) QDiff() float64 + func (evp *EvalModPoly) ScFac() float64 + func (evp *EvalModPoly) ScalingFactor() float64 + type Evaluator interface + Add func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + AddConst func(ctIn *ckks.Ciphertext, constant interface{}, ctOut *ckks.Ciphertext) + AddConstNew func(ctIn *ckks.Ciphertext, constant interface{}) (ctOut *ckks.Ciphertext) + AddNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + AddNoMod func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + AddNoModNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + BuffCt func() *ckks.Ciphertext + BuffQ func() [3]*ring.Poly + CoeffsToSlots func(ctIn *ckks.Ciphertext, ctsMatrices EncodingMatrix, ...) + CoeffsToSlotsNew func(ctIn *ckks.Ciphertext, ctsMatrices EncodingMatrix) (ctReal, ctImag *ckks.Ciphertext) + Conjugate func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) + ConjugateNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + DivByi func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) + DivByiNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + DropLevel func(ctIn *ckks.Ciphertext, levels int) + DropLevelNew func(ctIn *ckks.Ciphertext, levels int) (ctOut *ckks.Ciphertext) + EvalModNew func(ctIn *ckks.Ciphertext, evalModPoly EvalModPoly) (ctOut *ckks.Ciphertext) + EvaluatePoly func(input interface{}, pol *ckks.Polynomial, targetScale float64) (ctOut *ckks.Ciphertext, err error) + EvaluatePolyVector func(input interface{}, pols []*ckks.Polynomial, encoder ckks.Encoder, ...) (ctOut *ckks.Ciphertext, err error) + GetRLWEEvaluator func() *rlwe.Evaluator + InnerSum func(ctIn *ckks.Ciphertext, batch, n int, ctOut *ckks.Ciphertext) + InnerSumLog func(ctIn *ckks.Ciphertext, batch, n int, ctOut *ckks.Ciphertext) + InverseNew func(ctIn *ckks.Ciphertext, steps int) (ctOut *ckks.Ciphertext) + LinearTransform func(ctIn *ckks.Ciphertext, linearTransform interface{}, ctOut []*ckks.Ciphertext) + LinearTransformNew func(ctIn *ckks.Ciphertext, linearTransform interface{}) (ctOut []*ckks.Ciphertext) + Mul func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + MulByPow2 func(ctIn *ckks.Ciphertext, pow2 int, ctOut *ckks.Ciphertext) + MulByPow2New func(ctIn *ckks.Ciphertext, pow2 int) (ctOut *ckks.Ciphertext) + MulNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + MulRelin func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + MulRelinNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + MultByConst func(ctIn *ckks.Ciphertext, constant interface{}, ctOut *ckks.Ciphertext) + MultByConstAndAdd func(ctIn *ckks.Ciphertext, constant interface{}, ctOut *ckks.Ciphertext) + MultByConstNew func(ctIn *ckks.Ciphertext, constant interface{}) (ctOut *ckks.Ciphertext) + MultByGaussianInteger func(ctIn *ckks.Ciphertext, cReal, cImag interface{}, ctOut *ckks.Ciphertext) + MultByGaussianIntegerAndAdd func(ctIn *ckks.Ciphertext, cReal, cImag interface{}, ctOut *ckks.Ciphertext) + MultByi func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) + MultByiNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + MultiplyByDiagMatrix func(ctIn *ckks.Ciphertext, matrix ckks.LinearTransform, c2DecompQP []ringqp.Poly, ...) + MultiplyByDiagMatrixBSGS func(ctIn *ckks.Ciphertext, matrix ckks.LinearTransform, c2DecompQP []ringqp.Poly, ...) + Neg func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) + NegNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + Power func(ctIn *ckks.Ciphertext, degree int, ctOut *ckks.Ciphertext) + PowerNew func(ctIn *ckks.Ciphertext, degree int) (ctOut *ckks.Ciphertext) + PowerOf2 func(ctIn *ckks.Ciphertext, logPow2 int, ctOut *ckks.Ciphertext) + Reduce func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) error + ReduceNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + Relinearize func(ctIn *ckks.Ciphertext, ctOut *ckks.Ciphertext) + RelinearizeNew func(ctIn *ckks.Ciphertext) (ctOut *ckks.Ciphertext) + Replicate func(ctIn *ckks.Ciphertext, batch, n int, ctOut *ckks.Ciphertext) + ReplicateLog func(ctIn *ckks.Ciphertext, batch, n int, ctOut *ckks.Ciphertext) + Rescale func(ctIn *ckks.Ciphertext, minScale float64, ctOut *ckks.Ciphertext) (err error) + Rotate func(ctIn *ckks.Ciphertext, k int, ctOut *ckks.Ciphertext) + RotateHoisted func(ctIn *ckks.Ciphertext, rotations []int, ctOut map[int]*ckks.Ciphertext) + RotateHoistedNew func(ctIn *ckks.Ciphertext, rotations []int) (ctOut map[int]*ckks.Ciphertext) + RotateNew func(ctIn *ckks.Ciphertext, k int) (ctOut *ckks.Ciphertext) + ScaleUp func(ctIn *ckks.Ciphertext, scale float64, ctOut *ckks.Ciphertext) + ScaleUpNew func(ctIn *ckks.Ciphertext, scale float64) (ctOut *ckks.Ciphertext) + SetScale func(ctIn *ckks.Ciphertext, scale float64) + ShallowCopy func() Evaluator + SlotsToCoeffs func(ctReal, ctImag *ckks.Ciphertext, stcMatrices EncodingMatrix, ...) + SlotsToCoeffsNew func(ctReal, ctImag *ckks.Ciphertext, stcMatrices EncodingMatrix) (ctOut *ckks.Ciphertext) + Sub func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + SubNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + SubNoMod func(ctIn *ckks.Ciphertext, op1 ckks.Operand, ctOut *ckks.Ciphertext) + SubNoModNew func(ctIn *ckks.Ciphertext, op1 ckks.Operand) (ctOut *ckks.Ciphertext) + SwitchKeys func(ctIn *ckks.Ciphertext, switchingKey *rlwe.SwitchingKey, ctOut *ckks.Ciphertext) + SwitchKeysNew func(ctIn *ckks.Ciphertext, switchingKey *rlwe.SwitchingKey) (ctOut *ckks.Ciphertext) + Trace func(ctIn *ckks.Ciphertext, logSlots int, ctOut *ckks.Ciphertext) + TraceNew func(ctIn *ckks.Ciphertext, logSlots int) *ckks.Ciphertext + WithKey func(rlwe.EvaluationKey) Evaluator + func NewEvaluator(params ckks.Parameters, evaluationKey rlwe.EvaluationKey) Evaluator + type LinearTransformType int + type SineType uint64 Other modules containing this package github.com/tuneinsight/lattigo/v3