Introduction
The HQS Qorrelator App is designed to provide users with a simple tool to perform the calculation of correlation functions on a quantum computer.
Applications
Correlation functions are important for many areas of physics and chemistry. One of the most commercially important aspects is that correlation functions can be used to calculate response spectra. Specifically, correlation functions of two spin operators, with respect to the Hamiltonian of the nuclear material, can be used to obtain the NMR spectral function. Due to the enormous practical relevance of NMR spectra, the first version of the HQS Qorrelator App focuses on providing ways to obtain the NMR correlation functions on a quantum computer.
In the near future, all available quantum computers will be NISQ quantum computers, where the qubits of the quantum computer experience environmental noise. In most applications, environmental noise is purely a source of errors. At HQS, we have realised that, for certain applications, environmental noise is not detrimental and can even be used as an computational resource.
The HQS Qorrelator App also incorporates these approaches in an user-friendly manner, by providing an easy way to obtain an estimate of the spectral broadening due to the effective time evolution that occurs on a noisy quantum computer.
Getting started
The following command can be used to install the package via hqstage:
hqstage install hqs_qorrelator_app
The interface section breaks down how the HQS Qorrelator App works together with the HQS struqture and qoqo libraries. We go through the Python interface of the package and discuss how to construct quantum programs that will calculate correlations, how to get an estimated broadening based on the noise in a device and how to extract the noisy algorithm model.
Features
- Infinite temperature state preparation
- Construct QuantumProgram for measuring correlators in infinite temperature environment
- Construct QuantumProgram specific for NMR
- Directly run correlator measurement with QuEST backend
- Create noise algorithm model for time evolution in correlator measurement
- Extract infinite temperature fidelity from noise model (how well noise model fits infinite temperature assumption)
- Full Python interface
Fundamental Physical Concepts
Background
In this chapter we provide background knowledge on the basics of nuclear magnetic resonance (NMR) from experimental and theoretical perspectives. We also describe the maths behind the calculation of spectra in the HQS Qorrelator App. Lastly, we explain how quantum computers can be used to calculate NMR spectra.
Noise models
We consider physical noise, meaning noise on the hardware-level, that is caused by qubits coupling to some fluctuating environment, either during control operations, or at all times. This is assumed to cause damping, dephasing, and/or depolarization of their quantum states. Our model of a noisy quantum computer is based on adding corresponding non-unitary (noise) operations after or before (ideal) unitary gate operations. This model is described in detail on page modeling.
Noise mapping
The HQS Qorrelator App allows the user to investigate how noise affects the calculation of correlation functions to obtain NMR spectra. Particularly, it derives the Lindblad open-system model that the noisy quantum simulator is effectively implementing in the time propagation that is part of the calculation of the correlation function. Foundations of this mapping (between physical and simulated noise) are discussed on page mapping or in more detail in this arxiv paper.
API Documentations
Changelog
For a changelog starting from version 0.2
please see here.