Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
mgr-szz:in-pos:10-pos [2019/06/11 13:26]
lachmanfrantisek čístá MSO
mgr-szz:in-pos:10-pos [2020/04/12 16:56] (aktuální)
Řádek 59: Řádek 59:
     * má: <​math>​w \vDash \phi</​math>​     * má: <​math>​w \vDash \phi</​math>​
     * nemá: <​math>​w \nvDash \phi</​math>​     * nemá: <​math>​w \nvDash \phi</​math>​
-  * <​math>​L(\phi) := \lbrace w \in \Sigma^{\star} | w \nvDash ​\phi \rbrace </​math>​+  * <​math>​L(\phi) := \lbrace w \in \Sigma^{\star} | w \vDash \phi \rbrace </​math>​
  
  
Řádek 98: Řádek 98:
  
  
-Využijeme **čisté ​MSO** (logika bez prvního řádu):+Využijeme **čisté ​MSOL** (logika bez prvního řádu):
  
 ^ ^ ^ ^ ^ ^
Řádek 109: Řádek 109:
 |<​math>​Sng(X)</​math>​|<​math>​\mid X \mid = 1</​math>​| |<​math>​Sng(X)</​math>​|<​math>​\mid X \mid = 1</​math>​|
  
-  * **"​Čistá" ​MSO** je ekvivalentní **MSO**. +  * **"​Čistá" ​MSOL** je ekvivalentní **MSOL**. 
-    * Pro zápis čisté ​MSO MSO máme makra pro syntaxi, která v MSO není. +    * Pro zápis čisté ​MSOL MSOL máme makra pro syntaxi, která v MSOL není. 
-    * Pro zápis ​MSO v čísté ​MSO nahradíme všechny prvořádové proměnné <​math>​x</​math>​ druhořádovou proměnnou <​math>​S_x</​math>​. ​+    * Pro zápis ​MSOL v čísté ​MSOL nahradíme všechny prvořádové proměnné <​math>​x</​math>​ druhořádovou proměnnou <​math>​S_x</​math>​ a přidáme <​math>​\wedge Sng(S_x)</​math>​. 
 + 
 +  * 1. zakódujeme valuace **MSOL** 
 +    * pro formuli s  //k// proměnnými půjde o //​k+1//​-tici 
 +    * <​math>​w_v \in (\Sigma \times \lbrace 0,1 \rbrace^k)^{\star}</​math>​ 
 +  * 2. máme překlad pro jednotlivé výrazy **MSOL** 
 +    * začínáme u podformulí a spojujeme dohromady 
 + 
 + 
 +  * Složitost 
 +    * NFA -> MSOL: <​math>​\mid\phi\mid = poly (\mid A\mid)</​math>​ 
 +    * MSOL -> NFA: <​math>​\mid A \mid = 2^{2^{\cdot^{\cdot^{2^{\mid\phi\mid}}}}} = 2^{O(\mid\phi\mid)}</​math>​
  
  
 ==== Automaty nad nekonečnými slovy a omega-regulární jazyky ==== ==== Automaty nad nekonečnými slovy a omega-regulární jazyky ====
 +
 +  * **Automaty**
 +    * NFA A = <​math>​A = (Q, q_0, \rightarrow,​ Akc)</​math>​
 +
 +  * Por nekonečná slova máme rozdílné akceptační podmínky (<​math>​Inf(\rho)</​math>​ značí stavy, které běh <​math>​\rho</​math>​ navštíví <​math>​\infty</​math>:​
 +    * **Büchi**
 +      * <​math>​Akc = F \subseteq Q</​math>​
 +      * cíl: <​math>​Inf(\rho) \cap F \neq \emptyset </​math>​
 +    * **Muller**
 +      * <​math>​Akc = \mathcal{F} \subseteq 2^Q</​math>​
 +      * cíl: <​math>​Inf(\rho) \in \mathcal{F}</​math>​
 +    * **Rabin**
 +      * <​math>​Akc = \mathcal{T} \subseteq 2^Q \times 2^Q</​math>​
 +      * cíl: <​math>​\exists(N,​K) \in \mathcal{T} : N \cap Inf(\rho) \neq \emptyset \wedge K \cap Inf(\rho) = \emptyset </​math>​
 +
 +
 +=== Omega-regulární jazyky ===
 +
 +Jazyky akceptované:​
 +  * nedeterministickými Büchiho automaty (BA)
 +  * (ne)deterministickými Mullerovy automaty
 +  * (ne)deterministickými Rabinovy automaty
 +
 +Jazyky jsou uzavřeny na:
 +  * <​math>​\cap</​math>​ a <​math>​\cup</​math>​.
 +  * doplněk
 +    * Jazyky akceptované deterministickým BA nejsou uzavřeny na doplněk => det. BA nepopisují celou třídu omega-regulárních jazyků.
  
 ===== Zdroje ===== ===== Zdroje =====
  
   * [[http://​www.fi.muni.cz/​usr/​kretinsky/​MSO_Automaty_slides.pdf|slidy:​ V. Brožek: Logika a regulární jazyky]]   * [[http://​www.fi.muni.cz/​usr/​kretinsky/​MSO_Automaty_slides.pdf|slidy:​ V. Brožek: Logika a regulární jazyky]]
mgr-szz/in-pos/10-pos.1560252403.txt.gz · Poslední úprava: 2020/04/12 16:56 (upraveno mimo DokuWiki)
Nahoru
CC Attribution-Noncommercial-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0