helayers::HelibBgvCiphertext Class Reference

A concrete implementation of CTile API for HElib's BGV scheme. More...

#include <HelibBgvCiphertext.h>

Inheritance diagram for helayers::HelibBgvCiphertext:
helayers::HelibCiphertext helayers::AbstractCiphertext

Public Member Functions

 HelibBgvCiphertext (HelibBgvContext &h)
 
std::shared_ptr< HelibBgvCiphertextclone () const
 
void addPlainRaw (const AbstractPlaintext &plain) override
 
void subPlainRaw (const AbstractPlaintext &plain) override
 
void multiplyPlainRaw (const AbstractPlaintext &plain) override
 
void conjugate () override
 
void conjugateRaw () override
 
void rotate (int n) override
 
void negate () override
 
int slotCount () const override
 
- Public Member Functions inherited from helayers::HelibCiphertext
 HelibCiphertext (HelibContext &h)
 
std::streamoff save (std::ostream &stream) const override
 
std::streamoff load (std::istream &stream) override
 
void add (const AbstractCiphertext &other) override
 
void addRaw (const AbstractCiphertext &other) override
 
void sub (const AbstractCiphertext &other) override
 
void subRaw (const AbstractCiphertext &other) override
 
void multiply (const AbstractCiphertext &other) override
 
void multiplyRaw (const AbstractCiphertext &other) override
 
void addPlain (const AbstractPlaintext &plain) override
 
void subPlain (const AbstractPlaintext &plain) override
 
void multiplyPlain (const AbstractPlaintext &plain) override
 
void square () override
 
void squareRaw () override
 
void relinearize () override
 
void rescale () override
 
void rescaleRaw () override
 
void setScale (double scale) override
 
double getScale () const override
 
void reduceChainIndex () override
 
void setChainIndex (const AbstractCiphertext &other) override
 
void setChainIndex (int chainIndex) override
 
int getChainIndex () const override
 
bool isEmpty () const override
 
void debugPrint (const std::string &title="", int maxElements=-1, int verbose=0, std::ostream &out=std::cout) const override
 
- Public Member Functions inherited from helayers::AbstractCiphertext
 AbstractCiphertext (HeContext &he)
 
AbstractCiphertextoperator= (const AbstractCiphertext &src)=delete
 
std::shared_ptr< AbstractCiphertextclone () const
 
HeContextgetContext ()
 
const HeContextgetContext () const
 
virtual void addScalar (int scalar)
 
virtual void addScalar (double scalar)
 
virtual void multiplyScalar (int scalar)
 
virtual void multiplyScalar (double scalar)
 
virtual void innerSum (int n)
 
virtual void innerSum (int rot1, int rot2, bool reverse=false)
 
virtual void sumExpBySquaringLeftToRight (int n)
 
virtual void sumExpBySquaringRightToLeft (int n)
 
virtual void multiplyByChangingScale (double factor)
 

Friends

class HelibBgvEncoder
 
class HelibBgvNativeFunctionEvaluator
 

Additional Inherited Members

- Protected Member Functions inherited from helayers::AbstractCiphertext
 AbstractCiphertext (const AbstractCiphertext &src)=default
 
- Protected Attributes inherited from helayers::HelibCiphertext
helib::Ctxt ctxt
 

Detailed Description

A concrete implementation of CTile API for HElib's BGV scheme.


The documentation for this class was generated from the following files:
  • /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/helib/HelibBgvCiphertext.h
  • /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/helib/HelibBgvCiphertext.cpp