Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check for existing conjugation key #138

Closed
crockeea opened this issue Jul 13, 2021 · 1 comment
Closed

Check for existing conjugation key #138

crockeea opened this issue Jul 13, 2021 · 1 comment

Comments

@crockeea
Copy link

With Lattigo v2.1.1, GenRotationKey appears to check if a RotationLeft or RotationRight key exists before generating a new one. This means that calling GenRotationkey(RotationLeft, sk, k, rotKey) twice (with the same k) will only generate one key, which seems like the correct behavior.

However, there is no such check for the Conjugate key: it is generated on every call GenRotationkey(Conjugate, ...), regardless of whether a conjugation key already exists or not. There should probably be a check like there is with RotationLeft/RotationRight so that a conjugation key is only generated once for a particular set of RotationKeys.

@ChristianMct
Copy link
Contributor

Hi @crockeea,

You are absolutely correct. In fact, the evaluation-key generation interface in v2.1.1 has several other issues and we have completely revamped it (as well as the evaluator interface for Relinearization and Rotation/Conjugate) in #100. The idea behind this revamp is that the KeyGenerator interface should be independent of key-management issues such as indexing and storing keys, managing the set of rotation keys etc.

A new version tag including these changes (along with many other improvements) will be released this week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants