Top Banner
1 2 2 3,4 2 3 1 1 2 3 4
33

Unifying Formal Notations - CiteSeerX

May 02, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Unifying Formal Notations - CiteSeerX

COMPARE 2012

30th June 2012

Towards Uni�ed Mechanisms

for De�ning and Sharing

Formal Notations for Concurrency

Étienne André1, Benoît Barbot2, Clément Démoulins2, Lom Messan Hillah3,4,Francis Hulin-Hubard2, Fabrice Kordon3, and Laure Petrucci1

1Université Paris 13, Sorbonne Paris Cité, LIPN, CNRS, France2LSV, CNRS & ENS de Cachan, France3LIP6, CNRS UMR 7606, UPMC, France

4Université Paris Ouest Nanterre La Défense, France

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 1 / 23

Page 2: Unifying Formal Notations - CiteSeerX

Motivation

Motivation

Main goal

Scalable reference platform for automated reasoning

Wide range of tools

Heterogeneous formalisms

Chaining of processes of veri�cation in order to allow certi�cation

of models

Tool comparison and evaluation with homogeneous criteria

Problems

Di�culty to conciliate di�erent formalisms and tools into one

common platform

Even harder to consider end-to-end veri�cation in a toolchain

combining di�erent formalisms and tools

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 2 / 23

Page 3: Unifying Formal Notations - CiteSeerX

Motivation

Motivation

Main goal

Scalable reference platform for automated reasoning

Wide range of tools

Heterogeneous formalisms

Chaining of processes of veri�cation in order to allow certi�cation

of models

Tool comparison and evaluation with homogeneous criteria

Problems

Di�culty to conciliate di�erent formalisms and tools into one

common platform

Even harder to consider end-to-end veri�cation in a toolchain

combining di�erent formalisms and tools

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 2 / 23

Page 4: Unifying Formal Notations - CiteSeerX

Outline

Outline

1 Related Work

2 Approach

3 Integration into CosyVerif

4 Perspectives

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 3 / 23

Page 5: Unifying Formal Notations - CiteSeerX

Related Work

Outline

1 Related Work

2 Approach

3 Integration into CosyVerif

4 Perspectives

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 4 / 23

Page 6: Unifying Formal Notations - CiteSeerX

Related Work

Related Work: Purely Syntactic Approaches

OMDoc

Markup format and data model for Open Mathematical Documents

Ontology language for mathematical knowledge

No associated platform, but interfaces for existing tools

MoWGLI

Management and publishing of mathematical documents (MathML,

OpenMath, OMDoc)

XML-based technologies (XSLT, RDF, etc.)

Not maintained anymore?

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 5 / 23

Page 7: Unifying Formal Notations - CiteSeerX

Related Work

Related Work: Syntax and Toolkits (1/2)Prosper: Proof and Speci�cation Assisted Design Environments

Extensible, proof tool architecture for formal design and veri�cation

Tools with graphical (textual) interface

Promising but outdated

CASL: Common Algebraic Speci�cation LanguageFunctional requirements and modular design language for software

systems

HetCASL platform: Heterogeneous Tool Set

Logic- and theorem prover-oriented (Isabelle, Maude, etc.)

Diabelli [Urbas and Jamnik, 2012]Heterogeneous reasoning (theorem proving with both diagrammatic

and sentential formulae, and proof steps)

Standalone tool combining Isabelle and Speedith

Graphical interface, but textual models

Not that �exible (requires translations), not in the cloud

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 6 / 23

Page 8: Unifying Formal Notations - CiteSeerX

Related Work

Related Work: Syntax and Toolkits (2/2)

LTSmin: Meta toolkit [Blom et al., 2010]

Di�erent input language modules (mCRL2, Promela, etc.)

LTS-based semantic exchange of state space between di�erent tools

(Partitioned Next-State function)

Allows the end user to apply di�erent veri�cation algorithms than

their native tool

Rich-model Toolkit

