Region (sprawdzanie modelu)
W sprawdzaniu modeli , dziedzinie informatyki , region jest wypukłym polytopem w pewnym wymiarze , a dokładniej strefą spełniającą pewne wymiary. właściwość minimalizmu. Podział regionów .
Zbiór stref zależy od zestawu ograniczeń postaci , , i z i niektóre zmienne i . Regiony są zdefiniowane w taki sposób, że jeśli dwa wektory → { z . Co więcej, gdy te wektory są traktowane jako krotka zegarów , oba wektory mają ten sam zestaw możliwych przyszłości. Intuicyjnie oznacza to, że każdy czasowych - lub automat czasowy lub automat sygnałowy używający tylko ograniczeń nie może rozróżnić obu wektorów.
Zbiór regionów pozwala na utworzenie automatu regionów , który jest grafem skierowanym , w którym każdy węzeł jest regionem, a każda krawędź zapewnia, że jest możliwą przyszłością . iloczyn tego automatu regionu i automatu czasowego , który akceptuje język, tworzy automat skończony lub automat Büchi który akceptuje nieokreślony . W szczególności pozwala zredukować problem pustki dla pustki dla automatu skończonego lub Büchi Technikę tę wykorzystuje np. oprogramowanie UPPAAL .
Definicja
Niech do zestaw zegarów . Dla każdego niech . Intuicyjnie liczba ta reprezentuje górną granicę wartości, do których można porównać zegar Definicja regionu nad zegarami używa tych liczb 's. Podane są teraz trzy równoważne definicje.
przypisanie zegara , oznacza region, do którego . Zbiór regionów jest oznaczony przez .
Równoważność przypisania zegarów
Pierwsza definicja pozwala w łatwy sposób sprawdzić, czy dwa przydziały należą do tego samego regionu.
Region można zdefiniować jako klasę równoważności dla pewnej relacji równoważności. Przypisania dwóch zegarów i są równoważne, jeśli spełniają następujące ograniczenia: i
- iff } ≤ liczba całkowita, a ~ jest jedną z następujących relacji = , < lub ≤ .
- iff dla każdego , , , będąc ułamkową częścią rzeczywistej i ~ będąc jedną z następujących relacji = , < lub ≤ .
Pierwszy rodzaj ograniczeń zapewnia te same Rzeczywiście, jeśli i i , to tylko drugie zadanie spełnia . Z drugiej strony, jeśli i , oba zadania spełniają dokładnie ten sam zestaw ograniczeń, ponieważ ograniczenia używają tylko stałych całkowitych.
Drugi rodzaj ograniczeń zapewnia, że przyszłość dwóch zadań spełnia te same ograniczenia. Na przykład niech i . Wtedy ograniczenie jest ostatecznie usatysfakcjonowany przyszłością bez resetowania nie przyszłością bez resetowania zegara.
Jawna definicja regionu
Podczas gdy poprzednia definicja pozwala na sprawdzenie, czy dwa przypisania należą do tego samego regionu, nie pozwala na łatwe przedstawienie regionu jako struktury danych. Podana poniżej trzecia definicja pozwala na podanie kanonicznego kodowania regionu.
Region można jawnie zdefiniować jako strefę, używając zestawu równań i nierówności spełniających następujące ograniczenia:
- dla każdego S zawiera albo: x ∈ do {\ Displaystyle x \ w C}
- dla pewnej liczby całkowitej
- dla pewnej liczby całkowitej ,
- ,
- ponadto dla każdej pary zegarów zawiera ograniczenia postaci i , a następnie zawiera (w) równość postaci gdzie jest = , < lub ≤ .
Ponieważ i ostatnie _
Definicja ta pozwala na zakodowanie regionu jako struktury danych. Wystarczy dla każdego zegara określić, do którego przedziału należy i przypomnieć kolejność ułamkowej części zegarów, które należą do otwartego przedziału o długości 1. Wynika z tego, że rozmiar tej struktury wynosi z liczba zegarów.
Czasowa bisymulacja
Podajmy teraz trzecią definicję regionów. Chociaż ta definicja jest bardziej abstrakcyjna, jest to również powód, dla którego regiony są używane w sprawdzaniu modelu. Intuicyjnie definicja ta mówi, że dwa przypisania zegara należą do tego samego regionu, jeśli różnice między nimi są takie, że żaden automat czasowy nie może ich zauważyć. Biorąc pod uwagę dowolny przebieg się od przypisania dla każdego innego przypisania bieg , przechodząc przez te same miejsca, czytając te same litery, gdzie jedyną różnicą jest to, że czas oczekiwania między dwoma kolejnymi przejściami może być inny, a zatem kolejne zmiany zegara są różne.
Formalna definicja jest teraz podana. zestaw zegara zegarów i do tego samego regionu, jeśli czasowy \ displaystyle , biorąc pod uwagę dowolną lokalizację z istnieje bisymulacja czasowa między stanami rozszerzonymi i . Mówiąc dokładniej, ta bisymulacja zachowuje litery i lokalizacje, ale nie dokładne przypisania zegara.
Operacja na regionach
Niektóre operacje są teraz zdefiniowane w regionach: zresetowanie niektórych zegarów i pozwolenie na upływ czasu.
Resetowanie zegarów
Biorąc pod uwagę region zdefiniowany przez zestaw (nie) równań zestaw zegarów, region podobny do w którym zegary są uruchamiane, jest teraz zdefiniowany Region ten jest oznaczony przez , jest zdefiniowany przez następujące ograniczenia:
- każde ograniczenia nie zawierające zegara, S
- ograniczenia dla .
Zbiór przypisań zdefiniowany przez przypisań dla .
Następca czasu
region , regiony, które można osiągnąć bez resetowania zegara, nazywane są następnikami czasu . Podano teraz dwie równoważne definicje.
Definicja
Region zegara następcą czasowym innego regionu jeśli dla każdego zadania istnieje jakiś pozytywny rzeczywisty taki, że .
Zauważ, że nie oznacza to, że . Na przykład region zdefiniowany przez zestaw ograniczeń ma następcę czasowego zdefiniowany przez zestaw ograniczeń . , dla każdego wystarczy przyjąć . Jednak nie istnieje żaden prawdziwy takie, że lub nawet takie, że alpha rzeczywiście, , podczas .
Obliczalna definicja
Podana teraz druga definicja pozwala na jawne obliczenie zbioru następcy czasowego regionu, określonego przez jego zestaw ograniczeń.
uwagę region jako zbiór ograniczeń , zdefiniujmy jego zbiór następców czasowych W tym celu wymagane są następujące zmienne. Niech zbiór ograniczeń postaci . Niech zestaw zegarów takie, że zawiera ograniczenie . Niech zestaw zegarów taki ograniczeń postaci w .
Jeśli , swoim własnym następcą czasowym Jeśli to jest jedynym następcą czasowym . W przeciwnym istnieje najmniejszy następca czasowy nie równy . Najmniejszy następca czasu, jeśli jest niepusty, zawiera:
- ograniczenia
- ,
- i
- dla każdego r nie należy do , ograniczenie .
Jeśli jest pusty, najmniejszy następnik czasowy jest zdefiniowany przez następujące ograniczenia:
- ograniczenia zegarów ,
- ograniczenie każdego do z .
Nieruchomości
Jest co najwyżej regiony, gdzie to liczba zegarów.
Automat regionu
uwagę automat czasowy jego automat regionu jest automatem skończonym lub automatem Büchi który akceptuje nieokreślony . Ten automat jest podobny do są zastępowane przez region. Intuicyjnie automat regionu jest tworzony jako iloczyn . Ten wykres regionu jest zdefiniowany jako pierwszy.
Wykres regionu
Graf regionu jest ukorzenionym grafem skierowanym, który modeluje zestaw możliwych wycen zegara podczas przebiegu autoamtonu czasowego. Jest zdefiniowany w następujący sposób:
- jego węzłami są regiony,
- jego pierwiastkiem jest region początkowy zdefiniowany przez zestaw ograniczeń, }
- zbiór krawędzi to , dla następcy czasu z .
Automat regionu
Niech automat czasowy . Dla każdego zegara będzie liczba taka, że istnieje strażnik postaci w . Automat regionu , przez skończonym lub automatem Büchi iloczynem i wykresu regionu zdefiniowanego powyżej. Oznacza to, że każdy stan automatu regionu jest parą zawierającą położenie i region. Ponieważ przypisanie dwóch zegarów należących do tego samego regionu spełnia tę samą straż, każdy region zawiera wystarczającą ilość informacji, aby zdecydować, które przejścia można wykonać.
Formalnie automat regionu jest zdefiniowany w następujący sposób:
- jego alfabet to , Σ
- jego zbiór stanów to }
- jego zbiór stanów to z regionem początkowym, L × {
- jego zestaw akceptujących stanów to ,
- jego relacja przejściowa ( , dla a , że jest następcą czasowym .
R Displaystyle { jest oznaczony , jest to przebieg i akceptuje wtedy i tylko wtedy, gdy akceptuje. Wynika z tego, że . szczególności słowo czasowe wtedy i tylko słowo Co więcej, akceptujący przebieg przebiegu . \ displaystyle
- ^ ab Bengtsson , Johan; Yi, Wang L (2003). „Automaty czasowe: semantyka, algorytmy i narzędzia” . Wykłady na temat współbieżności i sieci Petriego . Notatki z wykładów z informatyki. 3098 : 87–124. doi : 10.1007/978-3-540-27755-2_3 . ISBN 978-3-540-22261-3 .
- ; ^ abc Alur , Rajeev Koper, David L (25 kwietnia 1994). „Teoria automatów czasowych” (PDF) . Informatyka teoretyczna . 126 (2): 183–235. doi : 10.1016/0304-3975(94)90010-8 .