Encrypted Matrix Inverse

L4 · Application Components
matrix-inverse · 1 specification · 0 implementations · no benchmarks yet
WHAT IT ISCompute the inverse of an encrypted square matrix under CKKS.
CKKS
SIGNATURE
kernel matrix_inverse<N: u32>(
%a: secret<tensor<N x N x f64>>,
) -> %inv: secret<tensor<N x N x f64>>
Sizes and element types are left open here. A specification fixes them; an implementation says over which of them it works.
DESCRIPTION

Definition

The inverse of a square matrix AA of order NN is the unique matrix A1A^{-1} satisfying

AA1=A1A=IN,A\,A^{-1} = A^{-1}A = I_N,

where INI_N is the N×NN\times N identity. It exists precisely when AA is nonsingular, that is detA0\det A \ne 0. This kernel takes an encrypted square matrix and returns its encrypted inverse.

Mathematical Domain

Matrix inversion is defined over any field of entries. Under a homomorphic scheme the entries are held encrypted and the arithmetic is the scheme's arithmetic. Over the reals under CKKS this arithmetic is approximate, so the returned matrix is a numerical approximation of the true inverse.

Inversion is harder to realize homomorphically than a product because division and pivoting are not native operations: a homomorphic scheme offers additions and multiplications, but not exact reciprocals, comparisons, or branching. Inversion over encrypted data is therefore typically approached iteratively — by a scheme of repeated multiply-and-add steps that converge to the inverse using only ring operations — rather than by direct elimination. The kernel prescribes no particular method; the number of steps and the accuracy reached depend on the technique and on how well-conditioned AA is.

Parameters Defined by Specifications

A specification narrows the general operation into a concrete problem by fixing:

  • the entry domain and homomorphic scheme (for example f64 under CKKS)
  • the matrix order NN and the requirement that AA be invertible
  • any assumptions on the range or conditioning of AA that make the accuracy well-defined
  • the accuracy rule and how closeness is scored
  • which evaluation keys an answer may declare and use

Applications

A matrix inverse underlies the solution of linear systems and least-squares problems (the normal equations x=(AA)1Abx = (A^\top A)^{-1}A^\top b), covariance whitening and Mahalanobis distances, Gaussian-process and Kalman-filter updates, and portfolio and regression models. Performing it over encrypted data lets these analytics run on confidential inputs — medical, financial, or otherwise sensitive matrices — without ever exposing the matrix or its inverse.

MAINTAINER
FM
fairmathreviews specifications · resolves disputes
USED BY · 0 KERNELS
Kernels above this one. If this kernel is wrong, or slow, they are wrong or slow with it.Nothing depends on this kernel yet.
BUILDS ON · 0 KERNELS
Kernels this one is stated in terms of. Not a call graph — a statement of dependence between problems.Nothing. This kernel sits at the bottom of the graph.
RECENT ACTIVITYNothing yet.