dynamic graph transformation systems hernán melgratti imt lucca institute for advance studies joint...

34
Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica, Università di Pisa

Post on 19-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

Dynamic Graph Transformation Systems

Hernán MelgrattiIMT Lucca Institute for Advance Studies

Joint Work with

Roberto BruniDipartimento di Informatica, Università di Pisa

Page 2: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured nets

Page 3: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured nets

Page 4: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured netsa

x

b

x

ax xb

Page 5: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured netsa

x

b

x

ax xb

ac

defin aa | ac

a

x

b

x

ax xb

b

def

in ab | cb

bc

a

x

b

x

ax xb

a

defin aa | cb

bc

Page 6: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured netsa

x

ax def cy yx in cc

c

y

x

cy

Page 7: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Join Calculus

Join processes can be seen as dynamic and reconfigurable, coloured netsa

x

ax def cy yx in cc

ab

def

c

y

x

cy

in aa | ab

a

x

ax def cy yx in cc

b

def

c

y

x

cy

in ab | cc

c yc

y

cy ay

Page 8: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

DPO Graph Grammar

The graph of types

The graph of types

The initial T-typed graph

The initial T-typed graph

The set of productions

The set of productions

T-typed Graphs

T-typed Graphs

Left-hand-sideLeft-hand-side

InterfaceInterface

Right-hand-side

Right-hand-side

Span of injective

morphisms

Span of injective

morphisms

Page 9: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

G

DPO Rewriting Step

m

l rp : L K R

k

bD

h

dH

Page 10: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

Page 11: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

p:

Page 12: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n

n1 n1p:

Page 13: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n

n1 n1p:

Gp

Page 14: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n

n1 n1

n m

f g

p:

Gp

Page 15: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n

n1 n1 n1

n m

f

m1f1

g

p:

Gp

Page 16: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n

n1 n1 n1

n m

f

m1f1

g

p:

q:

Gp

Page 17: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n1 n1p:

Gp

n

n1

f

m1f1

q: …n m

g

Page 18: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n1 n1p:

Gp

n

n1

f

m1f1

q: …

r p

r st

n m

g

f m

g

Page 19: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Towards Dynamic Productions

n1 n1p:

Gp

n

n1

f

m1f1

q: …

r p

r st

f n m

g

m

g

q: …

p

r st

s’t’

f’

m’

g’

q’: …

q:q:

q’:

Page 20: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Dynamic Graph Grammar (DGG)

The graph of types

The graph of types

The initial T-typed graph

The initial T-typed graph

The set of productions

The set of productions

T-typed Graphs

T-typed Graphs

A DGG over the graph of type T

Tp

A DGG over the graph of type T

Tp

Injective MorphismInjective

MorphismInjective Morphism

between Tp-typed Graph Injective Morphism

between Tp-typed Graph

Page 21: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

G

T

Dynamic rewriting

k

b

D

m

r’

d

H

h

lL K

Tk’

K’

D’

Page 22: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Encoding the Join Calculus

A channel (or place) x is encoded as a node n

The actual name of the channel is given by an arc x:n n

Any firing rule is encoded as a production

Page 23: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Encoding a Join Process P

The graph of types

x3x2

x1

m

Where fn (P ) dn(P ) = { x1, x2, x3 }

Page 24: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Encoding a Join Process P

A message xy

m

m

x y

yx

m

Page 25: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Encoding a Join Process P

A message xy

yx

m

m

x y

Page 26: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Encoding a Join Process P

A definition x1u1 |…| xkuk Pi

m

u1

x1

n1

m

uk

xk

nk

u1

x1

n1

uk

xk

nk

Page 27: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Example

P = def xu def yv vy in yu | xy in xz

xz

m

z is a free name

x is a defined name

m

nu

x nx

x z

m

xz

mx nx

nu

yu

y

x nx

m

m

nu

u

m

m

nv

y ny y ny

nv

m

m

nv

y ny

Page 28: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Example

m

nu

x nx x nx

nu

y

x nx

m

m

nu

u

m

m

nv

y ny y ny

nv

m

m

nv

y ny

x

m

z

x

z

u

ym

m

x

z

u

y

m

m

u’

y’m

Page 29: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Theorem

For any Join process P•If P P’ using JiPi then Q s.t.

and Q P’

•If , then P’ s.t P P’ using JiPi and

Page 30: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

DGG as GG

We start by defining a graph of types for representing the tree of types created dynamically

n f m

gTa

Tb

A chain of types

nn f m g

Ta Tb

Refined Type

Page 31: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

DGG as GG

A typed graph over a refined type

n f m

gTa

Tb

nn f m g

Ta Tb

n f m

nn f m

Ta Tb

Page 32: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

DGG as GG

The refined version of productionsn1 n1p: n1 m1f1

nn f m

Ta Tb

nn

Ta

nn

Ta

nn f m g

Ta Tb

Page 33: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Theorem

Page 34: Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,

ICGT 2006 Hernán Melgratti@IMTLucca-

Final Remarks DGG offers a convenient level of

abstraction for describing reflexive systems

DGG can be simulated by ordinary GG

Future works:•To study independent derivations,

parallelism, process semantics, unfolding semantics and event structure semantics

•To show that concurrency is preserved by our encoding

•To consider other approaches (like SPO)