5.4 KiB
module concrete.fhe.compilation.decorators
Declaration of circuit and compiler decorators.
function circuit
circuit(
parameters: Mapping[str, Union[str, EncryptionStatus]],
configuration: Optional[Configuration] = None,
artifacts: Optional[DebugArtifacts] = None,
**kwargs
)
Provide a direct interface for compilation of single circuit programs.
Args: parameters (Mapping[str, Union[str, EncryptionStatus]]): encryption statuses of the parameters of the function to compile
configuration(Optional[Configuration], default = None): configuration to use
artifacts (Optional[DebugArtifacts], default = None): artifacts to store information about the process
kwargs (Dict[str, Any]): configuration options to overwrite
function compiler
compiler(parameters: Mapping[str, Union[str, EncryptionStatus]])
Provide an easy interface for the compilation of single-circuit programs.
Args: parameters (Mapping[str, Union[str, EncryptionStatus]]): encryption statuses of the parameters of the function to compile
function module
module()
Provide an easy interface for the compilation of multi functions modules.
function function
function(parameters: Dict[str, Union[str, EncryptionStatus]])
Provide an easy interface to define a function within an fhe module.
Args: parameters (Mapping[str, Union[str, EncryptionStatus]]): encryption statuses of the parameters of the function to compile
class Compilable
Compilable class, to wrap a function and provide methods to trace and compile it.
method __init__
__init__(function_: Callable, parameters)
method compile
compile(
inputset: Optional[Iterable[Any], Iterable[Tuple[Any, ]]] = None,
configuration: Optional[Configuration] = None,
artifacts: Optional[DebugArtifacts] = None,
**kwargs
) → Circuit
Compile the function into a circuit.
Args: inputset (Optional[Union[Iterable[Any], Iterable[Tuple[Any, ...]]]]): optional inputset to extend accumulated inputset before bounds measurement
configuration(Optional[Configuration], default = None): configuration to use
artifacts (Optional[DebugArtifacts], default = None): artifacts to store information about the process
kwargs (Dict[str, Any]): configuration options to overwrite
Returns: Circuit: compiled circuit
method trace
trace(
inputset: Optional[Iterable[Any], Iterable[Tuple[Any, ]]] = None,
configuration: Optional[Configuration] = None,
artifacts: Optional[DebugArtifacts] = None,
**kwargs
) → Graph
Trace the function into computation graph.
Args: inputset (Optional[Union[Iterable[Any], Iterable[Tuple[Any, ...]]]]): optional inputset to extend accumulated inputset before bounds measurement
configuration(Optional[Configuration], default = None): configuration to use
artifacts (Optional[DebugArtifacts], default = None): artifacts to store information about the process
kwargs (Dict[str, Any]): configuration options to overwrite
Returns: Graph: computation graph representing the function prior to MLIR conversion