Korat: Automated testing based on Java predicates
C Boyapati, S Khurshid, D Marinov - ACM SIGSOFT Software …, 2002 - dl.acm.org
This paper presents Korat, a novel framework for automated testing of Java programs. Given
a formal specification for a method, Korat uses the method precondition to automatically …
a formal specification for a method, Korat uses the method precondition to automatically …
Ownership types for safe programming: Preventing data races and deadlocks
C Boyapati, R Lee, M Rinard - Proceedings of the 17th ACM SIGPLAN …, 2002 - dl.acm.org
This paper presents a new static type system for multithreaded programs; well-typed
programs in our system are guaranteed to be free of data races and deadlocks. Our type …
programs in our system are guaranteed to be free of data races and deadlocks. Our type …
ESP: Path-sensitive program verification in polynomial time
M Das, S Lerner, M Seigle - Proceedings of the ACM SIGPLAN 2002 …, 2002 - dl.acm.org
In this paper, we present a new algorithm for partial program verification that runs in
polynomial time and space. We are interested in checking that a program satisfies a given …
polynomial time and space. We are interested in checking that a program satisfies a given …
Compositional shape analysis by means of bi-abduction
C Calcagno, D Distefano, P O'Hearn… - Proceedings of the 36th …, 2009 - dl.acm.org
This paper describes a compositional shape analysis, where each procedure is analyzed
independently of its callers. The analysis uses an abstract domain based on a restricted …
independently of its callers. The analysis uses an abstract domain based on a restricted …
A system and language for building system-specific, static analyses
This paper presents a novel approach to bug-finding analysis and an implementation of that
approach. Our goal is to find as many serious bugs as possible. To do so, we designed a …
approach. Our goal is to find as many serious bugs as possible. To do so, we designed a …
Merge: a programming model for heterogeneous multi-core systems
MD Linderman, JD Collins, H Wang… - ACM SIGOPS operating …, 2008 - dl.acm.org
In this paper we propose the Merge framework, a general purpose programming model for
heterogeneous multi-core systems. The Merge framework replaces current ad hoc …
heterogeneous multi-core systems. The Merge framework replaces current ad hoc …
Modular static program analysis
P Cousot, R Cousot - International Conference on Compiler Construction, 2002 - Springer
The purpose of this paper is to present four basic methods for compositional separate
modular static analysis of programs by abstract interpretation:-simplification-based separate …
modular static analysis of programs by abstract interpretation:-simplification-based separate …
Adoption and focus: Practical linear types for imperative programming
M Fahndrich, R DeLine - Proceedings of the ACM SIGPLAN 2002 …, 2002 - dl.acm.org
A type system with linearity is useful for checking software protocols andresource
management at compile time. Linearity provides powerful reasoning about state changes …
management at compile time. Linearity provides powerful reasoning about state changes …
Automatic extraction of object-oriented component interfaces
Component-based software design is a popular and effective approach to designing large
systems. While components typically have well-defined interfaces, sequencing information …
systems. While components typically have well-defined interfaces, sequencing information …
Typestates for objects
R DeLine, M Fähndrich - European Conference on Object-Oriented …, 2004 - Springer
Today's mainstream object-oriented compilers and tools do not support declaring and
statically checking simple pre-and postconditions on methods and invariants on object …
statically checking simple pre-and postconditions on methods and invariants on object …