An open API service indexing awesome lists of open source software.

https://github.com/antonioscardace/practical-quantum-esm

[ACM, 2024] Official implementation of "Practical Implementation of a Quantum String Matching Algorithm"
https://github.com/antonioscardace/practical-quantum-esm

acm exact-string-matching grovers-algorithm ibm qiskit quantum quantum-computing string-matching

Last synced: 29 days ago
JSON representation

[ACM, 2024] Official implementation of "Practical Implementation of a Quantum String Matching Algorithm"

Awesome Lists containing this project

README

          

Quantum ESM Logo


Practical Implementation of a Quantum String Matching Algorithm

Simone Faro,
Francesco Pio Marino, and
Antonio Scardace


Python
Paper PDF
Open in Colab
License


This repository contains the official code for our paper on Exact String Matching.

In our paper, we present the implementation of a quantum ESM algorithm, which identifies occurrences of a specified pattern $x$ of length $m$, within a text $y$ of length $n$ $\geq$ $m$, where both sequences are composed of characters taken from an alphabet $\Sigma$ of size $\sigma$. Our article presents an initial practical implementation of a quantum circuit tailored to address the ESM problem, with a particular focus on **binary strings**.

A classical **naïve** approach exhibits a worst-case time complexity of $\mathcal{O}(n+m)$, contrasting with the capability of quantum computation to achieve a $\tilde{O}(\sqrt{n})$ complexity using **Grover's search**.

We use the **Qiskit** open-source toolkit developed by **IBM**. While current real-world hardware often struggles to produce valid results due to **decoherence** and **quantum errors**, this study presents experimental results from a circuit **simulation** on classical hardware, validating the proposed implementation's efficacy.

## Citation

Please, reference this publication if you find this code useful:

```BibTeX
@inproceedings{10.1145/3660318.3660327,
author = {Marino, Francesco Pio and Faro, Simone and Scardace, Antonio},
title = {Practical Implementation of a Quantum String Matching Algorithm},
year = {2024},
publisher = {Association for Computing Machinery},
url = {https://doi.org/10.1145/3660318.3660327}
}
```