fhelium.experimental.bootstrap.polynomial.even
Even Chebyshev evaluation through the T2 composition identity.
EvenChebyshevEvaluator
class View source
python
EvenChebyshevEvaluator(evaluator: Any)1
Evaluate sum a_(2j) T_(2j)(x) as sum a_(2j) T_j(T2(x)).
evaluator selects the inner polynomial schedule. Forming T2(x)=2x²−1 consumes one ciphertext multiplication, relinearization and complete Q group rescale. The inner evaluator consumes the resulting actual scale. Odd coefficients must be zero; constants use the inner evaluator directly. Output preserves input representation and batch axes.
Attributes
| Name | Type | Default/value |
|---|---|---|
evaluator | Any |
required_depths
method
python
def required_depths(polynomial: PolynomialApproximation) -> int: ...1
operation_inventory
method
python
def operation_inventory(polynomial: PolynomialApproximation) -> dict[str, int]: ...1
relinearization_depths
method
python
def relinearization_depths(polynomial: PolynomialApproximation, *, input_depth: int=0) -> tuple[int, ...] | None: ...1
Compose the actual T2 product and the folded evaluator's consumers.
evaluate
method
python
def evaluate(arithmetic: BootstrapArithmetic, ciphertext: Ciphertext, polynomial: PolynomialApproximation, *, relinearization_key: RelinearizationKey | EvaluationKeySet | Mapping[int, RelinearizationKey] | None=None) -> Ciphertext: ...1