Quantum Singular Value Transformation은 block-encoded 행렬의 singular value에 polynomial을 적용하는 프레임워크입니다. 많은 고급 양자 알고리즘을 하나의 문법으로 설명합니다.
## Singular value 관점 {#svd}
일반 행렬 $A$는 SVD로 쓸 수 있습니다.
$$
A=\sum_j \sigma_j |u_j\rangle\langle v_j|
$$
QSVT는 singular value $\sigma_j$에 polynomial $p$를 적용해 아래와 같은 행렬을 구현합니다.
$$
p^{(SV)}(A)
=
\sum_j p(\sigma_j)|u_j\rangle\langle v_j|
$$
Hermitian 행렬이라면 singular value 대신 eigenvalue transformation처럼 볼 수 있고, 일반 행렬에는 singular value transformation이라는 이름이 더 정확합니다.
## 입력: block-encoding {#block}
QSVT의 출발점은 block-encoding입니다.
$$
U_A=
\begin{bmatrix}
A/\alpha & *\\
* & *
\end{bmatrix}
$$
위쪽 block에 $A/\alpha$가 들어 있습니다. QSVT는 $U_A$와 phase rotation을 반복해 $p(A/\alpha)$가 들어 있는 새로운 block-encoding을 만듭니다.
## 무엇을 할 수 있나 {#what-can}
| 목표 | 필요한 함수 |
| --- | --- |
| Hamiltonian simulation | $p(x)\approx e^{-itx}$ |
| Linear system | $p(x)\approx 1/x$ |
| Ground state filtering | 낮은 고유값만 통과시키는 step/filter |
| Search/amplification | 특정 singular value를 키우는 polynomial |
| Matrix function | $\sqrt{x}$, sign, threshold 등 |
QSVT가 강력한 이유는 알고리즘별로 다른 트릭처럼 보였던 것들을 “block-encoding + polynomial transformation”으로 통합한다는 점입니다.
## Polynomial 제약 {#constraints}
아무 polynomial이나 QSVT로 바로 구현되는 것은 아닙니다. 대표적으로 아래 조건들이 중요합니다.
- 구간 $[-1,1]$에서 bounded: $|p(x)|\le1$
- degree와 parity 조건
- 짝/홀 block에 따라 구현되는 matrix element 차이
- 실수 polynomial인지 복소 polynomial인지에 따른 phase convention
그래서 QSVT 설계는 목표 함수 하나를 적고 끝나는 일이 아니라, 구현 가능한 polynomial 형태로 가공하는 과정까지 포함합니다.
## Linear system을 QSVT로 보기 {#linear-system}
선형시스템에서는 $1/x$를 근사해야 합니다. 하지만 $x=0$에서 발산하므로 고유값 또는 singular value가 0에서 떨어져 있어야 합니다.
$$
x\in[1/\kappa,1]
$$
이 구간에서 $1/x$를 bounded polynomial로 근사합니다. 실제 구현에서는 normalization 때문에 $(1/\kappa)/x$처럼 크기를 줄인 함수를 씁니다.
$$
p(x)\approx {1\over \kappa x}
$$
이렇게 하면 $|p(x)|\le1$ 조건을 맞추기 쉽습니다.
## QPE 기반 방식과 비교 {#comparison}
QPE 기반 HHL은 고유값을 별도 레지스터에 기록하고 조건부 회전을 수행합니다. QSVT 기반 방식은 고유값을 명시적으로 읽지 않고 polynomial transformation으로 역수 함수를 직접 구현합니다.
| 관점 | QPE/HHL | QSVT |
| --- | --- | --- |
| 중심 객체 | eigenvalue register | block-encoding |
| 함수 적용 | 조건부 회전 | polynomial transformation |
| 오차 | phase estimation precision | polynomial approximation error |
| 회로 반복 | controlled powers | block-encoding 반복 호출 |
## QSVT 설계 흐름 {#design}
1. 문제 행렬 $A$의 block-encoding을 만든다.
2. normalization $\alpha$와 spectrum 범위를 기록한다.
3. 구현하려는 함수 $f$를 정한다.
4. $f$를 bounded polynomial $p$로 근사한다.
5. QSP/QSVT phase sequence를 합성한다.
6. block-encoding 호출 수, ancilla 수, 오차를 보고한다.