https://github.com/cqcl/hidden_inverse_exp
Implementation of the "hidden inverse" coherent error cancellation method in pytket.
https://github.com/cqcl/hidden_inverse_exp
Last synced: about 1 year ago
JSON representation
Implementation of the "hidden inverse" coherent error cancellation method in pytket.
- Host: GitHub
- URL: https://github.com/cqcl/hidden_inverse_exp
- Owner: CQCL
- Created: 2023-02-06T16:18:08.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-07T13:25:30.000Z (over 1 year ago)
- Last Synced: 2025-03-07T14:23:22.380Z (over 1 year ago)
- Language: Jupyter Notebook
- Homepage:
- Size: 483 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hidden Inverse Circuits for Coherent Error Suppression
## Hack month week 1
**Key reference:** https://arxiv.org/abs/2104.01119
**Idea:** Self adjoint gates such as CX have two equivalent decompositions into hardware native gates. Find symmetric circuits and use both decompositions to cancel coherent errors.
Contributions and suggestions for future work welcome.
If we have a matrix $M$ satisfying $M=M^\dagger$ we say that $M$ is self adjoint.
We can decompose this matrix $M$ in two ways.
$$
\begin{equation}
M = ABC = C^\dagger B^\dagger A^\dagger = M^\dagger
\end{equation}
$$
Here $M$ represents the unitary (and self-adjoint) matrix associated with a two qubit gate.


## Setup
1. Clone this repository
```shell
git clone git@github.com:CQCL/hidden_inverse_exp.git
```
2. Now install dependencies with [uv](https://docs.astral.sh/uv/).
```shell
cd hidden_inverse_exp
uv sync --all-groups
```
3. Run the tests
```shell
cd tests
uv run pytest
```