Crate sunscreen_fhe_program
source · [−]Expand description
This crate contains the types for manipulating the intermediate representation for Sunscreen’s compiler backend.
Structs
The intermediate representation for an FHE program used in the compiler back-end.
A wrapper for ascertaining the structure of the underlying FheProgram
.
This type is used in FheProgram::forward_traverse
and
FheProgram::reverse_traverse
callbacks.
Contains information about a node in the FHE program graph.
A list of tranformations to be applied to the FheProgram
graph.
Enums
Contains information about an edge between nodes in the FHE program graph.
Represents an error that can occur in this crate.
An error in an FheProgram
.
A transform for an FheProgram
. Callbacks in
FheProgram::forward_traverse
and
FheProgram::reverse_traverse
should emit these to update the
graph.
Represents a literal value in an expression.
An error on a node in an FheProgram
.
An operation in the execution graph.
The type of output from an Fhe Program’s graph node.
Sunscreen supports the BFV scheme.
Represents a standard security level according to the HomomorphicEncryption.org security standard. The value SecLevelType.None signals that no standard security level should be imposed. The value SecLevelType.TC128 provides a very high level of security and is the default security level enforced by Microsoft SEAL when constructing a SEALContext object. Normal users should not have to specify the security level explicitly anywhere.
Transforms can refer to nodes that already exist in the graph or nodes that don’t yet exist in the graph, but will be inserted in a previous transform.
Type Definitions
The index type of a node that exists in a transform list, but does not yet exist in the intermediate representation graph.