Skip to content

Conversation

@pierreeliseeflory
Copy link
Contributor

@pierreeliseeflory pierreeliseeflory commented Apr 27, 2022

Description

Implement polynomial evaluation for BFVVector.
Closes #250

How has this been tested?

Tests have been implemented for the Python and C++ interfaces according to the previous work done for BFVTensor and CKKSVector.

Checklist

@philomath213 philomath213 added the Type: New Feature ➕ Introduction of a completely new addition to the codebase label Apr 27, 2022
@pierreeliseeflory
Copy link
Contributor Author

pierreeliseeflory commented Apr 28, 2022

Initially, there was some overflow errors in the reference computation of numpy.polyval in test_bfv_polyval.py : RuntimeWarning: overflow encountered in long_scalars.

This was due to the numpy implementation of polynomial.polynomial.polyval which automatically cast the arrays to numpy floats in the CI see this comment.

Fixing it requires to use arrays of type objects see modif here that are not prone to be cast to something else.

@bcebere
Copy link
Member

bcebere commented Apr 28, 2022

Thank you for your contribution! Great work!

@bcebere bcebere merged commit 14698ba into OpenMined:main Apr 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Type: New Feature ➕ Introduction of a completely new addition to the codebase

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BFVVector: implement polyval_inplace

3 participants