• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Lifting abstract interpreters to quantified logical domains (2008)

Cached

  • Download as a PDF

Download Links

  • [www.eecs.berkeley.edu]
  • [www.cs.berkeley.edu]
  • [www.cs.berkeley.edu]
  • [www.eecs.berkeley.edu]
  • [www.cs.berkeley.edu]
  • [research.microsoft.com]
  • [www.cs.berkeley.edu]
  • [www.research.microsoft.com]
  • [www.research.microsoft.com]
  • [www.research.microsoft.com]
  • [research.microsoft.com]
  • [research.microsoft.com]
  • [www.eecs.berkeley.edu]
  • [www.eecs.berkeley.edu]
  • [research.microsoft.com]
  • [research.microsoft.com]
  • [www.research.microsoft.com]
  • [research.microsoft.com]
  • [research.microsoft.com]
  • [research.microsoft.com]
  • [research.microsoft.com]
  • [www.csl.sri.com]

  • Other Repositories/Bibliography

  • DBLP
  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Sumit Gulwani
Venue:In POPL
Citations:26 - 0 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@INPROCEEDINGS{Gulwani08liftingabstract,
    author = {Sumit Gulwani},
    title = {Lifting abstract interpreters to quantified logical domains},
    booktitle = {In POPL},
    year = {2008}
}

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

Today, abstract interpretation is capable of inferring a wide variety of quantifier-free program invariants. In this paper, we describe a general technique for building powerful quantified abstract domains that leverage existing quantifier-free domains. For example, from a domain that abstracts facts like a[1] = 0, we automatically construct a domain that can represent universally quantified facts like ∀i(0 ≤ i < n ⇒ a[i] = 0). The principal challenge in building such a domain is that, while most domains supply over-approximations of operations like join, meet, and variable elimination, working with the guards of quantified facts requires under-approximation. A crucial component of our approach is an automatic technique to convert the standard over-approximation operations provided with all domains into sound under-approximations. The correctness of our abstract interpreters is established by identifying two lattices–one that establishes the soundness of the abstract interpreter and another that defines its precision, or completeness. Despite the computational intractability of inferring quantified facts in general, we prove that the analyses we generate are complete relative to a very natural partial order. interpreters on top of domains for linear arithmetic, uninterpreted function symbols (used to model heap accesses), and pointer reachability. Our experiments on a variety of programs using arrays and pointers (including several sorting algorithms) demonstrate the feasibility of the approach on challenging examples. 1.

Citations

1635 Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints - Cousot, Cousot - 1977
470 Automatic discovery of linear restraints among the variables of a program - COUSOT, HALBWACHS - 1978
169 Temporal abstract interpretation - Cousot, Cousot - 2000
162 K.L.: Abstractions from proofs - Henzinger, Jhala, et al. - 2004
137 Affine relationships among variables of a program - KARR - 1976
85 Predicate abstraction for software verification - Flanagan, Qadeer - 2002
67 What’s decidable about arrays - Bradley, Manna, et al. - 2006
42 Indexed Predicate Discovery for Unbounded System Verification - Lahiri, Bryant - 2004
39 A framework for numeric analysis of array operations - Gopan, Reps, et al. - 2005
31 Combining abstract interpreters - Gulwani, Tiwari - 2006
21 Array abstractions from proofs - Jhala, McMillan
18 Path invariants - Beyer, Henzinger, et al. - 2007
18 A logic and decision procedure for predicate abstraction of heapmanipulating programs - Bingham, Rakamaric - 2006
7 Logic-flow analysis of higher-order programs - Might - 2007
4 Verification par interpretation abstraite de predicats parametriques - Cerny - 2003
2 Static analysis of heap manipulating low-level software - Gulwani, Tiwari - 2007
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University