EPTCS 261
Proceedings 10th
Interaction and Concurrency Experience
Neuchâtel, Switzerland, 2122nd June 2017
Edited by: Massimo Bartoletti, Laura Bocchi, Ludovic Henrio and Sophia Knight
No Title
Massimo Bartoletti, Laura Bocchi, Ludovic Henrio, Sophia Knight
This volume contains the proceedings of ICE'17, the 10th Interaction
and Concurrency Experience, which was held in Neuchâtel, Switzerland
on the 21st and 22nd of June 2017 as a satellite event of DisCoTec'17.
The previous editions of ICE were affiliated with ICALP'08 (Reykjavik,
Iceland), CONCUR'09 (Bologna, Italy), DisCoTec'10 (Amsterdam, The
Netherlands), DisCoTec'11 (Reykjavik, Iceland), DisCoTec'12
(Stockholm, Sweden), DisCoTec'13 (Florence, Italy), DisCoTec'14
(Berlin, Germany), DisCoTec'15 (Grenoble, France), and DisCoTec'16
(Heraklion, Greece).
The ICE workshop series features a distinguishing review and selection
procedure, allowing PC members to interact, anonymously, with
authors. During the review phase, each submitted paper is published on
a discussion forum whose access is restricted to the authors and to
all the PC members not declaring a conflict of interest. The PC
members post comments and questions that the authors reply to. As in
the past nine editions, the forum discussion during the review and
selection phase of ICE'17 considerably improved the accuracy of the
feedback from the reviewers and the quality of accepted papers, and
offered the basis for lively discussion during the workshop. The time
and effort spent on the forum interaction is rewarding for both
authors, in revising their papers, and reviewers, in writing their
reviews: the forum discussion makes it possible to resolve
misunderstandings at an early stage of the review process, to discover
and correct mistakes in key definitions, and to improve examples and
presentation.
For the first time, the 2017 edition of ICE included double blind
reviewing of original research papers, in order to increase fairness
and avoid bias in reviewing. Papers were blinded for submission, with
authors' names and identifying details removed, and authors were given
anonymous usernames for the forum. When the review process was
finished, in a survey, reviewers mostly expressed satisfaction with
double blind reviewing and support for its future use. The gender
balance of accepted papers was also more even than in past years.
Each paper was reviewed by three PC members, and altogether five
papers were accepted for publication (the workshop also featured five
brief announcements which are not part of this volume). We were proud
to host three invited talks, by Christian Cachin, Marieke Huismann,
and Pawel Sobocinski. The abstracts of these talks are included in
this volume together with the regular papers. Final versions of the
contributions, taking into account the discussion at the workshop, are
included in the same order as they were presented at the workshop.
We would like to thank the authors of all the submitted papers for
their interest in the workshop. We thank Christian Cachin, Marieke
Huismann, and Pawel Sobocinski for accepting our invitations to
present their recent work. We are grateful for the efforts of the PC
members:
Johannes Åman Pohjola, Lacramioara Astefanoaei, Eduard Baranov, Franco
Barbanera, Henning Basold, Stefano Calzavara, Marco Carbone, Vincenzo
Ciancia, Matteo Cimini, Tiziana Cimoli, Ornela Dardha, Tobias Heindel,
Christos Kloukinas, Ivan Lanese, Julien Lange, Michael Lienhardt,
Alberto Lluch Lafuente, JeanMarie Madiot, Anastasia Mavridou, Hernan
Melgratti, Fabrizio Montesi, Dominic Orchard, Juriaan Rot, Alceste
Scalas, Ana Sokolova, Anke Stüber, Hugo Torres Vieira, and Roberto
Zunino. We thank the ICE steering committee and the DisCoTec'17
organizers, in particular the general and workshop chairs, for
providing an excellent environment for the preparation and staging of
the event. Finally, we thank the editors of EPTCS for the publication
of this postproceedings.
Christian Cachin (IBM Research  Zurich)
A blockchain is a public ledger for recording transactions, maintained by many nodes without central authority
through a distributed cryptographic protocol. All nodes validate the information to be appended to the blockchain,
and a consensus protocol ensures that the nodes agree on a unique order in which entries are appended. Distributed
protocols tolerating faults and adversarial attacks, coupled with cryptographic tools are needed for this. The recent
interest in blockchains has revived research on consensus protocols, ranging from the proofofwork method in Bitcoin's
"mining" protocol to classical Byzantine agreement.
Going far beyond its use in cryptocurrencies, blockchain is today viewed as a promising technology to simplify trusted
exchanges of data and goods among companies. In this context, the Hyperledger Project has been established in early 2016
as an industrywide collaborative effort to develop an opensource blockchain.
This talk will present an overview of blockchain concepts, cryptographic building blocks and consensus mechanisms.
It will also introduce Hyperledger Fabric, an implementation of blockchain technology intended for enterprise applications.
Being one of the key partners in the Hyperledger Project, IBM is actively involved in the development of this blockchain
platform.
Marieke Huisman (University of Twente, The Netherlands)
Concurrent software is inherently errorprone, due to the possible interactions and subtle interplays between
the parallel computations. As a result, error prediction and tracing the sources of errors often is difficult.
In particular, rerunning an execution with exactly the same input might not lead to the same error. To improve
this situation, we need techniques that can provide static guarantees about the behaviour of a concurrent program.
In the VerCors project, we do exactly this. The intended behaviour of a concurrent program is described by
means of program annotations. These program annotations are written using a variant of separation logic, featuring
permissions, to distinguish between read and write accesses to variables. These annotations are sufficient to prove
data race freedom of programs, and also can be used to prove certain invariance properties.
However, often we would like to express more about the functional behaviour of a program. Therefore, we use process
algebra terms to give an abstract description of the program behaviour. Special annotations are added in the program
that connect the actions in the process algebra to concrete statements in the program. This information can be used
to reason about the global functional behaviour of programs.
The whole verification approach is supported by the VerCors tool set. We have used this technique for example
to prove that a LinkedBlockingQueue is indeed a queue, i.e. the order of elements in the queue is preserved.
Paweł Sobocinski (University of Southampton, UK)
At the 2nd Interaction and Concurrency Experience (ICE 2009) workshop I presented the wire
calculus [9], a process algebra where the usual CCS/picalculus style commutative
parallel composition operation is replaced with two typed, noncommutative operations: a
nonsynchronising parallel composition and a synchronising parallel composition. The two operations
are inspired by the algebra of monoidal categories: the first corresponds to the monoidal product
and the second to ordinary categorical composition. This style of modelling, pioneered by RFC Walters
and collaborators [7], led to a compositional
calculus of Petri nets [10,5] and applications to compositional model checking of Petri
nets [8]. Following this, an analysis of the algebraic theory of Petri nets with this
"wire calculus mentality" [11] led to the equational theory of Interacting Hopf
Algebras [2,4] and applications to signal flow graphs
[1,3], control theory [6], and graphical linear
algebra [12]. In this talk I will take you through this personal research journey
of the last 10 years, a journey that started at ICE 2009 with the wire calculus, and featured several
quite unexpected twists and turns!
References

