Skip to content

Commit

Permalink
Merge pull request #420 from tuneinsight/fix_bgv_eval_shallowcopy
Browse files Browse the repository at this point in the history
Fix bgv eval shallowcopy
  • Loading branch information
Pro7ech committed Nov 28, 2023
2 parents d2c55ba + 9694402 commit 1f00f3c
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion schemes/bgv/evaluator.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,15 @@ type evaluatorBase struct {
basisExtenderQ1toQ2 *ring.BasisExtender
}

func (eval evaluatorBase) ShallowCopy() *evaluatorBase {
return &evaluatorBase{
tMontgomery: eval.tMontgomery,
levelQMul: eval.levelQMul,
pHalf: eval.pHalf,
basisExtenderQ1toQ2: eval.basisExtenderQ1toQ2.ShallowCopy(),
}
}

func newEvaluatorPrecomp(parameters Parameters) *evaluatorBase {
ringQ := parameters.RingQ()
ringQMul := parameters.RingQMul()
Expand Down Expand Up @@ -122,7 +131,7 @@ func (eval Evaluator) GetParameters() *Parameters {
// shared with the receiver.
func (eval Evaluator) ShallowCopy() *Evaluator {
return &Evaluator{
evaluatorBase: eval.evaluatorBase,
evaluatorBase: eval.evaluatorBase.ShallowCopy(),
Evaluator: eval.Evaluator.ShallowCopy(),
evaluatorBuffers: newEvaluatorBuffer(*eval.GetParameters()),
Encoder: eval.Encoder.ShallowCopy(),
Expand Down

0 comments on commit 1f00f3c

Please sign in to comment.