Algoritmo per A. !(x) Istanza di B
|
|
- Emanuele Tortora
- 6 anni fa
- Visualizzazioni
Transcript
1 Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione # : T*!T* è detta una riduzione polinomiale di L 1 a L 2 se per ciascun x $ T* segue che x $ L 1 se e solo se #(x) $ L 2 Algoritmo per A Si x!!(x) Algoritmo per B Istanza di A Istanza di B No Pertanto se B e un problema noto ed è possibile ricondurre il problema A al problema B con una trasformazione polinomiale P ovvero A! P B si possono trovare le soluzioni per il problema A. In altre parole l esistenza di una riduzione polinomiale da A a B ci dice che B è almeno difficile quanto A. Pertanto: - Se B è risolvibile polinomialmente lo è anche A - Se A richiede un tempo esponenziale (non polinomiale) anche B richiederà un tempo esponenziale.
2 Esempio di riduzione Riduzione del problema CICLI HAMILTONIANI a SODDISFACIBILITA Dato un Grafo G =(N,V) con N= {1,2,...n}. l obiettivo è quello di definire una trasformazione! che produca una formula booleana in CNF,! (G), tale che G ha un ciclo Hamiltoniano se e solo se! (G) è soddisfacibile. La formula! (G) contiene n 2 variabili x ij con 1! i,,j! n. Ciascuna x ij viene interpretata nel seguente modo il nodo i di G è il j-esimo nodo del ciclo Hamiltoniano di G ESEMPIO: A B E F G D A C nodi di G J-esimo nodo del ciclo B C D Nodi del ciclo Rappresentato come E F G Nodi del grafo A B C D E F G Evidentemente sulla matrice è possibile rappresentare ogni possibile ciclo del grafo. L obiettivo della riduzione è quello di costruire un sistema di vincoli costituito da clausole che caratterizzino un ciclo hamiltoniano.
3 Esempio di riduzione cont. a partire da una matrice di n 2 elementi rappresentata da x x x x 11 x x 1n n... x. x. 1n nn si introducono i due seguenti vincoli: (x 1j! x 2j...! x nj ) (x ij " x ik ) ovvero! per i,j,k=1,...,n e j!k - Il primo vincolo ci dice che almeno un nodo deve far parte del ciclo (almeno un letterale deve essere soddisfatto); Questi due vincoli garantiscono che esattamente un nodo appare come i-esimo nel ciclo Hamiltoniano. Questo viene ottenuto dalle clausole: - il secondo ci dice che due elementi della medesima riga non sono a 1 ovvero il medesimo nodo i non può apparire due volte nel ciclo. Tuttavia occorre precisare che il nodo i deve apparire esattamente una volta nel ciclo. ( x i1! x i2!...! x in ) e (x ij " x kj ) ovvero! per i,j,k=1,...,n e i!k -Un nodo i deve essere associato ad un nodo j del ciclo; - Sul medesimo nodo j del ciclo non possono esserci due nodi diversi Le clausole sopra descritte sono indipendenti dalla struttura del grafo (dipendono dal numero dei nodi)
4 Esempio di riduzione cont. Quello che abbiamo ricavato è una biiezione ovvero una permutazione dei nodi di G. L ultima condizione da verificare è che questa permutazione rappresenti un ciclo. Questo può essere ottenuto con il vincolo: per j = 1,...n e per ciascuna coppia (i,k) tale che (i,k) non è un arco di G. Quello che in altre parole il vincolo significa è che se non c e un arco tra i e k i due nodi non possono apparire consecutivamente nel ciclo ovvero come nodo j-esimo e nodo j+1-esimo del ciclo. Si osservi che la somma j+1 è fatta modulo n, cioè n+1 = 1. La costruzione richiede O(n 3 ) clausole e quindi O(n 3 ) letterali. E possibile costruire un Macchina di Turing polinomiale che computi la funzione di riduzione #. Le clausole sopra descritte dipendono dalla struttura del grafo
5 Esempio di riduzione cont. Si deve ora dimostrare che G ha un ciclo Hamiltoniano se solo se!(g) è soddisfacibile. Supponiamo che ci sia un assegnamento t che renda soddisfacibile!(g). Per come è costruita la trasformazione questo significa che in ogni clausola ci deve essere almeno un letterale positivo e quindi per ciascun i esattamente un t(x ij ) è vero e per ciascun j esattamente un t(x ij ) è vero. [abbiamo costruito una biiezione] Per comodità si introduce la funzione!(.) che si applica sia sulle righe che sulle colonne e produce l indice per cui t(x ij ) = vero. Denotiamo con!(i) l unico j per cui t(x i,!(i) ) è vero Siccome si devono soddisfare anche le clausole x ij! x k,j+1 ciò significa che se i =!(j) e k=!(j+1) allora (i,k) è un arco di G per cui!(1),!(2),...,!(n) è un ciclo Hamiltoniano di G. t(x 7,!(7) ) t(x!(4),4 ) Supposto che G abbia un ciclo Hamiltoniano,!(1),!(2),...,!(n) è facile verificare che l assegnamento t in cui t(x ij ) è vero se e solo se j =!(i), soddisfa tutte le clausole di!(g). Es:!(1)= 2,!(2)= 5,!(3)= 6,!(4)= 7,!(5 )= 4,!(6)= 1,!(7)= 3 (B) (E) (F) (G) (D) (A) (C)
6 Completezza Definizione 1 Sia C una classe di complessità e sia R una classe di riduzioni. Un problema P è detto C-difficile rispetto ad R se per ogni problema P! C si ha che P! R P. Definizione 2 Sia C una classe di complessità e sia R una classe di riduzioni. Un problema P è detto C-completo rispetto ad R se P è C-difficile e inoltre P! C. La nozione di completezza puo essere usata per caratterizzare i problemi che siano i più difficili di una determinata classe. Ad esempio La programmazione lineare è uno dei problemi più difficili della classe P sotto la riduzione di tipo log-space. Estremamente interessanti sono i problemi NP-completi (sotto riduzioni polinomiali). Osservazione 1 - Per dimostrare la NP-completezza dei problemi occorre avere a disposizione un problema prototipo a cui tutti gli altri si possono ricondurre. Osservazione 2 - Avendo a disposizione un problema prototipo è possibile dimostrare la NP-completezza di un qualsiasi Problema tramite riduzioni polinomiali dal prototipo al problema sotto considerazione. [Non è banale trovare il problema prototipo]
7 Teorema di Cook Teorema (Cook) Il problema di determinare, data una formula proposizionale, se essa sia soddisfacibile o no, è NP-completo. Dato un problema S in NP, l'idea della dimostrazione è di associare ad esso una macchina di Turing non deterministica M e un polinomio P(X). Ad ogni input x del problema S, associamo una formula proposizionale!( x), computabile in tempo polinomiale a partire da (M, da P e da) x, tale che!( x) risulti soddisfacibile sse esiste un ramo della computazione di M su input x che termina in stato di accettazione entro P( x ) passi. La dimostrazione del teorema sfrutta una codifica binaria delle computazioni: ogni possibile computazione è una sequenza di configurazioni di M lunga al massimo P( x ). Inoltre, ogni stringa scritta sul nastro è al massimo lunga P( x ), perchè altrimenti sarebbe stata scritta in un numero maggiore di passi. Quindi, dato x, posso codificare polinomialmente in questo modo una qualsiasi computazione della MdT che sia possibilmente accettante per x. Ogni computazione si può quindi esprimere come un assegnamento a una serie di variabili booleane. La formula proposizionale!( x) include poi anche le condizioni sullo stato della MdT che rendono una configurazione accettante. Quindi se x è accettato esiste un assegnamento per!( x) che identifica una computazione accettante. Viceversa, se!( x) è soddisfacibile, esiste un assegnamento che identiica una computazione di M che accetta x.
8 Utilità delle riduzioni polinomiali Una volta provata la NP-completezza di un primo problema (teorema di Cook) molti altri problemi possono essere dimostrati essere NP-completi. Il metodo è proprio quello di ricondurre SAT al problema incognito usando riduzioni polinomiali. Si possono sfruttare i seguenti due teoremi: Teorema (transitività di! P ):Se " 1 è una riduzione polinomiale da L 1 a L 2 e " 2 è una riduzione polinomiale da L 2 a L 3 allora la loro composizione " 1 " 2 è una riduzione polinomiale da L 1 a L 3 Teorema: sia L un linguaggio in NP e sia L 1 un linguaggio NP-completo tale che L 1! P L. Allora L è NP-completo. Dim. Sia L i un qualunque linguaggio in NP allora per l NP-completezza di L 1 si ha L i! P L 1, inoltre siccome per ipotesi L è un linguaggio in NP, L è NP-completo per la definizione di NP-completezza. Si dimostra come tutti i problemi NP-completi sono riducibili uno all altro. Pertanto per la dimostrazione della NP-completezza di un problema è sufficiente prendere come problema prototipo uno qualunque di quelli dimostrati NP-completi. Inoltre si può enunciare il seguente teorema: Teorema: Sia L un linguaggio NP-completo, allora P=NP sse L!P La questione se P=NP oppure P#NP non è a tutt oggi stata dimostrata.
9 NP-completezza di 3-sat E chiaro che 3-SAT è un caso particolare di SAT. Si riduce SAT a 3-SAT nel seguente modo: Partendo da un insieme di Clausole F si perviene in un tempo polinomiale ad un set di clausole "(F) di al più tre letterali. Per ogni Clausola C = ($ 1 %$ 2 %...%$ k ) in F con k > 3, si introducono y k-3 variabili booleane che non appaiono da altra parte nella formula e si rimpiazza C con le seguenti clausole: C = ($ 1 %$ 2 % y 1 ), (y 1 %$ 3 % y 2 ),(y 2 %$ 4 % y 3 ),...,(y k-4 %$ k-2 % y k-3 ),(y k-3 %$ k-1 % $ k ) F è soddisfacibile sse "(F) è soddisfacibile. Intuizione - si interpreta la variabile y i nel seguente modo: qualunque sia il valore della variabile y i almeno uno dei letterali $ i+2...$ k deve essere vero. [le y i non devono modificare lo stato dei $ i ] - e la clausola (y i % $ i+2 % y i+1 ) : se y i è vero allora o $ i+2 oppure y i+1 è vero.
10 NP-completezza di 3-sat cont. Supponiamo che esista un assegnazione che soddisfi le clausole "(F), per quelle di lunghezza k! 3 la verifica è immediata, per quelle più lunghe si esaminano le clausole trasformate. Si ha pertanto da esaminare in luogo di ogni clausola C! F la clausola trasformata C! "(F). C = ($ 1 %$ 2 % y 1 ), (y 1 %$ 3 % y 2 ),(y 2 %$ 4 % y 3 ),...,(y k-4 %$ k-2 % y k-3 ),(y k-3 %$ k-1 % $ k ) Supposto che vi sia un assegnamento di verità per C! "(F), ciò significa che almeno un $ i deve essere positivo, per cui è soddisfacibile anche la clausola C di partenza. Per verificare questa situazione basta considerare che se l assegnazione fosse tale che nessun $ i è positivo le variabili y i per costruzione non sono in grado di rendere vera la clausola C. In altre parole la insoddisfacibilità della clausola C corrisponde alla insoddisfacibilità della clausola C di partenza. Supponiamo ora che esista un assegnazione che soddisfi le clausole F, al solito si considerano quelle di lunghezza k > 3. Con riferimento alla generica clausola C! F, sia j il più piccolo indice per cui $ j =vero [tale indice esiste perchè F è soddisfacibile]. Si pongono a vero le variabili ausiliarie y i se i! j-2 e tutte le altre variabili si pongono a false. Se dovesse essere $ 1 oppure $ 2 =vero si mettono a false tutte le y i Esempio: supposto $ 4 =vero ponendo a vero le variabili y 1 e y 2 e false y 3, y 4... si ha il risultato voluto.
11 Riduzioni notevoli SAT 3SAT MAXSAT INDEPENDENT SET EXSACT COVER HAMILTON CYCLE KNAPSACK CLIQUE NODE COVER UNDIRECT HAMILTON CYCLE PARTITION TWO MACHINE SCHEDULING TRAVELING SALESMAN
Proposte di approfondimenti
Linguaggi formali Proposte di approfondimenti 1. Forme normali di Greibach, trasformazione di una grammatica in forma normale di Greibach Automi a stati finiti 2. Automi di Büchi: particolari automi a
DettagliSommario. Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP
Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale esempi di problemi in NP I conjecture that there is no good algorithm for the traveling salesman problem. My reasons are the same
DettagliRiduzioni notevoli SAT 3SAT MAXSAT INDEPENDENT SET EXSACT COVER HAMILTON CYCLE KNAPSACK TWO MACHINE SCHEDULING UNDIRECT HAMILTON CYCLE PARTITION
Riduzioni notevoli SAT 3SAT MAXSAT INDEPENDENT SET EXSACT COVER HAMILTON CYCLE KNAPSACK CLIQUE NODE COVER UNDIRECT HAMILTON CYCLE PARTITION TWO MACHINE SCHEDULING TRAVELING SALESMAN NP completezza di Independent
DettagliCapitolo 8: Teoria della complessitá
Capitolo 8: Teoria della complessitá 1 La Teoria della calcolabilitá considera aspetti qualitativi della soluzione di problemi. Distingue il calcolabile dal non calcolabile. La Teoria della complessitá
DettagliNote sulle classi di complessità P, NP e NPC per ASD (DRAFT)
Note sulle classi di complessità P, NP e NPC per ASD 2010-11 (DRAFT) Nicola Rebagliati 20 dicembre 2010 1 La complessità degli algoritmi Obiettivo principale della teoria della complessità: ottenere una
DettagliRiduzioni che preservano l approssimazione e completezza nelle classi di approssimabilità.
RISULTATI DI NON APPROSSIMABILITA Tecnica di base: gap. Riduzioni che preservano l approssimazione e completezza nelle classi di approssimabilità. Risultati negativi basati su prove verificabili in modo
DettagliElementi di Complessità Computazionale
Elementi di Complessità Computazionale Ultima modifica 23.06.2004 Il problema Esiste una misura oggettiva per valutare l'efficienza di un algoritmo? In che relazione sono gli input di un algoritmo con
Dettaglie Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità
Intelligenza Artificiale I Soddisfacibilità e Algoritmi Marco Piastra Intelligenza Artificiale I - A.A. 2010- Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema Un problema
DettagliProblemi, istanze, soluzioni
lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un
DettagliALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I
ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I Esercizio 1 Dati n oggetti ed un contenitore, ad ogni oggetto j (j = 1,, n) sono associati un peso p j ed un costo c j (con p j e c j interi positivi). Si
DettagliEsercitazioni per il corso di Logica Matematica
Esercitazioni per il corso di Logica Matematica Luca Motto Ros 02 marzo 2005 Nota importante. Queste pagine contengono appunti personali dell esercitatore e sono messe a disposizione nel caso possano risultare
DettagliRISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine
RISOLUZIONE IN LOGICA PROPOSIZIONALE Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine 1. Risoluzione Definitione 1.1. Un letterale l è una variabile proposizionale (letterale
DettagliProblema del trasporto
p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. p. 1/1 Problema del trasporto Supponiamo di avere m depositi in
DettagliPossibile applicazione
p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile
DettagliAppunti introduttivi sulle classi di complessità
Appunti introduttivi sulle classi di complessità A. Agnetis 1 Introduzione Lo scopo di queste note è quello di fornire una introduzione ad alcuni concetti di complessità computazionale che, nati in ambito
DettagliCostruzione di espressioni regolari 4
ostruzione di espressioni regolari 4 Indicando con d uno dei possibili digits {,, 2,,9} --possiamo esprimere il sotto linguaggio dei digits come d = ( + + 2 +.. + 9) Quale linguaggio produce l espressione:
DettagliUNIVERSITÀ DEGLI STUDI LA SAPIENZA CORSO DI STUDI IN INFORMATICA ESERCITAZIONI AL CORSO DI LOGICA MATEMATICA LOGICA PROPOSIZIONALE
UNIVERSITÀ DEGLI STUDI LA SAPIENZA CORSO DI STUDI IN INFORMATICA ESERCITAZIONI AL CORSO DI LOGICA MATEMATICA LOGICA PROPOSIZIONALE TAVOLE DI VERITÀ, COLETEZZA VERO-FUNZIONALE Esercizio 1. Calcola le tavole
DettagliAniello Murano Space Complexity
Aniello Murano Space Complexity Lezione n. Parole chiave: Space Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Definizione Space- complexity Definizione: Sia M un
DettagliEsercizi proposti 10
Esercizi proposti 10 In questo gruppo di esercizi assumiamo, dove non sia specificato diversamente, di rappresentare i grafi mediante liste di archi, con il tipo di dati così dichiarato: type a graph =
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 tipologie di problemi e notazioni sulla complessità classi di complessità appartenenza di problemi
DettagliIntroduzione ai grafi
TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale
DettagliLEZIONE 3. a + b + 2c + e = 1 b + d + g = 0 3b + f + 3g = 2. a b c d e f g
LEZIONE 3 3.. Matrici fortemente ridotte per righe. Nella precedente lezione abbiamo introdotto la nozione di soluzione di un sistema di equazioni lineari. In questa lezione ci poniamo il problema di descrivere
DettagliLuca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1
Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1 Esercizio 1.12 Per dimostrare che per ogni funzione esiste una formula in cui compaiono le variabili tale che la corrispondente
DettagliESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND
ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND 1. [ STRINGHE] Scrivere in pseudo-codice una procedura che, preso in input un intero n, stampi tutte le stringhe di lunghezza minore o uguale ad n sull
DettagliC1: L C1 C2: L C2 C: C1 C2
Abbiamo visto Gli agenti logici applicano inferenze a una base di conoscenza per derivare nuove informazioni. Concetti base della logica: sintassi: struttura formale delle sentenze semantica: verita` di
DettagliNOTE DI ALGEBRA LINEARE v = a 1 v a n v n, w = b 1 v b n v n
NOTE DI ALGEBRA LINEARE 2- MM 9 NOVEMBRE 2 Combinazioni lineari e generatori Sia K un campo e V uno spazio vettoriale su K Siano v,, v n vettori in V Definizione Un vettore v V si dice combinazione lineare
DettagliLEZIONE 5. AX = 0 m,1.
LEZIONE 5 5 isoluzione di sistemi Supponiamo che AX = B sia un sistema di equazioni lineari Ad esso associamo la sua matrice completa (A B Per quanto visto nella precedente lezione, sappiamo di poter trasformare,
Dettagli3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura
DettagliProblemi difficili e ricerca esaustiva intelligente
Problemi difficili e ricerca esaustiva intelligente Progettazione di Algoritmi a.a. 2016-17 Matricole congrue a 1 Docente: Annalisa De Bonis Gli argomenti di questa lezione sono tratti da Dasgupta, Papadimitriou,
DettagliLogica proposizionale
Logica proposizionale Proposizione: frase compiuta che è sempre o vera o falsa. Connettivi Posti in ordine di precedenza: not, and, or, implica, doppia implicazione Sintassi Le proposizioni sono costituite
DettagliAnalisi delle corrispondenze
Analisi delle corrispondenze Obiettivo: analisi delle relazioni tra le modalità di due (o più) caratteri qualitativi Individuazione della struttura dell associazione interna a una tabella di contingenza
DettagliPARTE II ALGORITMI APPROSSIMATI PER PROBLEMI DI OTTIMIZZAZIONE NP-HARD
PARTE II ALGORITMI APPROSSIMATI PER PROBLEMI DI OTTIMIZZAZIONE NP-HARD 1 Complessità di problemi di ottimizzazione Algoritmi approssimati e schemi di approssimazione Tecniche algoritmiche Classi di approssimabilità
DettagliMa il programma in Fig. 8.2 del libro? Stampa hello, world, dato un input n se e solo se l equazione
Problemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa uello che ci aspettiamo. E facile vedere che il programma Ma il programma in Fig. 8.2 del libro?
DettagliLogica. 7: Conseguenza ed equivalenza logica in logica classica proposizionale. Claudio Sacerdoti Coen. Universitá di Bologna
Logica 7: Conseguenza ed equivalenza logica in logica classica proposizionale Universitá di Bologna 30/11/2016 Outline Conseguenza logica per la logica proposizionale Wikipedia:
DettagliContatore avanti-indietro Modulo 4
Contatore avanti-indietro Modulo 4 Un contatore avanti-indietro modulo 4 è un dispositivo a due uscite, che genera su queste la sequenza dei numeri binari da 0 a 4 cioè: 00->01->10->11 Il sistema dispone
DettagliLinguaggio universale, riduzioni, e teorema di Rice. Linguaggio universale, riduzioni, e teorema di Rice
l linguaggio universale Il linguaggio universale L u e l insieme delle stringhe binarie che codificano una coppia (M,w) dove w L(M). Esiste una TM U, detta TM universale, tale che L u = L(U). U ha tre
DettagliIl problema del commesso viaggiatore
Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università
DettagliTEORIA DELLA COMPLESSITÀ
TEORIA DELLA COMPLESSITÀ MATERIALE CONSIGLIATO: TESTO DI RIFERIMENTO SULLA TEORIA DELLA COMPLESSITÀ: Computers and Intractibility A Guide to the Theory of NP-Completeness M. R. Garey, D. S. Johnson Freeman
DettagliDiario delle Lezioni del Corso di Algoritmimodulo
Diario delle Lezioni del Corso di Algoritmimodulo Complessità A.A. 2010-2011 Dott.ssa Margherita Zorzi 1 Materiale didattico Libro di testo C.H. Papadimitrious, Computational Complexity, ed Addison-Wesley
DettagliUna breve introduzione all implementazione in C di algoritmi su grafo
Una breve introduzione all implementazione in C di algoritmi su grafo A cura di Gianmaria Leo Introduzione La lezione è un introduzione a concetti e strumenti che permettono l implementazione di algoritmi
DettagliSui Linguaggi Regolari: Teorema di Kleene - Pumping Lemm
Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemma N.Fanizzi - V.Carofiglio 6 aprile 2016 1 Teorema di Kleene 2 3 o 1 o 3 o 8 Teorema di Kleene Vale la seguente equivalenza: L 3 L FSL L REG Dimostrazione.
DettagliMakespan con set-up dipendenti dalla sequenza. 1/s jk /C max
Makespan con set-up dipendenti dalla sequenza 1/s jk /C max 1/s jk /C max Un tempo di riattrezzaggio (set-up) s jk è richiesto fra il processamento di j e quello di k. In questo caso, C max dipende dalla
DettagliLezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi
Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare
DettagliL algoritmo AKS. L algoritmo AKS. Seminario per il corso di Elementi di Algebra Computazionale. Oscar Papini. 22 luglio 2013
L algoritmo AKS Seminario per il corso di Elementi di Algebra Computazionale Oscar Papini 22 luglio 2013 Test di primalità Come facciamo a sapere se un numero n è primo? Definizione (Test di primalità)
DettagliProblemi intrattabili e quantum computing
Problemi intrattabili e quantum computing Il problema del commesso viaggiatore Noto anche come Travelling Salesman Problem (TSP) Il commesso viaggiatore deve visitare n città in automobile Se viaggiasse
DettagliInformatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza
Macchine di Turing Argomenti della lezione Definizione della macchina di Turing Riconoscimento e accettazione di linguaggi Macchine a più nastri La macchina di Turing èun è automa che può leggere e scrivere
DettagliCapitolo 5: Macchine di Turing e calcolabilitá secondo Turing
Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo
DettagliGeometria e Topologia I (U1-4) 2006-mag-10 61
Geometria e Topologia I (U1-4) 2006-mag-10 61 (15.9) Teorema. Consideriamo il piano affine. Se A A 2 (K) è un punto e r una retta che non passa per A, allora esiste unica la retta per A che non interseca
DettagliLOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)
LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) DISPENSA N. 4 Sommario. Dimostriamo il Teorema di Completezza per il Calcolo dei Predicati del I ordine. 1. Teorema di Completezza Dimostriamo il Teorema
DettagliUNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento
UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa Esercizi sul problema dell assegnamento Richiami di Teoria Ricordiamo che, dato un grafo G=(N,A),
DettagliFigura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.
ESERCIZIO 1 Sia dato il grafo orientato in Figura 1. Si consideri il problema di flusso a 1 2 4 Figura 1: costo minimo su tale grafo con b 1 = 4 b 2 = 2 b = b 4 = e c 12 = 2 c 1 = 4 c 14 = 1 c 2 = 1 c
DettagliAUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
DettagliCodice Gray. (versione Marzo 2007)
Codice Gray (versione Marzo 27) Data una formula booleana con n variabili, per costruire una tavola di verità per questa formula è necessario generare tutte le combinazioni di valori per le n variabili.
DettagliPrincipio di composizione delle MT
Principio di composizione delle MT La definizioni date fanno riferimento a situazioni in cui la macchina sia capace di risolvere problemi singoli. E possibile far sì che macchine progettate per problemi
DettagliParte V: Rilassamento Lagrangiano
Parte V: Rilassamento Lagrangiano Tecnica Lagrangiana Consideriamo il seguente problema di Programmazione Lineare Intera: P 1 min c T x L I Ax > b Cx > d x > 0, intera in cui A = matrice m x n C = matrice
DettagliLe parole dell informatica: algoritmo e decidibilità
Le parole dell informatica: algoritmo e decidibilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico dell Informatica
DettagliPiccolo teorema di Fermat
Piccolo teorema di Fermat Proposizione Siano x, y Z, p N, p primo. Allora (x + y) p x p + y p (mod p). Piccolo teorema di Fermat Proposizione Siano x, y Z, p N, p primo. Allora (x + y) p x p + y p (mod
Dettagli04 - Logica delle dimostrazioni
Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 04 - Logica delle dimostrazioni Anno Accademico 013/014 D. Provenzano,
DettagliApprossimazione di dati e funzioni
Approssimazione di dati e funzioni Richiamiamo i principali metodi di approssimazione polinomiale di un insieme di dati (x i, y i ), i = 0,..., n. Le ordinate y i possono essere i valori assunti nei nodi
DettagliLeLing12: Ancora sui determinanti.
LeLing2: Ancora sui determinanti. Ārgomenti svolti: Sviluppi di Laplace. Prodotto vettoriale e generalizzazioni. Rango e determinante: i minori. Il polinomio caratteristico. Ēsercizi consigliati: Geoling
DettagliTerminiamo gli esercizi dell ultima lezione. (LUCIDI) Calcolare, se possibile, AC, CA, CH e HC. (LUCIDI)
Terminiamo gli esercizi dell ultima lezione. (LUCIDI) Esempi Calcolare, se possibile, AC, CA, CH e HC. (LUCIDI) Osservazioni per le matrici quadrate a) Data A M n (K) è possibile definire ricorsivamente
DettagliParte I.5 Cenni alla computazione
Parte I.5 Cenni alla computazione Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 14, 2015 Elisabetta Elisabetta Ronchieri I Concetti
DettagliMetodo di Quine- McCluskey
Metodo di Quine- McCluskey Maurizio Palesi Maurizio Palesi Definizioni Date due funzioni f(x,x 2,,x n ) e g(x,x 2,,x n ) si dice che f copre g (oppure g implica f) e si scrive f g se f(x,x 2,,x n )= quando
DettagliProblemi di localizzazione di servizi (Facility Location Problems)
9. Problemi di Localizzazione di Servizi 1 Problemi di localizzazione di servizi (Facility Location Problems) Dato un insieme di clienti richiedenti una data domanda di merce e dato un insieme di possibili
DettagliLEZIONE 2. ( ) a 1 x 1 + a 2 x a n x n = b, ove a j, b R sono fissati.
LEZIONE 2 2 Sistemi di equazioni lineari Definizione 2 Un equazione lineare nelle n incognite x, x 2,, x n a coefficienti reali, è un equazione della forma (2 a x + a 2 x 2 + + a n x n = b, ove a j, b
DettagliIntelligenza Artificiale. Logica proposizionale: calcolo automatico
Intelligenza Artificiale Logica proposizionale: calcolo automatico Marco Piastra Logica formale (Parte 3) - Parte 3 Calcolo automatico Forme normali ed a clausole Risoluzione e refutazione Forward chaining
DettagliProblema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
DettagliAlgebra Lineare e Geometria. Il teorema fondamentale dell algebra. 1 Non c è un ordine totale sull insieme dei complessi
Università di Bergamo Anno accademico 2008 2009 Primo anno di Ingegneria Algebra Lineare e Geometria Il teorema fondamentale dell algebra 1 Non c è un ordine totale sull insieme dei complessi Vogliamo
DettagliLogica proposizionale classica. Studia il comportamento dei connettivi proposizionali quali ( And ) e ( Or )
Logica proposizionale classica Studia il comportamento dei connettivi proposizionali quali ( And ) e ( Or ) Parte da una famiglia di enunciati atomici di cui non analizziamo la struttura interna, che rappresentiamo
DettagliAlgoritmi esatti. La teoria ci dice che per problemi difficili (come il
p. 1/4 Algoritmi esatti La teoria ci dice che per problemi difficili (come il KNAPSACK o, ancora di più, il TSP ) i tempi di risoluzione delle istanze, calcolati tramite analisi worst-case, tendono a crescere
DettagliGestione della produzione e della supply chain Logistica distributiva
Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non
DettagliAutomi Automi finiti: macchine a stati su sistemi di transizioni finiti Modellare con TS e specificare con automi: si usa lo stesso tipo di
Automi Automi finiti: macchine a stati su sistemi di transizioni finiti Modellare con TS e specificare con automi: si usa lo stesso tipo di rappresentazione per descrivere programmi e specifiche. ω-automi:
DettagliTeoria della Calcolabilità!
Teoria della Calcolabilità!! Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo.!! L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici
DettagliCompressione Dati. Teorema codifica sorgente: Entropia fornisce un limite sia inferiore che superiore al numero di bit per simbolo sorgente.. p.
Compressione Dati Teorema codifica sorgente: Entropia fornisce un limite sia inferiore che superiore al numero di bit per simbolo sorgente.. p.1/21 Compressione Dati Teorema codifica sorgente: Entropia
DettagliEsercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi
Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore
DettagliIntroduzione Problemi e codifiche Classe P e linguaggi Da NP a NP-C Il mondo NP-C Conclusioni. NP-Completezza
NP-Completezza e la complessità strutturale degli algoritmi Simone Frassanito Dipartimento di Elettronica per l Automazione Università degli Studi di Brescia Cosa non è l NP-Completezza Si potrebbe pensare
DettagliIntroduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G é costituito da una coppia di insiemi (V,A) dove V é detto insieme dei nodi e A é detto insieme di archi ed é un sottinsieme di tutte
Dettagli02 - Logica delle dimostrazioni
Università degli Studi di Palermo Facoltà di Economia Dipartimento di Scienze Economiche, Aziendali e Statistiche Appunti del corso di Matematica 0 - Logica delle dimostrazioni Anno Accademico 015/016
DettagliLogica proposizionale
Definire un linguaggio formale Logica proposizionale Sandro Zucchi 2013-14 Definiamo un linguaggio formale LP (che appartiene a una classe di linguaggi detti linguaggi della logica proposizionale) Per
DettagliLEZIONE Equazioni matriciali. Negli Esempi e si sono studiati più sistemi diversi AX 1 = B 1, AX 2 = R m,n, B = (b i,h ) 1 i m
LEZIONE 4 41 Equazioni matriciali Negli Esempi 336 e 337 si sono studiati più sistemi diversi AX 1 = B 1, AX 2 = B 2,, AX p = B p aventi la stessa matrice incompleta A Tale tipo di problema si presenta
DettagliEsercitazioni di Algebra e Geometria
Esercitazioni di Algebra e Geometria Anno Accademico 2011 2012 Dott.ssa Elisa Pelizzari e-mail elisa.peli@libero.it Esercitazioni: lunedì 14.30 16.30 venerdì 14.30 16.30 Ricevimento studenti: venerdì 13.00
DettagliMetodo di Quine- McCluskey
Metodo di Quine- McCluskey Maurizio Palesi Maurizio Palesi 1 Definizioni Date due funzioni f(x 1,x 2,,x n ) e g(x 1,x 2,,x n ) si dice che f copre g (oppure g implica f) e si scrive f g se f(x 1,x 2,,x
DettagliPermutazioni. 1 Introduzione
Permutazioni 1 Introduzione Una permutazione su un insieme di n elementi (di solito {1, 2,...,n}) è una funzione biiettiva dall insieme in sé. In parole povere, è una regola che a ogni elemento dell insieme,
DettagliCENTRALITA nella RETE
CENTRALITA nella RETE Nozione di Centralità Nozione introdotta dai sociologi nel dopoguerra (Bavelas 1948) L ipotesi è che la centralità strutturale sia un elemento in grado di motivare l importanza di
DettagliProgrammazione Lineare Intera: Piani di Taglio
Programmazione Lineare Intera: Piani di Taglio Andrea Scozzari a.a. 2014-2015 April 22, 2015 Andrea Scozzari (a.a. 2014-2015) Programmazione Lineare Intera: Piani di Taglio April 22, 2015 1 / 23 Programmazione
DettagliRagionamento Automatico Richiami di calcolo dei predicati
Richiami di logica del primo ordine Ragionamento Automatico Richiami di calcolo dei predicati (SLL: Capitolo 7) Sintassi Semantica Lezione 2 Ragionamento Automatico Carlucci Aiello, 2004/05Lezione 2 0
DettagliRicerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015
1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)
DettagliAppunti su Indipendenza Lineare di Vettori
Appunti su Indipendenza Lineare di Vettori Claudia Fassino a.a. Queste dispense, relative a una parte del corso di Matematica Computazionale (Laurea in Informatica), rappresentano solo un aiuto per lo
DettagliTeoria della Complessità Concetti fondamentali. la teoria della complessità computazionale tenta di rispondere a domande del tipo
Teoria della Complessità Concetti fondamentali la teoria della complessità computazionale tenta di rispondere a domande del tipo quanto è efficiente un algoritmo? quanto è intrinsecamente difficile un
DettagliCostruzione di. circuiti combinatori
Costruzione di circuiti combinatori Algebra Booleana: funzioni logiche di base OR (somma): l uscita è 1 se almeno uno degli ingressi è 1 A B (A + B) 0 0 0 0 1 1 1 0 1 1 1 1 AND (prodotto): l uscita è 1
DettagliAlgebra di Boole X Y Z V. Algebra di Boole
L algebra dei calcolatori L algebra booleana è un particolare tipo di algebra in cui le variabili e le funzioni possono solo avere valori 0 e 1. Deriva il suo nome dal matematico inglese George Boole che
Dettaglicarattere a b c d e f cod. var
Codici prefissi Un codice prefisso è un codice in cui nessuna parola codice è prefisso (parte iniziale) di un altra Ogni codice a lunghezza fissa è ovviamente prefisso. Ma anche il codice a lunghezza variabile
DettagliLEZIONE 4. { x + y + z = 1 x y + 2z = 3
LEZIONE 4 4.. Operazioni elementari di riga. Abbiamo visto, nella precedente lezione, quanto sia semplice risolvere sistemi di equazioni lineari aventi matrice incompleta fortemente ridotta per righe.
DettagliProblemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come
Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo
Dettagli1 Indipendenza lineare e scrittura unica
Geometria Lingotto. LeLing7: Indipendenza lineare, basi e dimensione. Ārgomenti svolti: Indipendenza lineare e scrittura unica. Basi e dimensione. Coordinate. Ēsercizi consigliati: Geoling. Indipendenza
DettagliMetodi per la risoluzione di sistemi lineari
Metodi per la risoluzione di sistemi lineari Sistemi di equazioni lineari. Rango di matrici Come è noto (vedi [] sez.0.8), ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante
DettagliAniello Murano Problemi non decidibili e riducibilità
Aniello Murano Problemi non decidibili e riducibilità 8 Lezione n. Parole chiave: Riduzione Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Overview Nelle lezioni
DettagliLogica: materiale didattico
Logica: materiale didattico M. Cialdea Mayer. Logica (dispense): http://cialdea.dia.uniroma3.it/teaching/logica/materiale/dispense-logica.pdf Logica dei Predicati (Logica per l Informatica) 01: Logica
DettagliGrafi e Funzioni di Costo ESERCIZI
Grafi e Funzioni di Costo ESERCIZI Esercizio1 Si determini la matrice di incidenza archi-percorsi ed i costi di percorso per la rete di trasporto rappresentata in figura. 1 4 2 3 5 Ramo Costo Ramo Costo
Dettagli