Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Infinite Petri Nets
Dmitry A. Zaitsev
http://daze.ho.ua
http://icl.utk.edu
Verification of protocols
• Interaction of two systems – BGP,
TCP
• Interaction of a definite number of
systems – IOTP
• Building Petri net model
• LBS analysis of the model
• Compositional analysis (clans)
Model of protocol TCP
Decomposition of TCP model
Problem of Marsan
• Verification of common bus Ethernet protocols
• Petri net model of a workstation
• How to compose the network model?
• How to analyze the network model?
• Variable and a priori unknown number of devices on the bus
Model of a workstation
Common bus Ethernet scheme
1Z 2Z kZ121p
122p
123p
124p
221p
222p
223p
224p
kp21
kp22
kp23
kp24
117p
118p
119p
120p
217p
218p
219p
220p
kp17
kp18
kp19
kp20
117kp
118kp
119kp
120kp
321p
322p
323p
324p
An example of a bus with four devices
Р-invariants of Ethernet model
ki
kijppp
ppppp
ppppppp
pppppppp
ij
pppppp
kjppp
kjppp
kjpppp
kjpppp
kippp
jjj
jjjjj
iiiiiii
iiiiiiii
jjjjjj
jjj
jjj
jjjj
jjjj
iii
,1,
),1),,,
,,,,,((
),,,,,,,
,,,,,,,,(
),1,1
),,,,,,((
);,1),,,((
);,1),,,((
);,1),,,,((
);,1),,,,((
;,1),,,(
1
24
1
22
1
21
1917161412
1
24
1
221917151210
87654321
1
24
1
2220181511
1
242013
1
211714
1
22181511
1
23191612
986
Structures of infinite nets Structure System Model Analysis
Linear Common bus
Ethernet
1987 2006
Tree-like Switched Ethernet 2007 2007
Rectangular Computing Grid 2008 2008
Triangular,
hexagonal
Radiobroadcasting,
cellular networks
2010 2010
Hypercube Computing Grid 2008 2008
Hypertorus Computing Grid 2012 2012
Model of rectangular grid device
Composition of rectangular grid
p4x2,k+1
(p2x2,k
)
p4x2,k+1
(p2x2,k
)
p4x1,k+1
(p3x1,1
) p4x
1,2
(p2x1,1
)
p1x2,1
(p3xk,1
)
(p2x1,k
)
p4xk,1
p4x2,1
p4x1,1
p1x1,k p1x
1,2 p1x
1,1
R1,1
R1,2
R2,1
R2,2
R1,k
R1,k
Rk,1
Rk,2
Rk,k
p1xk+1,1
(p3xk,2
) p1xk+1,2
(p3xk,k
) p1xk+1,k
Open grid 2 х 2
Parametric specification of a device
npu
uvnpvpilpbpblpiti
pblpopolpbto
uvuvu
uuuu,1,
,,1,,,:
,,:
,
Parametric specification of open grid
Edge conditions
• Open grid
• Terminal (customer) device
• Connection of (opposite)
edges
• Truncated communication
device
Edges
1
2
3
4
4 2
Terminal
device Connection
of edges
Closed grid 2 х 2
Truncated device on edges
Tree-like structures
Devices: triangular, rectangular
and hexagonal
p2o
p2ol
p2i
p2il
p4i
p4il
p4o
p4ol
pb2
p3i p3il p3o p3ol
t4i2
t4i3
t4o
t2o
t2i4
t2i3
t3ot3i4t3i2
pb1pb3 pbl
10
Grids
R1,1
R2,1
R2,2
R2,3
R3,1
R3,2
R3,3
R3,4
R3,5
R4,2
R4,3
R4,4
R4,5
R4,6
R4,7 R
4,1
R6,2
R6,3
R6,4
R6,5
R6,6
R6,7 R
6,1
R6,10
R6,11
R6,8
R6,9
R5,2
R5,3
R5,4
R5,5
R5,6
R5,7 R
5,1
R5,8
R5,9
5 4 3 2 1
R1,1
R1,2
R1,3
R1,4
R2,1
R2,2
R2,3
R2.4 R
2,5
R3,1 R
3,2 R
3,3 R
3,4 R3,5
R3,6
R4,1 R
4,2 R
4,3 R4,4
R4,5
R4,6 R
4,7
R5,1
R5,2
R5,3
R5,4 R
5,5 R
5,6
R6,1
R6,2
R6,3
R6,4 R
6,5
R7,1
R7,2
R7,3 R
7,4
1
2
3
4
5
6
7
7
6
p4x2,k+1
(p2x2,k
)
p4x2,k+1
(p2x2,k
)
p4x1,k+1
(p3x1,1
) p4x
1,2
(p2x1,1
)
p1x2,1
(p3xk,1
)
(p2x1,k
)
p4xk,1
p4x2,1
p4x1,1
p1x1,k p1x
1,2 p1x
1,1
R1,1
R1,2
R2,1
R2,2
R1,k
R1,k
Rk,1
Rk,2
Rk,k
p1xk+1,1
(p3xk,2
) p1xk+1,2
(p3xk,k
) p1xk+1,k
Parametric specification of torus
Infinite system for p-invariants
Р-invariants of torus
Invariants of 3 х 3 torus
Method of grids analysis
• Solving infinite systems of linear
algebraic equations for p- and t-
invariants
• Implicit construction of cyclic
sequences of transitions’ firing
• Auxiliary graphs of packets’
transmission and possible blockings
of devices
Graph of transmissions
p1i p1o
p2i
p2o
p3i p3o
p4o
p4i
p1o2,1
p4o1,1
p4i1,1
p4o2,1
p4i2,1
p1o3,2
p1i3,2 p1o
3,1 p1i
3,1
p4i2,2
p4i2,3
p4o2,3
p4i1,3
p4o1,3
p1o1,2 p1i
1,2 p1o1,1
p1i1,1
p1o2,2
p4o2,2
p1i2,2
p1i2,1
p4i1,2
p4o1,2
Graph of possible blockings
Detours of possible blockings
graphs
Complex deadlocks
• Circle of blockings
• Isolation of a vertex
• Chain of blockings with its end on an
earlier blocked chain
• Avalanche-like growth of the blocked
nodes number
• Possibility of blocking a network by ill-
intentioned traffic
Example of deadlock
Cubic device
X1
X2
X3
port1,1port1,2
port2,1
port2,2
port3,1
port3,2
Composition of a cube
X1
X2
X3
R3,2,1
Neighbors of a cube
Hypercube composition
2,1,,1,
,,:
;,,2,1,,1
,,,:
,...,,...,,
,...,,
,...,,
,...,,
,...,,
,...,,
,...,,...,,
,...,,,,
2121212121
2121212121
ndj
pblpopolpbto
nnjjndj
pilpbpblpiti
ddddd
ddddd
iiiiiinj
iiinj
iiinj
iiinj
iiinj
iiinj
iiiiiinj
iiinjnj
djduki
polpilpol
popipo
pilpolpil
pipopi
u
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
djdjdj
djdjdj
djdjdj
djdjdj
,1,,1,1,1,
:
:
:
:
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
111
111
111
111
kijudjduki
pilpol
pipo
polpil
popi
ju
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
iii
j
djdj
djdj
djdj
djdj
,,,1,,1,1,1,
:
:
:
:
,...,...,
2,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
,...,...,
2,
,...1,...,
1,
11
11
11
11
Р-invariants of hypercube
.,1,,1,,,2,1,,1,,1
,:
,:
,:
,:
,...,1,...,
1,
,...,,...,
,
,...,,...,,...,1,...,
1,
,...,,...,
,,2,
,...,,...,,...,1,...,
1,
,...,1,...,
1,
,...,,...,
2,
,...,,...,
2,
,...,1,
,...,
,...,,...,1,
,...,,,1,
,...,,...,1,
,...,1,
,...,1,
,...,1,
11111
11111
11111
11111
dukinnjjndjdj
xpolxpbxpblxpoti
xpblxpixpilxpbto
xpilxpbxpblxpiti
xpblxpoxpolxpbto
u
iii
j
iii
nj
iiiiii
j
iii
njj
iiiiii
j
iii
j
iii
j
iii
j
iij
iinj
iiiij
iinjj
iiiij
iij
iij
iij
djdjdjdjdj
djdjdjdjdj
ddddd
ddddd
))1,,,1,,1,,1),,((
),,1,,1),,1),,((,((
))1,,,1,,1,,1),,((
),,1,,1,,1),,((),,1,,1,,1,2,1,((
;,1,,1)),2,1,,1,(,(
;1,1),,,1,,1(,,1),,(
;1,1),,,1,,1(,,1),,(
,...,,...,
1,
,...,,...,
1,
,...,1,
,...,1,
,...,
,...,,...,
1,
,...,,...,
1,
,...,1,
,...,1,
,...,,
,...,,
,...,
,...,,...
1,
,...,,...,
1,
,...,,...,
1,
,...,,...,
1,
11
111
11
111
11
11
11
kijudukidjpolpil
dukidjpolpilpbl
kijudukidjpopi
dukidjpopidukidjnpb
dukindjpbpbl
kijudukidjpolpo
kijudukidjpilpi
juiii
j
iii
j
uii
jii
jii
juiii
j
iii
j
uii
jii
juii
nj
uii
njii
juiii
j
iii
j
juiii
j
iii
j
djdj
ddd
djdj
ddd
dd
djdj
djdj
Generators of models
• Square grid (graphical form)
• Hypercube grid
• Hypertorus grid
• Canvas of generalized neigborhood
• Computers of double exponent
Generator of an open grid
main( int argc, char * argv[] )
{
int i, j, k = atoi( argv[1] );
for(i=1; i<=k; i++)
for(j=1; j<=k; j++) {
printf("tr {to_1^%d,%d} {pol_1^%d,%d} {pb_1^%d,%d} -> {po_1^%d,%d} {pbl^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_1,2^%d,%d} {pi_1^%d,%d} {pbl^%d,%d} -> {pil_1^%d,%d} {pb_2^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_1,3^%d,%d} {pi_1^%d,%d} {pbl^%d,%d} -> {pil_1^%d,%d} {pb_3^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_1,4^%d,%d} {pi_1^%d,%d} {pbl^%d,%d} -> {pil_1^%d,%d} {pb_4^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {to_4^%d,%d} {pol_4^%d,%d} {pb_4^%d,%d} -> {po_4^%d,%d} {pbl^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_4,1^%d,%d} {pi_4^%d,%d} {pbl^%d,%d} -> {pil_4^%d,%d} {pb_1^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_4,2^%d,%d} {pi_4^%d,%d} {pbl^%d,%d} -> {pil_4^%d,%d} {pb_2^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {ti_4,3^%d,%d} {pi_4^%d,%d} {pbl^%d,%d} -> {pil_4^%d,%d} {pb_3^%d,%d}\n", i,j, i,j, i,j, i,j, i,j );
printf("tr {to_2^%d,%d} {pil_4^%d,%d} {pb_2^%d,%d} -> {pi_4^%d,%d} {pbl^%d,%d}\n", i,j, i,j+1, i,j, i,j+1, i,j );
printf("tr {ti_2,1^%d,%d} {po_4^%d,%d} {pbl^%d,%d} -> {pol_4^%d,%d} {pb_1^%d,%d}\n", i,j, i,j+1, i,j, i,j+1, i,j );
printf("tr {ti_2,3^%d.%d} {po_4^%d,%d} {pbl^%d,%d} -> {pol_4^%d,%d} {pb_3^%d,%d}\n", i,j, i,j+1, i,j, i,j+1, i,j );
printf("tr {ti_2,4^%d,%d} {po_4^%d,%d} {pbl^%d,%d} -> {pol_4^%d,%d} {pb_4^%d,%d}\n", i,j, i,j+1, i,j, i,j+1, i,j );
printf("tr {to_3^%d,%d} {pil_1^%d,%d} {pb_3^%d,%d} -> {pi_1^%d,%d} {pbl^%d,%d}\n", i,j, i+1,j, i,j, i+1,j, i,j );
printf("tr {ti_3,1^%d,%d} {po_1^%d^%d} {pbl^%d,%d} -> {pol_1^%d,%d} {pb_1^%d,%d}\n", i,j, i+1,j, i,j, i+1,j, i,j);
printf("tr {ti_3,2^%d,%d} {po_1^%d,%d} {pbl^%d,%d} -> {pol_1^%d,%d} {pb_2^%d,%d}\n", i,j, i+1,j, i,j, i+1,j, i,j );
printf("tr {ti_3,4^%d,%d} {po_1^%d,%d} {pbl^%d,%d} -> {pol_1^%d,%d} {pb_4^%d,%d}\n", i,j, i+1,j, i,j, i+1,j, i,j );
}
printf("net n2o%d\n", k);
}
Automatic visualization
Generated graphical format
Generalized neighborhoods
2-neigborhood for
3 dimensions
Generalized neighborhoods
2-neigborhood for
3 dimensions
on edges
Moore neighborhood in a torus
Theorems and Hypothesis
Theorem 1. Model of a hypercube is a p-invariant Petri net
for arbitrary natural numbers d, k.
Theorem 2. Model of a hypercube is a t-invariant Petri net
for arbitrary natural numbers d, k.
Statement. Model of a hypercube is not a live Petri net (it
contains deadlocks).
Hypothesis1. Appearing deadlocks in the grid models
increase probability of appearing new deadlocks.
Hypothesis 2. Process of deadlocks creation can be
controlled by generators of (perilous) traffic.
Basic publications • Zaitsev D.A., Zaitsev I.D. and Shmeleva T.R. Infinite Petri Nets:
Part 1, Modeling Square Grid Structures, Complex Systems, 26(2), 2017, 157-195.
• Zaitsev D.A., Zaitsev I.D. and Shmeleva T.R. Infinite Petri Nets: Part 2, Modeling Triangular, Hexagonal, Hypercube and Hypertorus Structures, Complex Systems, 26(4), 2017, forthcoming
• Zaitsev D.A. A generalized neighborhood for cellular automata, Theoretical Computer Science, 666 (2017), 21–35.
• Zaitsev D.A. Verification of Computing Grids with Special Edge Conditions by Infinite Petri Nets, Automatic Control and Computer Sciences, 2013, Vol. 47, No. 7, pp. 403–412.
• Zaitsev D.A., Shmeleva T.R. Verification of hypercube communication structures via parametric Petri nets, Cybernetics and Systems Analysis, Volume 46, Number 1 (2010), 105-114
• Shmeleva, T.R., Zaitsev, D.A., Zaitsev, I.D. Verification of square communication grid protocols via infinite Petri nets, MESM 2009 - 10th Middle Eastern Simulation Multiconference, p. 53-59.
Conclusions
• Finite parametric specification of infinite Petri nets
• Construction and solving infinite systems in parametric form
• Proof of infinite Petri net invariance
• Representation of complex deadlocks
• Analysis of computing grids (plane multiangle, hypercube)
Research directions
• Formal methods for solving infinite systems
• Methods for liveness investigation
• Methods of boundedness, conservativeness, liveness enforcing
• Behavioral properties of models
• Composition of a few basic elements on a given pattern
Infinite Petri Nets