Skip to content

Imaginary-time evolution using forward and backward real-time evolution with a single ancilla: First-quantized eigensolver algorithm for quantum chemistry #578

@NadavClassiq

Description

@NadavClassiq

Imaginary-Time Evolution Using Forward and Backward Real-Time Evolution with a Single Ancilla: First-Quantized Eigensolver Algorithm for Quantum Chemistry

Abstract

Probabilistic Imaginary Time Evolution (PITE) is a quantum computing technique that derives from Imaginary Time Evolution methods, providing a pathway to finding the ground state of a quantum Hamiltonian. In this project, you will implement a version of PITE with two distinct time-discretization methods as proposed in Optimal scheduling in probabilistic imaginary-time evolution on a quantum computer by Hirofumi Nishi et al. The challenge involves analyzing the algorithm’s efficiency using Classiq’s optimization tools to compare the CX-gate counts of each method.

Project Overview

Challenge: Implement the PITE algorithm using Classiq to compare two different time-discretization schedules to achieve the effect of Imaginary Time Evolution. Evaluate the CX-gate counts for a sequence of 10 time steps while scaling the number of qubits for a specific Hamiltonian. Bonus: Estimate the ground state energy of the Hamiltonian with the quantum algorithm.

Objective

Execute the PITE algorithm on the following Ising Hamiltonian with ( N ) qubits:

$$\hat{H} = \sum_{i \ge j} h_{i,j} \, \hat{\sigma}_z^{(i)} \hat{\sigma}_z^{(j)} + \sum_{i=0}^{N-1} J_i \, \hat{\sigma}_x^{(i)}$$

where ( h_{i,j} = 0.5 ) and ( J_i = 0.7 ).

  1. Implement two different time-discretization schedules.
  2. Use Classiq’s optimization techniques to analyze the CX-gate counts for each method over 10 time-steps.
  3. Bonus: Estimate the ground state of the Hamiltonian.

Deliverables

  • Jupyter Notebook containing:
    • Quantum programs that implement both the approximated and exact circuits as described in the paper, for different Hamiltonians:
      • For the approximated circuit:
        1. Define the Hamiltonian ( \hat{H} ) as a list of Pauli strings.
        2. Use an appropriate Hamiltonian simulation method (such as unitary()) to perform the time evolution.
        3. Synthesize the quantum program and apply count_ops() to obtain CX-gate counts.
      • For the exact circuit:
        1. Obtain the Hamiltonian operator through matrix algebra.
        2. Use an appropriate Hamiltonian simulation method (such as unitary()) for time evolution.
        3. Synthesize the quantum program and apply count_ops() to obtain CX-gate counts.
    • CX-gate count analysis for both methods, represented graphically.
    • Bonus analysis of the lowest energy state obtained, including its measurement probability.

Follow the Contribution Guidelines in CONTRIBUTING.md. For assistance, you can reach out via GitHub or join our Slack Community.

Getting Started

  1. Review Paper: Study the foundational papers by Taichi Kosugi et al. and Hirofumi Nishi et al. on PITE and optimal scheduling methods for imaginary-time evolution.
  2. Set Up Environment: Create a new Jupyter Notebook and install the Classiq SDK; refer to the setup guide.
  3. Guiding Materials:

Implementation Steps

  1. Algorithm Coding:

    • Implement the PITE algorithm using Classiq SDK for both time-discretization methods.
    • Define the Hamiltonian ( \hat{H} ) as a list of Pauli strings and perform time evolution with unitary() or another Hamiltonian simulation method.
    • Document steps in markdown, following the Glued Trees Example.
    • For support, connect via GitHub or Slack.
  2. Mathematical Explanation:

    • Use markdown and LaTeX to provide theoretical explanations, key equations, and algorithm insights.
  3. Generate .qmod File:

    • Use write_qmod(model, "filename.qmod") to save your models.
    • Confirm successful notebook execution and .qmod file generation.
  4. Quality Check:

    • Proofread for accuracy and ensure code correctness.
    • Use clear markdown formatting and a professional presentation.
  5. Submit Contribution:

    • Follow Contribution Guidelines.
    • Open a Pull Request in classiq-library/research/probabilistic_imaginary_time_evolution.
    • Include a summary of insights and results.

Resources


Note: No strict deadline. Confirm with us if you start this task so we can assign it to you.

Good Luck!

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions