Engineering the development of quantum programs: Application to the Boolean satisfiability problem
The development of quantum programs is becoming a reality due to the rapid advancement of quantum computing. Over the past few years, a multitude of hardware platforms, algorithms, and programming languages have emerged to support this paradigm. By the very nature of Quantum Mechanics principles, th...
| Autores: | , , |
|---|---|
| Tipo de recurso: | artículo |
| Estado: | Versión publicada |
| Fecha de publicación: | 2022 |
| País: | España |
| Institución: | Universidad Politécnica de Cartagena(UPCT) |
| Repositorio: | Repositorio Digital UPCT |
| OAI Identifier: | oai:repositorio.upct.es:10317/12159 |
| Acceso en línea: | http://hdl.handle.net/10317/12159 |
| Access Level: | acceso abierto |
| Palabra clave: | Quantum computing Model-driven engineering Boolean satisfiability Ingeniería Eléctrica 3313 Tecnología E Ingeniería Mecánicas 3306 Ingeniería y Tecnología Eléctricas |
| id |
ES_f0d08e8a56cc47f6a1afa711cb9ff5a3 |
|---|---|
| oai_identifier_str |
oai:repositorio.upct.es:10317/12159 |
| network_acronym_str |
ES |
| network_name_str |
España |
| repository_id_str |
|
| spelling |
Engineering the development of quantum programs: Application to the Boolean satisfiability problemAlonso Cáceres, DiegoSánchez Palma, PedroSánchez Rubio, Francisco JesúsQuantum computingModel-driven engineeringBoolean satisfiabilityIngeniería Eléctrica3313 Tecnología E Ingeniería Mecánicas3306 Ingeniería y Tecnología EléctricasThe development of quantum programs is becoming a reality due to the rapid advancement of quantum computing. Over the past few years, a multitude of hardware platforms, algorithms, and programming languages have emerged to support this paradigm. By the very nature of Quantum Mechanics principles, there is an enormous change of philosophy when building quantum programs, which operate in a probabilistic space, unlike the deterministic behaviour shown by classical programming languages. These conceptual differences can be overcome by using techniques and tools of Software Engineering. In this paper, we apply Model-Driven Engineering techniques in a systematic way to ease the generation of quantum programs and we apply it to solve the satisfiability problem, very important in many engineering domains like verification of discrete systems and test of integrated circuits. To that aim, we contribute with a metamodel for representing quantum circuits and a model-to-text transformation to generate working IBM Qiskit code. This model-driven infrastructure is employed to automatically generate quantum programs from SAT equations through a model-to-model transformation that embeds Grover’s algorithm. Besides, we provide formulas for calculating the number of required quantum elements from SAT equations, crucial in the current context of limited quantum resources. The interoperability with other tools and the extensibility to target additional quantum platforms is guaranteed thanks to the use of a model-based toolchain. We cover several usage scenarios to validate the approach, providing exemplary SAT equations, the generated Qiskit code and the results of executing this code in IBM Quantum infrastructure.We acknowledge the use of IBM Quantum services for this work. The views expressed in this paper are those of the authors, and do not reflect the official policy or position of IBM or the IBM Quantum team.ELSEVIERUniversidad Politécnica de Cartagena202320232022info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionapplication/pdfapplication/pdfhttp://hdl.handle.net/10317/12159reponame:Repositorio Digital UPCTinstname:Universidad Politécnica de Cartagena(UPCT)Ingléshttps://www.sciencedirect.com/science/article/pii/S0965997822001211Atribución-NoComercial-SinDerivadas 3.0 Españahttp://creativecommons.org/licenses/by-nc-nd/3.0/es/info:eu-repo/semantics/openAccessoai:repositorio.upct.es:10317/121592026-05-15T06:39:02Z |
| dc.title.none.fl_str_mv |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| title |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| spellingShingle |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem Alonso Cáceres, Diego Quantum computing Model-driven engineering Boolean satisfiability Ingeniería Eléctrica 3313 Tecnología E Ingeniería Mecánicas 3306 Ingeniería y Tecnología Eléctricas |
| title_short |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| title_full |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| title_fullStr |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| title_full_unstemmed |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| title_sort |
Engineering the development of quantum programs: Application to the Boolean satisfiability problem |
| dc.creator.none.fl_str_mv |
Alonso Cáceres, Diego Sánchez Palma, Pedro Sánchez Rubio, Francisco Jesús |
| author |
Alonso Cáceres, Diego |
| author_facet |
Alonso Cáceres, Diego Sánchez Palma, Pedro Sánchez Rubio, Francisco Jesús |
| author_role |
author |
| author2 |
Sánchez Palma, Pedro Sánchez Rubio, Francisco Jesús |
| author2_role |
author author |
| dc.contributor.none.fl_str_mv |
Universidad Politécnica de Cartagena |
| dc.subject.none.fl_str_mv |
Quantum computing Model-driven engineering Boolean satisfiability Ingeniería Eléctrica 3313 Tecnología E Ingeniería Mecánicas 3306 Ingeniería y Tecnología Eléctricas |
| topic |
Quantum computing Model-driven engineering Boolean satisfiability Ingeniería Eléctrica 3313 Tecnología E Ingeniería Mecánicas 3306 Ingeniería y Tecnología Eléctricas |
| description |
The development of quantum programs is becoming a reality due to the rapid advancement of quantum computing. Over the past few years, a multitude of hardware platforms, algorithms, and programming languages have emerged to support this paradigm. By the very nature of Quantum Mechanics principles, there is an enormous change of philosophy when building quantum programs, which operate in a probabilistic space, unlike the deterministic behaviour shown by classical programming languages. These conceptual differences can be overcome by using techniques and tools of Software Engineering. In this paper, we apply Model-Driven Engineering techniques in a systematic way to ease the generation of quantum programs and we apply it to solve the satisfiability problem, very important in many engineering domains like verification of discrete systems and test of integrated circuits. To that aim, we contribute with a metamodel for representing quantum circuits and a model-to-text transformation to generate working IBM Qiskit code. This model-driven infrastructure is employed to automatically generate quantum programs from SAT equations through a model-to-model transformation that embeds Grover’s algorithm. Besides, we provide formulas for calculating the number of required quantum elements from SAT equations, crucial in the current context of limited quantum resources. The interoperability with other tools and the extensibility to target additional quantum platforms is guaranteed thanks to the use of a model-based toolchain. We cover several usage scenarios to validate the approach, providing exemplary SAT equations, the generated Qiskit code and the results of executing this code in IBM Quantum infrastructure. |
| publishDate |
2022 |
| dc.date.none.fl_str_mv |
2022 2023 2023 |
| dc.type.none.fl_str_mv |
info:eu-repo/semantics/article info:eu-repo/semantics/publishedVersion |
| format |
article |
| status_str |
publishedVersion |
| dc.identifier.none.fl_str_mv |
http://hdl.handle.net/10317/12159 |
| url |
http://hdl.handle.net/10317/12159 |
| dc.language.none.fl_str_mv |
Inglés |
| language_invalid_str_mv |
Inglés |
| dc.relation.none.fl_str_mv |
https://www.sciencedirect.com/science/article/pii/S0965997822001211 |
| dc.rights.none.fl_str_mv |
Atribución-NoComercial-SinDerivadas 3.0 España http://creativecommons.org/licenses/by-nc-nd/3.0/es/ info:eu-repo/semantics/openAccess |
| rights_invalid_str_mv |
Atribución-NoComercial-SinDerivadas 3.0 España http://creativecommons.org/licenses/by-nc-nd/3.0/es/ |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf application/pdf |
| dc.publisher.none.fl_str_mv |
ELSEVIER |
| publisher.none.fl_str_mv |
ELSEVIER |
| dc.source.none.fl_str_mv |
reponame:Repositorio Digital UPCT instname:Universidad Politécnica de Cartagena(UPCT) |
| instname_str |
Universidad Politécnica de Cartagena(UPCT) |
| reponame_str |
Repositorio Digital UPCT |
| collection |
Repositorio Digital UPCT |
| repository.name.fl_str_mv |
|
| repository.mail.fl_str_mv |
|
| _version_ |
1869424043301535744 |
| score |
15.300719 |