FPOA
ampamp.fpoa
Fixed-Point Oblivious Amplitude Amplification module.
Provides the FOQAEngine to analyze and simulate LCU dynamics
for oblivious amplitude amplification with fixed-point success guarantees.
FOQAEngine
Core engine for Fixed-Point Oblivious Amplitude Amplification.
Handles tripartite LCU dynamics and non-linear success recurrences.
__init__(theta)
Initializes the FOQA Engine.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
theta
|
float
|
The fundamental geometric phase angle bound for the oblivious operation. |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
If theta is not within [0, pi/2). |
build_lcu_split_operator(alpha_n)
Constructs the controlled-\(V_n\) operator for the tripartite system.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
alpha_n
|
float
|
The current phase step angle \(\alpha_n\). |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
np.ndarray: The matrix representation of the split operator. |
generate_constant_schedule(alpha, iterations)
staticmethod
Generates a constant Zeno-like or underdamped schedule.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
alpha
|
float
|
The constant phase angle to apply. |
required |
iterations
|
int
|
The total number of iterations. |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
np.ndarray: A constant phase sequence schedule array. |
generate_mizel_schedule(c, iterations)
staticmethod
Generates the optimal critical damping schedule: \(c/\sqrt{n+1}\).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
c
|
float
|
The damping constant modifier. |
required |
iterations
|
int
|
The total number of iterations. |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
np.ndarray: The computed phase sequence schedule array. |
simulate_recurrence(alpha_schedule)
Executes the non-linear FOQA recurrence relations.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
alpha_schedule
|
ndarray
|
The schedule of phase angles \(\alpha_n\) to apply over iterations. |
required |
Returns:
| Type | Description |
|---|---|
ndarray
|
np.ndarray: The cumulative success probability array containing the likelihood of success at each step of the recurrence. |