Skip to main content

Showing 1–7 of 7 results for author: Jovanović, D

Searching in archive cs. Search in all archives.
.
  1. arXiv:2106.04340  [pdf, other

    cs.LO cs.PL cs.SC

    Interpolation and Model Checking for Nonlinear Arithmetic

    Authors: Dejan Jovanović, Bruno Dutertre

    Abstract: We present a new model-based interpolation procedure for satisfiability modulo theories (SMT). The procedure uses a new mode of interaction with the SMT solver that we call solving modulo a model. This either extends a given partial model into a full model for a set of assertions or returns an explanation (a model interpolant) when no solution exists. This mode of interaction fits well into the mo… ▽ More

    Submitted 8 June, 2021; originally announced June 2021.

    Comments: To be published in CAV 2021

  2. arXiv:2005.10382  [pdf, ps, other

    cs.PL cs.LO cs.SE

    Formal Specification and Verification of Solidity Contracts with Events

    Authors: Ákos Hajdu, Dejan Jovanović, Gabriela Ciocarlie

    Abstract: Events in the Solidity language provide a means of communication between the on-chain services of decentralized applications and the users of those services. Events are commonly used as an abstraction of contract execution that is relevant from the users' perspective. Users must, therefore, be able to understand the meaning and trust the validity of the emitted events. This paper presents a source… ▽ More

    Submitted 20 May, 2020; originally announced May 2020.

  3. arXiv:2004.07940  [pdf, other

    cs.LO

    Solving bitvectors with MCSAT: explanations from bits and pieces (long version)

    Authors: Stéphane Graham-Lengrand, Dejan Jovanović, Bruno Dutertre

    Abstract: We present a decision procedure for the theory of fixed-sized bitvectors in the MCSAT framework. MCSAT is an alternative to CDCL(T) for SMT solving and can be seen as an extension of CDCL to domains other than the Booleans. Our procedure uses BDDs to record and update the sets of feasible values of bitvector variables. For explaining conflicts and propagations, we develop specialized word-level in… ▽ More

    Submitted 16 April, 2020; originally announced April 2020.

    Comments: 24 pages, long version of IJCAR'2020 conference paper

  4. SMT-Friendly Formalization of the Solidity Memory Model

    Authors: Ákos Hajdu, Dejan Jovanović

    Abstract: Solidity is the dominant programming language for Ethereum smart contracts. This paper presents a high-level formalization of the Solidity language with a focus on the memory model. The presented formalization covers all features of the language related to managing state and memory. In addition, the formalization we provide is effective: all but few features can be encoded in the quantifier-free f… ▽ More

    Submitted 17 April, 2020; v1 submitted 9 January, 2020; originally announced January 2020.

    Comments: Authors' manuscript. Published in P. Müller (Ed.): ESOP 2020, LNCS 12075, 2020. The final publication is available at Springer via https://doi.org/10.1007/978-3-030-44914-8_9

  5. 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.

  6. solc-verify: A Modular Verifier for Solidity Smart Contracts

    Authors: Ákos Hajdu, Dejan Jovanović

    Abstract: We present solc-verify, a source-level verification tool for Ethereum smart contracts. Solc-verify takes smart contracts written in Solidity and discharges verification conditions using modular program analysis and SMT solvers. Built on top of the Solidity compiler, solc-verify reasons at the level of the contract source code, as opposed to the more common approaches that operate at the level of E… ▽ More

    Submitted 16 March, 2020; v1 submitted 9 July, 2019; originally announced July 2019.

    Comments: Authors' manuscript. Published in S. Chakraborty and J. A. Navas (Eds.): VSTTE 2019, LNCS 12031, 2020. The final publication is available at Springer via https://doi.org/10.1007/978-3-030-41600-3_11

  7. arXiv:1404.2346  [pdf

    cs.OH

    Teaching Network Storage Technology Assessment Outcomes and Directions

    Authors: Dr. V. Jovanovic, Dr. Timur Mirzoev

    Abstract: The paper presents academic content, delivery and assessment mechanisms used, available resources including initial lessons from teaching Networked Storage Technology as a special topics course to students enrolled in two specific programs - IT and CS. The course is based on the EMC s vendor-neutral Storage Technology Fundamentals course. Furthermore, this manuscript provides a detailed review of… ▽ More

    Submitted 8 April, 2014; originally announced April 2014.

    Journal ref: ACM 2008, New York, NY, USA ISBN: 978-1-60558-329-7