| dim | tip |
|---|---|
| NFA DFA | delta = E (insieme degli stati raggiunti da ogni stato nel set) |
| chiusure REG | unione nuovo stato con , intersezione prod cartesiano, concat quando arrivo a fine L1 per , star quando ho finito arco verso l’inizio |
| reg L(re) / regex | primo verso x induzione su casi regex, 2o verso NFA generalizzato + CONVERT(G’) |
| pumping lemma REG | ricordati s ⇐ p+1 |
| DFA to CFG | Vq + Vq → aVp, biiettiva x dimostrazione |
| Chomsky | ricorda S0 → S (poi regole poi regole unitarie poi k>=3 poi xX) |
| CFL PDA | lato CFL: costruiamo PDA x grammatica G con qstart, qloop, qacc + 4 delta lato PDA: CFG con 3 regole claim Apq genera x iff porta P da p a q senza cambiare stack (x induzione) |
| pumping lemma CFL | cammino + lungo i genera stringhe max ; p = ; cammino; prendo ripetizione DAL BASSO x questo sottoalbero altezza massima m+1 |
| dim | tip | |
|---|---|---|
| NTM to TM | nastro 3 in ordine lunghezza + lessicogragico | |
| Adfa, Anfa, Arex | Adfa simula, Anfa e Arex trasformano in DFA e NFA | |
| Edfa, Ecfg | marca stati con archi entranti da marcati / marca var se ogni a dx marcata | |
| Eqdfa | differenza simmetrica + Edfa | |
| Acfg | max 2n-1 passi | |
| linguaggi non rec | TM numerabili, stringhe infinite non numerabili, ogni linguaggio e’ una stringa infinita OR ! DEC = rec ^ coREC quindi non DEC → o L o non rec (es. ) | |
| Atm non decidibile | costruisco D che fa M< M> e diagonalizza - che succede se faccio D< D> ? | |
| DEC = REC ^ coREC | (1) se L DEC anche !L DEC (2) eseguo M1 e M2 in parallelo | |
| A < B dec e B dec → A dec | decisore per A calcola f(w) e poi decide B | |
| HALTtm non dec | x assurdo se HALTtm dec posso sapere se termina, ovvero decidere Atm (se termina simulo senno’ rifiuto) | |
| Etm non dec | riduco ATM - se x w rifiuto, altrimenti simulo M(w) | |
| REGtm non dec | riduco da ATM - se input nella forma 0n1n accetto senno’ simulo M(w) | |
| non puo’ essere valido e completo | altrimeti posso dimostrare “M(y) termina” e fare un decisore per HALTtm | |
| G1 - non puo’ essere consistente e completo | = “M< M> termina”, diagonalizza - se o dimostrabile inconsistente | |
| G2 - se consistente, non puo’ dimostrare “consistente” | prendo cose dim 1, assumo consistente e x modus ponens ottengo che dimostra |
| dim | tip |
|---|---|
| PATH IN P | marco vertici con archi entranti |
| 2COL in P | coloro i vertici e i loro vicini (x tutte le CC) |
| 2SAT in P | rappresento come grafo, x v y diventa le due →; SAT nessuna CFC ha e (SAT ⟶ ) (a,b) vuol dire a T - > b T, se c’e’ x ⟶ !x allora e’ necessario x F quindi non puo’ esserci !x ⟶ x (no x !x ⟶ ) ordinamento topolone; assegnamento “x = T se x appare dopo !x”; per nessun (a,b) si ha a = T e b = F quindi tutte impl vere quindi soddisfacibile grafo + Tarjan + controllo |
| 3COL in verifierNP | rifiuta se stesso colore vicini |
| 3SAT in NP | prova tutti gli ass in parallelo |
| verifierNP = NP | (1) se L verificatore polytime, il certificato è polinomiale - la NTM esegue il verificatore con ogni y in parallelo (2) se NTM, uso come certificato le scelte di N |
| A B e B in P ⟶ A in P | faccio M_A = MB(riduzione(())) |
| 4COL in SAT | ha |
| 3COL ⇐ 4COL | aggiungo un nodo e lo coloro diverrso |
| Cook-Levin (SAT in NP-COMPLETE) | tableau di computazione di N su un ramo ricorda e’ almeno 1 colore + non 2 colori |
| 3SAT ⇐ K-CLIQUE | RIDUZIONE trasformo in un grafo - nodi tutti connessi tranne stessa formula e x !x + faccio iff |
| NP = coNP UNSAT in NP | unSAT in coNP=NP SAT NP-completo faccio !L SAT L UNSAT |
| spazio limita tempo | SPACE(f(n)) TIME(f(n)) |
| tempo limita spazio | DTIME() SPACE(f(n)) |
| PATH in SPACE(log^2 n) | divide et impera, in ogni chiamata solo indici log bit |
| Savitch NSPACE(f(n)) DTIME() | wlog 1 conf accettante, PATHG genera grafo al volo, TM esegue PATHG e costa spazio O() |
| PATH NL-completo | (sappiamo PATH NL-hard perche’ abbiamo visto savitch) mi segno currNode |
| THT siano t1 << t2 esiste L DTIME(t2) ma non DTIME(t1) | simulo con “timer” t1.5 passi e ritorno l’opposto - diagonalizzo per t1 |
| SHT s1 e s2 O(s1) | simulo in spazio limitato e in timer con max 2^O(s2(n)) |
DIMOSTRAZIONI UGUALI
-
”marco vertice che ha archi entranti da vertice già marcato” style