Testing Polymorphic Data Structures
Abstract
Following our recent breakthrough in testing polymorphic functions, I propose developing the theory and tools for testing polymorphic data structures. Polymorphism means the same code can work with different types of data. It has been shown that the correctness of a broad class of polymorphic functions can be established by testing only one or two of their monomorphic instances with a significantly reduced input domain. The intuition is that fewer functions can work uniformly across different data types, and thus we need less testing to distinguish them; that is, there are inherently fewer polymorphic functions and thus fewer possibilities to make mistakes. This project aims at extending the breakthrough in testing polymorphic functions to testing polymorphic data structures, where a data structure packs an abstract data type and a collection of functions on the data. The challenges come from the newly introduced abstract data type and the potential interaction between different functions in the same data structure. The study of testing theory for data structures could potentially lead to better and more efficient software testing, thus improving the quality of critical computer systems.
Document Details
- Document Type
- DoD Grant Award
- Publication Date
- Mar 07, 2024
- Source ID
- FA95502310579
Entities
People
- Kuen-Bang Hou
Organizations
- Air Force Office of Scientific Research
- Regents of the University of Minnesota
- United States Air Force