{"id":20669539,"url":"https://github.com/iitis/mcqfa","last_synced_at":"2026-04-24T13:01:48.776Z","repository":{"id":141460575,"uuid":"382348959","full_name":"iitis/MCQFA","owner":"iitis","description":"Repository for the codes used in the paper \"State-Efficient QFA Algorithm for Quantum Computers\"","archived":false,"fork":false,"pushed_at":"2022-02-09T11:32:35.000Z","size":201,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-17T17:59:36.662Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iitis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.MD","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-02T13:05:44.000Z","updated_at":"2022-02-08T22:23:54.000Z","dependencies_parsed_at":"2023-06-14T00:45:36.716Z","dependency_job_id":null,"html_url":"https://github.com/iitis/MCQFA","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/iitis/MCQFA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitis%2FMCQFA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitis%2FMCQFA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitis%2FMCQFA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitis%2FMCQFA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iitis","download_url":"https://codeload.github.com/iitis/MCQFA/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitis%2FMCQFA/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32224413,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T10:26:35.452Z","status":"ssl_error","status_checked_at":"2026-04-24T10:25:27.643Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T20:14:45.362Z","updated_at":"2026-04-24T13:01:48.753Z","avatar_url":"https://github.com/iitis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![DOI](https://zenodo.org/badge/382348959.svg)](https://zenodo.org/badge/latestdoi/382348959)\n\n# State-efficient QFA algorithm for quantum computers\n\nResponsible person: Özlem Salehi (osalehi[at]iitis.pl).\n\nThe code necessary for running the experiments in the paper \"State-efficient QFA Algorithm for Quantum Computers\" is given here.\n\nThe code was tested under Windows. You should install Qiskit to be able to run the codes. In order to access IBMQ backends, you should create an account on https://www.ibm.com/quantum-computing/ and follow the instructions given [here](https://quantum-computing.ibm.com/lab/docs/iql/manage/account/ibmq). \n\n## Data used in the manuscript\n\nData used in the manuscript is located inside the data folder. \n\n## Reproducing data\n\n### Single qubit MCQFA\n\nRun the following command in the main directory to run single-qubit MCQFA using the default values which were used in the manuscript. The results are saved as a pickle file.\n\n\n```\npython experiments.py single ry\n```\n\nYou can pass optional arguments to modify default parameters:\n\n```-backend```: IBMQ backend to be used. Type simulator for local simulator and the name for ibmq simulator. Default is belem.\n                        \n```-p```: p value. Default is 11.\n\n```-length```: Word length until which the simulations will be run. Default is 2 times the word length.\n\n```-shots```: Number of shots. Default is 8192.\n\n```-verbose```: If this option is seleced, output is printed on screen.\n\nHere is another example run:\n\n```\npython experiments.py rz single -backend simulator -p 31 -length 5 -shots 1000 -verbose \n```\n\n### Optimized MCQFA\n\nRun the following command in the main directory to run optimized MCQFA:\n\n```\npython experiments.py optimized ry\n```\n\nThe above command runs optimized MCQFA with the implementation using Ry gates, using the default values which were used in the manuscript. The results are saved as pickle file.\n\nIn the addition to the optional parameters given above, the following may be provided when running the optimized experiment.\n\n,```-n```: Number of qubits. Default is 3.\n\n```-k```: Set of k values (type by leaving space). Default is 3 5 7. Number of entries should be equal to number of qubits.\n\n### Fidelity calculation\n\nRun the following command to calculate fidelities of the states prodecued in the noisy and noiseless experiements.\n\n```\npython fidelity.py\n```\n\nThe above command runs optimized MCQFA both using the noise model from IBM Belem backend and using the simulator using the default values indicated in the manuscripted. The fidelities are saved as pickle files inside data folder.\n\nThe following optional parameters may be provided:\n\n```-p```: p value. Default is 11.\n\n```-n```: Number of qubits. Default is 3.\n\n```-backend```: IBMQ backend to be used. Default is belem.\n\n```-length```: Word length until which the simulations will be run. Default is 2 times the word length.\n\n```-k```: Set of k values (type by leaving space). Default is 3 5 7. Number of entries should be equal to number of qubits.\n\n```-shots```: Number of shots. Default is 10000.\n\n```-plot```: If this option is seleced, plot is generated.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiitis%2Fmcqfa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiitis%2Fmcqfa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiitis%2Fmcqfa/lists"}