fhelium.eager._validation
CKKS value and key validation for one parameter set.
CkksValidator checks live tensor-backed values against one modulus layout and integral dtype. Concrete execution bindings check placement when a value is passed to a CPU or CUDA implementation.
CkksValidator
class View source
python
CkksValidator(config: CkksConfig, rns_layout: RnsLayout, rns_dtype: torch.dtype)1
Validate CKKS values and keys for one CKKS parameter set.
Attributes
| Name | Type | Default/value |
|---|---|---|
config | CkksConfig | |
rns_layout | RnsLayout | |
rns_dtype | torch.dtype |
validate_ciphertext
method
python
def validate_ciphertext(value: Ciphertext) -> None: ...1
Validate a dense ciphertext against the configured runtime.
validate_plaintext
method
python
def validate_plaintext(value: Plaintext) -> None: ...1
Validate slots, coefficient, or RNS plaintext storage.
validate_secret_key
method
python
def validate_secret_key(key: SecretKey) -> None: ...1
Validate a depth-zero secret key.
validate_public_key
method
python
def validate_public_key(key: PublicKey) -> None: ...1
Validate a depth-zero public encryption key.
validate_key_switch_key
method
python
def validate_key_switch_key(key: KeySwitchKey) -> None: ...1
Validate QP key-switch material and its concrete role metadata.
RnsLayout
class View source
python
RnsLayout()1
Bases: Protocol
Provide active prime rows and key-switch digit count.
key_digit_count
property
python
key_digit_count: int1
prime_ids
method
python
def prime_ids(depth: int, *, include_p: bool=False) -> tuple[int, ...]: ...1