helayers::AbstractCiphertext Class Referenceabstract
Internal abstract implementation of a ciphertext, do not use directly. More...
#include <AbstractCiphertext.h>
Inheritance diagram for helayers::AbstractCiphertext:
Public Member Functions | |
| AbstractCiphertext (HeContext &he) | |
| AbstractCiphertext & | operator= (const AbstractCiphertext &src)=delete |
| std::shared_ptr< AbstractCiphertext > | clone () const |
| HeContext & | getContext () |
| const HeContext & | getContext () const |
| virtual std::streamoff | save (std::ostream &stream) const =0 |
| virtual std::streamoff | load (std::istream &stream)=0 |
| virtual void | add (const AbstractCiphertext &other)=0 |
| virtual void | addRaw (const AbstractCiphertext &other)=0 |
| virtual void | sub (const AbstractCiphertext &other)=0 |
| virtual void | subRaw (const AbstractCiphertext &other)=0 |
| virtual void | multiply (const AbstractCiphertext &other)=0 |
| virtual void | multiplyRaw (const AbstractCiphertext &other)=0 |
| virtual void | addPlain (const AbstractPlaintext &plain)=0 |
| virtual void | addPlainRaw (const AbstractPlaintext &plain)=0 |
| virtual void | subPlain (const AbstractPlaintext &plain)=0 |
| virtual void | subPlainRaw (const AbstractPlaintext &plain)=0 |
| virtual void | multiplyPlain (const AbstractPlaintext &plain)=0 |
| virtual void | multiplyPlainRaw (const AbstractPlaintext &plain)=0 |
| virtual void | square ()=0 |
| virtual void | squareRaw ()=0 |
| virtual void | addScalar (int scalar) |
| virtual void | addScalar (double scalar) |
| virtual void | multiplyScalar (int scalar) |
| virtual void | multiplyScalar (double scalar) |
| virtual void | relinearize ()=0 |
| virtual void | rescale ()=0 |
| virtual void | rescaleRaw ()=0 |
| virtual void | setScale (double scale)=0 |
| virtual double | getScale () const =0 |
| virtual void | conjugate ()=0 |
| virtual void | conjugateRaw ()=0 |
| virtual void | negate ()=0 |
| virtual void | rotate (int n)=0 |
| virtual void | innerSum (int n) |
| virtual void | innerSum (int rot1, int rot2, bool reverse=false) |
| virtual void | reduceChainIndex ()=0 |
| virtual void | setChainIndex (const AbstractCiphertext &other)=0 |
| virtual void | setChainIndex (int chainIndex)=0 |
| virtual int | getChainIndex () const =0 |
| virtual int | slotCount () const =0 |
| virtual void | debugPrint (const std::string &title="", int maxElements=-1, int verbose=0, std::ostream &out=std::cout) const |
| virtual void | sumExpBySquaringLeftToRight (int n) |
| virtual void | sumExpBySquaringRightToLeft (int n) |
| virtual void | multiplyByChangingScale (double factor) |
| virtual bool | isEmpty () const =0 |
Protected Member Functions | |
| AbstractCiphertext (const AbstractCiphertext &src)=default | |
Detailed Description
Internal abstract implementation of a ciphertext, do not use directly.
Used as parent class for concrete classes implementing ciphertexts in various schemes. Do not use directly, use a CTile class instead.
The documentation for this class was generated from the following files:
- /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/impl/AbstractCiphertext.h
- /opt/IBM/FHE-distro/ML-HElib/src/helayers/hebase/impl/AbstractCiphertext.cpp
1.8.17