Standardization of formal languages: common formats for systems,

formulae, proofs and counterexamples

SAT and SMT oriented, built-in algorithms (?)

Recent initiative

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 7 / 23

Page 9: Unifying Formal Notations - CiteSeerX

Approach

Outline

1 Related Work

2 Approach

General Idea

FML: Formalism Markup Language

GrML: Graph Markup Language

3 Integration into CosyVerif

4 Perspectives

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 8 / 23

Page 10: Unifying Formal Notations - CiteSeerX

Approach General Idea

Challenges

Flexible and extensible mechanism for describing formalisms

Should allow well-formatted �les

Should be based on technologies supported by tools and libraries

for �le manipulation

Composition and hierarchy of formalisms

Formalisms are not independent from each other: need for

factoring, and maintaining precise relations between formalisms

Formalisms should be composed and reused

Formalisms should be easily extensible

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 9 / 23

Page 11: Unifying Formal Notations - CiteSeerX

Approach General Idea

Two-layered Formalism Approach

Separating concerns

Formalisms: FML

Models descriptions: GrML

FML

User

FormalismGrML

User

Model

Meta-Meta

Meta

Instance

instance of

comply with

is structured by

specialize

comply with

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 10 / 23

Page 12: Unifying Formal Notations - CiteSeerX

Approach FML: Formalism Markup Language

FML: Formalism Markup Language

De�nes the concepts of a graph-based formalism

Nodes and arcs

Complex attributes can be attached

Based on XML

Favor reusability

Numerous existing tools and libraries

Allows formalism inclusion

A formalism can include one or several other formalism de�nition(s)

Favor reusability

Favor inheritance

Favor easy de�nition of new formalisms using composition of

existing ones

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 11 / 23

Page 13: Unifying Formal Notations - CiteSeerX

Approach FML: Formalism Markup Language

Example: FML Description for Directed Graphs

<?xml version="1.0" encoding="UTF-8"?>

<formalism name="Graph" xmlns="http://cosyverif.org/ns/formalism">

<nodeType name="vertex"/>

<arcType name="transition"/>

<leafAttribute name="name" refType="vertex"/>

</formalism>

Each vertex is a node

Each transition is an arc

Each vertex has a name

One could add:

Initial and �nal vertexes

Transition labels

And so on

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 12 / 23

Page 14: Unifying Formal Notations - CiteSeerX

Approach FML: Formalism Markup Language

Example: FML Description for Directed Graphs

<?xml version="1.0" encoding="UTF-8"?>

<formalism name="Graph" xmlns="http://cosyverif.org/ns/formalism">

<nodeType name="vertex"/>

<arcType name="transition"/>

<leafAttribute name="name" refType="vertex"/>

</formalism>

Each vertex is a node

Each transition is an arc

Each vertex has a name

One could add:

Initial and �nal vertexes

Transition labels

And so on

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 12 / 23

Page 15: Unifying Formal Notations - CiteSeerX

Approach FML: Formalism Markup Language

An Example of Hierarchy of Formalisms

Formalisms for classes of automata and Petri nets

Available on the Web

Expressions andBoolean expressions

Abstracthybrid automata

Abstracttimed automata

abstract PN-Modules

Abstract parametrictimed automata

abstractPN-CoreAutomata

HierarchicalPlace/Transition-Net

P/T Net

HybridAutomata

LinearHybrid Automata

ParametricTimed Automata

TimedAutomata

Symmetric-Netwith-Bags

Symmetric-Net

Stochastic-Nets

Stopwatch Automata

Parametric Stopwatch Automata

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 13 / 23

Page 16: Unifying Formal Notations - CiteSeerX

Approach GrML: Graph Markup Language

GrML: GRaph Markup Language

A GrML �le describes a model

References a FML formalism

Instance of a FML formalism

Automated conformance check for any FML formalism and any

GrML model

Analogies

With UML: FML de�nes the superstructure, and GrML the

infrastructure

