THE PLATFORM
The computational stack
FHERMA is not limited to low-level mathematical kernels. A kernel can represent a computation at any level of abstraction, from a primitive operation to a complete application capability. The levels stack:
L5 · Privacy-preserving applications
↓
L4 · Application components
↓
L3 · Advanced cryptography
↓
L2 · Cryptographic components
↓
L1 · Math
↓
Implementations
↓
CPU / GPU / FPGA / other hardware
A concrete path through the stack:
Private application
↓
Encrypted search
↓
FHE operations
↓
Key switching / bootstrapping
↓
Polynomial arithmetic / NTT
↓
Modular arithmetic / BigInt
↓
CPU / CUDA implementation
The five layers
A kernel's layer describes what role the computation plays, not which technology or implementation executes it.
| Layer | Role | Examples |
|---|---|---|
| L1 · Math | Mathematical primitives | number-theoretic transform, polynomial multiplication, multi-scalar multiplication, element-wise multiply, matrix multiplication, modular reduction |
| L2 · Cryptographic components | Building blocks of a cryptographic scheme | CKKS key switching, CKKS bootstrapping, polynomial commitment, proof generation, secret sharing, private query |
| L3 · Advanced cryptography | Whole cryptographic technologies | FHE, ZK, MPC, PIR, PSI, PQC |
| L4 · Application components | Operations over encrypted values an application composes | ReLU, logistic, sign, max, lookup, range proof, Merkle membership proof |
| L5 · Privacy-preserving applications | End-to-end privacy-preserving applications | private AI, private fraud detection, confidential payments, private analytics, secure data collaboration |
The same computation keeps its level regardless of the scheme or hardware used to realise it. A key-switching kernel is a cryptographic operation whether it runs on a CPU or a GPU, and whether it is written against one FHE library or another.
Dependencies
Computations rarely exist in isolation. An implementation can record dependencies on implementations of other kernels, which makes the computational structure explicit:
Modular arithmetic
↓
Polynomial arithmetic
↓
NTT
↓
Key switching
↓
FHE workload
↓
Application
A dependency does not assert that every implementation is drop-in compatible with every other. It records which lower-level computations a higher-level one relies on, and which concrete implementations are currently used to realise them. Implementation metadata can carry the mechanism, the coverage, the artifacts, the environment and these dependencies together.