Saturday, December 14, 2013

http://www.youtube.com/watch?v=fSWZWXx5ixcIn this episode of Verification Corner, Jean-Raymond Abrial and Rustan Leino show how to do a design starting from a model that is gradually refined toward executable code. They use the Rodin tool, which supports the Event-B formalism.http://www.youtube.com/watch?v=p6D0RSo3TAYUsing an extended example that flattens and reconstructs trees, Sophia Drossopoulou and Rustan Leino show how to write inductive proofs of functional programs. The verification tool checks the correctness of the proofs. Proofs can be given in full detail, as they might be when a person first writes the proof or when the proof is intended for human understanding. Alternatively, proofs can be written with less detail, akin to the way a confident mathematician elides some details. In either case, the verification tool is satisfied only if it can fill in the missing pieces of the proof.http://www.youtube.com/watch?v=xg4wZDJuk6o

In this episode, Kuat Yessenov and Rustan Leino, Principal Researcher in the Research in Software Engineering (RiSE) group at Microsoft Research, show how a program can be constructed by stepwise refinement.

In this episode, Rustan Leino shows how to prove loop termination. During his demonstration, Rustan presents the theoretical background information necessary to build the proof before modeling it using the Dafny language.

In this episode, Rustan Leino talks about loop invariants. He gives a brief summary of the theoretical foundations and shows (using a problem to compute cubes) how a program can sometimes be systematically constructed from its specifications.

This paper contains the development of hybrid systems in Event-B and the Rodin Platform. It follows the seminal approach introduced at the turn of the century in Action Systems. Many examples illustrate our approach.

The very first paper on Z [1] was published in 1980 (at the time, the name Z was not “invented”), then the book on the B method [2] was published in 1996, and, finally, the book on Event-B [3] was published in 2010. So, 30 years separate Z from Event-B. It is thus clear that I spent a significant time of my scientific professional life working with the same kind of subject in mind, roughly speaking specification languages. I do not know whether this kind of addiction is good or bad, but what I know is that I enjoyed it a lot.

The purpose of this paper is to present some set-theoretic models of computation. This topic and its usefulness are clearly related to those presented in the book by Hoare and He: “Unifying Theories of Programming” [12]. However, we prefer to use here the term “computation” to that of “programming” as our purpose is not so much to unify various ways of programming (using different programming languages) but rather to see how various mechanical computation paradigms (be they sequential, distributed, parallel, and so on) can be given a unified mathematical theory. Our purpose is also to study how these computations can be specified and then developed by means of refinements and proofs.

Event-B has given developers the opportunity to construct models of complex systems that are correct-by-construction. However, there is no systematic approach, especially in terms of reuse, which could help with the construction of these models. We introduce the notion of design patternswithin the framework of Event-B to shorten this gap. Our approach preserves the correctness of the models, which is critical in formal methods and also reduces the proving effort. Within our approach, an Event-B design pattern is just another model devoted to the formalisation of a typical sub-problem. As a result, we can use patterns to construct a model which can subsequently be used as a pattern to construct a larger model. We also present the interaction between developers and the tool support within the associated RODIN Platform of Event-B. The approach has been applied successfully to some medium-size industrial case studies.

the correct behavior of the delivered software. The lack of formalization in
k
are inevitable in the complex activities behind software creation. Aids to
precision in each phase of software development and crosschecking are

n in

both thinking and documenting the preliminary stage of the softwa

essential, and this is precisely one the objectives of formal methods.
Formal methods (FMs) are intended to provide the means for greater precisiore creation
process. When done well, this can aid all aspects of software creation: user
requirement formulation, implementation, verification/testing, and the creation

ed by practitioners, and the integration of such tools with

activities that

of documentation. However, the maturing of formal techniques into real-life
software engineering involves providing notations and tools that are readily
understood and us are far from the unrealistic assumptions that characterized
some earlier research in formal methods.
After decades of research, and despite significant advancement, formal methods

needs, and its specific role in the software

process. At the same time, from

are still not widely used in industrial software development. This may be due
to the fact that the formal methods community has not enough focused its
attention to software engineering a software engineering perspective, there could
be a number of fundamental principles that might help to guide the design of
formal methods in order to make them more easily applicable in the development
of software applications.

EST include but are not limited to:

- integration of FMs in the software

The main goal of the workshop is to foster integration between the formal
methods and the software engineering communities with the purpose to examine
the link between the two more carefully than is currently the case.
AREAS OF INTERdevelopment life cycle
- ability of formal methods to handle real-world problems
- prescriptive/objective guidance in the use of FMs
- Formal methods in a certification context
- “lightweight” or usable FMs
- application experiences
- scalability of FM applications
- experimental validation

e Proceedings Format. They

will be published as part of the (electronic) pro

