Quantum Circuit Mutants: Empirical Analysis and Recommendations (2311.16913v5)
Abstract: As a new research area, quantum software testing lacks systematic testing benchmarks to assess testing techniques' effectiveness. Recently, some open-source benchmarks and mutation analysis tools have emerged. However, there is insufficient evidence on how various quantum circuit characteristics (e.g., circuit depth, number of quantum gates), algorithms (e.g., Quantum Approximate Optimization Algorithm), and mutation characteristics (e.g., mutation operators) affect the detection of mutants in quantum circuits. Studying such relations is important to systematically design faulty benchmarks with varied attributes (e.g., the difficulty in detecting a seeded fault) to facilitate assessing the cost-effectiveness of quantum software testing techniques efficiently. To this end, we present a large-scale empirical evaluation with more than 700K faulty benchmarks (quantum circuits) generated by mutating 382 real-world quantum circuits. Based on the results, we provide valuable insights for researchers to define systematic quantum mutation analysis techniques. We also provide a tool to recommend mutants to users based on chosen characteristics (e.g., a quantum algorithm type) and the required difficulty of detecting mutants. Finally, we also provide faulty benchmarks that can already be used to assess the cost-effectiveness of quantum software testing techniques.
- M. Coccia, S. Roshani, and M. Mosleh, “Evolution of quantum computing: Theoretical and innovation management implications for emerging quantum industry,” IEEE Transactions on Engineering Management, pp. 1–11, 2022.
- S. Ali, T. Yue, and R. Abreu, “When software engineering meets quantum computing,” Commun. ACM, vol. 65, no. 4, pp. 84–88, mar 2022. [Online]. Available: https://doi.org/10.1145/3512340
- S. Ali, P. Arcaini, X. Wang, and T. Yue, “Assessing the effectiveness of input and output coverage criteria for testing quantum programs,” in 2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST), 2021, pp. 13–23.
- S. Honarvar, M. R. Mousavi, and R. Nagarajan, “Property-based testing of quantum programs in Q#,” in Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, ser. ICSEW’20. New York, NY, USA: Association for Computing Machinery, 2020, pp. 430–435. [Online]. Available: https://doi.org/10.1145/3387940.3391459
- D. Fortunato, J. Campos, and R. Abreu, “QMutPy: A mutation testing tool for quantum algorithms and applications in qiskit,” in Proceedings of the 31st ACM SIGSOFT International Symposium on Software Testing and Analysis, ser. ISSTA 2022. New York, NY, USA: Association for Computing Machinery, 2022, pp. 797–800. [Online]. Available: https://doi.org/10.1145/3533767.3543296
- X. Wang, T. Yu, P. Arcaini, T. Yue, and S. Ali, “Mutation-based test generation for quantum programs with multi-objective search,” in Proceedings of the Genetic and Evolutionary Computation Conference, ser. GECCO ’22. New York, NY, USA: Association for Computing Machinery, 2022, pp. 1345–1353. [Online]. Available: https://doi.org/10.1145/3512290.3528869
- D. Fortunato, J. Campos, and R. Abreu, “Mutation testing of quantum programs written in QISKit,” in Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Companion Proceedings, ser. ICSE ’22. New York, NY, USA: Association for Computing Machinery, 2022, pp. 358–359. [Online]. Available: https://doi.org/10.1145/3510454.3528649
- ——, “Mutation testing of quantum programs: A case study with Qiskit,” IEEE Transactions on Quantum Engineering, vol. 3, pp. 1–17, 2022.
- X. Wang, P. Arcaini, T. Yue, and S. Ali, “Generating failing test suites for quantum programs with search,” in Search-Based Software Engineering. Cham: Springer International Publishing, 2021, pp. 9–25.
- ——, “Application of combinatorial testing to quantum programs,” in 2021 IEEE 21st International Conference on Software Quality, Reliability and Security (QRS), 2021, pp. 179–188.
- P. Zhao, J. Zhao, Z. Miao, and S. Lan, “Bugs4Q: A benchmark of real bugs for quantum programs,” in 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE), 2021, pp. 1373–1376.
- P. Zhao, Z. Miao, S. Lan, and J. Zhao, “Bugs4Q: A benchmark of existing bugs to enable controlled testing and debugging studies for quantum programs,” Journal of Systems and Software, vol. 205, p. 111805, 2023. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0164121223002005
- J. Campos and A. Souto, “QBugs: A collection of reproducible bugs in quantum algorithms and a supporting infrastructure to enable controlled quantum software testing and debugging experiments,” in 2021 IEEE/ACM 2nd International Workshop on Quantum Software Engineering (Q-SE). Los Alamitos, CA, USA: IEEE Computer Society, jun 2021, pp. 28–32. [Online]. Available: https://doi.ieeecomputersociety.org/10.1109/Q-SE52541.2021.00013
- G. Pontolillo and M. R. Mousavi, “A multi-lingual benchmark for property-based testing of quantum programs,” in Proceedings of the 3rd International Workshop on Quantum Software Engineering, ser. Q-SE ’22. New York, NY, USA: Association for Computing Machinery, 2023, pp. 1–7. [Online]. Available: https://doi.org/10.1145/3528230.3528395
- E. Mendiluze, S. Ali, P. Arcaini, and T. Yue, “Muskit: A mutation analysis tool for quantum software testing,” pp. 1266–1270, 2022. [Online]. Available: https://doi.org/10.1109/ASE51524.2021.9678563
- E. Mendiluze Usandizaga, T. Yue, P. Arcaini, and S. Ali, “Supplementary materia for the paper “Which Quantum Circuit Mutants Shall Be Used? An Empirical Evaluation of Quantum Circuit Mutations”.” [Online]. Available: https://github.com/EnautMendi/Which-Quantum-Circuit-Mutants-Shall-Be-Used
- M. Woodward, “Mutation testing—its origin and evolution,” Information and Software Technology, vol. 35, no. 3, pp. 163–169, 1993. [Online]. Available: https://www.sciencedirect.com/science/article/pii/0950584993900536
- A. Estero-Botaro, F. Palomo-Lozano, and I. Medina-Bulo, “Quantitative evaluation of mutation operators for WS-BPEL compositions,” in 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, 2010, pp. 142–150.
- M. Papadakis, C. Henard, M. Harman, Y. Jia, and Y. Le Traon, “Threats to the validity of mutation-based test assessment,” in Proceedings of the 25th International Symposium on Software Testing and Analysis, ser. ISSTA 2016. New York, NY, USA: Association for Computing Machinery, 2016, pp. 354–365. [Online]. Available: https://doi.org/10.1145/2931037.2931040
- M. Papadakis, Y. Jia, M. Harman, and Y. Le Traon, “Trivial compiler equivalence: A large scale empirical study of a simple, fast and effective equivalent mutant detection technique,” in 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, vol. 1, 2015, pp. 936–946.
- Y. Jia and M. Harman, “Higher order mutation testing,” Information and Software Technology, vol. 51, no. 10, pp. 1379–1393, 2009. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0950584909000688
- M. Kintis, M. Papadakis, and N. Malevris, “Evaluating mutation testing alternatives: A collateral experiment,” in 2010 Asia Pacific Software Engineering Conference. IEEE, 2010, pp. 300–309.
- W. K. Wootters and W. H. Zurek, “A single quantum cannot be cloned,” Nature, vol. 299, no. 5886, pp. 802–803, Oct 1982. [Online]. Available: https://doi.org/10.1038/299802a0
- “IBM Quantum composer.” [Online]. Available: https://quantum-computing.ibm.com/
- X. Wang, P. Arcaini, T. Yue, and S. Ali, “Quito: A coverage-guided test generator for quantum programs,” in Proceedings of the 36th IEEE/ACM International Conference on Automated Software Engineering, ser. ASE ’21. IEEE Press, 2022, pp. 1237–1241. [Online]. Available: https://doi.org/10.1109/ASE51524.2021.9678798
- Y. Jia and M. Harman, “An analysis and survey of the development of mutation testing,” IEEE Transactions on Software Engineering, vol. 37, no. 5, pp. 649–678, 2011.
- M. Papadakis, M. Kintis, J. Zhang, Y. Jia, Y. Le Traon, and M. Harman, “Chapter six - mutation testing advances: An analysis and survey,” ser. Advances in Computers, A. M. Memon, Ed. Elsevier, 2019, vol. 112, pp. 275–378. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S0065245818300305
- P. Anbalagan and T. Xie, “Automated generation of pointcut mutants for testing pointcuts in AspectJ programs,” in 2008 19th International Symposium on Software Reliability Engineering (ISSRE), 2008, pp. 239–248.
- J. Boubeta-Puig, I. Medina-Bulo, and A. García-Domínguez, “Analogies and differences between mutation operators for WS-BPEL 2.0 and other languages,” in 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops, 2011, pp. 398–407.
- S. Mirshokraie, A. Mesbah, and K. Pattabiraman, “Guided mutation testing for javascript web applications,” IEEE Transactions on Software Engineering, vol. 41, no. 5, pp. 429–444, 2015.
- P. Delgado-Pérez, S. Segura, and I. Medina-Bulo, “Assessment of C++ object-oriented mutation operators: A selective mutation approach,” Software Testing, Verification and Reliability, vol. 27, no. 4-5, p. e1630, 2017.
- J. Hu, N. Li, and J. Offutt, “An analysis of OO mutation operators,” in 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops, 2011, pp. 334–341.
- F. C. Ferrari, J. C. Maldonado, and A. Rashid, “Mutation testing for aspect-oriented programs,” in 2008 1st International Conference on Software Testing, Verification, and Validation, 2008, pp. 52–61.
- L. Bottaci, “Type sensitive application of mutation operators for dynamically typed programs,” in 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, 2010, pp. 126–131.
- M. Gligoric, S. Badame, and R. Johnson, “SMutant: A tool for type-sensitive mutation testing in a dynamic language,” in Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ser. ESEC/FSE ’11. New York, NY, USA: Association for Computing Machinery, 2011, pp. 424–427. [Online]. Available: https://doi.org/10.1145/2025113.2025181
- A. Alberto, A. Cavalcanti, M. Gaudel, and A. Simão, “Formal mutation testing for Circus,” Information and Software Technology, vol. 81, pp. 131–153, 2017. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S095058491630057X
- U. Praphamontripong and J. Offutt, “Applying mutation testing to web applications,” in 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, 2010, pp. 132–141.
- U. Praphamontripong, J. Offutt, L. Deng, and J. Gu, “An experimental evaluation of web mutation operators,” in 2016 IEEE Ninth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2016, pp. 102–111.
- L. Deng, N. Mirzaei, P. Ammann, and J. Offutt, “Towards mutation analysis of Android apps,” in 2015 IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2015, pp. 1–10.
- M. P. Usaola, G. Rojas, I. Rodríguez, and S. Hernández, “An architecture for the development of mutation operators,” in 2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2017, pp. 143–148.
- R. A. Oliveira, E. Alégroth, Z. Gao, and A. Memon, “Definition and evaluation of mutation operators for GUI-level mutation analysis,” in 2015 IEEE Eighth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2015, pp. 1–10.
- F. Wu, J. Nanavati, M. Harman, Y. Jia, and J. Krinke, “Memory mutation testing,” Information and Software Technology, vol. 81, pp. 97–111, 2017. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0950584916300362
- M. E. Delamaro, J. Offutt, and P. Ammann, “Designing deletion mutation operators,” in 2014 IEEE Seventh International Conference on Software Testing, Verification and Validation, 2014, pp. 11–20.
- R. Gopinath and E. Walkingshaw, “How good are your types? using mutation analysis to evaluate the effectiveness of type annotations,” in 2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2017, pp. 122–127.
- P. Arcaini, A. Gargantini, and E. Riccobene, “MutRex: A mutation-based generator of fault detecting strings for regular expressions,” in 2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2017, pp. 87–96.
- ——, “Fault-based test generation for regular expressions by mutation,” Software Testing, Verification and Reliability, vol. 29, no. 1-2, p. e1664, 2019. [Online]. Available: https://onlinelibrary.wiley.com/doi/abs/10.1002/stvr.1664
- L. Zhang, S.-S. Hou, J.-J. Hu, T. Xie, and H. Mei, “Is operator-based mutant selection superior to random mutant selection?” in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1, ser. ICSE ’10. New York, NY, USA: Association for Computing Machinery, 2010, pp. 435–444. [Online]. Available: https://doi.org/10.1145/1806799.1806863
- R. Gopinath, A. Alipour, I. Ahmed, C. Jensen, and A. Groce, “How hard does mutation analysis have to be, anyway?” in 2015 IEEE 26th International Symposium on Software Reliability Engineering (ISSRE), 2015, pp. 216–227.
- A. Siami Namin, J. H. Andrews, and D. J. Murdoch, “Sufficient mutation operators for measuring test effectiveness,” in Proceedings of the 30th International Conference on Software Engineering, ser. ICSE ’08. New York, NY, USA: Association for Computing Machinery, 2008, pp. 351–360. [Online]. Available: https://doi.org/10.1145/1368088.1368136
- M. E. Delamaro, L. Deng, V. H. S. Durelli, N. Li, and J. Offutt, “Experimental evaluation of SDL and one-op mutation for C,” in 2014 IEEE Seventh International Conference on Software Testing, Verification and Validation, 2014, pp. 203–212.
- V. H. S. Durelli, N. M. De Souza, and M. E. Delamaro, “Are deletion mutants easier to identify manually?” in 2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 2017, pp. 149–158.
- X. Yao, M. Harman, and Y. Jia, “A study of equivalent and stubborn mutation operators using human analysis of equivalence,” in Proceedings of the 36th International Conference on Software Engineering, ser. ICSE 2014. New York, NY, USA: Association for Computing Machinery, 2014, pp. 919–930. [Online]. Available: https://doi.org/10.1145/2568225.2568265
- B. H. Smith and L. Williams, “An empirical evaluation of the MuJava mutation operators,” in Testing: Academic and Industrial Conference Practice and Research Techniques-MUTATION (TAICPART-MUTATION 2007). IEEE, 2007, pp. 193–202.
- Y.-S. Ma, J. Offutt, and Y.-R. Kwon, “MuJava: A mutation system for Java,” in Proceedings of the 28th International Conference on Software Engineering, ser. ICSE ’06. New York, NY, USA: Association for Computing Machinery, 2006, pp. 827–830. [Online]. Available: https://doi.org/10.1145/1134285.1134425
- R. Just, D. Jalali, L. Inozemtseva, M. D. Ernst, R. Holmes, and G. Fraser, “Are mutants a valid substitute for real faults in software testing?” in Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, ser. FSE 2014. New York, NY, USA: Association for Computing Machinery, 2014, pp. 654–665. [Online]. Available: https://doi.org/10.1145/2635868.2635929
- H. Zhang, T. Yue, S. Ali, and C. Liu, “Towards mutation analysis for use cases,” in Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, ser. MODELS ’16. New York, NY, USA: Association for Computing Machinery, 2016, pp. 363–373. [Online]. Available: https://doi.org/10.1145/2976767.2976784
- P. Zhao, J. Zhao, and L. Ma, “Identifying bug patterns in quantum programs,” in 2021 IEEE/ACM 2nd International Workshop on Quantum Software Engineering (Q-SE). Los Alamitos, CA, USA: IEEE Computer Society, jun 2021, pp. 16–21. [Online]. Available: https://doi.ieeecomputersociety.org/10.1109/Q-SE52541.2021.00011
- N. Quetschlich, L. Burgholzer, and R. Wille, “MQT Bench: Benchmarking software and design automation tools for quantum computing,” Quantum, 2023, MQT Bench is available at https://www.cda.cit.tum.de/mqtbench/.
- A. W. Cross, L. S. Bishop, J. A. Smolin, and J. M. Gambetta, “Open quantum assembly language,” 2017.
- J. Domínguez-Jiménez, A. Estero-Botaro, A. García-Domínguez, and I. Medina-Bulo, “Evolutionary mutation testing,” Information and Software Technology, vol. 53, no. 10, pp. 1108–1123, 2011, special Section on Mutation Testing. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S095058491100084X
- G. Mogos, “Quantum random number generator vs. random number generator,” in 2016 International Conference on Communications (COMM), 2016, pp. 423–426.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.