A fundamental problem in interprocedural program analyses is the need to repre-sent and manipulate collections of large sets. Binary Decision Diagrams (BDDs) are a data structure widely used in model checking to compactly encode large state sets. In this dissertation, we develop new techniques and frameworks for applying BDDs to program analysis, and use our BDD-based analyses to gain new insight into factors influencing analysis precision. To make it feasible to express complicated, interrelated analyses using BDDs, we first present the design and implementation of Jedd, a Java language extension which adds relations implemented with BDDs as a datatype, and makes it possible to express BDD-based algorithms at a higher level than existing B...
We present a new limited form of interprocedural analy-sis called eld analysis that can be used by a...
Abstract. Any finite tree automaton (or regular type) can be used to construct an abstract interpret...
Points-to analysis addresses a fundamental problem in program analysis: determining statically which...
In this paper we present Jedd, a language extension to Java that supports a convenient way of progra...
One of the big performance problems of software model checking is the state-explosion problem. Vario...
AbstractAbstract interpretation has been widely used for the analysis of object-oriented languages a...
Program analysis has a long history in computer science. Even when only considering the important as...
Program analysis has a long history in computer science. Even when only considering the important as...
Abstract. Decision Diagrams (DDs) are a well populated family of data structures, used for efficient...
Binary decision diagrams (BDD) are widely used models in software verification. There are considerab...
The goal of a program analysis framework is to decrease the effort required of a program analysis de...
We present a flow and context sensitive compositional information flow analysis for full (mono-threa...
Practical programs share large modules of code. However, many program analyses are ineffective at re...
Abstract. JavaFAN is a Java program analysis framework, that can symbolically execute multithreaded ...
Binary Decision Diagrams (BDDs) [1] and their variations are a known representation of Boolean funct...
We present a new limited form of interprocedural analy-sis called eld analysis that can be used by a...
Abstract. Any finite tree automaton (or regular type) can be used to construct an abstract interpret...
Points-to analysis addresses a fundamental problem in program analysis: determining statically which...
In this paper we present Jedd, a language extension to Java that supports a convenient way of progra...
One of the big performance problems of software model checking is the state-explosion problem. Vario...
AbstractAbstract interpretation has been widely used for the analysis of object-oriented languages a...
Program analysis has a long history in computer science. Even when only considering the important as...
Program analysis has a long history in computer science. Even when only considering the important as...
Abstract. Decision Diagrams (DDs) are a well populated family of data structures, used for efficient...
Binary decision diagrams (BDD) are widely used models in software verification. There are considerab...
The goal of a program analysis framework is to decrease the effort required of a program analysis de...
We present a flow and context sensitive compositional information flow analysis for full (mono-threa...
Practical programs share large modules of code. However, many program analyses are ineffective at re...
Abstract. JavaFAN is a Java program analysis framework, that can symbolically execute multithreaded ...
Binary Decision Diagrams (BDDs) [1] and their variations are a known representation of Boolean funct...
We present a new limited form of interprocedural analy-sis called eld analysis that can be used by a...
Abstract. Any finite tree automaton (or regular type) can be used to construct an abstract interpret...
Points-to analysis addresses a fundamental problem in program analysis: determining statically which...