Skip to main content

Three Forms of Mutant Subsumption: Basic, Strict and Broad

  • Conference paper
  • First Online:
Software Technologies (ICSOFT 2022)

Abstract

Mutant subsumption is the property of a mutant to be more stubborn than another, i.e. to be harder to distinguish from the base program. The traditional definition of mutant subsumption distinguishes between three forms of subsumption, namely: true subsumption, static subsumption, and dynamic subsumption. Also, the traditional definition of mutant subsumption appears to assume that programs and their mutants converge for all test data, but in practice this is not the case: executions may lead to infinite loops or attempt illegal operations of all kinds. In this paper we revisit the definition of mutant subsumption by taking into consideration the possibility that executions may diverge, and we propose an orthogonal classification of subsumption.

This research is partially supported by NSF under grant DGE 1565478.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. AlBlwi, S., Marsit, I., Khaireddine, B., Ayad, A., Loh, J., Mili, A.: Generalized mutant subsumption. In: Proceedings, ICSOFT 2022. Lisbon, Portugal, July 2022

    Google Scholar 

  2. Andrews, J.H., Briand, L.C., Labiche, Y., Namin, A.S.: Using mutation analysis for assessing and comparing testing coverage criteria. IEEE Trans. Softw. Eng. 32(8), 608–624 (2006)

    Article  Google Scholar 

  3. Andrews, J., Briand, L., Labiche, Y.: Is mutation an appropriate tool for testing experiments? In: Proceedings, ICSE (2005)

    Google Scholar 

  4. Brink, C., Kahl, W., Schmidt, G.: Relational Methods in Computer Science. Advances in Computer Science. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-36280-0

  5. Diallo, N., Ghardallou, W., Mili, A.: Correctness and relative correctness. In: Proceedings, 37th International Conference on Software Engineering, NIER track. Firenze, Italy, 20–22 May 2015. https://doi.org/10.1109/ICSE.2015.200

  6. Dijkstra, E.: A Discipline of Programming. Prentice Hall (1976)

    Google Scholar 

  7. Gazzola, L., Micucci, D., Mariani, L.: Automatic software repair: a survey. IEEE Trans. Softw. Eng. 45(1) (2019)

    Google Scholar 

  8. Gries, D.: The Science of Programming. Springer, New York (1981). https://doi.org/10.1007/978-1-4612-5983-1

    Book  MATH  Google Scholar 

  9. Guimaraes, M.A., Fernandes, L., Riberio, M., d’Amorim, M., Gheyi, R.: Optimizing mutation testing by discovering dynamic mutant subsumption relations. In: Proceedings, 13th International Conference on Software Testing, Validation and Verification (2020)

    Google Scholar 

  10. Hehner, E.: A Practical Theory of Programming. Springer, New York (1993). https://doi.org/10.1007/978-1-4419-8596-5

  11. Hoare, C.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–583 (1969). https://doi.org/10.1145/363235.363259

    Article  MATH  Google Scholar 

  12. Just, R., Jalali, D., Inozemtseva, L., Ernst, M., Holmes, R., Fraser, G.: Are mutants a valid substitute for real faults in software testing? In: Proceedings, FSE (2014)

    Google Scholar 

  13. Khaireddine, B., Martinez, M., Mili, A.: Program repair at arbitrary fault depth. In: Proceedings, ICST 2019. Xi’An, China, April 2019

    Google Scholar 

  14. Khaireddine, B., Mili, A.: Quantifying faultiness: what does it mean to have \(n\) faults? In: Proceedings, FormaliSE 2021, ICSE 2021 Colocated Conference, May 2021

    Google Scholar 

  15. Kurtz, B., Amman, P., Delamaro, M., Offutt, J., Deng, L.: Mutant subsumption graphs. In: Proceedings, 7th International Conference on Software Testing, Validation and Verification Workshops (2014)

    Google Scholar 

  16. Kurtz, B., Ammann, P., Offutt, J.: Static analysis of mutant subsumption. In: Proceedings, IEEE 8th International Conference on Software Testing, Verification and Validation Workshops (2015)

    Google Scholar 

  17. Li, X., Wang, Y., Lin, H.: Coverage based dynamic mutant subsumption graph. In: Proceedings, International Conference on Mathematics, Modeling and Simulation Technologies and Applications (2017)

    Google Scholar 

  18. Manna, Z.: A Mathematical Theory of Computation. McGraw-Hill (1974)

    Google Scholar 

  19. Mili, A., Frias, M.F., Jaoua, A.: On faults and faulty programs. In: Höfner, P., Jipsen, P., Kahl, W., Müller, M.E. (eds.) RAMICS 2014. LNCS, vol. 8428, pp. 191–207. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-06251-8_12

    Chapter  MATH  Google Scholar 

  20. Mili, A.: Differentiators and detectors. Inf. Process. Lett. 169 (2021)

    Google Scholar 

  21. Mili, A., Tchier, F.: Software Testing: Operations and Concepts. Wiley (2015)

    Google Scholar 

  22. Mills, H.D., Basili, V.R., Gannon, J.D., Hamlet, D.R.: Structured Programming: A Mathematical Approach. Allyn and Bacon, Boston (1986)

    MATH  Google Scholar 

  23. Morgan, C.C.: Programming from Specifications. International Series in Computer Sciences, 2nd edn. Prentice Hall, London (1998)

    MATH  Google Scholar 

  24. Namin, A.S., Kakarla, S.: The use of mutation in testing experiments and its sensitivity to external threats. In: Proceedings, ISSTA (2011)

    Google Scholar 

  25. Parsai, A., Demeyer, S.: Dynamic mutant subsumption analysis using littledarwin. In: Proceedings, A-TEST 2017. Paderborn, Germany, 4–5 September 2017

    Google Scholar 

  26. Schmidt, G.: Relational Mathematics. No. 132 in Encyclopedia of Mathematics and its Applications, Cambridge University Press, November 2010

    Google Scholar 

  27. Souza, B.: Identifying mutation subsumption relations. In: Proceedings, IEEE/ACM International Conference on Automated Software Engineering, pp. 1388–1390, December 2020

    Google Scholar 

  28. Tenório, M.C., Lopes, R.V.V., Fechine, J., Marinho, T., Costa, E.: Subsumption in mutation testing: an automated model based on genetic algorithm. In: Latifi, S. (ed.) 16th International Conference on Information Technology-New Generations (ITNG 2019). AISC, vol. 800, pp. 169–175. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-14070-0_24

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ali Mili .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

AlBlwi, S., Marsit, I., Khaireddine, B., Ayad, A., Loh, J., Mili, A. (2023). Three Forms of Mutant Subsumption: Basic, Strict and Broad. In: Fill, HG., van Sinderen, M., Maciaszek, L.A. (eds) Software Technologies. ICSOFT 2022. Communications in Computer and Information Science, vol 1859. Springer, Cham. https://doi.org/10.1007/978-3-031-37231-5_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-37231-5_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-37230-8

  • Online ISBN: 978-3-031-37231-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics