Versions in this module Expand all Collapse all v0 v0.2.0 May 16, 2023 v0.1.10 Aug 3, 2023 v0.1.9 Aug 2, 2023 v0.1.8 Aug 2, 2023 v0.1.7 Jul 30, 2023 v0.1.6 Mar 14, 2023 v0.1.5 Mar 8, 2023 v0.1.3 Dec 16, 2022 v0.1.2 Dec 15, 2022 v0.1.1 Dec 15, 2022 v0.1.0 Dec 14, 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() rlwe.Scale + type Evaluator interface + Add func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand, ctOut *rlwe.Ciphertext) + AddConst func(ctIn *rlwe.Ciphertext, constant interface{}, ctOut *rlwe.Ciphertext) + AddConstNew func(ctIn *rlwe.Ciphertext, constant interface{}) (ctOut *rlwe.Ciphertext) + AddNew func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand) (ctOut *rlwe.Ciphertext) + BuffCt func() *rlwe.Ciphertext + BuffQ func() [3]*ring.Poly + CoeffsToSlots func(ctIn *rlwe.Ciphertext, ctsMatrices EncodingMatrix, ...) + CoeffsToSlotsNew func(ctIn *rlwe.Ciphertext, ctsMatrices EncodingMatrix) (ctReal, ctImag *rlwe.Ciphertext) + Conjugate func(ctIn *rlwe.Ciphertext, ctOut *rlwe.Ciphertext) + ConjugateNew func(ctIn *rlwe.Ciphertext) (ctOut *rlwe.Ciphertext) + DivByi func(ctIn *rlwe.Ciphertext, ctOut *rlwe.Ciphertext) + DivByiNew func(ctIn *rlwe.Ciphertext) (ctOut *rlwe.Ciphertext) + DropLevel func(ctIn *rlwe.Ciphertext, levels int) + DropLevelNew func(ctIn *rlwe.Ciphertext, levels int) (ctOut *rlwe.Ciphertext) + EvalModNew func(ctIn *rlwe.Ciphertext, evalModPoly EvalModPoly) (ctOut *rlwe.Ciphertext) + EvaluatePoly func(input interface{}, pol *ckks.Polynomial, targetscale rlwe.Scale) (ctOut *rlwe.Ciphertext, err error) + EvaluatePolyVector func(input interface{}, pols []*ckks.Polynomial, encoder ckks.Encoder, ...) (ctOut *rlwe.Ciphertext, err error) + GetRLWEEvaluator func() *rlwe.Evaluator + InnerSum func(ctIn *rlwe.Ciphertext, batch, n int, ctOut *rlwe.Ciphertext) + InverseNew func(ctIn *rlwe.Ciphertext, steps int) (ctOut *rlwe.Ciphertext, err error) + LinearTransform func(ctIn *rlwe.Ciphertext, linearTransform interface{}, ctOut []*rlwe.Ciphertext) + LinearTransformNew func(ctIn *rlwe.Ciphertext, linearTransform interface{}) (ctOut []*rlwe.Ciphertext) + Mul func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand, ctOut *rlwe.Ciphertext) + MulNew func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand) (ctOut *rlwe.Ciphertext) + MulRelin func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand, ctOut *rlwe.Ciphertext) + MulRelinNew func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand) (ctOut *rlwe.Ciphertext) + MultByConst func(ctIn *rlwe.Ciphertext, constant interface{}, ctOut *rlwe.Ciphertext) + MultByConstAndAdd func(ctIn *rlwe.Ciphertext, constant interface{}, ctOut *rlwe.Ciphertext) + MultByConstNew func(ctIn *rlwe.Ciphertext, constant interface{}) (ctOut *rlwe.Ciphertext) + MultByGaussianInteger func(ctIn *rlwe.Ciphertext, cReal, cImag interface{}, ctOut *rlwe.Ciphertext) + MultByGaussianIntegerAndAdd func(ctIn *rlwe.Ciphertext, cReal, cImag interface{}, ctOut *rlwe.Ciphertext) + MultByi func(ctIn *rlwe.Ciphertext, ctOut *rlwe.Ciphertext) + MultByiNew func(ctIn *rlwe.Ciphertext) (ctOut *rlwe.Ciphertext) + MultiplyByDiagMatrix func(ctIn *rlwe.Ciphertext, matrix ckks.LinearTransform, c2DecompQP []ringqp.Poly, ...) + MultiplyByDiagMatrixBSGS func(ctIn *rlwe.Ciphertext, matrix ckks.LinearTransform, c2DecompQP []ringqp.Poly, ...) + Neg func(ctIn *rlwe.Ciphertext, ctOut *rlwe.Ciphertext) + NegNew func(ctIn *rlwe.Ciphertext) (ctOut *rlwe.Ciphertext) + Relinearize func(ctIn *rlwe.Ciphertext, ctOut *rlwe.Ciphertext) + RelinearizeNew func(ctIn *rlwe.Ciphertext) (ctOut *rlwe.Ciphertext) + Replicate func(ctIn *rlwe.Ciphertext, batch, n int, ctOut *rlwe.Ciphertext) + Rescale func(ctIn *rlwe.Ciphertext, minscale rlwe.Scale, ctOut *rlwe.Ciphertext) (err error) + Rotate func(ctIn *rlwe.Ciphertext, k int, ctOut *rlwe.Ciphertext) + RotateHoisted func(ctIn *rlwe.Ciphertext, rotations []int, ctOut map[int]*rlwe.Ciphertext) + RotateHoistedNew func(ctIn *rlwe.Ciphertext, rotations []int) (ctOut map[int]*rlwe.Ciphertext) + RotateNew func(ctIn *rlwe.Ciphertext, k int) (ctOut *rlwe.Ciphertext) + ScaleUp func(ctIn *rlwe.Ciphertext, scale rlwe.Scale, ctOut *rlwe.Ciphertext) + ScaleUpNew func(ctIn *rlwe.Ciphertext, scale rlwe.Scale) (ctOut *rlwe.Ciphertext) + SetScale func(ctIn *rlwe.Ciphertext, scale rlwe.Scale) + ShallowCopy func() Evaluator + SlotsToCoeffs func(ctReal, ctImag *rlwe.Ciphertext, stcMatrices EncodingMatrix, ...) + SlotsToCoeffsNew func(ctReal, ctImag *rlwe.Ciphertext, stcMatrices EncodingMatrix) (ctOut *rlwe.Ciphertext) + Sub func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand, ctOut *rlwe.Ciphertext) + SubNew func(ctIn *rlwe.Ciphertext, op1 rlwe.Operand) (ctOut *rlwe.Ciphertext) + SwitchKeys func(ctIn *rlwe.Ciphertext, switchingKey *rlwe.SwitchingKey, ctOut *rlwe.Ciphertext) + SwitchKeysNew func(ctIn *rlwe.Ciphertext, switchingKey *rlwe.SwitchingKey) (ctOut *rlwe.Ciphertext) + Trace func(ctIn *rlwe.Ciphertext, logSlots int, ctOut *rlwe.Ciphertext) + TraceNew func(ctIn *rlwe.Ciphertext, logSlots int) *rlwe.Ciphertext + WithKey func(rlwe.EvaluationKey) Evaluator + func NewEvaluator(params ckks.Parameters, evaluationKey rlwe.EvaluationKey) Evaluator + type LinearTransformType int + type SineType uint64