Filippo Bonchi, Paweł Sobociński & Fabio Zanasi (2014):
A Categorical Semantics of Signal Flow Graphs.
In: Concurrency Theory  25th International Conference, (CONCUR 2014), LNCS 8704, Springer, pp. 435450,
doi:10.1007/9783662445846_30.

Filippo Bonchi, Paweł Sobociński & Fabio Zanasi (2014):
Interacting Bialgebras are Frobenius.
In: Foundations
of Software Science and Computation Structures  17th International Conference, (FOSSACS 2014),
LNCS 8412, Springer, pp. 351365,
doi:doi:10.1007/9783642548307_23.

Filippo Bonchi, Paweł Sobociński & Fabio Zanasi (2015):
Full Abstraction for Signal Flow Graphs.
In: 42nd Annual ACM SIGPLANSIGACT Symposium on Principles of Programming Languages, (POPL 2015),
ACM, pp. 515526,
doi:10.1145/2676726.2676993.

Filippo Bonchi, Paweł Sobociński & Fabio Zanasi (2017):
Interacting Hopf Algebras.
J Pure Appl
Alg 221(1), pp. 144184,
doi:10.1016/j.jpaa.2016.06.002. Available at
https://arxiv.org/pdf/1403.

Roberto Bruni, Hernán Melgratti, Ugo Montanari & Paweł Sobociński (2013):
Connector Algebras for C/E and P/T Nets' Interactions.
Log. Meth. Comput. Sci. 9(3),
doi:10.2168/LMCS9(3:16)2013.

Brendan Fong, Paolo Rapisarda & Paweł Sobociński (2016):
A categorical approach to open and interconnected
dynamical systems.
In: Thirtyfirst annual ACM/IEEE symposium on Logic and Computer Science
(LiCS 2016), pp. 495504,
doi:10.1145/2933575.2934556.

Piergiulio Katis, Nicoletta Sabadini & Robert Frank Carslaw Walters (1997):
Span(Graph): an algebra
of transition systems.
In: Algebraic Methodology and Software Technology (AMAST'97), LNCS 1349,
Springer, pp. 322336,
doi:10.1007/bfb0000479.

Julian Rathke, Paweł Sobociński & Owen Stephens (2014):
Compositional Reachability in Petri Nets.
In: Reachability Problems  8th International Workshop, (RP 2014), LNCS 8762, Springer, pp. 230243,
doi:10.1007/9783319114392_18.

Paweł Sobociński (2009):
A noninterleaving process calculus for multiparty synchronisation.
In: 2nd
Interaction and Concurrency Experience: Structured Interactions, (ICE 2009), EPTCS 12, pp. 8798,
doi:10.4204/eptcs.12.6. Available at
http://users.ecs.soton.ac.uk/ps/papers/ice09.pdf.

Paweł Sobociński (2010):
Representations of Petri net interactions.
In: Concurrency Theory, 21th International
Conference, (CONCUR 2010), LNCS 6269, Springer, pp. 554568,
doi:10.1007/9783642153754_38.

Paweł Sobociński (2013):
Nets, relations and linking diagrams.
In: Algebra and Coalgebra in Computer Science  5th International Conference, (CALCO 2013), LNCS 8089, Springer, pp. 282298,
doi:10.1007/9783642402067_21.

Paweł Sobociński (2015):
Graphical Linear Algebra blog.
Available at http://
GraphicalLinearAlgebra.net.