ETAPS 2019
Sat 6 - Thu 11 April 2019 Prague, Czech Republic

Many Program Verification and Synthesis problems of interest can be modeled directly using Horn clauses, and many recent advances in the Constraint/Logic Programming, Verification, and Automated Deduction communities have centered around efficiently solving problems presented as Horn clauses.

This workshop aims to bring together researchers working in the communities of Constraint/Logic Programming (e.g., ICLP and CP), Program Verification (e.g., CAV, TACAS, and VMCAI), and Automated Deduction (e.g., CADE), on the topic of Horn clause based analysis, verification and synthesis.

Horn clauses have been advocated by these communities at different times and from different perspectives, and this workshop is organized to stimulate interaction and a fruitful exchange and integration of experiences.

The workshop follows five previous meetings: HCVS 2018 in Oxford, UK (FLoC), HCVS 2017 in Gothenburg, Sweden (CADE), HCVS 2016 in Eindhoven, The Netherlands (ETAPS), HCVS 2015 in San Francisco, CA, USA (CAV), and HCVS 2014 in Vienna, Austria (VSL).

HCVS 2019 will host the 2nd CHC competition (CHC-COMP), which will compare state-of-the-art tools for CHC solving for performance and effectiveness on a set of publicly available benchmarks. More information can be found here.

Accepted Papers

Title
File Attached
Link to publication
File Attached
Pre-print File Attached
File Attached

Call for Papers

Many Program Verification and Synthesis problems of interest can be modeled directly using Horn clauses, and many recent advances in the Constraint/Logic Programming, Verification, and Automated Deduction communities have centered around efficiently solving problems presented as Horn clauses.

This workshop aims to bring together researchers working in the communities of Constraint/Logic Programming (e.g., ICLP and CP), Program Verification (e.g., CAV, TACAS, and VMCAI), and Automated Deduction (e.g., CADE), on the topic of Horn clause based analysis, verification and synthesis.

Horn clauses have been advocated by these communities at different times and from different perspectives, and this workshop is organized to stimulate interaction and a fruitful exchange and integration of experiences.

The workshop follows five previous meetings: HCVS 2018 in Oxford, UK (FLoC), HCVS 2017 in Gothenburg, Sweden (CADE), HCVS 2016 in Eindhoven, The Netherlands (ETAPS), HCVS 2015 in San Francisco, CA, USA (CAV), and HCVS 2014 in Vienna, Austria (VSL).

Aims and Scope

Topics of interest include, but are not limited to the use of Horn clauses, constraints, and related formalisms in the following areas:

  • Analysis and verification of programs and systems of various kinds (e.g., imperative, object-oriented, functional, logic, higher-order, concurrent)
  • Program synthesis
  • Program testing
  • Program transformation
  • Constraint solving
  • Type systems
  • Case studies and tools
  • Challenging problems

We solicit regular papers describing theory and implementation of Horn-clause based analysis and tool descriptions. We also solicit extended abstracts describing work-in-progress, as well as presentations covering previously published results that are of interest to the workshop.

CHC-COMP

HCVS 2019 will host the 2nd CHC competition (CHC-COMP), which will compare state-of-the-art tools for CHC solving for performance and effectiveness on a set of publicly available benchmarks. More information can be found here. All participants of CHC-COMP are invited (but not obliged) to submit a tool description for publishing either online or at the proceedings through the EasyChair system for HCVS (the HCVS deadlines apply).

Submission

Submission has to be done in one of the following formats:

  • Regular papers (up to 12 pages plus bibliography in EPTCS format), which should present previously unpublished work (completed or in progress), including descriptions of research, tools, and applications.
  • Tool papers (up to 4 pages plus bibliography in EPTCS format), including the papers written by the CHC-COMP participants, which can outline the theoretical framework, the architecture, the usage, and experiments of the tool.
  • Extended abstracts (up to 3 pages in EPTCS format), which describe work in progress or aim to initiate discussions.
  • Presentation-only papers, i.e., papers already submitted or presented at a conference or another workshop. Such papers can be submitted in any format, and will not be included in the workshop post-proceedings.

