A Schrödingerization-based solver for the 1D backward heat equation, addressing its ill-posed nature by transforming unstable exponential growth into a structured evolution system. Supports classical matrix methods and quantum-inspired Trotter simulation.
Resources
1Install
npx skillscat add unitarylab/quantum-skills/backward-heat-1d-schrodingerization Install via the SkillsCat registry.
One-Step Run Example Command
python ./scripts/algorithm.pySkill: 1D Backward Heat Equation Solver via Schrödingerization
Skill Objective
Enable the agent to stably solve ill-posed PDEs, especially the 1D backward heat equation, by:
- Transforming exponential growth into controlled evolution
- Applying Schrödingerization
- Supporting both classical and quantum-inspired solvers
Mathematical Model
Backward Heat Equation
$$
\partial_t u = H u, \quad u(0) = u_0
$$
- Typically $H = -\Delta$(or discrete Laplacian)
- Ill-posedness:
- Exponential increase in the frequency mode index
- Extremely sensitive to initial values
Core Capabilities
1. Ill-posedness Handling
Agent must:
- Detect exponential growth instability
- Apply warped phase transformation
Introduce:
$$
w(t,p) = e^{-p} u(t)
$$
Transform equation:
$$
\frac{d}{dt} w = -H \partial_p w
$$
2. Spatial Discretization
Construct grid:
$$
x_i = i\Delta x, \quad \Delta x = \frac{L}{N}
$$
Construct Laplacian operator (via finite difference):
A = -a * CDiff(
N=Nx,
dx=dx,
order=2,
scheme=scheme,
boundary=bd
).get_matrix()3. Schrödingerization Mapping
Transform:
$$
\frac{du}{dt} = A u
\quad \Rightarrow \quad
\frac{d\psi}{dt} = -iH\psi
$$
Steps:
- Auxiliary lifting (introduce $p$)
- Fourier transform in $p$
- Construct Hamiltonian
$$
H = D \otimes H_1 + I \otimes H_2
$$
The Schrödingerization framework can be referred to in './Schr_skills.markdown'.
4. Classical Solver (Matrix Exponentiation)
Use Schrödingerization-based classical solver:
from unitarylab.library import schro_classical
u = schro_classical(
A,
u0,
T=T,
na=na,
R=R,
order=order,
point=point
)Characteristics:
- Stable compared to direct backward evolution
- Avoids catastrophic amplification
5. Quantum-Inspired Solver (Trotter Method)
Hamiltonian splitting:
$$
H = H_1 + H_2
$$
Lie-Trotter decomposition:
$$
e^{-iHt}
\approx
\left(e^{-iH_1 \Delta t} e^{-iH_2 \Delta t}\right)^{N_t}
$$
func1, func2 = (a * TDiff(nx, dx, 2, scheme=scheme, boundary=bd)).data()
H1 = func1(dt / R)
H2 = func2(dt)
from unitarylab.library import schro_trotter
u, qc = schro_trotter(
u0=u0,
H1=H1,
H2=H2,
Nt=Nt,
na=na,
R=R,
order=order,
point=point
)6. Block Encoding (Extension Capability)
- Reserved for quantum linear algebra methods
- Currently fallback to classical solver
u = backHeatEquationAlgorithm._solve_block(eq)7. Boundary Condition Handling
Agent supports:
Dirichlet:
$$
u(0,t) = u(L,t) = 0
$$Periodic:
$$
u(0,t) = u(L,t)
$$Neumann:
$$
\partial_x u = 0
$$
Implementation:
if bd == "periodic":
x = np.arange(0, L, dx)
elif bd == "neumann":
x = np.arange(0, L+dx, dx)8. Solution Recovery
After evolution in transformed space:
$$
u(t) = e^{p} w(t,p)
$$
w0 = np.exp(-p) * u0
u_t = np.exp(p) * w_t9. Visualization Capability
Solution Plot
fig, ax = plt.subplots()
ax.plot(x, u)
ax.set_title("Backward Heat Solution")
fig.savefig("solution.svg")Quantum Circuit Visualization
qc.draw(filename="circuit_full.svg")
H1.decompose().draw(filename="circuit_H1.svg")
H2.decompose().draw(filename="circuit_H2.svg")Execution Workflow (Agent Pipeline)
- Parse input parameters
- Identify ill-posed structure
- Apply warped transformation
- Construct spatial operator $A$
- Perform Schrödingerization
- Choose solver:
- Classical (default)
- Trotter (quantum-inspired)
- Run time evolution
- Recover physical solution
- Generate visualization
- Output results
Output Specification
Agent must return:
- Solution $u(x,t)$
- Grid data $(x, \Delta x)$
- Stability-related parameters
- (Optional) quantum circuit $qc$
- Visualization files
Stability & Numerical Considerations
- Backward heat equation is severely ill-posed
- Schrödingerization acts as:
- implicit regularization
- structure-preserving transformation
Accuracy depends on:
- grid size $N$
- auxiliary dimension $n_a$
- Trotter step $N_t$
- smoothness of lifting function
Skill Trigger Conditions
Activate when:
- PDE contains:
- diffusion operator with reversed time
- Keywords:
- “backward heat equation”
- “ill-posed PDE”
- “unstable evolution”
- “regularization via Schrödingerization”
Summary
This skill provides a robust computational framework for ill-posed PDEs:
$$
\text{Backward Heat}
;\rightarrow;
\text{Warped Transformation}
;\rightarrow;
\text{Schrödingerization}
;\rightarrow;
\text{Unitary Evolution}
$$
It enables:
- Stable numerical simulation
- Quantum-compatible formulation
- Integration of classical and quantum methods