Making data accessible for quantum computing
Believe it or not: The future of quantum computing will be big data
The problem we solve: copying data into quantum.
Our product offers scalable data management and scalable quantum state preparation routines.
1
Problem 1
Quantum Computing has "No-Cloning" Theorem, it cannot simply copy data
2
Problem 2
Data is needed for Quantum Chemistry, Machine Learning, Solving PDE and Monte Carlo Simulation
3
Problem 3
A completely new layer in the quantum stack is needed: Storage and processing of quantum operations
Q-Alchemy
Q-Alchemy optimizes the process of bringing classical data into quantum form by smartly exploiting entanglement and data ordering, making state preparation more feasible for quantum and hybrid algorithms, despite a heavy classical cost.
Read more about the algorithmHigh-Performance Data Processing
Data Handling: High-Performance-Computing
Platform-Agnostic Quantum Integration
Superconductor, Ion Traps, Photons, Neutral Atoms, Topological Qubits, many more
Cross-Platform Compatibility
Platform-specific adaptations dependent modifications exist
Optimal for HHL
Encode sparse right-hand side vector. Exploits sparse states, save up to 4x depth
Why Q-Alchemy?

from q_alchemy.initialize import q_alchemy_as_qasm
zero = load_mnist_784(number="0", pad=True, normalize=True)[0]
qasm, summary = q_alchemy_as_qasm(
zero,
max_fidelity_loss=0.2,
return_summary=True
)
import numpy as np
from sklearn.datasets import fetch_openml
from q_alchemy.qiskit_integration import QAlchemyInitialize, OptParams
zero = load_mnist_784(number="0", pad=True, normalize=True)[0]
filler = np.empty(2 ** 10 - zero.shape[0])
filler.fill(0)
zero = np.hstack([zero, filler])
zero = zero / np.linalg.norm(zero)
instr = QAlchemyInitialize(
params=zero.tolist(),
opt_params=OptParams(
max_fidelity_loss=0.1,
basis_gates=["id", "rx", "ry", "rz", "cx"],
api_key="<your api key>"
)
)
instr.definition.draw(fold=-1)
import numpy as np
import pennylane as qml
from sklearn.datasets import fetch_openml
from q_alchemy.pennylane_integration import QAlchemyStatePreparation, OptParams
mnist = fetch_openml('mnist_784', version=1, parser="auto")
zero: np.ndarray = mnist.data[mnist.target == "0"].iloc[0].to_numpy()
filler = np.empty(2 ** 10 - zero.shape[0])
filler.fill(0)
zero = np.hstack([zero, filler])
zero = zero / np.linalg.norm(zero)
dev = qml.device('lightning.qubit', wires=10)
@qml.qnode(dev)
def circuit(state=None):
QAlchemyStatePreparation(
state,
wires=range(10),
opt_params=OptParams(
max_fidelity_loss=0.1,
basis_gates=["id", "rx", "ry", "rz", "cx"],
api_key="<your api key>"
)
)
return qml.state()
print(qml.draw(circuit, level="device", max_length=100)(zero.tolist()))
Subscribe to our newsletter
Stay updated with the latest articles, tutorials, and insights from our team. We'll never spam your inbox.