Class LeveledSHEBGVRNS
Defined in File bgvrns-leveledshe.h
Page Contents
Inheritance Relationships
Base Type
public lbcrypto::LeveledSHERNS(Class LeveledSHERNS)
Class Documentation
-
class lbcrypto::LeveledSHEBGVRNS : public lbcrypto::LeveledSHERNS
Inheritence diagram for lbcrypto::LeveledSHEBGVRNS:
![digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"3" [label="lbcrypto::LeveledSHEBase< DCRTPoly >" tooltip="lbcrypto::LeveledSHEBase< DCRTPoly >"]
"1" [label="lbcrypto::LeveledSHEBGVRNS" tooltip="lbcrypto::LeveledSHEBGVRNS" fillcolor="#BFBFBF"]
"2" [label="lbcrypto::LeveledSHERNS" tooltip="lbcrypto::LeveledSHERNS"]
"1" -> "2" [dir=forward tooltip="public-inheritance"]
"2" -> "3" [dir=forward tooltip="public-inheritance"]
}](../_images/graphviz-04dc8b51bcf41073253046681519e4de449c6a07.png)
Collaboration diagram for lbcrypto::LeveledSHEBGVRNS:
![digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"3" [label="lbcrypto::LeveledSHEBase< DCRTPoly >" tooltip="lbcrypto::LeveledSHEBase< DCRTPoly >"]
"1" [label="lbcrypto::LeveledSHEBGVRNS" tooltip="lbcrypto::LeveledSHEBGVRNS" fillcolor="#BFBFBF"]
"2" [label="lbcrypto::LeveledSHERNS" tooltip="lbcrypto::LeveledSHERNS"]
"1" -> "2" [dir=forward tooltip="public-inheritance"]
"2" -> "3" [dir=forward tooltip="public-inheritance"]
}](../_images/graphviz-04dc8b51bcf41073253046681519e4de449c6a07.png)
Public Functions
-
virtual ~LeveledSHEBGVRNS() = default
-
virtual uint32_t FindAutomorphismIndex(uint32_t index, uint32_t m) const override
-
virtual void ModReduceInternalInPlace(Ciphertext<DCRTPoly> &ciphertext, size_t levels) const override
Method for scaling in-place.
cipherTextwill have modulus reduction performed in-place.- Parameters
cipherText – is the ciphertext to perform modreduce on.
levels – the number of towers to drop.
-
virtual void LevelReduceInternalInPlace(Ciphertext<DCRTPoly> &ciphertext, size_t levels) const override
Method for in-place Level Reduction in the CKKS scheme. It just drops “levels” number of the towers of the ciphertext without changing the underlying plaintext.
- Parameters
cipherText1 – is the ciphertext to be level reduced in-place
levels – the number of towers to drop.
-
void EvalMultCoreInPlace(Ciphertext<DCRTPoly> &ciphertext, NativeInteger constant) const
-
void EvalMultInPlace(Ciphertext<DCRTPoly> &ciphertext, ConstPlaintext &plaintext) const override
-
virtual void AdjustLevelsAndDepthInPlace(Ciphertext<DCRTPoly> &ciphertext1, Ciphertext<DCRTPoly> &ciphertext2) const override
-
virtual void AdjustLevelsAndDepthToOneInPlace(Ciphertext<DCRTPoly> &ciphertext1, Ciphertext<DCRTPoly> &ciphertext2) const override
-
inline std::string SerializedObjectName() const
-
virtual ~LeveledSHEBGVRNS() = default