#### Filter Results:

- Full text PDF available (28)

#### Publication Year

2002

2017

- This year (1)
- Last 5 years (5)
- Last 10 years (13)

#### Publication Type

#### Co-author

#### Journals and Conferences

#### Key Phrases

Learn More

- Keshav Pingali, Donald Nguyen, +9 authors Xin Sui
- PLDI
- 2011

For more than thirty years, the parallel programming community has used the <i>dependence graph</i> as the main abstraction for reasoning about and exploiting parallelism in "regular" algorithms that use dense arrays, such as finite-differences and FFTs. In this paper, we argue that the dependence graph is not a suitable abstraction for algorithms in new… (More)

- Roman Manevich, Manu Sridharan, Stephen Adams, Manuvir Das, Zhe Yang
- SIGSOFT FSE
- 2004

In this paper, we describe PSE (Postmortem Symbolic Evaluation), a static analysis algorithm that can be used by programmers to diagnose software failures. The algorithm requires minimal information about a failure, namely its kind (e.g. NULL dereference), and its location in the program's source code. It produces a set of execution traces along which the… (More)

- Roman Manevich, Eran Yahav, G. Ramalingam, Shmuel Sagiv
- VMCAI
- 2005

Predicate abstraction and canonical abstraction are two finitary abstractions used to prove properties of programs. We study the relationship between these two abstractions by considering a very limited case: abstraction of (potentially cyclic) singly-linked lists. We provide a new and rather precise family of abstractions for potentially cyclic… (More)

We present new algorithms for automatically verifying properties of programs with an unbounded number of threads. Our algorithms are based on a new abstract domain whose elements represent thread-quantified invariants: i.e., invariants satified by all threads. We exploit existing abstractions to represent the invariants. Thus, our technique lifts existing… (More)

- Dimitrios Prountzos, Roman Manevich, Keshav Pingali
- OOPSLA
- 2012

Algorithms in new application areas like machine learning and network analysis use "irregular" data structures such as graphs, trees and sets. Writing efficient parallel code in these problem domains is very challenging because it requires the programmer to make many choices: a given problem can usually be solved by several algorithms, each algorithm may… (More)

- Tal Lev-Ami, Roman Manevich, Shmuel Sagiv
- IFIP Congress Topical Sessions
- 2004

The course will present TVLA (Three-Valued-Logic Analyzer). TVLA is a ”‘YACC’”’-like framework for automatically constructing abstract interpreters from an operational semantics. The operational semantics is specified as a generic transition system based on first order logic. TVLA has been implemented in Java and was successfully used to prove interesting… (More)

- Roman Manevich, Shmuel Sagiv, G. Ramalingam, John Field
- SAS
- 2004

One of the continuing challenges in abstract interpretation is the creation of abstractions that yield analyses that are both tractable and precise enough to prove interesting properties about real-world programs. One source of difficulty is the need to handle programs with different behaviors along different execution paths. Disjunctive (powerset)… (More)

We demonstrate shape analyses that can achieve a state space reduction exponential in the number of threads compared to the state-of-the-art analyses, while retaining sufficient precision to verify sophisticated properties such as linearizability. The key idea is to abstract the global heap by decomposing it into (not necessarily disjoint) subheaps,… (More)

- Gilad Arnold, Roman Manevich, Shmuel Sagiv, Ran Shaham
- VMCAI
- 2006

We consider the problem of computing the intersection (meet) of heap abstractions.This problem is useful, among other applications, to relate abstract memory states computed by forward analysis with abstract memory states computed by backward analysis. Since dynamically allocated heap objects have no static names, relating objects computed by different… (More)

- Michael Emmi, Rupak Majumdar, Roman Manevich
- PLDI
- 2010

We describe an automatic verification method to check whether transactional memories ensure strict serializability a key property assumed of the transactional interface. Our main contribution is a technique for effectively verifying parameterized systems. The technique merges ideas from parameterized hardware and protocol verification--verification by… (More)