Kiedy dwie symulacje nie są bisimulacją?


20

Biorąc pod uwagę oznaczony system przejścia , gdzie jest zbiorem stanów, jest zbiorem etykiet, a jest relacją trójskładnikową. Jak zwykle napisz dla . Oznaczone przejście oznacza, że ​​system w stanie zmienia stan na z etykietą , co oznacza, że to pewne obserwowalne działanie, które powoduje zmianę stanu.S Λ → ⊆ S × Λ × S p α → q ( p , α , q ) ∈ → p α → q p q α α(S,Λ,→)SΛ→⊆S×Λ×Sp→αq(p,α,q)∈→p→αqpqαα

Teraz relacja jest nazywana symulacją iff R⊆S×S

∀(p,q)∈R, if p→αp′ then ∃q′,q→αq′ and (p′,q′)∈R.

Mówi się, że jeden LTS symuluje inny, jeśli istnieje między nimi relacja symulacji.

Podobnie relacja jest bisimulacją iffR⊆S×S jeżeli  p α → p ′  to  ∃ q ′ ,∀(p,q)∈R,

 if p→αp′ then ∃q′,q→αq′ and (p′,q′)∈R and  if q→αq′ then ∃p′,p→αp′ and (p′,q′)∈R.

Mówi się, że dwa LTS są bisimilar, jeśli istnieje bisimulacja między ich przestrzeniami stanu.

Oczywiście te dwa pojęcia są dość powiązane, ale nie są takie same.

W jakich warunkach LTS symuluje inny i odwrotnie, ale że oba LTS nie są podobne?

Odpowiedzi:


12

Ponieważ proces CCS jest wart tysiąc pikseli - i łatwo jest zobaczyć leżący u jego podstaw LTS - oto dwa procesy, które symulują się nawzajem, ale nie są podobne:

Q = a b

P=ab+a
Q=ab

R1={(ab+a,ab),(b,b),(0,b),(0,0)} to symulacja.

R2={(ab,ab+a),(b,b),(0,0)} to symulacja.

Q R 2 P P Q P a → 0 Q ′ Q a → Q ′ b 0 bP R1 Q i ale i nie są podobne. Dlaczego nie? Ponieważ i jedyne takie, że to ... a nie jest podobne do .Q R2 PPQP→a0Q′Q→aQ′b0b

PQQQPPaQaRRR−1


10

R1R2p1qR1R2

Kanonicznym przykładem są dwa systemy, które mają te same ślady, ale dokonują wyborów inaczej. Rozważmy dwa automaty z napojami: pierwszy (zły) bierze monetę ( c) i niedeterministycznie decyduje, czy podać filiżankę herbaty ( t). Drugi automat (ten dobry) bierze monetę ( c) i podaje filiżankę herbaty ( t).

wczesny i późny wybór

R1={(s,s′),(p,p′),(q,q′),(r,p′)}rrp

R2={(s′,s),(p′,p),(q′,q)}rrs′2sp′s′cpr1pq′qr

rr

Różnica między tymi dwiema maszynami polega na tym, że dobra maszyna jest deterministyczna i (przy założeniu żywotności) zawsze dostarcza herbatę po włożeniu monety, podczas gdy zła maszyna może kapryśnie wziąć monetę, ale utknie, nie mogąc dostarczyć herbaty.

Tego rodzaju różnica pojawia się często w badaniu systemów współbieżnych. Odpowiedź jmada pokazuje proces CCS z tym LTS.

Aby uzyskać więcej informacji na temat bisimulacji, polecam notatki Davide Sangiorgi O początkach bisimulacji i koindukcji . (Jest to ćwiczenie 1, str. 29, a notatki używają tego samego przykładu.)


Fakt, że dwie jednokierunkowe symulacje nie są równe podobieństwu, sugeruje mi, że symulacja nie jest właściwym pomysłem przybliżenia w obecności niedeterminizmu. Czy są jakieś inne pomysły, które zostały wzięte pod uwagę?
— Uday Reddy,

2

LTS1LTS2RLTS2LTS1RR

LTS1LTS2RLTS2LTS1R


Wydaje mi się, że to, co próbuję powiedzieć, to fakt, że zawsze tak jest, że dwa LTS są podobne, więc pytanie dotyczy raczej tego, czy dana relacja jest (bi) symulacją.
— Charles
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.