The core challenge in designing an effective static program analysis is to find a good program abstraction -- one that retains only details relevant to a given query. In this paper, we present a new approach for automatically finding such an abstraction. Our approach uses a pessimistic strategy, which can optionally use guidance from a probabilistic model. Our approach applies to parametric static analyses implemented in Datalog, and is based on counterexample-guided abstraction refinement. For each untried abstraction, our probabilistic model provides a probability of success, while the size of the abstraction provides an estimate of its cost in terms of analysis time. Combining these two metrics, probability and cost, our refinement algor...
Deriving knowledge from real-world systems is a complex task, targeted by many scientific fields. Su...
Many source code tools help software programmers analyze programs as they are being developed, but s...
This paper concerns how to automatically create abstractions for program analysis. We show tha
The core challenge in designing an effective static program analysis is to find a good program abstr...
The core challenge in designing an effective static program analysis is to find a good program abstr...
Abstraction is a fundamental tool for reasoning about a complex system. Program abstraction has been...
A central task for a program analysis concerns how to efficiently find a program abstraction that ke...
Static program analysis is a powerful technique for bug-finding, verification, and program understan...
This paper concerns the question of how to create abstractions that are useful for program analysis....
Abstract. Having a precise yet sound abstraction of the inputs of nu-merical programs is important t...
In model checking, program correctness on all inputs is verified by considering the transition syste...
AbstractWe consider models of programs that incorporate probability, dense real-time and data. We pr...
We consider models of programs that incorporate probability, dense real-time and data. We present a ...
Given a program analysis problem that consists of a program and a property of interest, we use an em...
We consider models of programs that incorporate probability, dense real-time and data. We present a ...
Deriving knowledge from real-world systems is a complex task, targeted by many scientific fields. Su...
Many source code tools help software programmers analyze programs as they are being developed, but s...
This paper concerns how to automatically create abstractions for program analysis. We show tha
The core challenge in designing an effective static program analysis is to find a good program abstr...
The core challenge in designing an effective static program analysis is to find a good program abstr...
Abstraction is a fundamental tool for reasoning about a complex system. Program abstraction has been...
A central task for a program analysis concerns how to efficiently find a program abstraction that ke...
Static program analysis is a powerful technique for bug-finding, verification, and program understan...
This paper concerns the question of how to create abstractions that are useful for program analysis....
Abstract. Having a precise yet sound abstraction of the inputs of nu-merical programs is important t...
In model checking, program correctness on all inputs is verified by considering the transition syste...
AbstractWe consider models of programs that incorporate probability, dense real-time and data. We pr...
We consider models of programs that incorporate probability, dense real-time and data. We present a ...
Given a program analysis problem that consists of a program and a property of interest, we use an em...
We consider models of programs that incorporate probability, dense real-time and data. We present a ...
Deriving knowledge from real-world systems is a complex task, targeted by many scientific fields. Su...
Many source code tools help software programmers analyze programs as they are being developed, but s...
This paper concerns how to automatically create abstractions for program analysis. We show tha