Two Northeastern University computer scientists have received a three-year, $500,000 grant from the National Science Foundation to design algorithms capable of catching bugs in software and hardware systems both more efficiently and reliably than ever before.
The algorithms will be designed to function in microprocessors found in technology such as cell phones, avionics systems and medical devices. In some cases, undiscovered bugs could lead to product recalls, software crashes or even loss of life.
The project dovetails with Northeastern’s focus on use-inspired research that solves global challenges in health, security and sustainability.
“Serious bugs can cost billions of dollars to fix,” said principal investigator Pete Manolios, an associate professor in the College of Computer and Information Science. “Making sure microprocessors do what they are supposed to do and are bug-free is a major challenge.”
Manolios will collaborate on the project with research scientist Eugene Goldberg and several computer science graduate students.
The beauty of the new algorithms lies in their ability to transform proofs of models into tests that can be applied to physical devices in order to find bugs, Goldberg said.
“This is a much more precise and mathematically sensible way to approach software verification,” he explained. “We have really come up with a new approach for transferring proofs from models to actual physical systems.”
The Northeastern researchers recently submitted a National Science Foundation grant proposal to explore their innovative approach to software verification on a larger scale. Over the next three years, the research team plans to connect with companies that have a vested interest in software verification, such as Intel, IBM and Mentor Graphics.
“We want to look at more application-specific approaches and incorporate our research into industry practice,” Manolios said. “We want to create a pathway to industry.”