fhelium.compile.passes.lowering._arithmetic
Lower CKKS arithmetic operations into logical RNS compositions.
ARITHMETIC_LOWERINGS
constant View source
python
ARITHMETIC_LOWERINGS = (CkksLoweringDefinition('rns-standard-add', ckks.AddOp, _lower_add, is_default=True), CkksLoweringDefinition('rns-standard-batch-sum', ckks.SumBatchOp, _lower_batch_sum, is_default=True), CkksLoweringDefinition('rns-standard-subtract', ckks.SubtractOp, _lower_subtract, is_default=True), CkksLoweringDefinition('rns-standard-negate', ckks.NegateOp, _lower_negate, is_default=True), CkksLoweringDefinition('rns-plaintext-add', ckks.AddPlaintextOp, _lower_plaintext_arithmetic, is_default=True), CkksLoweringDefinition('rns-plaintext-multiply', ckks.MultiplyPlaintextOp, _lower_plaintext_arithmetic, is_default=True), CkksLoweringDefinition('rns-ct2-convolution', ckks.MultiplyOp, _lower_multiply, is_default=True))1