With DSL: FML is a meta meta model, and GrML a meta model

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 14 / 23

Page 17: Unifying Formal Notations - CiteSeerX

Approach GrML: Graph Markup Language

Example of GrML Model

<?xml version="1.0" encoding="UTF-8"?>

<model formalismUrl="http://formalisms.cosyverif.org/graph.fml"

xmlns="http://cosyverif.org/ns/model">

<node id="1" nodeType="vertex">

<attribute name="name">u</attribute>

</node>

<node id="2" nodeType="vertex">

<attribute name="name">v</attribute>

</node>

<arc id="101" arcType="transition" source="1" target="2"/>

<arc id="102" arcType="transition" source="2" target="1"/>

</model>

Syntactically conforms to the FML model previously given

Corresponds to the following graph

u v

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 15 / 23

Page 18: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif

Outline

1 Related Work

2 Approach

3 Integration into CosyVerif

The CosyVerif Platform

4 Perspectives

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 16 / 23

Page 19: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Architecture

A �exible server: Alligator

Contains the integrated tools

A �exible client: Coloane

Contains a graphical interface for the models

Available as an Eclipse plugin or an RCP application

Can be easily extended (plugin architecture)

Distributed architecture (in the cloud)

A client automatically (or manually) connects to an available server

through a Web service

Advantage: no charge on the user computer

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 17 / 23

Page 20: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Features

Generic and open platform

Depends neither on the formalisms nor on the tools and their

algorithms

Very �exible

Easy to add a new formalism

Easy to integrate a new tool: one parser and one printer (one day of

work with no speci�c knowledge)

Other clients can be implemented

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 18 / 23

Page 21: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Community

Widely used

Frequent meetings (steering committee, one-day workshops,

integration parties, PN model checking competition, etc.)

Based on CPN-AMI (since 1987): more than 260 sites licenses in 50

countries

Benchmarks library in GrML

100% open source

Server, client and tools are in GNU GPL

Try it!

www.cosyverif.org

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 19 / 23

Page 22: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Community

Widely used

Frequent meetings (steering committee, one-day workshops,

integration parties, PN model checking competition, etc.)

Based on CPN-AMI (since 1987): more than 260 sites licenses in 50

countries

Benchmarks library in GrML

100% open source

Server, client and tools are in GNU GPL

Try it!

www.cosyverif.org

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 19 / 23

Page 23: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Currently Integrated Tools

COSMOS [Ballarini et al., 2011], a statistical model checker for

Petri net with general distribution

Crocodile [Colange et al., 2011], a model checker for Symmetric

Nets with bags

Imitator [André et al., 2012], a tool for synthesizing timing

parameters for Timed Automata with stopwatches

PNXDD [Kordon et al., 2012], a model checker for

Place/Transition Petri nets based on Hierarchically Structured

Decision Diagrams

. . . And more to come!

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 20 / 23

Page 24: Unifying Formal Notations - CiteSeerX

Integration into CosyVerif The CosyVerif Platform

CosyVerif: Currently Integrated Tools

COSMOS [Ballarini et al., 2011], a statistical model checker for

Petri net with general distribution

Crocodile [Colange et al., 2011], a model checker for Symmetric

Nets with bags

Imitator [André et al., 2012], a tool for synthesizing timing

parameters for Timed Automata with stopwatches

PNXDD [Kordon et al., 2012], a model checker for

Place/Transition Petri nets based on Hierarchically Structured

Decision Diagrams

. . . And more to come!

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 20 / 23

Page 25: Unifying Formal Notations - CiteSeerX

Perspectives

Outline

1 Related Work

2 Approach

3 Integration into CosyVerif

4 Perspectives

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 21 / 23

Page 26: Unifying Formal Notations - CiteSeerX

Perspectives

Towards Models for Composition

Horizontal composition

Several models can be synchronized together (usually on-the-�y)

Example: Timed automata

Vertical composition: heterogeneous hierarchy

