Saturday, December 14, 2013

how to do a design starting from a model that is gradually refined toward executable code


http://www.youtube.com/watch?v=fSWZWXx5ixc
In 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=p6D0RSo3TAY
Using 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.

http://www.youtube.com/watch?v=P2durYFsJSA
Jason Koenig and Rustan Leino show a verification problem that makes use of functions, ghost variables, and lemmas.

http://www.youtube.com/watch?v=BLQo5d3hI4M
In this episode, Rosemary Monahan and Rustan Leino use problems specified using comprehension expressions to demonstrate how a problem can be solved using partial solutions

http://www.youtube.com/watch?v=kbJO-U9Wp-s

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.

K. Rustan M. Leino

The Verification Corner is a video series on YouTube that explains different concepts of software verification.

Atelier B

http://www.atelierb.eu/

Conférence de J.R. Abrial à l'Université de Sherbrooke

http://www.usherbrooke.ca/carrefour/archives/archives-des-conferences/2008/mais-si-on-peut-developper-des-systemes-informatiques-sans-fautes/

Conférence de Jean-Raymond Abrial, docteur d'honneur en sciences 2008 à l'UdeS
12 septembre 2008
Professeur invité à l'École polytechnique fédérale de Zurich en Suisse depuis 2004, Jean-Raymond Abrial présente une conférence publique qui s'intitule « Mais si, on peut développer des systèmes informatiques sans fautes! ». Cette présentation se veut en lien direct avec ses grands projets de recherche dans lesquels il s'est investi tout au long de sa carrière exceptionnelle. À l'Agora du Carrefour de l'information, le vendredi 12 septembre 2008, à midi. Jean-Raymond Abrial est venu à Sherbrooke recevoir le 13 septembre le tout premier doctorat honoris causa en sciences dans le domaine de l'informatique de l'Université de Sherbrooke.

Papers of J.R. Abrial

http://www.informatik.uni-trier.de/~ley/pers/hd/a/Abrial:Jean=Raymond

Formalizing Hybrid Systems with Event-B

Abstract State Machines, Alloy, B, VDM, and ZLecture Notes in Computer Science Volume 7316, 2012, pp 178-193Formalizing Hybrid Systems with Event-B

Abstract

From Z to B and then Event-B: Assigning Proofs to Meaningful Programs

Integrated Formal MethodsLecture Notes in Computer Science Volume 7940, 2013, pp 1-15From Z to B and then Event-B: Assigning Proofs to Meaningful Programs
Abstract

Set-Theoretic Models of Computations

Theories of Programming and Formal MethodsLecture Notes in Computer Science Volume 8051, 2013, pp 1-22Set-Theoretic Models of Computations

Abstract

Event-B patterns and their tool support

Software & Systems ModelingVolume 12Issue 2pp 229-244Event-B patterns and their tool support

FormaliSE 2014 2nd FME Workshop on Formal Methods in Software Engineering



Call for Papers: FormaliSE 2014
2nd FME Workshop on Formal Methods in Software Engineering
held in conjunction with ICSE 2014 (May 31th–June 7th)
Hyderabad, India
NTRODUCTION

IThe software industry has a long-standing and well-earned reputation for
failing to deliver on its promises and it is clear that still nowadays, the
success of software projects with the current technologies cannot be assured.
For large complex projects ad hoc approaches have proven inadequate to assure
ey places makes software engineering overly sensitive to the weaknesses that
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 precisi
ore 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 u
s 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 engineerin
g 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 INTE
Rdevelopment 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 Conferen
cceedings 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:
members will review all submissions. Papers will be judged on the basis of
their clarity, relevance, originality, and contribution to the field.
s
24 February 2
IMPORTANT DATES 24 January 2014: submission deadline for workshop pape
r014: notification of acceptance/rejection to authors
papers
*** Exact date *** 2014: FormaliSE workshop held in H
14 March 2014: camera-ready copy deadline for worksho
pyderabad, India OC/PC CHAIRS are Stefania Gnesi (ISTI-CNR, Italy) and Nico Plat (West
vices, India). The OC/PC Chairs can be reached via e-mail:
Consulting BV, The Netherlands). Local organizer is Ravindra Metta (Tata Consultancy Se
roc@formalise.org. If you intend to submit a paper you are invited to inform us
in advance.
OMMITTEE consists of Andreas Bollin (Klagenfurt University,
Austria), Ei
THE PROGRAM
Cnar Broch Johnsen (Oslo University, Norway), Manfred Broy
rk University, UK),
Nancy Day (University of Waterloo, Canada), Cindy Eisner (
(Technical University München, Germany), Ana Cavalcanti (Y
oIBM Haifa Research Laboratory, Israel) , Alessandro Fantechi (University of Florence, Italy), Jaco
echnology, The Netherlands), Arie Gurfinkel (Carnegie
Mellon University,
Geldenhuys (University of Stellenbosch, South Africa) , Jan Friso Groote (Eindhoven University of
TUSA), Mike Hinchey (Lero, Ireland), Randolph Johnson (independent consultant, USA), Axel van Lamsweerde (University of Louvain.
France), Yves Ledru
(IMAG, France), Axel Legay (INRIA Rennes, France),
Belgium), Peter Gorm Larsen (Aarhus University, Denmark), Marc Lawford (MacMaster University, Canada), Thierry Lecomte (ClearSy,
Antónia Lopes (University of Lisbon, Portugal), István Majzik (Budapest University of Technology and Economics, Hungary), Tiziana Margaria (Potsdam University, Germany), Ravindra
Finland) , Sebastián Uchitel (Imperial College and
Universidad de Buenos Aires,
Metta (Tata Consultancy Services, India), Henry Muccini (Universita degli Studi dell’Aquila, Italy), Matteo Rossi (Politecnico di Milano, Italy), Elena Troubitsyna (Abo University,
UK and Argentina), Hironori Washizaki (Waseda
France).
University, Japan), and Fatiha Zaïdi (LRI/CNRS,