FHERMA
BUILDCOMPLETED

Evaluate sign(x) on a CKKS ciphertext

sponsored by FairMath · 0 submissions

BOUNTY$3,000
CLOSEDJan 2024
Enter an implementation

WHAT IS BEING ASKED

Submit a ciphertext holding sign(x) for every element of the provided encrypted vector.

What is provided

A CKKS cryptocontext, a public key, a relinearization key and rotation keys for indexes [1, -1, 2, -2], together with the input ciphertext. Additional rotation keys were available on request.

The test case

ParameterValue
Batch size4096
Multiplicative depth10
Scale modulus size50
Element range−1 to 1

Approaches

Polynomial approximation such as Chebyshev, piecewise-linear approximation over segments of the range, and iterative methods such as Newton-Raphson were all considered viable. The kernel does not prescribe one.

Example

The vector [-0.45, 0, 0.23] evaluates to [-1, 0, 1], computed on ciphertext.

Test environment

Test cases were generated with OpenFHE v1.1.1 and OpenFHE-Python v0.8.1. Any third-party software could be used, provided the submitted ciphertext stayed compatible with OpenFHE v1.1.

REWARD

amount$3,000
distributionwinner takes all
publicationa private implementation may enter

HOW IT IS EXECUTED

A challenge uses the same benchmark infrastructure as the rest of the platform. The submission supplies the challenge context; what runs is the implementation itself, against the challenge benchmark cases on its eligible runners.