Skip to content

QuAIR/QITE-Codes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QITE-codes Documentation

Source code for the paper Quantum Imaginary-Time Evolution with Polynomial Resources in Time.

Preparing the normalized imaginary-time evolution state (ITE state) is a useful tool for problems in quantum many-body system, while current methods that suffer from exponentially growing classical resources or deteriorating success probabilities in long evolution time. This repository gives the simulation code for a quantum algorithm that introduces a normalization scheme that ensures state preparation for large imaginary-time durations with stable success probability, and a quantum algorithm using the idea of ITE to solve ground-state-related problems:

  1. Prepare ITE states for large imaginary-time durations with stable success probability
  2. Apply ITE to ground-state-related problems with reduced circuit depth
  3. Simulate open quantum systems (Lindbladian dynamics) with improved resource scaling

Code-Paper Correspondence

Figure/Protocol in Paper Location in Repository Hardware Requirements
Tutorial for ITE circuit tutorial.ipynb \
Figure 1 ./code/normalization.ipynb \
Figure 2(a) ./code/long evolution.ipynb \
Figure 2(b,c) ./code/ground state.ipynb \
Figure 3(a,b) ./code/Lindbladian evaluation.ipynb \
Figure 3(c) ./code/Lindbladian tradeoff.ipynb \

Repository Structure

QITE-CODES/
├── code/                    # code for reproducible experiment for the paper
│   ├── data                 # QSP angles and Fourier coefficients
├── qite/                    # source code for the ITE algorithm in the paper
└── qsp/                     # source code for the QSP-related functional

How to Run These Files?

We recommend running these files by creating a virtual environment using conda and install Jupyter Notebook. We recommend using Python 3.10 for compatibility.

conda create -n qite python=3.10
conda activate qite
conda install jupyter notebook

These codes are highly dependent on the QuAIRKit package no lower than v0.4.0. This package is featured for batch and qudit computations in quantum information science and quantum machine learning. The minimum Python version required for QuAIRKit is 3.8.

To install QuAIRKit, run the following commands:

pip install quairkit

System and Package Versions

It is recommended to run these files on a server with high performance. Below are our environment settings:

Package Versions:

  • quairkit: 0.4.3
  • torch: 2.9.1+cu128
  • torch cuda: 12.8
  • numpy: 2.3.5
  • scipy: 1.16.3
  • matplotlib: 3.10.7

System Information:

  • Python version: 3.10.0
  • OS: Linux, Ubuntu (version: #88-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 09:28:41 UTC 2025)
  • CPU: AMD EPYC 9554 64-Core Processor
  • GPU: NVIDIA GeForce RTX 3090

These settings ensure compatibility and optimal performance when running the codes.

About

Source code for QITE paper

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •