Le classi P, NP, PSPACE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Le classi P, NP, PSPACE"

Transcript

1 Le classi P, NP, PSPACE

2 Argomenti della lezione Classi di complessità notevoli I teoremi di gerarchia Il teorema di Savitch Problemi aperti

3 Classi di complessità notevoli LOGSPACE = DSPACE(log n) P P= = k DTIME(n k ) NP = k NTIME(n k ) PSPACE = k DSPACE(n k ) NSPACE = k NSPACE(n k ) EXPTIME = k DTIME (2n k ) NEXPTIME = k NTIME (2n k )

4 La classe EXPTIME contiene già problemi di elevatissima complessità Per n = 10, 2 n2 = 2 100, se fossero nanosecondi il tempo di calcolo sarebbe maggiore di anni, superiore alla vita dell Universo

5 Problemi interessanti hanno livelli di complessità ancora più elevati Classi doppiamente esponenziali (es: Aritmetica di Presburger) (per n = 10, 2 2 n = )

6 Linguaggi elementari: tutti i linguaggi che, su input di taglia n, vengono riconosciuti in tempo: n con una catasta di k esponenziali, per k qualsiasi

7 Linguaggi non elementari Linguaggi che, su input di taglia n, vengono riconosciuti in tempo: con una catasta di n esponenziali (es. equivalenza di espressioni regolari con complementazione)

8 La complessità del problema di decidere se due espressioni regolari sono equivalenti è: esponenziale, per le usuali espressioni doppiamente esponenziale, per le espressioni con il quadrato

9 La complessità del problema di decidere se due espressioni regolari sono equivalenti è: non elementare, per le espressioni con la complementazione

10 La complessità del problema di decidere se una formula è un teorema è: esponenziale, per formule booleane quantificate

11 doppiamente esponenziale, per formule della teoria dell addizione (Aritmetica di Presburger); es. x y z(x+z=y w(w+w=y)) non elementare, per formule della teoria dell addizione del secondo ordine (WS1S); es. B ( y B z (z=0 y+z B))

12 LA CLASSE P La classe P è la classe dei problemi risolubili efficientemente con macchine deterministiche In prima approssimazione i problemi in P sono considerati computazionalmente trattabili.

13 Motivazioni: un aumento della potenza di calcolo degli elaboratori incide in modo significativo nella soluzione di problemi di costo polinomiale; non per problemi di costo esponenziale

14 Motivazioni: la classe P è una classe stabile, cioé invariante per diversi modelli di calcolo

15 LA CLASSE NP La classe NP è la classe dei problemi risolubili efficientemente con macchine non deterministiche Per moltissimi problemi di interesse pratico non conosciamo algoritmi polinomiali. Sappiamo però che essi sono risolubili in tempo polinomiale con MTND

16 Esempi: decidere se un grafo è hamiltoniano, decidere se un sistema di disequazioni lineari con variabili in {0, 1} è soddisfacibile.

17 Finora, la mancanza di risultati sulla relazione tra NP e P non ci consente di stabilire se essi siano o non siano problemi trattabili

18 LA CLASSE PSPACE La classe PSPACE è la classe dei problemi risolubili efficientemente in termini di spazio Per molti problemi di interesse pratico non conosciamo algoritmi in tempo polinomiale. Sappiamo però che essi sono risolubili in spazio polinomiale

19 Esempi: decidere se una formula booleana quantificata è un teorema

20 Finora, la mancanza di risultati sulla relazione tra PSPACE e P non ci consente di stabilire se anche essi siano o non siano trattabili

21 Le relazioni tra classi spaziali e classi temporali implicano: NEXPTIME NPSPACE EXPTIME PSPACE PSPACE P NPSPACE NP P LOGSPACE

22 Le relazioni tra MT deterministiche ed MT non deterministiche implicano NP P

23 Nessun contenimento è stretto NEXPTIME EXPTIME NPSPACE PSPACE P NP LOGSPACE

24 I teoremi di gerarchia Chiamiamo spazio-costruibile (tempo-costruibile) una funzione totale f tale che f(n) log n (f(n) n+1) esiste una MTM M che per ogni n opera in spazio (tempo) f(n)

25 Teorema di gerarchia spaziale Siano s1, s2: N N due funzioni spazio costruibili tali che lim(n ) s1(n)/s2(n) = 0 allora esiste un linguaggio L tale che L DSPACE(s1(n)) e L DSPACE(s2(n))

26 Teorema di gerarchia temporale Siano s1, s2: N N due funzioni tempo costruibili tali che lim(n ) t1(n)(log t1(n))/t2(n) = 0 allora esiste un linguaggio L tale che L DTIME(t1(n)) e L DTIME(t2(n))

27 Conseguenze: PSPACE LOGSPACE EXPTIME P

28 Il teorema di Savitch Teorema di Savitch Sia s(n) log n: DSPACE (s(n) 2 ) NSPACE (s(n))

29 Assumiamo per semplicità che la macchina di Turing non deterministica sia ad un solo nastro. Se essa usa spazio s(n) per decidere se una data stringa x ( x =n) appartiene ad un linguaggio L abbiamo che il numero di configurazioni possibili è c s(n)

30 Definiamo la funzione REACH(c1,c2,t): REACH (c1,c2,t) = if (c1=c2) (c1 c2) then TRUE else if c3 such that REACH(c1,c3,t/2) REACH(c3,c2,t/2) then TRUE else FALSE in cui c1, c2, c3 s(n)

31 Per decidere se x L la macchina deterministica può semplicemente calcolare REACH (c0,cf,2 s(n) ). Per far ciò è necessario utilizzare spazio s(n), pari alla dimensione di una configurazione, per il numero di configurazoni che possono essere inserite nella pila durante le chiamate ricorsive (log 2 s(n) = s(n)). In totale s(n) 2

32 Conseguenze: PSPACE = NPSPACE PSPACE NP

33 Problemi aperti più significativi LOGSPACE vs P P vs NP (il problema da $!) NP vs PSPACE PSPACE vs EXPTIME

34 Come possiamo caratterizzare la complessità di problemi in presenza di tante questioni irrisolte riguardanti la relazione tra le classi?

35 Utilizzando trasformazioni tra problemi (riduzioni) possiamo stabilire risultati di complessità relativa

PARTE VI COMPLESSITA

PARTE VI COMPLESSITA PARTE VI COMPLESSITA Complessità di algoritmi e problemi Classi di complessità Proprietà delle classi spaziali e temporali Le classi P, NP, PSPAZIO Problemi NP-completi 6.1. Introduzione alla complessità

Dettagli

Teoria della Complessità Computazionale. Accettazione/riconoscimento di linguaggi in tempo/spazio

Teoria della Complessità Computazionale. Accettazione/riconoscimento di linguaggi in tempo/spazio Teoria della Complessità Computazionale. Obiettivo: classifcare i problemi (risolubili con algoritmi) in base alle risorse di calcolo che richiedono per essere risolti. Risorse: tempo e spazio (memoria)

Dettagli

DI CALCOLO 13. COMPLESSITA

DI CALCOLO 13. COMPLESSITA DI CALCOLO 13. COMPLESSITA 13.1 INTRODUZIONE Concetti di base: Upper bound e lower bound di complessità di risoluzione un problema (es: il problema dell ordinamento di un vettore di n elementi ha un upper

Dettagli

Teoria della NP-completezza

Teoria della NP-completezza Teoria della NP-completezza Ivan Lanese Dipartimento di Informatica Scienza e Ingegneria Università di Bologna Ivan.lanese@gmail.com http://www.cs.unibo.it/~lanese/ NP-completezza 2 Complessità di problemi

Dettagli

Capitolo 9: Trattabilitá e intrattabilitá dei problemi

Capitolo 9: Trattabilitá e intrattabilitá dei problemi Capitolo 9: Trattabilitá e intrattabilitá dei problemi 1 La classe P : é considerata tradizionalmente come una caratterizzazione formale dei problemi trattabili. n = 2 n = 5 n = 10 n = 100 n = 1000 n 2

Dettagli

TEORIA DELLA COMPLESSITÀ

TEORIA 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

Dettagli

Teoria della NP-completezza. Damiano Macedonio

Teoria della NP-completezza. Damiano Macedonio Teoria della NP-completezza Damiano Macedonio mace@unive.it Copyright 2010, Moreno Marzolla, Università di Bologna, Italy (http://www.moreno.marzolla.name/teaching/asd2009/) This work is licensed under

Dettagli

a cura di Luca Cabibbo e Walter Didimo

a cura di Luca Cabibbo e Walter Didimo a cura di 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

Dettagli

Capitolo 8: Teoria della complessitá

Capitolo 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á

Dettagli

Dentro P e oltre NP?

Dentro P e oltre NP? Dentro P e oltre NP? Tra P e EXPTIME? EXPTIME PSPACE conp NP P Si sa solo che P EXPTIME PSPACE completezza Un linguaggio A è PSPACE completo se 1.A è in PSPACE, cioè esiste una TM T che accetta A con complessità

Dettagli

Aniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale

Aniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale Aniello Murano Classe dei problemi NP 13 Lezione n. Parole chiave: Classe NP Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduzione alla lezione Nella lezione

Dettagli

acuradi 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 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

Dettagli

Aniello Murano Space Complexity

Aniello 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

Dettagli

Argomenti Avanzati 1

Argomenti Avanzati 1 Argomenti Avanzati 1 Programmazione dinamica Come la tecnica divide-et-impera si basa sull'idea di scomporre il problema in sottoproblemi, risolvere quelli, e ricombinarli si applica però quando i problemi

Dettagli

Problemi intrattabili

Problemi intrattabili Tempo polinomiale ed esponenziale Una Tm M ha complessita in tempo T(n) se, dato un input w di lunghezza n, M si ferma dopo al massimo T (n) passi. Problemi intrattabili Ci occuperemo solo di problemi

Dettagli

PARTE I APPROFONDIMENTI SULLA COMPLESSITA COMPUTAZIONALE: LE CLASSI P E PSPACE

PARTE I APPROFONDIMENTI SULLA COMPLESSITA COMPUTAZIONALE: LE CLASSI P E PSPACE PARTE I APPROFONDIMENTI SULLA COMPLESSITA COMPUTAZIONALE: LE CLASSI P E PSPACE - Richiami sulla complessita dei problemi decisionali: I problemi NP-completi - Dentro la classe P: le classi NC e LOGSPACE

Dettagli

Complessità computazionale. Intermezzo tecnico

Complessità computazionale. Intermezzo tecnico computazionale Intermezzo tecnico Piero A. Bonatti Università di Napoli Federico II Laurea Magistrale in Informatica Tema della lezione Normalizzazioni varie, tecnicamente utili funzioni di complessità

Dettagli

Calcolabilità e Complessità. Schifano S. Fabio

Calcolabilità e Complessità. Schifano S. Fabio schifano@fe.infn.it Laurea Specialistica in Informatica - Universitá di Ferrara 2005-2006 [1] Complessità La teoria della complessità si occupa di caratterizzare e classificare i problemi, di cui la teoria

Dettagli

Automi e Linguaggi Formali

Automi e Linguaggi Formali Automi e Linguaggi Formali Problemi intrattabili, classi P e NP A.A. 2014-2015 Alessandro Sperduti sperduti@math.unipd.it Problemi intrattabili Ci occuperemo solo di problemi decidibili, cioè ricorsivi.

Dettagli

Pietro Battiston 26/09/2008

Pietro Battiston 26/09/2008 26/09/2008 Macchina di Turing Tesi di Church-Turing: Modello astratto di calcolatore. Tutto ciò che è calcolabile è Turing-calcolabile. È al tempo stesso una congettura ed un assioma alla base della teoria

Dettagli

Dispensa di Informatica Teorica (Elementi) - Teorema di Cook

Dispensa di Informatica Teorica (Elementi) - Teorema di Cook Teorema di ook (Idea generale) Dato L NP, costruire una trasformazione polinomiale f da L a L (sodd, e), cioè il linguaggio composto dalle stringhe che corrispondono ad istanze del problema sodd. La trasformazione

Dettagli

Partizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché

Partizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché Partizioni intere PARTIZIONAMENTO: Dato un insieme di n interi non negativi rappresentati in binario, trovare un sottoinsieme P! {1,2,..., n } tale che! i"p a i =! i# P a i Es: Dato {38, 17, 52, 61, 21,

Dettagli

Sommario. Complessità di tempo e spazio di una TM che si ferma sempre.

Sommario. Complessità di tempo e spazio di una TM che si ferma sempre. Sommario Complessità di tempo e spazio di una TM che si ferma sempre. Relazioni tra le due misure Analisi complessità delle TM costruite per dimostrare che più nastri o il non determinismo non aumentano

Dettagli

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: 6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico

Dettagli

Problemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP

Problemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP roblemi intrattabili Ci occuperemo solo di problemi decidibili, cioe ricorsivi. Tra loro, alcuni sono detti trattabili, se si puo provare che sono risolvibili in tempo polinomiale in modo deterministico.

Dettagli

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni:

In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: 6.5 Trattabilita' computazionale. In prima approssimazione definiamo trattabili i problemi che possono essere risolti in tempo polinomiale con MT. Motivazioni: - la forte differenza nell'andamento asintotico

Dettagli

Teoria della Complessità Computazionale

Teoria della Complessità Computazionale Teoria della Complessità Computazionale Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 21 Ottobre 2014 Ricerca Operativa 2

Dettagli

Diario delle Lezioni del Corso di Algoritmimodulo

Diario 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

Dettagli

Le parole dell informatica: modello di calcolo, complessità e trattabilità

Le parole dell informatica: modello di calcolo, complessità e trattabilità Le parole dell informatica: modello di calcolo, complessità e trattabilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario

Dettagli

Teoria della complessità

Teoria della complessità Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Teoria della complessità Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Problemi decisionali. Esempi

Problemi decisionali. Esempi Problemi decisionali La teoria della complessità computazionale è definita principalmente in termini di problemi di decisione Essendo la risposta binaria, non ci si deve preoccupare del tempo richiesto

Dettagli

Complessità Strutturale e NP-Completezza

Complessità Strutturale e NP-Completezza Complessità Strutturale e NP-Completezza Una breve introduzione Francesco De Rose Alberto Giorgi Università degli Studi di Brescia Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica

Dettagli

Algoritmo per A. !(x) Istanza di B

Algoritmo per A. !(x) Istanza di B 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

Dettagli

Sommario. 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 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

Dettagli

PSPACE completezza. Un linguaggio A è PSPACE completo se. 1. A è in PSPACE, cioè esiste una TM T che accetta A con complessità di spazio polinomiale.

PSPACE completezza. Un linguaggio A è PSPACE completo se. 1. A è in PSPACE, cioè esiste una TM T che accetta A con complessità di spazio polinomiale. Sommario Il problema della verità per formule booleane pienamente quantificate è PSPACE - completo PSPACE come la classe dei giochi. Il gioco geografico generalizzato è PSPACE - completo 1 PSPACE completezza

Dettagli

Capitolo 1 Concetti matematici di base Insiemi, relazioni e funzioni... 1

Capitolo 1 Concetti matematici di base Insiemi, relazioni e funzioni... 1 iv Indice Capitolo 1 Concetti matematici di base 1 1.1 Insiemi, relazioni e funzioni.................... 1 Capitolo 2 Linguaggi formali 35 2.1 Grammatiche di Chomsky..................... 36 2.2 Grammatiche

Dettagli

Aniello Murano NP- Completezza (prima parte)

Aniello Murano NP- Completezza (prima parte) Aniello Murano NP- Completea (prima parte) 14 Leione n. Parole chiave: Npcompletea Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduione I problemi NP-completi

Dettagli

L INFORMATICA: DUE CONCETTI DI BASE Fabrizio Luccio, Pisa 2019

L INFORMATICA: DUE CONCETTI DI BASE Fabrizio Luccio, Pisa 2019 L INFORMATICA: DUE CONCETTI DI BASE Fabrizio Luccio, Pisa 2019 La decidibilità l algoritmo non tutti i problemi sono risolubili La complessità la rappresentazione problemi trattabili e intrattabili La

Dettagli

Informatica Teorica - Compito A

Informatica Teorica - Compito A Informatica Teorica - Compito A 7 luglio 2003 Cognome:................................................................... Nome:...................................................................... Matricola:...................................................................

Dettagli

Cammini minimi. peso cammino minimo da u a v:

Cammini minimi. peso cammino minimo da u a v: Argomenti avanzati Cammini minimi Cammini minimi Si vuole ottenere il cammino minimo tra due nodi (es. problema distanze tra stazioni ferroviarie) Ingresso: G = (V, E) orientato, funz. di peso w : E R

Dettagli

Complessità. Ricorda: Problema P decidibile Linguaggio L P decidibile Taglia input x x. Esempio: G è un grafo connesso? { G G è un grafo connesso}

Complessità. Ricorda: Problema P decidibile Linguaggio L P decidibile Taglia input x x. Esempio: G è un grafo connesso? { G G è un grafo connesso} Complessità Calcolabilità: studia la frontiera tra problemi solubili e insolubili, Si limita ad aspetti qualitativi della risolubilità dei problemi (distingue ciò che è risolubile da ciò che non lo è).

Dettagli

3 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 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

Dettagli

Teoria della Complessità Computazionale

Teoria della Complessità Computazionale Teoria della Complessità Computazionale Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Rev. 1.3, 11/00 rev. 1.3 - Novembre 2000 Teoria della Complessità Studia la difficoltà dei problemi

Dettagli

Complessità computazionale. Principali relazioni tra le classi di. Complessità

Complessità computazionale. Principali relazioni tra le classi di. Complessità computazionale Principali relazioni tra le classi di complessità Piero A. Bonatti Università di Napoli Federico II Laurea Magistrale in Informatica Tema della lezione I Col procedere del corso studieremo

Dettagli

(ETC) A.A. 2016/17 MATRICOLE DISPARI

(ETC) A.A. 2016/17 MATRICOLE DISPARI Elementi di Teoria della Computazione (ETC) A.A. 2016/17 MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica

Dettagli

Trattabilità computazionale.

Trattabilità computazionale. Trattabilità computazionale. Tesi di Cobham. Tutti i modelli di calcolo introdotti per defnire la calcolabilità in tempo polinomiale hanno al più lo stesso potere computazionale delle MT operanti in tempo

Dettagli

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME

Sommario. Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME Sommario Caratterizzazione alternativa di NP: il verificatore polinomiale la classe conp e le relazioni tra P, NP,coNP e EXPTIME HAMPATH - 1 HAMPATH = { G è un grafo diretto con un cammino hamiltoniano

Dettagli

Problemi decidibili, semidecidibili, indecidibili

Problemi decidibili, semidecidibili, indecidibili Problemi decidibili, semidecidibili, indecidibili (Paragrafo 3.5 delle dispense) Il problema di determinare se una formula A della logica proposizionale sia valida o no può essere risolto mediante un procedimento

Dettagli

Algoritmi e Principi dell'informatica Seconda Prova in Itinere - 14 Febbraio 2014

Algoritmi e Principi dell'informatica Seconda Prova in Itinere - 14 Febbraio 2014 Algoritmi e Principi dell'informatica Seconda Prova in Itinere - 14 Febbraio 2014 Nome..Cognome.Matr. Laureando Avvisi importanti Il tempo a disposizione è di 1 ora e 30 minuti. Se non verranno risolti

Dettagli

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca! Se disponiamo di un efficiente algoritmo per risolvere

Dettagli

Teoria della Complessità Computazionale Parte II: Classi di Complessità

Teoria della Complessità Computazionale Parte II: Classi di Complessità Teoria della Complessità Computazionale arte II: Classi di Complessità Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 3.0 - Ottobre 2003 Classi di complessità: ed N classe dei problemi

Dettagli

Certificati dei problemi in NP

Certificati dei problemi in NP Certificati dei problemi in NP La stringa y viene in genere denominata un certificato Un Certificato è una informazione ausiliaria che può essere utilizzata per verificare in tempo polinomiale nella dimensione

Dettagli

Riduzioni che preservano l approssimazione e completezza nelle classi di approssimabilità.

Riduzioni 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

Dettagli

Problemi intrattabili

Problemi intrattabili Problemi intrattabili Introduzione Ci si occuperà ora dello studio delle relazioni tra le classi: P=U i=0.. DTIME(n i ) NP=U i=0.. NTIME(n i ) PSPACE=U i=0.. DSPACE(n i ) NSPACE=U i=0.. NSPACE(n i ) Proposizione

Dettagli

Anno accademico 2001/2002

Anno accademico 2001/2002 Raccolta temi d esame del corso di Complessità Roberto Posenato 12 febbraio 2014 Parte I Anno accademico 2001/2002 1 Appello del 24/06/2002 Esercizio 1.1. (Esercizio annunciato) Dimostrare il teorema della

Dettagli

Problemi computazionali

Problemi computazionali Problemi computazionali Intrattabilità, indecidibilità, e classi computazionali Algoritmo Essenza computazionale di un programma che ne descrive i passi fondamentali (più implementazioni) Ingredienti:

Dettagli

Informatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza

Informatica 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

Dettagli

La MT come riconoscitore

La MT come riconoscitore La MT come riconoscitore Sia M =

Dettagli

Ancora su 2-SAT. può essere pensata come una coppia di implicazioni!! " 1

Ancora su 2-SAT. può essere pensata come una coppia di implicazioni!!  1 Ancora su 2-SAT Qualsiasi clausola a 1! a 2 può essere pensata come una coppia di implicazioni!! " 1 " a 2 e " 2 " a 1 Il caso di letterale singolo a viene considerato come "" a Partendo da una istanza

Dettagli

Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output

Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output F = { (s, s ) } per ogni s esiste una e una sola coppia (s, s ). Esempio: un algoritmo che calcola il quadrato di

Dettagli

Logica Algoritmi Cognizione

Logica Algoritmi Cognizione Logica Algoritmi Cognizione Le nozioni di DECIDIBILITÀ e COMPUTABILITÀ e i loro limiti Formulazione della logica in termini di teorie formalizzate e di dimostrazioni (all interno di teorie formalizzate)

Dettagli

Testo di riferimento. Problema delle 12 monete. Algoritmi. Complessità degli algoritmi (cenni) Dispense del Corso di Algoritmi e Strutture Dati

Testo di riferimento. Problema delle 12 monete. Algoritmi. Complessità degli algoritmi (cenni) Dispense del Corso di Algoritmi e Strutture Dati Testo di riferimento Complessità degli algoritmi (cenni) CORDA Informatica A. Ferrari Dispense del Corso di Algoritmi e Strutture Dati Marco Bernardo - Edoardo Bontà Università degli Studi di Urbino Carlo

Dettagli

Complessità degli algoritmi (cenni)

Complessità degli algoritmi (cenni) Complessità degli algoritmi (cenni) CORDA Informatica A. Ferrari Testo di riferimento Dispense del Corso di Algoritmi e Strutture Dati Marco Bernardo - Edoardo Bontà Università degli Studi di Urbino Carlo

Dettagli

La classe P. Fondamenti di Informatica - modulo /2017 M.Di Ianni. Indice

La classe P. Fondamenti di Informatica - modulo /2017 M.Di Ianni. Indice Fondamenti di Informatica - modulo 2 2016/2017 M.Di Ianni La classe P Indice 8.1 Classe P e trattabilità........................................... 2 8.2 La struttura della classe P.........................................

Dettagli

Prefazione all edizione italiana

Prefazione all edizione italiana Questo è l'indice del libro, in cui sono evidenziati i paragrafi corrispondenti agli argomenti trattati nel corso e che costituiscono il programma d'esame. Si noti che la presentazione di alcuni argomenti

Dettagli

Problemi intrattabili e quantum computing

Problemi 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

Dettagli

Problemi, istanze, soluzioni

Problemi, 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

Dettagli

Soddisfacibilità e Semantic Tableau [1]

Soddisfacibilità e Semantic Tableau [1] Intelligenza Artificiale I Soddisfacibilità e Semantic Tableau Marco Piastra Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema In forma rigorosa, un problema è una relazione

Dettagli

Sommario. Esempi di problemi NP-completi: 3-COLORING TSP. HamCycle

Sommario. Esempi di problemi NP-completi: 3-COLORING TSP. HamCycle Sommario Esempi di problemi NP-completi: 3-COLORING HamCycle SP 3-Coloring è NP-hard Una colorazione di un grafo G=(V,E) è una funzione f : V {1,...,n} tale che {u,v} E f(u) f(v). Una 3- colorazione usa

Dettagli

Introduzione Problemi e codifiche Classe P e linguaggi Da NP a NP-C Il mondo NP-C Conclusioni. NP-Completezza

Introduzione 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

Dettagli

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi?

Sommario. Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Sommario Problemi di decisione, di ricerca e di ottimizzazione: come sono legate le complessità delle diverse versioni dei problemi? Decisione vs ricerca Se disponiamo di un efficiente algoritmo per risolvere

Dettagli

Fondamenti dell informatica

Fondamenti dell informatica Fondamenti dell informatica Funzioni ricorsive e linguaggi funzionali Rosario Culmone rosario.culmone@unicam.it 16/4/2008 UNICAM - p. 1/21 Funzioni ricorsive Metodo di definizione di algoritmi introdotto

Dettagli

Tempo e spazio di calcolo

Tempo e spazio di calcolo Tempo e spazio di calcolo Modelli di calcolo e metodologie di analisi In quale modo stimiamo il tempo di calcolo? Possiamo considerare due approcci: Approccio empirico (a posteriori) Approccio teorico

Dettagli

Trasformazione di un NDFA in un DFA con ε-regole

Trasformazione di un NDFA in un DFA con ε-regole Trasformazione di un NDFA in un DFA con -regole a A B D d b C E c t A B C D E a D E b D D c D,E D E D d C C a - t ( s, q i ) = -chiusura (δ (s, q j )) qj -chiusura ( qi) -Primo passo dell algoritmo modificato

Dettagli

Precorso di Matematica

Precorso di Matematica UNIVERSITÀ DEGLI STUDI ROMA TRE FACOLTA DI ARCHITETTURA Precorso di Matematica Anna Scaramuzza Anno Accademico 2005-2006 4-10 Ottobre 2005 INDICE 1. ALGEBRA................................. 3 1.1 Equazioni

Dettagli

Teoria della Complessità Concetti fondamentali

Teoria della Complessità Concetti fondamentali Teoria della Complessità Concetti fondamentali L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile La difficoltà di un problema è una caratteristica generale e non

Dettagli

Teoria della Calcolabilità!

Teoria 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

Dettagli

Note sulle classi di complessità P, NP e NPC per ASD (DRAFT)

Note 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

Dettagli

Teoria della complessità

Teoria della complessità Teoria della complessità Materiale consigliato: testo del corso capitolo 34 Introduzione agli algoritmi e strutture dati T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein McGraw Hill, 2005 Denise Salvi

Dettagli

complessità degli algoritmi

complessità degli algoritmi complessità degli algoritmi progetto CORDA informatica algoritmo matematico persiano Muhammad al-khwarizmi (IX secolo) un algoritmo è una sequenza finita di passi interpretabili da un esecutore l esecuzione

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Riepilogo degli argomenti trattati nel corso a.a. 2018/2019 1 Algoritmi e complessità computazionale (dispense n. 1) Riepilogo sulla programmazione strutturata e sugli algoritmi;

Dettagli

Esempio : i numeri di Fibonacci

Esempio : i numeri di Fibonacci Esempio : i numeri di Fibonacci La successione di Fibonacci F 1, F 2,... F n,... è definita come: F 1 =1 F 2 =1 F n =F n 1 F n 2,n 2 Leonardo Fibonacci (Pisa, 1170 Pisa, 1250) http://it.wikipedia.org/wiki/leonardo_fibonacci

Dettagli

La matematica negli algoritmi. Maat: dea egizia dell ordine. Liber Abaci 1202

La matematica negli algoritmi. Maat: dea egizia dell ordine. Liber Abaci 1202 La matematica negli algoritmi Maat: dea egizia dell ordine Liber Abaci 1202 Tre concetti di base La decidibilità il concetto di algoritmo non esistono dimostrazioni gratis La crescita esponenziale rappresentazione

Dettagli

PIANO DI STUDIO DELLA DISCIPLINA

PIANO DI STUDIO DELLA DISCIPLINA DISCIPLINA: MATEMATICA PIANO DELLE 1 ANNO IPSIA SETTORE IP Anno 2016/2017 COMPETENZE della ABILITA n. 1 I NUMERI NATURALI Ore: 12 settembre procedure del calcolo (a mente, per iscritto, a macchina) per

Dettagli

Esempio. Grammatica E! T E!! T! *F T " F! (E) i. procedure E. ! if cc in FIRST (TE )! then T; E!!! else ERRORE (1); E! T E

Esempio. Grammatica E! T E!! T! *F T  F! (E) i. procedure E. ! if cc in FIRST (TE )! then T; E!!! else ERRORE (1); E! T E Esempio Grammatica E! T E!! E! + T E " T! F T T! *F T " F! (E) i E! T E T! F T E! + T E "!! tabella codici di errore # 1. omissione di operando 2. omissione di operatore 3. simbolo inatteso 4. carattere

Dettagli

Verifica di programmi

Verifica di programmi Verifica di programmi Informalmente, un programma è corretto se l output prodotto è quello atteso rispetto all input. La correttezza dei programmi può essere espressa mediante formule per la correttezza

Dettagli

Elementi di Teoria della Computazione (ETC) Classe 2: matricole congrue a 1 (mod 3) Docente: Prof. Luisa Gargano BENVENUTI!

Elementi di Teoria della Computazione (ETC) Classe 2: matricole congrue a 1 (mod 3) Docente: Prof. Luisa Gargano BENVENUTI! Elementi di Teoria della Computazione (ETC) Classe 2: matricole congrue a 1 (mod 3) Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica

Dettagli

Studio degli algoritmi

Studio degli algoritmi COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.2006/07 Prof. V.L. Plantamura Dott.ssa A. Angelini Studio degli algoritmi Dato un problema P, le problematiche riguardano: Sintesi

Dettagli

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis accattatis@ing.uniroma2.it Fondamenti di Informatica a.a. 2015/16 - A.Accattatis 2 Prefazione Il materiale della presente lezione è ispirato ai lavori

Dettagli

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di

Dettagli

Tipologie di macchine di Turing

Tipologie di macchine di Turing Tipologie di macchine di Turing - Macchina di Turing standard - Macchina di Turing con un nastro illimitato in una sola direzione - Macchina di Turing multinastro - Macchina di Turing non deterministica

Dettagli

Algoritmi e Strutture Dati. Luciano Gualà

Algoritmi e Strutture Dati. Luciano Gualà Algoritmi e Strutture Dati Luciano Gualà guala@mat.uniroma2.it www.mat.uniroma2.it/~guala Programmazione dinamica una tecnica di progettazione algoritmica molto potente Sommario La tecnica della programmazione

Dettagli

Problemi computazionali

Problemi computazionali Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità

Dettagli

Il problema del commesso viaggiatore (TSP) la somma delle distanze tra le città. essere espresso dalla domanda:

Il problema del commesso viaggiatore (TSP) la somma delle distanze tra le città. essere espresso dalla domanda: Classe NP: il TSP Il problema del commesso viaggiatore (TSP)! È definito in termini di un insieme di n città c 1,..., c n e di una matrice delle distanze: D = ( d(i,j) ) d(i,j) = distanza(c i, c j )! Un

Dettagli

Linguaggi Regolari e Linguaggi Liberi

Linguaggi Regolari e Linguaggi Liberi Linguaggi Regolari e Linguaggi Liberi Potenza espressiva degli automi Potenza espressiva delle grammatiche 9/11/2004 Programmazione - Luca Tesei 1 Linguaggi Regolari Tutti i linguaggi che possono essere

Dettagli

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive

Dettagli

Algoritmi e Principi dell Informatica

Algoritmi e Principi dell Informatica Algoritmi e Principi dell Informatica Appello del 1 Settembre 2016 Chi deve sostenere l esame integrato (API) deve svolgere tutti gli esercizi in 2 ore e 30 minuti. Chi deve sostenere solo il modulo di

Dettagli

Fondamenti dell Informatica. Esercizi di preparazione al secondo compitino

Fondamenti dell Informatica. Esercizi di preparazione al secondo compitino Fondamenti dell Informatica (III anno Laurea Triennale) Esercizi di preparazione al secondo compitino a.a. 2016/17 Funzioni primitive ricorsive Si definiscano come primitive ricorsive le seguenti funzioni:

Dettagli