With science fiction of yore being reality recently with self-driving cars, wearable computers and autonomous robots, software reliability is growing increasingly important. A critical pre-requisite to ensure the software that controls such systems is correct is the availability of precise specifications that describe a program\u27s intended behaviors. Generating these specifications manually is a challenging, often unsuccessful, exercise; unfortunately, existing static analysis techniques often produce poor quality specifications that are ineffective in aiding program verification tasks. In this dissertation, we present a recent line of work on automated synthesis of specifications that overcome many of the deficiencies that plague existin...
Many problems in program analysis, verification, and synthesis require inferring specifications of u...
We advocate an automated refinement approach to developing programs and their proofs. The approach i...
A key challenge of existing program synthesizers is ensuring that the synthesized program generalize...
With science fiction of yore being reality recently with self-driving cars, wearable computers and a...
Although the program verification community has developed several techniques for analyzing software ...
Despite their proven benefits, useful, comprehensible, and efficiently checkable specifications are ...
Thesis (Ph.D.)--University of Washington, 2017-06Programming by examples (PBE), or inductive program...
Specification is the first and arguably the most important step for formal verification and correct-...
Formal verification is a popular approach for program quality and correctness especially as an alter...
In this paper, we demonstrate the use of model checking in an automated technique to verify the oper...
In the long run, programs should be written from the start with verification in mind. Programs writt...
Program reasoning consists of the tasks of automatically and statically ver-ifying correctness and i...
Program verification is a promising approach to improving program quality, because it can search all...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
Program reasoning consists of the tasks of automatically and statically verifying correctness and in...
Many problems in program analysis, verification, and synthesis require inferring specifications of u...
We advocate an automated refinement approach to developing programs and their proofs. The approach i...
A key challenge of existing program synthesizers is ensuring that the synthesized program generalize...
With science fiction of yore being reality recently with self-driving cars, wearable computers and a...
Although the program verification community has developed several techniques for analyzing software ...
Despite their proven benefits, useful, comprehensible, and efficiently checkable specifications are ...
Thesis (Ph.D.)--University of Washington, 2017-06Programming by examples (PBE), or inductive program...
Specification is the first and arguably the most important step for formal verification and correct-...
Formal verification is a popular approach for program quality and correctness especially as an alter...
In this paper, we demonstrate the use of model checking in an automated technique to verify the oper...
In the long run, programs should be written from the start with verification in mind. Programs writt...
Program reasoning consists of the tasks of automatically and statically ver-ifying correctness and i...
Program verification is a promising approach to improving program quality, because it can search all...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
Program reasoning consists of the tasks of automatically and statically verifying correctness and in...
Many problems in program analysis, verification, and synthesis require inferring specifications of u...
We advocate an automated refinement approach to developing programs and their proofs. The approach i...
A key challenge of existing program synthesizers is ensuring that the synthesized program generalize...