ComputeFHE 1.0
General-Purpose Privacy-Preserving Computation Library for TFHE
Loading...
Searching...
No Matches
SimOptimized.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2026 Faris Serdar Taşel <fst@cankaya.edu.tr>
3 * SPDX-FileCopyrightText: 2026 Efe Çiftci <efeciftci@cankaya.edu.tr>
4 *
5 * SPDX-License-Identifier: MIT
6 */
7
13#pragma once
16
17namespace computefhe {
18
25 class SimOptimized : public SimStandard, public ALUOptimized {
26 public:
28
29 virtual BinaryDigit FHE_MAJ(const BinaryDigit &a, const BinaryDigit &b,
30 const BinaryDigit &c);
31 virtual BinaryDigit FHE_XOR3(const BinaryDigit &a, const BinaryDigit &b,
32 const BinaryDigit &c);
33 virtual BinaryDigit FHE_MulAdd(const BinaryDigit &m,
34 const BinaryDigit &a,
35 const BinaryDigit &b,
36 BinaryDigit *carry_out = nullptr);
37 virtual BinaryDigit FHE_MUX(const BinaryDigit &s, const BinaryDigit &a,
38 const BinaryDigit &b);
39 virtual BinaryDigit FHE_DigitSum(const BinaryDigit &e1,
40 const BinaryDigit &e0,
41 const BinaryDigit &s0);
42 };
43} // namespace computefhe
Defines the optimized ALU implementation using specialized multi-input FHE gates.
Simulator implementation for standard ALU operations.
Optimized ALU implementation using specialized multi-input FHE gates.
Definition ALUOptimized.h:28
The core manager class for the ComputeFHE library.
Definition ComputeFHE.h:68
Proxy object for accessing and modifying elements in an Evector using encrypted indices.
Definition Evector.h:45
Simulator implementation for optimized ALU operations.
Definition SimOptimized.h:25
Simulator implementation for standard ALU operations.
Definition SimStandard.h:25
A proxy-object representing a single bit that can behave as either a ciphertext or a plaintext.
Definition FixedPoint.h:35