fhelium.eager._rotation
Adapt streaming rotation kernels to CKKS values and Engine-owned keys.
iter_rotations_with_keys
function View source
python
def iter_rotations_with_keys(engine: Engine, value: Ciphertext, keys: Sequence[RotationKey | None], *, output_domain: PolynomialDomain, moddown_rounding: Literal['nearest', 'floor'], modup_method: Literal['exact', 'crt', 'normalized_crt']) -> Iterator[Ciphertext]: ...1
sum_rotations
function View source
python
def sum_rotations(engine: Engine, terms: Iterable[tuple[Ciphertext, RotationKey | None]], *, rescale: bool, moddown_rounding: Literal['nearest', 'floor'], modup_method: Literal['exact', 'crt', 'normalized_crt']) -> Ciphertext: ...1