Publications

On the tractability of $(k,i)$-coloring

This paper is primarily provides a parameterized algorithm for $(k,i)$-coloring problem using feedback vertex set as the parameter.

Precise Predictive Analysis for Discovering Communication Deadlocks in MPI Programs

This paper shows NP-completeness of deadlock detection in certain class of MPI programs. It also presents encoding to analyze a class of MPI programs with respect to deadlocks.

Equivalence Checking of a Floating-Point Unit Against a High-Level C Model

This paper describes an efficient technique for equivalence checking of a real-world Floating Point Unit.

The virtues of conflict: analysing modern concurrency

This paper presents a different encoding that makes Bounded Model Checking faster for concurrent programs.

On Using Incremental Encodings in Unsatisfiability-based MaxSAT Solving

This paper is an extended version of the CP 2014 paper where incremental encoding is extended to weighted MaxSAT.

Generalized Totalizer Encoding for Pseudo-Boolean Constraints

This paper describes Generalized Totalizer Encoding (GTE) to encode Pseudo-Boolean Constraints. This encoding led Open-WBO to win accolades in MaxSAT evaluations and Pseudo-Boolean evaluations.

Safety Verification and Refutation by $k$-Invariants and $k$-Induction

This paper describes a sound and complete tool, 2LS, for program verification and the techniques behind its working.

Property-Driven Fence Insertion Using Reorder Bounded Model Checking

This paper introduces Re-Order Bounded Model Checking to efficiently repair programs on weak memory models.

Incremental Cardinality Constraints for MaxSAT

This paper describes techniques to incremental encode cardinality constraints. This led Open-WBO to win accolades in MaxSAT evaluations.

Automatically finding atomic regions for fixing bugs in Concurrent Programs

This paper presents a technique for automatically constructing a fix for buggy concurrent programs: given a concurrent program that does not satisfy user-provided assertions, we infer atomic blocks that fix the program. An atomic block protects a …