Release Note
New Features
- Add the
schmidt_decompose()
function, which computes the Schmidt decomposition of a quantum state. - Add the
paddle_quantum.dataset
module, which provides the quantum version of common datasets, such as the MNIST dataset, the Iris dataset, etc. - Add the
QuantumFisher
and theClassicalFisher
classes, which compute the quantum Fisher information and the classical Fisher information. - Add the
expand()
method in theUAnsatz
class, which dynamically expands the number of qubits in a quantum circuit. - Add the
plot_density_matrix_graph()
function inpaddle_quantum.utils
, which visualizes a density matrix. - Add the
plot_multi_qubits_state_in_bloch_sphere()
function inpaddle_quantum.utils
, which plots independent systems with multiple qubit states on the Bloch sphere. - Add the
image_to_density_matrix()
function to encode an image as a quantum state.
Quantum Chemistry
- Add the
run_chem()
function inpaddle_quantum.qchem
which could use"hardware efficient"
ansatz and"hartree fock"
ansatz to calculate ground state energy for a given molecule. For details, please refer to our updated introduction to the quantum chemistry module. - Add the
QModel
class which could be used to define a customized variational ansatz for quantum chemistry calculation. For details, please refer to our updated introduction to the quantum chemistry module.
New Tutorials
Introduction
- Add the tutorial Quantum Chemistry in Paddle Quantum's qchem, which explains how to use our upgraded quantum chemistry module to do ground state energy calculation.
- Add the tutorial Frequently Used Functions in Paddle Quantum, which lists some frequently used functions in Paddle Quantum.
QNN Research
- Add the tutorial Quantum Fisher Information, which briefly introduces the concepts of the classical and quantum Fisher information, along with their applications in quantum machine learning, and shows how to compute them with Paddle Quantum.
Quantum Simulation
- Add the tutorial Distributed Variational Quantum Eigensolver Based on Schmidt Decomposition, which demonstrates how to implement a distributed quantum algorithm using Paddle Quantum.
Improvements
- Improve the simulator performance in state_vector mode.
- Update the introduction tutorial, including some typo fixes.
- The
partial_trace_discontiguous()
function is now available. - The
construct_h_matrix()
method in theHamiltonian
class now supports specifying the number of qubits. - Enhance the performance of the Hamiltonian simulation experimentally, referring to the paper Optimal quantum circuits for general two-qubit gates.
- Upgrade some tutorials with the latest code features.
Bug Fixes
- Fix the bug in the
von_neumann_entropy()
function. Now it skips eigenvalue zero in the calculation process. - Fix the bug in the
update_param()
method which is caused by the incompatible update of the PaddlePaddle. - Fix the plot error in MAXCUT and DC-QAOA tutorials.
- Fix the bug in the
get_1d_heisenberg_hamiltonian()
function. - Fix typos in the docs of
cy
andcz
gates. - Fix some typos in tutorials.
Dependencies
-
paddlepaddle
: updated from>=2.1.2
to>=2.2.0
. -
openfermion
: newly added. -
pyscf
: newly added for Linux and macOS platforms.