On the random structure of behavioural transition systems. Jan Friso Groote, Remco van der Hofstad,...

23
On the random structure of behavioural transition systems. Jan Friso Groote, Remco van der Hofstad, Matthias Raffelsieper

Transcript of On the random structure of behavioural transition systems. Jan Friso Groote, Remco van der Hofstad,...

On the random structure of behavioural transition systems.

Jan Friso Groote, Remco van der Hofstad,

Matthias Raffelsieper

How do we count rabbits in nature?

/ Informatica PAGE 2

How do we count the number of states in software?

/ Informatica PAGE 3

How do we count bugs in software?

/ Informatica PAGE 4

Random state spaces.

• N number of states (4).

• λ fanout (2).

/ Informatica PAGE 5

Each state has λ outgoing states to a randomly chosen other state.

Predict the size of a state space

/ Informatica PAGE 6

• m rabbits seen (transitions): 1, 3, 5,....

• im unique rabbits are unique (states): 1, 2, 3,....

Predict N, the total number of states.

/ Informatica PAGE 7

Firewire data link layer

(IEEE 1394, Bas Luttik)

Typically findings:

/ Informatica PAGE 8

Parallel random state spaces.

/ Informatica PAGE 9

A realistic random state space is the

parallel composition of p random state spaces.

no communicationno communication

Estimation of ‘product state spaces’

Remco van der Hofstad

/ Informatica PAGE 10

Ball at distance j: BT(j).

Layer at distance j: ∂BT(j).

Estimation of ‘product state spaces’

Remco van der Hofstad

/ Informatica PAGE 11

Ball at distance j: BT(j).

Layer at distance j: ∂BT(j).

BT(0).

∂BT(0).

Estimation of ‘product state spaces’

Remco van der Hofstad

/ Informatica PAGE 12

Ball at distance j: BT(j).

Layer at distance j: ∂BT(j).

BT(1).

∂BT(1).

Estimation of ‘product state spaces’

Remco van der Hofstad

/ Informatica PAGE 13

Ball at distance j: BT(j).

Layer at distance j: ∂BT(j).

BT(2).

∂BT(2).

Ball sizes of product graphs.

/ Informatica PAGE 14

Expected ball size (single transition system):

/ Informatica PAGE 15

Estimation of the layer size (product graph)

/ Informatica PAGE 16

Take enough layers and estimate: λ1, λ2, N1, N2.

Can we predict (2 parallel systems)?

/ Informatica PAGE 17

Can we predict (3 parallel systems)?

/ Informatica PAGE 18

And now reality (firewire protocol):

/ Informatica PAGE 19

And now reality (firewire protocol):

/ Informatica PAGE 20

And now reality (CABP):

/ Informatica PAGE 21

A remark on debugging.

/ Informatica PAGE 22

1000 states 103 states α=0.05 probability that error remains

undetected with a test of length m.

Some open problems.

• Is the model really that good?

• How to reduce the extreme calculational effort to do the predictions?

• Can we predict the index of parallelism? What is the correct number of parallel processes to model a particular system?

• How to estimate the probability to hit an ‘erroneous state’ in a random state space [no, contrary what you think, this is not known...].

/ Informatica PAGE 23