Capitolo 9: Trattabilitá e intrattabilitá dei problemi
|
|
- Ferdinando Fiore
- 5 anni fa
- Visualizzazioni
Transcript
1 Capitolo 9: Trattabilitá e intrattabilitá dei problemi 1
2 La classe P : é considerata tradizionalmente come una caratterizzazione formale dei problemi trattabili. n = 2 n = 5 n = 10 n = 100 n = 1000 n n n n n n Numero di passi eseguiti da algoritmi con diverse complessitá. 2
3 Usando una macchina che esegue un passo di computazione in 10 nanosecondi (10 8 secondi) si ha: n = 2 n = 5 n = 10 n = 100 n = 1000 n 20 ns 50 ns 100 ns 1 µs 10 µs n 2 40 ns 250 ns 1 µs 100 µs 10 ms n 3 80 ns 1.25 µs 10 µs 10 µs 10 sec n ns 150 µs 10 ms 3 ore 300 anni 2 n 40 ns 320 ns 10 µs anni anni 2 n2 160 ns 0.3 sec anni anni anni Tempi di calcolo di algoritmi con diverse complessitá. 3
4 Gli algoritmi con complessitá polinomiale sono gli unici che comportano, in caso di miglioramenti tecnologici, la possibilitá di trattare negli stessi tempi istanze di dimensioni significativamente maggiori. t t/10 t/1000 t/10 6 t/10 9 n N 10 N 1000 N 10 6 N 10 9 N n 2 N 3.16 N 31.6 N 1000 N N n 3 N 2.15 N 10 N 100 N 1000 N n 6 N 1.46 N 3.16 N 10 N 31.6 N 2 n N N N N N n2 N N N N N Aumento della dimensione delle istanze trattabili in uno stesso limite di tempo ottenuto da incrementi di velocitá di calcolo 4
5 Tipici problemi di complessitá polinomiale (risolti efficientemente dai calcolatori) sono i problemi di ordinamento, di interrogazione di basi di dati, di ricerca di percorsi minimi in grafi, di programmazione lineare. Ad oggi, non si sa se tutti i problemi in P hanno complessitá equivalente. Ad esempio, alcuni problemi in P possono essere risolti in spazio logaritmico; ma tale fatto vale per tutti i problemi in P?. Le riducibilitá polinomiali non ci aiutano a caratterizzare la complessitá di problemi in P (infatti, se P 1 e P 2 P, allora P 1 p m P 2 e P 2 p m P 1 ). 5
6 Definizione 1 Dati due problemi P 1 e P 2, si dice che P 1 é logspace Karp-riducibile a P 2 (P 1 logsp m P 2 ) se e solo se P 1 e Karpriducibile a P 2 e la riduzione é un algoritmo calcolabile in spazio logaritmico. Se un algoritmo termina utilizzando spazio logaritmico, allora richiede tempo al piú polinomiale (dimostrarlo); quindi una riduzione log-space é anche polinomiale (ma non vale il contrario). Esistono problemi piú difficili (P -completi) rispetto alla riducibilitá log-space? Esistono cioé problemi che rappresentano tutti i problemi in P?? 6
7 Corollari immediati: 1. se un problema P -completo é risolubile in spazio logaritmico, allora P = LOGSP ACE. 2. un problema si dice efficientemente parallelizzabile se ogni istanza di dimensione n é risolubile da n k processori con tempo (parallelo) O(log h k). Se P 1 é efficientemente parallelizzabile, e P 2 logsp m P 1, allora anche P 2 é efficientemente parallelizzabile. Quindi, se trovo un problema P -completo che é anche efficientemente parallelizzabile, allora tutti i problemi in P lo sono. 7
8 P -completezza La P -completezza di un problema di decisione P P é mostrata individuando una riduzione log-space da qualche altro problema P -completo P 1. Infatti, si ha: P 2 logsp m P 1, per ogni P 2, essendo P 1 P -completo; P 1 logsp m P (lo dimostriamo); allora, per transitivitá, P 2 logsp m P, per ogni P 2, e quindi P é P -completo; Cerchiamo un problema P -completo iniziale. 8
9 Definizione 2 Un circuito booleano é un grafo orientato aciclico in cui ogni nodo ha d in 2 archi entranti. In particolare: 1. i nodi con d in = 0 sono detti nodi di input; 2. i nodi con d in = 1 sono detti porte NOT; 3. i nodi con d in = 0 sono detti porte AND o porte OR. Tutti i nodi hanno d out > 0, eccetto un solo nodo di output. dimensione del circuito = numero di nodi; profonditá = lunghezza massima fra input e output. 9
10 Sia I(C) l insieme di n nodi di input del circuito C; data una assegnazione di n valori booleani, il circuito calcola i valori booleani in uscita da ogni nodo, applicando su ogni porta l operatore ad essa associato. Il circuito calcola la funzione f C : {0, 1} n {0, 1} tale che f C (b 0,..., b n 1 ) = 1 sse il circuito restituisce il valore 1 per input b 0,..., b n 1. Definizione 3 Dato C, con I(C) = n, il linguaggio deciso da C é l insieme delle stringhe w {0, 1} n tale che f C (w) = 1 10
11 VALORE CALCOLATO DA UN CIRCUITO (problema P -completo) ISTANZA: circuito booleano C con nodi di input I(C) ; stringa w {0, 1} n. PREDICATO: si ha f C (w) = 1? Teorema 4 Sia L {0, 1} n un linguaggio tale che L P ; allora esiste un circuito C con n nodi di input e con dimensione e profonditá polinomiali in n che decide L. Teorema 5 Il problema VALORE CALCOLATO DA UN CIR- CUITO é P -completo rispetto ad una riduzione log-space 11
12 La classe NP Molti problemi di decisione non hanno algoritmi polinomiali per la loro soluzione, ma non si sa se sono esponenziali. Sono peró decidibili in tempo polinomiale da macchine di Turing non deterministiche (ad esempio, SODDISFACIBILITÁ). Ad ogni problema di decisione P che chiede se l istanza x Y P o no, possiamo associare un problema di verifica il quale, data una possibile soluzione s, chiede se s é soluzione per x. In generale, verificare una soluzione é piú facile che risolvere il problema di decisione nella sua forma originaria?? 12
13 In particolare, verificare le soluzioni di un problema vuol dire risolvere il problema in modo non deterministico, nel modo seguente: una macchina non deterministica genera inizialmente tutte le stringhe che possono essere soluzione del problema, e verifica deterministicamente se ogni stringa é soluzione. Se le soluzioni hanno dimensione polinomiale allora la fase di generazione non deterministica richiede tempo polinomiale; se la verifica é polinomiale, allora tutta la macchina opera in tempo polinomiale. Un algoritmo non deterministico é tale che, oltre a tutte le istruzioni usuali del modello scelto, ha un comando di guess, eseguito in un solo passo di computazione. 13
14 Quindi, puó indovinare come continuare la computazione nell insieme finito delle possibili continuazioni della computazione svolta. Definizione 6 Dato un problema di decisione P, un algoritmo non deterministico A risolve P se per ogni istanza x Y P, esiste almeno una sequenza di guess tale che A restituisce il valore VERO, e per ogni x / Y P, non esiste alcuna sequenza di guess tale che A restituisce il valore VERO. La classe NP é ridefinita come la classe di tutti i problemi risolti da algoritmi deterministici che operano in tempo polinomiale a partire da guess di lunghezza polinomiale. P = N P? vuol dire chiedersi se verificare efficientemente un problema di decisione é equivalente a risolvere efficientemente lo stesso problema. 14
15 NP -completezza Un problema P NP é NP -completo se ogni P 1 NP é Karpriducibile polinomialmente a P. La NP -completezza di un problema di decisione P P é mostrata individuando una riduzione polinomiale da qualche altro problema P -completo P 1. Infatti, si ha: P 2 p m P 1, per ogni P 2, essendo P 1 NP -completo; P 1 p m P (lo dimostriamo); allora, per transitivitá, P 2 p m P, per ogni P 2, e quindi P é NP -completo; (Cosa accade se posso risolvere in tempo polinomiale un problema NP -completo?) 15
16 Teorema 7 (di Cook) Il problema SODDISFACIBILITÁ é N P - completo rispetto ad una riduzione polinomiale. 16
17 La classe co-np Definizione 8 Dato un problema di decisione P, il problema complementare co P é un problema di decisione tale che I co P = I P, Y co P = N P e N co P = Y P. Definizione 9 Data una classe di complessitá C, la corrispondente classe complementare co C é la classe contenente tutti e soli i problemi complementari a problemi in C: co C = {P : co P C}. Indichiamo con co P e co N P le classi complementari di P e NP. 17
18 (i) P = co P (immediato); (ii) se NP co NP allora P NP ; (iii) se NP = co NP, non necessariamente P = NP ; (iv) se un problema P é N P -completo, allora il suo complementare co P é co NP -completo. Teorema 10 Se un problema P é co N P -completo, P P implica P = NP. Teorema 11 Se un problema P é co N P -completo, P N P implica NP = co NP. Teorema 12 Se un problema P é N P -completo, P co N P implica NP = co NP. 18
19 La classe P SP ACE: é l insieme dei problemi risolubili in spazio polinomiale nella dimensione dell istanza. (i) P = NP non implica P SP ACE = P. (ii) Per il teorema di Savitch, NSP ACE = DSP ACE. FORMULA BOOLEANA QUANTIFICATA (problema P SP ACE-completo) ISTANZA: formula booleana F su una sequenza X = {x 1,..., x n } di variabili booleane. PREDICATO: la formula booleana quantificata Φ = Q 1 x 1 Q 2 x 2... Q n x n F (x 1, x 2,..., x n ), con Q i = Q i+1 =, e Q i = Q i+1 =, é vera? 19
20 Teorema 13 Il problema FORMULA BOOLEANA QUANTIFI- CATA é P SP ACE-completo rispetto alla riducibilitá log-space. 20
Capitolo 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
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
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo
Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Marco Liverani (liverani@mat.uniroma3.it)
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliCapitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali
Capitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali 1 Modelli imperativi: le RAM (Random Access Machine) I modelli di calcolo imperativi sono direttamente collegati al modello Von Neumann,
DettagliLe 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
DettagliInformatica Teorica. Macchine a registri
Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire
DettagliPARTE III MACCHINE A REGISTRI
PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson
DettagliTipologie 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
DettagliRegola del partitore di tensione
Regola del partitore di tensione Se conosciamo la tensione ai capi di una serie di resistenze e i valori delle resistenze stesse, è possibile calcolare la caduta di tensione ai capi di ciascuna R resistenza,
DettagliProblemi computazionali
Problemi computazionali Intrattabilità e classi computazionali Decidibilità e Trattabilità Problemi decidibili possono richiedere tempi di risoluzione elevati: Torri di Hanoi Decidibilità e Trattabilità
DettagliPROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico
ISTITUTO TECNICO STATALE MARCHI FORTI Viale Guglielmo Marconi n 16-51017 PESCIA (PT) - ITALIA PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico Docente PARROTTA GIOVANNI
DettagliUD 3.4b: Trattabilità e Intrattabilità. Dispense, cap. 4.2
UD 3.4b: Trattabilità e Intrattabilità Dispense, cap. 4.2 Problemi Intrattabili Esistono problemi che, pur avendo un algoritmo di soluzione, non forniranno mai una soluzione in tempi ragionevoli nemmeno
DettagliLe Macchine di Turing
Le Macchine di Turing Come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale Il nastro Il nastro è infinito suddiviso in celle In una cella
Dettagli(ETC) MATRICOLE DISPARI
Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità
DettagliLa macchina universale
La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}*
DettagliIntroduzione ai problemi NP-completi
Corso di Algoritmi e Strutture Dati Introduzione ai problemi NP-completi Nuova versione del capitolo 13 delle dispense (basata sui modelli non deterministici) Anno accademico 2007/2008 Corso di laurea
DettagliMATEMATICA e COMPLEMENTI di MATEMATICA
ALLEGATO N.8_b MATEMATICA e COMPLEMENTI di MATEMATICA DESTINATARI gli studenti delle classi: terze e quarte nuovo ordinamento RISULTATI DI APPRENDIMENTO DELL OBBLIGO D ISTRUZIONE, CHIAVE EUROPEA Padroneggiare
DettagliTECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO
CLASSE DISCIPLINA MODULO Conoscenze Abilità e competenze Argomento 1 Concetti di base Argomento 2 Sistema di elaborazione Significato dei termini informazione, elaborazione, comunicazione, interfaccia,
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliSistemi Web per il turismo - lezione 3 -
Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa
DettagliLinguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni
Linguaggi per COMUNICARE Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni Sintassi e semantica dei linguaggi Un informazione può : Essere
DettagliPIANO DI LAVORO. a.s. 2015 / 2016
PIANO DI LAVORO a.s. 2015 / 2016 Materia: INFORMATICA Classe: terza informatica- sez. A Data di presentazione: 15/10/2015 DOCENTI FIRMA Cerri Marta Bergamasco Alessandra Posta elettronica: itisleon@tin.it
DettagliPROVA INTRACORSO TRACCIA A Pagina 1 di 6
PROVA INTRACORSO DI ELEMENTI DI INFORMATICA MATRICOLA COGNOME E NOME TRACCIA A DOMANDA 1 Calcolare il risultato delle seguenti operazioni binarie tra numeri interi con segno rappresentati in complemento
DettagliComplessità computazionale degli algoritmi
Complessità computazionale degli algoritmi Lezione n. 3.bis I precursori dei calcolatore Calcolatore di Rodi o di Andikithira 65 a.c. Blaise Pascale pascalina XVII secolo Gottfried Leibniz Joseph Jacquard
DettagliAppunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione
Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione Marco Liverani (liverani@mat.uniroma3.it)
Dettagli7 Esercizi e complementi di Elettrotecnica per allievi non elettrici. Circuiti elementari
7 Esercizi e complementi di Elettrotecnica per allievi non elettrici Circuiti elementari Gli esercizi proposti in questa sezione hanno lo scopo di introdurre l allievo ad alcune tecniche, semplici e fondamentali,
DettagliElementi di Informatica e Programmazione
Elementi di Informatica e Programmazione Il concetto di Algoritmo e di Calcolatore Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Cos
DettagliIntroduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali
a Visual Basic Lezione 1 Concetti base e istruzioni condizionali Mario Alviano Introduzione all informatica Università della Calabria http://alviano.net/introinfo A.A. 2008/09 Introduzione Un esempio:
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo
Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo L. De Giovanni G. Zambelli 1 Problema del flusso a costo minimo Il problema del flusso a costo minimo é definito
DettagliLa macchina di Turing (Alan Turing, 1936)*
DNA-computing La macchina di Turing (Alan Turing, 1936)* Un meccanismo (finite control) si muove tra una coppia di nastri:. legge le istruzioni da un nastro (input tape). scrive il risultato sull altro
DettagliNote del corso di Calcolabilità e Linguaggi Formali - Lezione 6
Note del corso di Calcolabilità e Linguaggi Formali - Lezione 6 Alberto Carraro 30 novembre DAIS, Universitá Ca Foscari Venezia http://www.dsi.unive.it/~acarraro 1 Funzioni Turing-calcolabili Finora abbiamo
DettagliVBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
DettagliLa Macchina RAM Shepherdson e Sturgis (1963)
La Macchina RAM Shepherdson e Sturgis (963) Nastro di ingresso.......... PROGRAM COUNTER Nastro di uscita PROGRAMMA ACCUMULATORE UNITA' ARITMETICA............... 2 3 4 M E M O R I A Formato delle Istruzioni
DettagliSviluppo Applicazioni Mobile Lezione 7. Dr. Paolo Casoto, Ph.D - 2011
+ Sviluppo Applicazioni Mobile Lezione 7 Dr. Paolo Casoto, Ph.D - 2011 + Credits I lucidi di questa lezione sono stati preparati da: Professor Stefano Mizzaro Professor Paolo Coppola e sono stati modificati
DettagliVerifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio
Test (o analisi dinamica) Verifica parte IIA Rif. Ghezzi et al. 6.3-6.3.3 Consiste nell osservare il comportamento del sistema in un certo numero di condizioni significative Non può (in generale) essere
DettagliAlgoritmi e Complessità
Algoritmi e Complessità Università di Camerino Corso di Laurea in Informatica (tecnologie informatiche) III periodo didattico Docente: Emanuela Merelli Email:emanuela.merelli@unicam.it Lezione 2 Teoria
DettagliAlternanza, parallelismo e complessità
Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Triennale in Matematica Tesi di Laurea Triennale Alternanza, parallelismo e complessità Candidato Pietro Battiston Relatore Prof. Alessandro
DettagliTEORIA RELAZIONALE: INTRODUZIONE
TEORIA RELAZIONALE: INTRODUZIONE Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano
DettagliTesting: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice.
Convalida: attività volta ad assicurare che il SW sia conforme ai requisiti dell utente. Verifica: attività volta ad assicurare che il SW sia conforme alle specifiche dell analista. Goal: determinare malfunzionamenti/anomalie/errori
DettagliCos è un Calcolatore?
Cos è un Calcolatore? Definizione A computer is a machine that manipulates data according to a (well-ordered) collection of instructions. 24/105 Riassumendo... Un problema è una qualsiasi situazione per
DettagliEsempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione
Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione Fondamenti di Informatica Michele Ceccarelli Università del Sannio ceccarelli@unisannio.it Angelo Ciaramella DMI-Università degli
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso
Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)
DettagliCapitolo 7: Teoria generale della calcolabilitá
Capitolo 7: Teoria generale della calcolabilitá 1 Differenti nozioni di calcolabilitá (che seguono da differenti modelli di calcolo) portano a definire la stessa classe di funzioni. Le tecniche di simulazione
Dettagli23/02/2014. Dalla scorsa lezione. La Macchina di Von Neumann. Uomo come esecutore di algoritmi
Dalla scorsa lezione LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica LA MACCHINA DI VON NEUMANN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico
DettagliLinguaggi. Claudio Sacerdoti Coen 11/04/2011. 18: Semantica della logica del prim ordine. <sacerdot@cs.unibo.it> Universitá di Bologna
Linguaggi 18: Semantica della logica del prim ordine Universitá di Bologna 11/04/2011 Outline Semantica della logica del prim ordine 1 Semantica della logica del prim ordine Semantica
DettagliCorso di Laurea in Ingegneria Informatica Analisi Numerica
Corso di Laurea in Ingegneria Informatica Lucio Demeio Dipartimento di Scienze Matematiche 1 2 Analisi degli errori Informazioni generali Libro di testo: J. D. Faires, R. Burden, Numerical Analysis, Brooks/Cole,
DettagliMacchine di Turing, problemi ricorsivi e ricorsivamente enumerabili
Macchine di Turing, problemi ricorsivi e ricorsivamente enumerabili roblemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa quello che ci aspettiamo. E facile
DettagliCorso Programmazione 2011-2012
Corso Programmazione 2011-2012 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (docenti laboratorio) E. Caniato, A. Ceccato Dipartimento di Matematica Pura ed Applicata
DettagliCAPITOLO V. DATABASE: Il modello relazionale
CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono
DettagliBioinformatica: DNA e Algoritmi
Bioinformatica: DNA e Algoritmi Alberto Policriti Dpt. of Mathematics and Informatics, University of Udine. Applied Genomics Institute Di cosa parleremo In generale Deniamo i termini: DNA & Algoritmi Tecnologie
Dettagli- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN
ALGORITMI E MACCHINA DI VON NEUMANN 1 COMPUTER= ELABORATORE NON CERVELLO ELETTRONICO CERVELLO: Capacità decisionali ELABORATORE: Incapacità di effettuare scelte autonome di fronte a situazioni impreviste
DettagliASSE MATEMATICO. Competenze Abilità Conoscenze
Competenze di base a conclusione del I Biennio Confrontare ed analizzare figure geometriche del piano e dello spazio individuando invarianti e relazioni. Analizzare, correlare e rappresentare dati. Valutare
DettagliIndecidibilità, indefinibilità e incompletezza. 1
Indecidibilità, indefinibilità e incompletezza. 1 Possiamo ora trattare unitariamente alcuni dei principali risultati negativi della logica: il teorema di Church sull'indecidibilità della logica, il teorema
DettagliInterpolazione ed approssimazione di funzioni
Interpolazione ed approssimazione di funzioni Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 9 novembre 2007 Outline 1 Polinomi Valutazione di un polinomio Algoritmo di Horner
Dettaglip k q n k = p n (k) = n 12 = 1 = 12 1 12 11 10 9 1 0,1208. q = 1 2 e si ha: p 12 (8) = 12 8 4
CAPITOLO QUARTO DISTRIBUZIONE BINOMIALE (O DI BERNOULLI) Molti degli esempi che abbiamo presentato nei capitoli precedenti possono essere pensati come casi particolari di uno schema generale di prove ripetute,
DettagliINTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI
INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.
DettagliCorrettezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza
DettagliL interesse nella macchina di Turing
Aniello Murano Macchina di Turing universale e problema della fermata 6 Lezione n. Parole chiave: Universal Turing machine Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009
DettagliFondamenti dei linguaggi di programmazione
Fondamenti dei linguaggi di programmazione Aniello Murano Università degli Studi di Napoli Federico II 1 Riassunto delle lezioni precedenti Prima Lezione: Introduzione e motivazioni del corso; Sintassi
DettagliFondamenti di Internet e Reti 097246
sul livello di Rete Instradamento. o Si consideri la rete in figura.. Si rappresenti, mediante un grafo, la rete per il calcolo dei cammini minimi (solo i nodi e gli archi no reti). Si calcoli il cammino
DettagliALGORITMI e PROGRAMMI Programmazione: Lavoro che si fa per costruire sequenze di istruzioni (operazioni) adatte a svolgere un dato calcolo
ALGORITMI e PROGRAMMI Programmazione: Lavoro che si fa per costruire sequenze di istruzioni (operazioni) adatte a svolgere un dato calcolo INPUT: dati iniziali INPUT: x,y,z AZIONI esempio: Somma x ed y
DettagliI Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio
Il Concetto Intuitivo di Calcolatore Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini I Problemi e la loro Soluzione Problema: classe
Dettaglib) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie
TEORIA RELAZIONALE: INTRODUZIONE 1 Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano
DettagliAlgebra di Boole ed Elementi di Logica
Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni
Dettagli(ETC) MATRICOLE DISPARI
Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità
DettagliDocumentazione esterna al software matematico sviluppato con MatLab
Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include
Dettagli10 - Programmare con gli Array
10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it
DettagliRappresentazione della conoscenza. Lezione 11. Rappresentazione della Conoscenza Daniele Nardi, 2008Lezione 11 0
Rappresentazione della conoscenza Lezione 11 Rappresentazione della Conoscenza Daniele Nardi, 2008Lezione 11 0 Sommario Pianificazione Deduttiva nel calcolo delle situazioni (Reiter 3.3) Teoria del calcolo
DettagliAlgoritmi e basi del C
Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 9 Marzo 2016 Info logistiche Sito del corso Le lezioni sono TUTTE già online http://home.deib.polimi.it/santambr/dida/ieim/2016/docs.htm
DettagliPROGRAMMAZIONE di MATEMATICA CLASSE PRIMA
PROGRAMMAZIONE di MATEMATICA 1.NUMERI CLASSE PRIMA Comprende il significato Comprendere il significato Insiemi numerici NQZ Utilizzare le tecniche e le procedure del calcolo aritmetico e algebrico rappresentandole
DettagliIl programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria p. 1
Il programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria R. Vitolo Dipartimento di Matematica Università di Lecce SaLUG! - Salento Linux User Group Il programma OCTAVE per l
DettagliLaurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1
Corso di INFORMATICA Laurea triennale - Comunicazione&DAMS Dr. Marco Manna 1 1 Dipartimento di Matematica Università della Calabria Corso di laurea intercalsse in COMUNICAZIONE&DAMS http://elleboro.unical.it/drupalab/informatica2009/
DettagliLe macchine di Turing
Le macchine di Turing Alan Turing (1912-1954) 1954) Il problema della decisione i L Entscheidungsproblem [il problema della decisione] è risolto se si conosce una procedura che permette di decidere la
DettagliI componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica
I componenti di un Sistema di elaborazione. Memoria centrale Memorizza : istruzioni dati In forma BINARIA : 10001010101000110101... È costituita da una serie di CHIP disposti su una scheda elettronica
DettagliDispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci
Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello V. M. Abrusci 12 ottobre 2015 0.1 Problemi logici basilari sulle classi Le classi sono uno dei temi della logica. Esponiamo in questa
DettagliGli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori
Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine
Dettagli0.1 Esercizi calcolo combinatorio
0.1 Esercizi calcolo combinatorio Esercizio 1. Sia T l insieme dei primi 100 numeri naturali. Calcolare: 1. Il numero di sottoinsiemi A di T che contengono esattamente 8 pari.. Il numero di coppie (A,
DettagliCome si progetta un circuito Perché simulare un circuito Cosa vuol dire simulare un circuito Il Simulatore Pspice Pacchetti che contiene Pspice
1 Come si progetta un circuito Perché simulare un circuito Cosa vuol dire simulare un circuito Il Simulatore Pspice Pacchetti che contiene Pspice Principio di funzionamento Che cosa è una NetList Fasi
DettagliAlcuni Preliminari. Prodotto Cartesiano
Alcuni Preliminari Prodotto Cartesiano Dati due insiemi A e B, si definisce il loro prodotto cartesiano A x B come l insieme di tutte le coppie ordinate (a,b) con a! A e b! B. Es: dati A= {a,b,c} e B={,2,3}
DettagliAritmetica dei Calcolatori 2
Laboratorio di Architettura 13 aprile 2012 1 Operazioni bit a bit 2 Rappresentazione binaria con segno 3 Esercitazione Operazioni logiche bit a bit AND OR XOR NOT IN OUT A B A AND B 0 0 0 0 1 0 1 0 0 1
DettagliBarriere assorbenti nelle catene di Markov e una loro applicazione al web
Università degli studi di Roma Tre Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Matematica Sintesi relativa alla Tesi di Laurea in Matematica di Giulio Simeone Barriere assorbenti
DettagliSommario della lezione
Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/36 Sommario della lezione Ulteriori esempi di applicazione della Programmazione Dinamica Esempio di applicazione
DettagliAlgoritmi di Ricerca. Esempi di programmi Java
Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare
DettagliValutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput
Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare
DettagliLe aree dell informatica
Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliDall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere
DettagliPer formalizzare il concetto sono necessarie alcune nozioni relative ai poliedri e alla loro descrizione.
3.7.4 Disuguaglianze valide forti Cerchiamo disuguaglianze valide forti, ovvero disuguaglianze valide che forniscano migliori formulazioni (più stringenti). Per formalizzare il concetto sono necessarie
DettagliLa programmazione con vincoli in breve. La programmazione con vincoli in breve
Obbiettivi Introdurre la nozione di equivalenza di CSP. Dare una introduzione intuitiva dei metodi generali per la programmazione con vincoli. Introdurre il framework di base per la programmazione con
DettagliComplessità e Approssimazione
1 Complessità e Approssimazione Corso di Laurea in Scienze dell'informazione Corso di Laurea Specialistica in Matematica Docente: Mauro Leoncini 2 Aspetti organizzativi Sito web: http://algo.ing.unimo.it/people/mauro
DettagliVarianti Macchine di Turing
Varianti Macchine di Turing Esistono definizioni alternative di macchina di Turing. Chiamate Varianti. Tra queste vedremo: MdT a più nastri e MdT non deterministiche. Mostriamo: tutte le varianti ragionevoli
DettagliCorso di Calcolo Numerico
Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La
DettagliProblemi di Instradamento di Veicoli
Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Problemi di Instradamento di Veicoli Renato Bruni bruni@dis.uniroma1.it Il materiale presentato è derivato
DettagliCentro Professionale Commerciale di Bellinzona Programma d istituto. Obiettivi principali: Atteggiamenti (Saper essere)
Centro Professionale Commerciale di Bellinzona Programma d istituto Maturità Professionale Commerciale - MATERIA :MATEMATICA 1 anno maturità integrata Ore-lezione settimanali: 3 X 3 (Corso base) + 2,5
DettagliEsercizi per il corso di Algoritmi e Strutture Dati
1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi
DettagliDAL PROBLEMA AL PROGRAMMA
DAL PROBLEMA AL PROGRAMMA Scopo del modulo Conoscere alcuni concetti fondamentali dell informatica:algoritmo, l automa, linguaggio formale Essere in grado di cogliere l intreccio tra alcuni risultati della
DettagliProcesso di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico
Processo di risoluzione di un problema ingegneristico 1. Capire l essenza del problema. 2. Raccogliere le informazioni disponibili. Alcune potrebbero essere disponibili in un secondo momento. 3. Determinare
Dettagli