The program will start with an invited speaker, followed by presentations of
submitted papers. The workshop will end with a round table discussion (PC
members and workshop audience), focusing on the subjects that came up during
the workshop.
SUBMISSIONS are limited to 7 pages in IEEE Conferencceedings of ICSE 2013. All
papers submitted to the workshop must be unpublished original work and should
not be under review or submitted elsewhere while being under consideration. All
submissions must be in English and in PDF format through online upload to the
workshop submission website at the following URL:

Monday, November 11, 2013

"EB2ALL is a set of translator tools that automatically generates efficient target programming language code (C, C++, Java and C#) from Event-B formal specification related to the analysis of the complex problems. The EB2ALL contains four plugin namely EB2C, EB2C++, EB2J and EBC#. The goal of EB2ALL is to be able to generate a verified source code that satisfies behavioral properties of the develop formal system (abstractly). The EB2ALL tool is developed as a set of plugins for RODIN development tool under the Eclipse framework. RODIN is an integrated development environment (IDE) for developing Event-B models. The RODIN tool is written entirely in Java and build on top of the Eclipse platform."

Tuesday, November 5, 2013

Call for Papers - F-IDE 2014 - April 6th, 2014, Grenoble, France
Call for Papers
First International Workshop on Formal Integrated Development Environments
(Satellite event of ETAPS)
April 6th, 2014, Grenoble, France
http://www.ensta-paristech.fr/~etaps/
WORKSHOP AIM
High levels of safety, security and also privacy standards require the
use of formal methods to specify and develop compliant software
(sub)systems. Any standard comes with an assessment process, which
requires a complete documentation of the application in order to ease
the justification of design choices, code review and proofs. Ideally,
an F-IDE dedicated to such developments should comply with several
requirements. The first one is to associate a logical theory with a
programming language, in a way that facilitates the tightly coupled
handling of specification properties and program constructs. The
second one is to offer a language/environment simple enough to be
usable by most developers, even if they are not fully acquainted with
higher-order logics or set theory, in particular by making development
of proofs as easy as possible and as readable as possible. The third
one is to offer automated management of application documentation. It
may also be expected that developments done with such an F-IDE are
reusable and modular. Moreover, tools for testing andstatic analysis
may be embedded in this F-IDE, to address most steps of the assessment
process.
TOPICS
We encourage submissions presenting and discussing research efforts as
well as experience feedbacks on design, development, use of tools
aiming at making formal methods "easier" for non-specialists. In this
context, the topics include (but are not limited to):
- F-IDE building : design and integration of languages, compilation
- How to make high-level logical and programming concepts palatable to
industrial developers
- Integration of Object-Oriented and modularity features
- Integration of static analyzers
- Integration of automatic proof tools, theorem provers and testing tools
- Documentation tools
- Impact of tools on certification
- Experience reports of developing F-IDE
- Experience reports of using F-IDE
- Experience reports of formal methods-based assessments of industrial
applications
We encourage not only mature research results but also submissions
presenting innovative ideas and early results are also of interest.
SUBMISSIONS
Papers (6-14 pages in length), following EPCTS format are expected.
They can be:
- Research papers providing new concepts and results
- Position papers and research perspectives
- Experience reports
- Tool presentations
Submissions will be done via Easychair:
https://www.easychair.org/conferences/?conf=fide2014
PROCEEDINGS
Final versions of accepted papers will be published in a volume of the
Electronic Proceedings in Theoretical Computer Science (EPTCS).
IMPORTANT DATES
- Abstract submission : 18 December, 2013
- Paper Submission : 23 December, 2013
- Notification : 27 January, 2014
- Final version : 10 February, 2014
- Workshop date: April 6, 2014
PC CO-CHAIRS
- Catherine Dubois, Cédric / ENSIIE, (dot) (at)
ensiie (dot) fr
- Dimitra Giannakopoulou, NASA Ames, (dot) (at)
nasa (dot) gov
- Dominique Mery, LORIA / Université de Lorraine, (dot)
(at) loria (dot) fr

