From Finite to Infinite: Scalable Automatic Verification of Hardware Designs and Distributed Protocols
dc.contributor.author | Goel, Aman | |
dc.date.accessioned | 2022-01-19T15:23:39Z | |
dc.date.available | 2022-01-19T15:23:39Z | |
dc.date.issued | 2021 | |
dc.identifier.uri | https://hdl.handle.net/2027.42/171355 | |
dc.description.abstract | As the world increasingly depends on complex systems to transfer messages, store our data, and control our finances, how can we tell whether the system is correct, secure, and reliable? Common practices continue to employ computation-intensive simulation-based verification and tedious manual verification. Formal verification using model checking provides an automatic way to identify functional errors in human-engineered designs. Our work presents a collection of scalable model checking techniques to automatically verify hardware designs and distributed protocols by incorporating often ignored structural information readily available at the design level. For hardware designs, we developed equality abstraction, a novel technique that abstracts away unimportant low-level specifics and automatically identifies crucial information using equality relations over source-code level objects, such as branch conditions, operations, etc. Our hardware verifier, called AVR, won the prestigious Hardware Model Checking Competition 2020, outperforming state-of-the-art verifiers with a wide margin, and showed large benefits on a variety of challenging industrial-strength designs and RISC-V cores. Recognizing the lack of automation in verifying distributed protocols, we developed IC3PO, a new verifier that significantly outperforms the state-of-the-art by taking advantage of three structural features in protocol specifications: a) the spatial regularity over replicas that can be permuted arbitrarily, b) the temporal regularity over ordered ranges, and c) the hierarchical protocol structure. IC3PO was able to prove the safety of the Paxos consensus protocol, presenting the first demonstration of an automatically-inferred inductive invariant for Lamport's original Paxos specification. Both AVR and IC3PO generate mathematical explanations, called certificates, that can be independently checked to guarantee design correctness. They can also generate counterexamples that help in identifying design bugs before deployment resulting in robustness against malicious attacks and reduction in down-times and loss of revenue. | |
dc.language.iso | en_US | |
dc.subject | model checking | |
dc.subject | inductive invariant inference | |
dc.subject | hardware verification | |
dc.subject | distributed systems | |
dc.subject | formal methods | |
dc.subject | Paxos | |
dc.title | From Finite to Infinite: Scalable Automatic Verification of Hardware Designs and Distributed Protocols | |
dc.type | Thesis | |
dc.description.thesisdegreename | PhD | en_US |
dc.description.thesisdegreediscipline | Computer Science & Engineering | |
dc.description.thesisdegreegrantor | University of Michigan, Horace H. Rackham School of Graduate Studies | |
dc.contributor.committeemember | Sakallah, Karem A | |
dc.contributor.committeemember | Lafortune, Stephane | |
dc.contributor.committeemember | Hayes, John Patrick | |
dc.contributor.committeemember | Kapritsos, Manos | |
dc.subject.hlbsecondlevel | Computer Science | |
dc.subject.hlbtoplevel | Engineering | |
dc.description.bitstreamurl | http://deepblue.lib.umich.edu/bitstream/2027.42/171355/1/amangoel_1.pdf | |
dc.identifier.doi | https://dx.doi.org/10.7302/3867 | |
dc.identifier.orcid | 0000-0003-0520-8890 | |
dc.identifier.name-orcid | Goel, Aman; 0000-0003-0520-8890 | en_US |
dc.owningcollname | Dissertations and Theses (Ph.D. and Master's) |
Files in this item
Remediation of Harmful Language
The University of Michigan Library aims to describe its collections in a way that respects the people and communities who create, use, and are represented in them. We encourage you to Contact Us anonymously if you encounter harmful or problematic language in catalog records or finding aids. More information about our policies and practices is available at Remediation of Harmful Language.
Accessibility
If you are unable to use this file in its current format, please select the Contact Us link and we can modify it to make it more accessible to you.