All submitted papers will be reviewed by the program committee and will be selected for inclusion in accordance with the referee reports. Accepted papers will be made available before the workshop on the HCVS website and will be published in a volume of the Electronic Proceedings in Theoretical Computer (EPTCS) series after the workshop (provided that enough regular and tool papers are accepted). Authors of accepted papers are required to ensure that at least one of them will be present at the workshop.

Papers must be submitted through the EasyChair system using the web page: https://easychair.org/conferences/?conf=hcvs2019

Sun 7 Apr

hcvs-2019-papers
11:00 - 12:00: HCVS - II at S4 (HCVS)
Chair(s): Mattias UlbrichKarlsruhe Institute of Technology
hcvs-2019-papers11:00 - 11:30
Talk
John P. GallagherRoskilde University
File Attached
hcvs-2019-papers11:30 - 12:00
Full-paper
Emanuele De AngelisUniversity of Chieti-Pescara, Fabio FioravantiUniversity of Chieti-Pescara, Alberto PettorossiUniversity of Rome Tor Vergata, Italy, Maurizio ProiettiCNR-IASI
File Attached
hcvs-2019-papers
13:30 - 15:30: HCVS - III at S4 (HCVS)
Chair(s): John P. GallagherRoskilde University
hcvs-2019-papers13:30 - 14:30
File Attached
hcvs-2019-papers14:30 - 15:00
Talk
Henning BasoldCNRS & ENS Lyon, Ekaterina KomendantskayaHeriot-Watt University, UK
Link to publication
hcvs-2019-papers15:00 - 15:30
Full-paper
Daniel DietschUniversity of Freiburg, Matthias HeizmannUniversity of Freiburg, Jochen HoenickeUniversität Freiburg, Alexander NutzUniversity of Freiburg, Germany, Andreas PodelskiUniversity of Freiburg, Germany
hcvs-2019-papers
16:00 - 18:00: HCVS - IV at S4 (HCVS)
Chair(s): Nikolaj BjørnerMicrosoft Research
hcvs-2019-papers16:00 - 16:30
Talk
Martin BlichaUSI Lugano, Switzerland, Antti Hyvärinen, Jan KofroňCharles University, Natasha SharyginaUSI Lugano, Switzerland
File Attached
hcvs-2019-papers16:30 - 17:00
Experience report
Grigory FedyukovichPrinceton University

Speaker: Matteo Maffei, Technische Universität Wien

Title: Foundations and Techniques for the Static Analysis of Ethereum Smart Contracts

Abstract: The recent growth of the blockchain technology market puts its main cryptocurrencies in the spotlight. Among them, Ethereum stands out due to its virtual machine (EVM) supporting smart contracts, i.e., distributed programs that control the flow of the digital currency Ether. Being written in a Turing complete language, Ethereum smart contracts allow for expressing a broad spectrum of financial applications. The price for this expressiveness, however, is a significant semantic complexity, which increases the risk of programming errors. Recent attacks exploiting bugs in smart contract implementations call for the design of formal verification techniques for smart contracts. This, however, requires rigorous semantic foundations, a formal characterization of the expected security properties, and dedicated abstraction techniques tailored to the specific EVM semantics.

This tutorial will overview the state-of-the-art in smart contract verification, covering formal semantics, security definitions, and verification tools. We will then focus on EtherTrust, a framework for the static analysis of Ethereum smart contracts that we recently introduced, which includes the first complete small-step semantics of EVM bytecode, the first formal characterization of a large class of security properties for smart contracts, and the first static analysis for EVM bytecode, based on Horn clause resolution, that comes with a proof of soundness.


Speaker: Konstantinos (Kostis) Sagonas, Uppsala University

Title: Concolic testing of higher-order functional languages

Abstract: Concolic testing is a fully automatic software testing technique that combines concrete and symbolic execution of a program unit in an attempt to explore all the code paths in this unit or at least explore all its paths up to a depth bound. In this talk, we will describe how concolic testing can be applicable to high-level languages in general and to functional programming languages in particular. For such languages, the concolic engine needs to efficiently support pattern matching, recursive data types such as lists, recursion and higher-order functions. We will also briefly talk about the engineering effort that concolic testing tools require, in particular in interfacing with SMT solvers.

Time permitting, the talk will also include a demo of CutEr (as in “more cute”), a concolic testing tool for Erlang and some of the bugs in the implementation of Erlang/OTP that CutEr has discovered.