Call for Papers: Formal Methods 2014 (FM 2014), Singapore, May 14-16, 2014
CALL FOR PAPERS:
Formal Methods 2014 (FM 2014)
19th International Symposium on Formal Methods
Singapore, May 14-16, 2014
http://www.comp.nus.edu.sg/~pat/FM2014/
FM 2014 is the nineteenth in a series of symposia organized by
Formal Methods Europe, an independent association whose aim is
to stimulate the use of, and research on, formal methods for
software development. The symposia have been notably successful
in bringing together innovators and practitioners in precise
mathematical methods for software and systems development,
industrial users, as well as researchers. Submissions are
welcomed in the form of original papers on research and
industrial experience, proposals for workshops and tutorials,
entries for the exhibition of software tools and projects, and
reports on ongoing doctoral work.
SCOPE AND TOPICS
It will have the goal of highlighting the development and
application of formal methods in connection with a variety of
disciplines such as medicine, biology, human cognitive modeling,
human automation interactions and aeronautics, among others. FM
2014 particularly welcomes papers on techniques, tools and
experiences in interdisciplinary frameworks, as well as on
experience with practical applications of formal methods in
industrial and research settings, experimental validation of
tools and methods as well as construction and evolution of
formal methods tools. The broad topics of interest for FM 2014
include but are not limited to:
Interdisciplinary formal methods: techniques, tools and
experiences demonstrating formal methods in interdisciplinary
frameworks.
Formal methods in practice: industrial applications of formal
methods, experience with introducing formal methods in industry,
tool usage reports, experiments with challenge problems. Authors
are encouraged to explain how the use of formal methods has
overcome problems, lead to improvements in design or provided
new insights.
Tools for formal methods: advances in automated verification and
model-checking, integration of tools, environments for formal
methods, experimental validation of tools. Authors are
encouraged to demonstrate empirically that the new tool or
environment advances the state of the art.
Role of formal methods in software and systems engineering:
development processes with formal methods, usage guidelines for
formal methods, method integration. Authors are encouraged to
demonstrate that process innovations lead to qualitative or
quantitative improvements.
Theoretical foundations: all aspects of theory related to
specification, verification, refinement, and static and dynamic
analysis. Authors are encouraged to explain how their results
contribute to the solution of practical problems.
PAPER SUBMISSION
Papers will be evaluated by at least three members of the Program
Committee. They should be in Springer LNCS format and describe,
in English, original work that has not been published or submitted
elsewhere. Papers should be submitted through the FM 2014
EasyChair web site.
We solicit two categories of papers:
Regular papers should not exceeding 15 pages (including
appendices), describing fully developed work. Authors of papers
reporting experimental work are strongly encouraged to make their
experimental results available for use by reviewers. Similarly,
case study papers should describe significant case studies and
the complete development should be made available for use by
reviewers.
Tools papers of a maximum of 4 pages should describe an
operational tool and its contributions; 2 additional pages of
appendices are allowed that will not be included in the
proceedings. Tool papers should explain enhancements made
compared to previously published work. A tool paper need not
present the theory behind the tool but can focus more on its
features, and how it is used, with screen shots and examples.
Authors of tools papers should make their tool available for
use by reviewers.
Industry track papers (with a different deadline) should not
exceeding 15 pages (including appendices), describing industrial
applications of formal methods, experience with introducing
formal methods in industry, tool usage reports, experiments with
challenge problems. Authors are encouraged to explain how the
use of formal methods has overcome problems, lead to improvements
in design or provided new insights.
IMPORTANT DATES
Abstract due: November 7, 2013
Full papers due: November 14, 2013
Acceptance / Rejection Notification: February 1, 2014
Industry Track Submission: January 16, 2014
Industry Track Notification: February 16, 2014
Camera-ready: February 25, 2014
Main Conference Date: May 14-16, 2014
Tutorial / Workshops Date: May 12-13, 2014
CALL FOR TUTORIALS, WORKSHOPS and DOC SYMPOSIUM
The organizing committee of FM 2014 thus invites proposals for
half- or full-day tutorials in the broad area of formal methods.
Proposals from industry practitioners or academics are very
welcome; proposals for tutorials on applications of formal
methods to challenging problems are particularly welcome. All
tutorials should focus on providing participants with the
opportunity to learn new techniques, new application domains,
and insightful uses of formal methods. Details on the call for
tutorials can be found at http://www.comp.nus.edu.sg/~pat/FM2014/cft.html
We are also inviting people to submit proposals for workshops.
The purpose of the workshops is to provide an informal setting
for workshop participants to discuss technical issues, exchange
research ideas, and to discuss and/or demonstrate applications.
These workshops may be driven by fundamental academic interests
or by needs from specific application domains. We encourage a
diversity of workshops relating to different varieties of formal
models. Details on the call for workshops can be found at
http://www.comp.nus.edu.sg/~pat/FM2014/cfp4w.html
A Doctoral Symposium will be held on 12-13th May in conjunction
with the FME Symposium FM2014. This aims to provide a helpful
environment in which selected doctoral students can present and
discuss their ongoing work, meet other students working on
similar topics and receive helpful advice and feedback from a
panel of researchers and academics. Details on the call for
doctoral symposium can be found at
http://www.comp.nus.edu.sg/~pat/FM2014/cfd.html
ORGANIZATION COMMITTEE
General Chair
Jin Song Dong, National University of Singapore, Singapore.
Program Committee Co-Chairs
Cliff B Jones, Newcastle University, United Kingdom.
Pekka Pihlajasaari, Data Abstraction (Pty) Ltd, South Africa.
Jun Sun, Singapore University of Technology and Design, Singapore.
Doc Symposium Co-Chair
Annabelle McIver, Macquarie University, Australia.
Workshop Chair
Shengchao Qin, University of Teesside, United Kingdom.
Publicity Chair
Jonathan Bowen, London South Bank University, United Kingdom.
Kenji Taguchi, AIST, Japan.
Tutorial Chair
Richard Paige, University of York, United Kingdom.
Program Committee - Main Track
Bernhard Aichernig, Austria.
Richard Banach, School of Computer Science, University of Manchester,
United Kingdom.
Juan Bicarregui, Rutherford Appleton Laboratory, United Kingdom.
Andrew Butterfield, Trinity College Dublin, Northern Ireland.
Ana Cavalcanti, United Kingdom.
Marsha Chechik, University of Toronto, Canada.
Yu-Fang Chen, Academia Sinica, Taiwan.
Wei-Ngan Chin, National Univ of Singapore, Singapore.
Dino Distefano, University of London, United Kingdom.
Jim Davies, University of Oxford, United Kingdom.
Frank De Boer, CWI, Netherlands.
José Luiz Fiadeiro, Royal Holloway, University of London, United Kingdom.
John Fitzgerald, Newcastle University, United Kingdom.
Marie-Claude Gaudel, LRI, Univ. Paris-Sud and CNRS, France.
Jaco Geldenhuys, Stellenbosch University, South Africa.
Dimitra Giannakopoulou, NASA Ames, United States.
Stefania Gnesi, ISTI-CNR, Italy.
Lindsay Groves, Victoria University of Wellington, New Zealand.
Stefan Gruner, University of Pretoria, South Africa.
Anne E. Haxthausen, Technical University of Denmark, Denmark.
Ian J. Hayes, University of Queensland, Australia.
Constance Heitmeyer, Naval Research Laboratory, Washington DC 20375,
United States.
Jane Hillston, University of Edinburgh, United Kingdom.
Shinichi Honiden, National Institute of Informatics, Japan.
Daniel Jackson, MIT, United States.
Cliff Jones, Newcastle University, United Kingdom.
Rajeev Joshi, Laboratory for Reliable Software, Jet Propulsion
Laboratory, United States.
Peter Gorm Larsen, Aarhus School of Engineering, Denmark.
Axel Van Lamsweerde, Universite Catholique de Louvain, Belgium.
Gary T. Leavens, University of Central Florida, United States.
Yves Ledru, Laboratoire d'Informatique de Grenoble - Université Joseph
Fourier, France.
Michael Leuschel, University of Düsseldorf, Germany.
Brendan Mahony, DSTO, Australia.
Tom Maibaum, McMaster University, Canada.
Annabelle McIver, Macquarie University, Australia.
Dominique Mery, Université de Lorraine, LORIA, France.
Peter Müller, ETH Zürich, Switzerland.
Tobias Nipkow, TU München, Germany.
Colin O'Halloran, QinetiQ Ltd, United Kingdom.
Jose Oliveira, Universidade do Minho, Portugal.
Pekka Pihlajasaari, Data Abstraction (Pty) Ltd, South Africa.
André Platzer, Carnegie Mellon University, United States.
Zongyan Qiu, Peking University, China.
Ken Robinson, The University of New South Wales, Australia.
Andreas Roth, SAP Research, United States.
Abhik Roychoudhury, National University of Singapore, Singapore.
Augusto Sampaio, Federal university of Pernambuco, Brazil.
Steve Schneider, University of Surrey, United Kingdom.
Emil Sekerinski, McMaster University, Canada.
Ketil Stoelen, SINTEF, Norway.
Jun Sun, Singapore University of Technology and Design, Singapore.
Jing Sun, The University of Auckland, New Zealand.
Xiaoyu Song, Portland State University, United States.
Marcel Verhoef, Chess, Netherlands.
Willem Visser, Stellenbosch University, South Africa.
Chao Wang, Virginia Tech, United States.
Alan Wassyng, McMaster University, Canada.
Pamela Zave, AT&T Laboratories--Research, United States.
Lijun Zhang, Technical University of Denmark, Denmark.
Program Committee - Industry Track
Jun Sun, Singapore University of Technology and Design, Singapore.
Cliff Jones, Newcastle University, United Kingdom.
Pekka Pihlajasaari, Data Abstraction (Pty) Ltd, South Africa.
Michael Holloway, NASA, United States.
Ralf Huuck, NICTA, Australia.
Ewen Denney, SGT/NASA Ames, United States.
Jim Grundy, Intel Corporation, United States.
Hongjun Zheng, MathWorks, United States.
Wolfgang Grieskamp, Google, United States.
Cristina Cifuentes, Oracle, Australia.
Jon Burton, Praxis, United Kingdom.