Szukam prostego przykładu dwóch systemów przejściowych, które są równoważne LTL, ale nie równoważne.
Przeczytałem dowód na to, że Trace Equivalence jest lepszy niż LTL Equivalence w książce „Principles of Model Checking” (Baier / Katoen), ale nie jestem pewien, czy naprawdę to rozumiem. Nie jestem w stanie tego wyobrazić, czy może jest prosty przykład, który może zobrazować różnicę?
lo.logic
model-checking
linear-temporal-logic
magnetyczny
źródło
źródło
Odpowiedzi:
Czytając uważnie Baiera i Katoena, rozważają zarówno skończone, jak i nieskończone systemy przejściowe. Definicje znajdują się na stronie 20 tej książki.
Najpierw weź prosty system przejściowy :EVEN
Lemat: Żadna formuła LTL nie rozpoznaje języka Ślady ( E V E N ) . Ciąg c ∈ L e v e n iff c i = a dla parzystego i . Zobacz Wolper '81 . Można to udowodnić najpierw pokazując, że nie formuła LTL z n operatorów „następny raz” można odróżnić ciągi postaci p ja ¬ pLeven= (EVEN) c∈Leven ci=a i n dla í > npi¬ppω i>n , przez prostą indukcję.
Rozważmy następujące (nieskończonej niedeterministycznego) system przejścia, . Zauważ, że istnieją dwa różne stany początkowe:NOTEVEN
Jego ślady to dokładnie .{a,¬a}ω−Leven
W następstwie lematu: Jeśli to E V E N ⊭ ¬ ϕNOTEVEN⊨ϕ EVEN⊭¬ϕ
Rozważmy teraz ten prosty system przejściowy :TOTAL
Jego ślady są wyraźnie .{a,¬a}ω
Zatem i T O T A L nie są równoważne śladowo. Załóżmy, że były niesprawne LTL. Wtedy mielibyśmy wzór LTL ϕ taki, że N O T E V E N ⊨ ϕ i T O T A L ⊭ ϕ . Ale potem E V E N ⊨ ¬ ϕ . To jest sprzeczność.NOTEVEN TOTAL ϕ NOTEVEN⊨ϕ TOTAL⊭ϕ EVEN⊨¬ϕ
Dzięki Sylvainowi za złapanie głupiego błędu w pierwszej wersji tej odpowiedzi.
źródło
Jeśli twoja definicja LTL obejmuje operatora „next”, obowiązują następujące zasady. Masz dwa zestawy śladów i B . Niech b być dowolny skończony prefiksem śladu w B . b musi być również skończonym prefiksem śledzenia w A , ponieważ w przeciwnym razie możesz przekonwertować to na formułę, która jest tylko serią kolejnych operatorów wykrywających różnicę. Dlatego każdy skończony prefiks słowa B musi być skończonym prefiksem słowa A i odwrotnie. Oznacza to, że jeśli A ≠ B , musi istnieć słowo wb , aby wszystkie jego skończone prefiksy pojawiły się w A, aleA B b B b A B A A≠B b A sam w sobie nie pojawia się w A . Jeślisą generowane przezskończonesystemy przejściowe, myślę, że jest to niemożliwe. Zakładając nieskończone systemy przejściowe, możesz zdefiniowaćb A i B.A B
i B = A ∖ { w } gdzie w jest np. Nieskończonym słowem a b a 2 b 2 a 3 b 3 a 4 bA={a,b}ω B=A∖{w} w .aba2b2a3b3a4b4⋯
Wszelkie formuła LTL że posiada uniwersalnie do odbędzie się uniwersalnie do B bo B jest podzbiorem A . Każda formuła LTL, która obowiązuje dla B, również dotyczy A ; ze względu na sprzeczność załóżmy, że nie, ale φ obowiązuje dla każdego elementu B (tj. dla każdego elementu wszechświata oczekuje słowa w ), ale nie dla w . Następnie ¬ φ sprawdza się jako prawda na w, ale nie na żadnym innym słowie wszechświata (i LTL jest zamknięte pod negacją), i nie ma formuły LTL, która może być prawdziwa tylko dla wA B B A B A φ B w w ¬φ w w ponieważ każdy automat Buchi, który akceptuje tylko jedno nieskończone słowo, musi być ściśle cykliczny, podczas gdy nie.w
źródło