97 citations · 303 across the 17 of their papers we have counts for
21 papers
Greybox Fuzzing of Distributed Systems
Ruijie Meng, George Pîrlea, Abhik Roychoudhury +1
Grey-box fuzzing is the lightweight approach of choice for finding bugs in sequential programs. It provides a balance between efficiency and effectiveness by conducting a biased ra…
HIPPODROME: Data Race Repair using Static Analysis Summaries
Andreea Costea, Abhishek Tiwari, Sigmund Chianasta +3
Implementing bug-free concurrent programs is a challenging task in modern software development. State-of-the-art static analyses find hundreds of concurrency bugs in production cod…
Compiling a Higher-Order Smart Contract Language to LLVM
Vaivaswatha Nagaraj, Jacob Johannsen, Anton Trunov +3
Scilla is a higher-order polymorphic typed intermediate level language for implementing smart contracts. In this talk, we describe a Scilla compiler targeting LLVM, with a focus on…
Certifying Certainty and Uncertainty in Approximate Membership Query Structures -- Extended Version
Kiran Gopinathan, Ilya Sergey
Approximate Membership Query structures (AMQs) rely on randomisation for time- and space-efficiency, while introducing a possibility of false positive and false negative answers. C…
QED at Large: A Survey of Engineering of Formally Verified Software
Talia Ringer, Karl Palmskog, Ilya Sergey +2
Development of formal proofs of correctness of programs can increase actual and perceived reliability and facilitate better understanding of program specifications and their underl…
Concise Read-Only Specifications for Better Synthesis of Programs with Pointers -- Extended Version
Andreea Costea, Amy Zhu, Nadia Polikarpova +1
In program synthesis there is a well-known trade-off between concise and strong specifications: if a specification is too verbose, it might be harder to write than the program; if…