Skip to main content

Showing 1–5 of 5 results for author: Emmi, M

.
  1. arXiv:1911.01508  [pdf, other

    cs.LO cs.DS

    Verifying Visibility-Based Weak Consistency

    Authors: Siddharth Krishna, Michael Emmi, Constantin Enea, Dejan Jovanovic

    Abstract: Multithreaded programs generally leverage efficient and thread-safe concurrent objects like sets, key-value maps, and queues. While some concurrent-object operations are designed to behave atomically, each witnessing the atomic effects of predecessors in a linearization order, others forego such strong consistency to avoid complex control and synchronization bottlenecks. For example, contains (val… ▽ More

    Submitted 4 November, 2019; originally announced November 2019.

  2. arXiv:1904.07280  [pdf, other

    cs.SE

    ct-fuzz: Fuzzing for Timing Leaks

    Authors: Shaobo He, Michael Emmi, Gabriela Ciocarlie

    Abstract: Testing-based methodologies like fuzzing are able to analyze complex software which is not amenable to traditional formal approaches like verification, model checking, and abstract interpretation. Despite enormous success at exposing countless security vulnerabilities in many popular software projects, applications of testing-based approaches have mainly targeted checking traditional safety proper… ▽ More

    Submitted 15 April, 2019; originally announced April 2019.

  3. arXiv:1706.09305  [pdf, other

    cs.SE cs.DC

    Exposing Non-Atomic Methods of Concurrent Objects

    Authors: Michael Emmi, Constantin Enea

    Abstract: Multithreaded software is typically built with specialized concurrent objects like atomic integers, queues, and maps. These objects' methods are designed to behave according to certain consistency criteria like atomicity, despite being optimized to avoid blocking and exploit parallelism, e.g., by using atomic machine instructions like compare and exchange (cmpxchg). Exposing atomicity violations i… ▽ More

    Submitted 28 June, 2017; originally announced June 2017.

  4. arXiv:1702.02705  [pdf, other

    cs.PL

    Proving linearizability using forward simulations

    Authors: Ahmed Bouajjani, Michael Emmi, Constantin Enea, Suha Orhun Mutluergil

    Abstract: Linearizability is the standard correctness criterion concurrent data structures such as stacks and queues. It allows to establish observational refinement between a concurrent implementation and an atomic reference implementation.Proving linearizability requires identifying linearization points for each method invocation along all possible computations, leading to valid sequential executions, or… ▽ More

    Submitted 8 February, 2017; originally announced February 2017.

  5. arXiv:1502.06882  [pdf, ps, other

    cs.LO

    On Reducing Linearizability to State Reachability

    Authors: Ahmed Bouajjani, Michael Emmi, Constantin Enea, Jad Hamza

    Abstract: Efficient implementations of atomic objects such as concurrent stacks and queues are especially susceptible to programming errors, and necessitate automatic verification. Unfortunately their correctness criteria - linearizability with respect to given ADT specifications - are hard to verify. Even on classes of implementations where the usual temporal safety properties like control-state reachabili… ▽ More

    Submitted 25 May, 2015; v1 submitted 24 February, 2015; originally announced February 2015.