Research at Automated Software Design Group
.
The
focus of our research is on problems at the intersection of Software
Engineering, Dependable Distributed Computing, and Formal Methods. In the past decade, we have been concentrated
on the problem of automated synthesis of fault-tolerant distributed programs.
Specifically, we have developed algorithms and software tools that
automatically generate self-stabilizing system, where a self-stabilizing system recovers from any
configuration/state to a set of legitimate states and behaviors, and remains
there as long as no faults perturb it. This is a significant problem as numerous systems (e.g.,
autonomous robots/vehicles, IoT, network protocols)
are managed and controlled by distributed programs that might be subject to
transient faults (e.g., soft errors, bad initialization, loss of coordination).
As such, the correctness of such systems is of utmost importance.
In another joint project with researchers at NASA Langley’s Formal Methods group, we have developed a mechanically-verified framework in the PVS theorem prover for Riemann Integral. This is a high-impact problem as real-valued functions have applications in numerous scientific and engineering fields (e.g., avionics). Our contributions in this project have been integrated in NASA Langley’s PVS library.