NVIDIA / NVIDIA/cuda-quantum

Sparse Matrix Gate

Open
#2,968 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement stale-notified
Dominant language
C++
Stars
1.1k
Forks
456
Avg merge
1d 22h
Merged PRs (30d)
165

Description

Required prerequisites
  • Search the issue tracker to check if your feature has already been mentioned or rejected in other issues.
Describe the feature

The ability to apply a sparse matrix is needed for quantum algorithm research. A synthesis for real quantum computers would be ideal, but I think the algorithm there is non-trivial. At the very least
I would prefer it to work on a simulator first.

Qulacs has the feature:
https://docs.qulacs.org/en/latest/guide/2.0_python_advanced.html#Sparse-matrix-gate

I think the natural workflow for CUDA-Q is that a sparse matrix can be registered with cudaq.register_operation for python and CUDAQ_REGISTER_OPERATION for C++.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing cudaq.register_operation Python API and CUDAQ_REGISTER_OPERATION C++ macro, then compare the sparse-matrix gate behavior documented by Qulacs. Define the simulator-first scope and determine what registration and execution support would be required; done means a sparse matrix can be registered and applied in the simulator from Python and C++.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python
Domain
quantum-computing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.