Subparts of a model can refer to another model

Example: what if a Petri net place is re�ned by a timed automaton?

Need for models for composition

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 22 / 23

Page 27: Unifying Formal Notations - CiteSeerX

Perspectives

Towards Semantic Models

Semantic bridges between formalisms

Allow automated model translation

Allow tool comparison even on di�erent formalismsAllow tool orchestration

Sequence of calls using di�erent formalismsParallel with LTSmin, but more complicated than LTSs

Handling inconsistencies

Not every model in a formalism can be translated to any other

formalism

Automated detection of possible incompatibilities

Or loss controlled semantic mapping

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 23 / 23

Page 28: Unifying Formal Notations - CiteSeerX

Bibliography

References I

André, É., Fribourg, L., Kühne, U., and Soulat, R. (2012).IMITATOR 2.5: A tool for analyzing robustness in scheduling problems.In FM'12, LNCS. Springer.To appear.

Ballarini, P., Djafri, H., Du�ot, M., Haddad, S., and Pekergin, N. (2011).HASL: An expressive language for statistical veri�cation of stochastic models.In VALUETOOLS'11.To appear.

Blom, S., van de Pol, J., and Weber, M. (2010).LTSmin: Distributed and symbolic reachability.In CAV'10, volume 6174 of LNCS, pages 354�359. Springer.

Colange, M., Baarir, S., Kordon, F., and Thierry-Mieg, Y. (2011).Crocodile: a symbolic/symbolic tool for the analysis of symmetric nets with bag.In ICATPN'11, volume 6709 of LNCS, pages 338�347. Springer.

Kordon, F., Linard, A., Buchs, D., Colange, M., Evangelista, S., Lampka, K.,Lohmann, N., Paviot-Adet, E., Thierry-Mieg, Y., and Wimmel, H. (2012).Report on the model checking contest at Petri Nets 2011.ToPNoC, V:121�140.

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 24 / 23

Page 29: Unifying Formal Notations - CiteSeerX

Bibliography

References II

Urbas, M. and Jamnik, M. (2012).Diabelli: A heterogeneous reasoning framework.In IJCAR'12.To appear.

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 25 / 23

Page 30: Unifying Formal Notations - CiteSeerX

Extra Slides

FML Concepts

LeafAttribute

name

defaultValue: [0..1]

refType: [0..1]

ComplexAttribute

name

refType: [0..1]

combineChild:

interleave |

choice

[0..1] = interleave

NodeType

name

ArcType

name

Formalism

name

abstract: [0..1] =

false

xi:Include

hrefsch:Rule

Ref

href

minOccurs:

[0..1] = 0

maxOccurs:

[0..1] = ∞Child

refName

minOccurs:

[0..1] = 1

maxOccurs:

[0..1] = ∞

∗ ∗

∗ ∗

1..∗

∗∗

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 26 / 23

Page 31: Unifying Formal Notations - CiteSeerX

Extra Slides

GrML Concepts

Model

formalismUrl

Node

id

nodeType

Arc

id

arcType

Attribute

name

value

Ref

href

∗ ∗

1

1

∗ ∗∗ ∗

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 27 / 23

Page 32: Unifying Formal Notations - CiteSeerX

Extra Slides

Abstract vs. Concrete Formalisms

Abstract formalism

Root (or intermediate) formalism for the hierarchy

Should not have GrML instance

Concrete formalism

Inherits one or several abstract formalism(s)

May add constraints to the abstract formalism

Good design practice

Parallel with object-oriented software design

Abstract classes factor common features

Concrete classes re�ne them, and can be instantiated

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 28 / 23

Page 33: Unifying Formal Notations - CiteSeerX

Extra Slides

Technologies

Inclusion of formalisms is performed using XInclude

Constraints are speci�ed using Schematron

Model validation and conformity is performed using XSLT

Étienne ANDRÉ (Paris 13) Unifying Formal Notations 30th June 2012 29 / 23