(ETC) MATRICOLE DISPARI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "(ETC) MATRICOLE DISPARI"

Transcript

1 Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI!

2 Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità 2. Complessità

3 Cosa è la Computazione? Treccani Computazione: Il computare e il modo con cui si computa; computo, calcolo. Computare Calcolare, fare il conto di qualche cosa: c. il tempo necessario; metodo di c. gli anni;

4 Carta e Penna Abaco. Mezzi di Computazione Calcolatori/programmi

5 Cosa è la Computazione? Possiamo definire la computazione senza far riferimento ad un calcolatore attuale?

6 Cosa è la Computazione? Possiamo definire la computazione senza far riferimento ad un calcolatore attuale? Possiamo definire la computazione indipendentemente dai limiti odierni della scienza (ingegneria, fisica, )?

7 Cosa è la Computazione? Possiamo definire la computazione senza far riferimento ad un calcolatore attuale? Possiamo definire la computazione indipendentemente dai limiti odierni della scienza (ingegneria, fisica, )? Possiamo definire formalmente (matematicamente) un calcolatore? Possiamo dimostrare teoremi circa ciò che può o non può essere computato?

8 Avendo a disposizione risorse (memoria, tempo, ) sufficienti

9 Avendo a disposizione risorse (memoria, tempo, ) sufficienti un calcolatore può risolvere qualsiasi problema? oppure esistono limiti fondamentali a ciò che si può computare?

10 Cosa è la Computazione? Treccani Computazione: Il computare e il modo con cui si computa; computo, calcolo. Computare Calcolare, fare il conto di qualche cosa: c. il tempo necessario; metodo di c. gli anni; Computabile : Che si può computare; di cui si può o si deve tener conto In logica matematica e in informatica teorica, detto di una funzione (per es., l insieme dei numeri naturali) che si può calcolare effettivamente, cioè per la quale esiste un procedimento che permette di determinarne i valori; con sign. più concreto si dicono computabili quelle funzioni che, in linea di principio, possono essere calcolate con un elaboratore adeguatamente programmato; la teoria della computabilità (o della ricorsività) studia i limiti teorici di tale possibilità.

11 Computabilità: Quali problemi possono essere computati? (con qualsiasi macchina, linguaggio, ) Esempi di problemi computazionali Problemi numerici Data una stringa binaria, il numero di 1 è maggiore del numero di 0? Dati due numeri x e y, calcola x+y Dato un intero, risulta x primo? Problemi riguardanti programmi (es. in C) Data una sequenza di caratteri ASCII, rispetta la sintassi del C? Dato un programma in C, esiste un input che lo manda in loop?

12 Computabilità: Quali problemi possono essere computati? (con qualsiasi macchina, linguaggio, ) Macchine a stati finiti/automi: Quali problemi possiamo risolvere con memoria costante?

13 Macchina a stati finiti

14 Distributore di bibite/snack a 50c Accetta monete da 10c e da 20c non da resto, rifiuta moneta troppo grande E (semplice) macchina a stati finiti che opera in accordo all input (monete)

15 Macchina a stati finiti o Automa finito Astrazione Più semplice modello di calcolo Chip Parte di molti apparecchi elettromeccanici Analizzatori lessicali e sintattici di compilatori,

16 Computabilità: Quali problemi possono essere computati? (con qualsiasi macchina, linguaggio, ) Macchine a stati finiti/automi: Quali problemi possiamo risolvere con memoria costante?

17 Computabilità: Quali problemi possono essere computati? Non tutti!!! Esempi di problemi computazionali Problemi numerici Data una stringa binaria, il numero di 1 è maggiore del numero di 0? Dati due numeri x e y, calcola x+y Dato un intero, risulta x primo? Problemi riguardanti programmi (es. in C) Data una sequenza di caratteri ASCII, rispetta la sintassi del C? Dato un programma in C, esiste un input che lo manda in loop?

18 Computabilità: Quali problemi possono essere computati? Non tutti!!! Es. Dato un qualsiasi programma in C, possiamo stabiliure se termina su ogni input? Risposta: NO input n; while (n!=1) { if (n is even) n := n/2; else n := 3*n+1; } Termina per ogni n>1? 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1.

19 Computabilità: Modello di computazione indipendente dalla tecnologia presente? Macchine di Turing Ideate da Alan Turing nel Modello di calcolatore più semplice: - macchina a stati finiti - Nastro (lettura e scrittura) memoria, processore

20 Macchine di Turing Ideate da Alan Turing nel Modello di calcolatore più semplice: - macchina a stati finiti - Nastro memoria, processore Scopo: formalizzare in maniera esatta (matematica) il concetto di computazione (indipendentemente dalla potenza di calcolo )

21 Tesi di Church-Turing: Equivalenza tra programmi e Macchine di Turing Macchine di Turing: Concetto di Computabilità indipendente dalla tecnologia

22 Tesi di Church-Turing: Equivalenza tra programmi e Macchine di Turing Limiti delle macchine di Turing (e della computazione): Problemi non computabili

23 Computabilità: Cosa può essere computato? Cosa non può esserlo? (con qualsiasi macchina, linguaggio, ) Dove si trova il confine? Calcolabilità: Quali sono le le risorse minime necessarie (es. tempo di calcolo e memoria) per la risoluzione di un problema?

24 Lista luoghi con associato il l interesse a visitare il luogo (voto da 0 a 100) Vogliamo ordinare i luoghi in ordine di interesse Facile!

25 Usando I collegamenti esistenti (metro, bus). Facile?

26 Prova tutti i siti vicini non ancora visitati

27

28

29 Algoritmi utili in pratica Algoritmi P efficienti: Utilizzano un tempo polinomiale su tutti gli input Algoritmi inefficienti: Utilizzano un tempo esponenziale su qualche input Nota. Definizione indipendente da sviluppo tecnologico Cosa rende un problema facile o meno?

30

31 Cosa rende un problema facile o meno?

32 Le classi P e NP Definizione (informale) della classe P: insieme di problemi risolubili in tempo polinomiale da una macchina di Turing deterministica Tesi Church-Turing insieme di problemi che ammettono un algoritmo efficiente

33 Le classi P e NP Definizione (informale) della classe NP: insieme di problemi che ammettono un algoritmo efficiente di verifica di una soluzione fornita

34 Problemi NP-completi Travelling Salesman Problem, 3-coloring di grafi, Scheduling Multiprocessore, Folding Proteine, Programmazione lineare intera: esiste soluzione intera per un sistema del tipo Tutti risolvibili efficientemente o nessuno!

35 Argomenti di massima: Macchine a stati finiti Macchine di Turing Le classi P e NP

36 Finalità Computabilità Comprendere la nozione di di computabilità Limiti intrinsechi della computabilità Modelli più semplici di computazione

37 Risultati attesi: Saprete che è impossibile dimostrare che un programma in C termina fornire una dimostrazione formale di ciò nessun calcolatore futuro può cambiare la situazione

38 Finalità Computabilità Comprendere la nozione di di computabilità Limiti intrinsechi della computabilità Modelli più semplici di computazione Complessità classificazione problemi solubili: difficoltà riconoscere problemi difficili

39 Risultati attesi: Saprete Come riconoscere un problema intrattabile se vi capita Es. PROTEIN FOLDING, NEURON TRAINING, AUCTION WINNER-DETERMINATION, MIN-ENERGY CONFIGURATION OF A GAS

40 Informazioni Pratiche ORARIO: Martedì: 11:00 13:00 Giovedì: 16:00 18:00 Venerdì: 14:00 16:00 N.B.: Tutte le lezioni sono ugualmente importanti!

41 Informazioni Pratiche SITO WEB: di riferimento per il materiale relativo al corso - copie delle slides, esercizi, - date delle prove, - comunicazioni varie, - etc.

42 Suggerimenti (per superare facilmente l esame) Seguire il corso È più difficile imparare da soli dal libro (ancora di più dalle slide!) Studiare lezione per lezione Gli argomenti diventano più complessi Studiare dal libro di testo Fare gli esercizi

43 Testo Michael Sipser, Introduction to the Theory of Computation, Course Technology.

44 Testo Jon Kleinberg, Eva Tardos, Algorithm Design, Pearson

45 Prove di Esame Prova scritta con esercizi e teoria (nessun materiale ammesso) Eventuale prova orale Requisito minimo: 50% del totale

46 Prove in Itinere Bonus Prossima lezione

47

48 Progamma sintetico Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP

49 Nozioni preliminari Conoscenza del significato dei termini: Definizione, Enunciato, Dimostrazione, Implicazione, Equivalenza,... Familiarità con i vari tipi di dimostrazioni: per contraddizione, prova per induzione, Definizioni delle operazioni logiche AND, OR, NOT. Alfabeti Stringhe Linguaggi

50 DIMOSTRAZIONE Metodo per stabilire una verità Differente in vari campi Legale: giuria prove processuali Scientifica: esperimenti ripetibili Filosofica: persuasione basata su argomenti plausibili Cartesio: Cogito ergo sum, Deriva esistenza dal fatto di pensare sull'esistenza

51 PROVA Matematica Una prova formale è una catena di deduzioni logiche che portano ad una affermazione partendo da un insieme di assunzioni

52 c=cent E=Euro Assunzione 1E=100c 1 c= 0,01 E=(0,1 E) 2 =(10c) 2 =100c=1E?

53 Dimostrazione c=cent E=Euro 1 c= 0,01 E=(0,1 E) 2 =(10c) 2 =100c=1E ERRATA!!

54 Affermazione Se a e b sono due numeri reali uguali allora a = 0. Dimostrazione Assunzione a=b

55 Affermazione errata: Se a e b sono due numeri reali uguali allora a = 0. Dimostrazione sbagliata:

56 Proposizione: affermazione che può essere vera o falsa Proposizioni matematiche devono riferirsi ad oggetti ben definiti matematicamente (numeri, insiemi, funzioni,...) Devono essere formulate in modo preciso Es = 5.

57 Proposizione: può essere vera o falsa Dimostrazione: Data una proposizione, vogliamo dimostrare che essa è vera.

58 Es. Proposizione p(n)=n 2 +n+41 è numero primo per ogni n > 1. Come facciamo?

59 Es. p(n)=n 2 +n+41 è primo per ogni n > 1. Proviamo per qualche valore p(1)=43 primo P(2)=47 primo P(3)=53 primo P(20)=461 primo P(39)=1601 primo VERA?

60 Es. p(n)=n 2 +n+41 è primo per ogni n > 1. Proviamo per qualche valore p(1)=43 primo P(2)=47 primo P(3)=53 primo P(20)=461 primo P(39)=1601 primo P(40)=40x =41x41 FALSO! Dimostrazione per esempi = Esempio di dimostrazione sbagliata

61 Es. Proposizione a 4 +b 4 +c 4 = d 4 non ha soluzione con a, b, c, d interi positivi Congettura di Eulero del Dimostrata FALSA 218 anni dopo da Noam Elkies: a = 95800; b = ; c = ; d =

62 Es. Proposizione 313(x 3 +y 3 ) = z 3 non ha soluzione con x,y,z interi positivi FALSA: controesempio più piccolo ha più di 1000 digit!

63 Es. Congettura di Goldbach (1742) Proposizione P(n): n si può scrivere come somma di due primi per ogni n>2?

64 Es. Congettura di Goldbach (1742) Proposizione P(n): n si può scrivere come somma di due primi per ogni n>2? Non possimo stabilire VERO provando per un numero finito di valori! Servono altri metodi!

65 Proposizione: affermazione che può essere può essere vera o falsa Dimostrazione: Data una proposizione, vogliamo dimostrare che essa è vera.

66 Proposizione P: vera (T) o falsa (F) Operazioni Logiche: NOT, OR, AND Tavole di verità:

67 Implicazioni: Deduzioni logiche per provare nuove proposizioni a partire da altre note (vere) P Q (P implica Q: se P è vera allora Q è vera ) Es. Se gli asini volano, allora voi capirete questa lezione. E un insulto? Nel linguaggio comune: Si Matematicamente è un affermazione vera! P Q è vera ogni volta che P è falsa o Q è vera

68 Deduzioni logiche: per provare nuove proposizioni a partire da altre note (vere) (P vera, P Q) ALLORA Q vera (P Q; Q falsa) ALLORA P Falsa

69 Deduzioni logiche NOT(Q) NOT(P) Equivalente a P Q NOTA NOT(P) NOT(Q) ALLORA P Q: ERRATA

70 Come dimostrare che P Q: 1. Assumiamo P. 2. mostriamo che Q segue Es. Se 0 < x < 2, allora -x 3 + 4x + 1 > 0. Dim. Assumiamo 0 < x < 2 Scriviamo -x 3 + 4x = x(2 - x)(2 + x) Sappiamo che x, 2 - x, e 2 + x nonnegativi ( >0 ). Allora il loro prodotto è nonnegativo (>0). Sommando 1 abbiamo numero positivo (>0): -x 3 + 4x+1= x(2 - x)(2 + x) + 1 > 0.

71 P IFF Q equivale a P Q AND Q P.

72 P IFF Q equivale a P Q AND Q P. Provare iff : 1. Proviamo che P implica Q e vice-versa. 2. Per prima cosa, mostriamo che P implica Q. (Come prima) 3. Secondo passo, mostriamo che Q implica P. (Come prima)

73 ES.

74 Schema: Dimostrazione per contraddizione per dimostrare P 1.Assumiamo che l ipotesi P è falsa 2.Dimostriamo che NOT(P) NOT(Q) per qualche Q che sappiamo essere vera 3.A questo punto abbiamo una contraddizione e possiamo concludere che P deve essere vera

75 Dim. Teorema. La radice quadrata di 2 è un numero irrazionale. Assumiamo che l ipotesi P è falsa, cioè sqrt(2)=m/n (m,n interi primi fra loro) Dimostriamo NOT(P) NOT(Q) [Q: m, n primi tra loro] m 2 =(n sqrt(2)) 2 =n 2 2 m 2 =2n 2 m 2 pari m pari, Poniamo m=2k Allora 2n 2 = m 2= 4k 2 n 2 =2k 2 n pari Abbiamo che n,m entrambi pari m,n hanno fattore comune 2 A questo punto abbiamo NOT(Q) possiamo dedurre che P è falsa (cioè sqrt(2) è irrazionale)

76 Teorema. La radice quadrata di 2 è un numero irrazionale. Dim. Assumiamo che l ipotesi è falsa, possiamo scrivere a) sqrt(2)=m/n b) con m,n interi primi fra loro Abbiamo m 2 =(n sqrt(2)) 2 =n 2 2 m 2 =2n 2 m 2 pari m pari, Ponendo m=2k si ha 2n 2 = m 2= 4k 2 n 2 =2k 2 n pari Quindi n,m entrambi pari m,n hanno fattore comune 2 che contraddice punto b) possiamo concludere che sqrt(2) è irrazionale.

77 Dimostrazioni Corrette in Pratica Definire il metodo che si vuole seguire es. Usiamo un distinzione di casi o Ragioniamo per assurdo. Una dimostrazione e` un saggio non un calcolo Approccio errato: sequenza di espressioni senza commenti Una dimostrazione comprensibile e` un saggio inframmezzato da calcoli

78 Buone dimostrazioni <=> Buoni programmi Stesso rigore necessario per scrivere programmi funzionanti Programma che ''sembra funzionare'' può causare molti problemi Es. Therac 25: macchina per radioterapia che ''ogni tanto'' ha ucciso i pazienti per eccesso di radiazioni (problema software) Es. (Agosto 2004) problema software usato da United e American Airlines ha messo a terra l'intera flotta delle due compagnie

79 INDUZIONE Data una affermazione, vogliamo dimostrare che essa vale per ogni intero n>a. Es. La somma dei primi n interi vale n(n+1)/2 per ogni n > 1.

80 INDUZIONE Vogliamo dimostrare che un certo predicato è vero. Formaliziamo con affermazione S(n) dimostriamo per induzione che S(n) vera (per ogni intero n>a). Una dimostrazione per induzione consiste di 2 fasi 1. BASE INDUTTIVA. Si dimostra che l affermazione è vera per il primo valore, cioè S(a) è vera. 1. PASSO INDUTTIVO. Assumiamo che S(n-1) è vera e dimostriamo che allora anche S(n) è vera.

81 INDUZIONE Es. La somma dei primi n interi vale n(n+1)/2 per ogni n > 1. Formalizzazione S(n): n n ( nn )1 i 1(2... n(n 1) n) i (1... n) i i 1 Si vuole dimostrare per induzione che S(n) vale per ogni n > 1.

82 INDUZIONE 1. BASE INDUTTIVA. S(a) è vera. 2. PASSO INDUTTIVO. S(n-1) implica S(n) vera. Es. S(n): Si vuole dimostrare che S(n) vale per ogni n > 1. Base. S(1) è vera perché Passo. Ipotesi induttiva S(n-1): Si ha n i (1... n) i 1 n i i 1 n 1 i 1 i n Quindi S(n) è vera. n(n 1) 2 (n 1)n 2 1 i 1 1(1 )1/2 i 1 n 1 i 1 n i ( n )1 n/2 (n 1)n 2n 2 n(n 1) 2

83 INDUZIONE Esercizio. Dimostrare per induzione che la seguente affermazione S(n) è vera per ogni intero n>0. S(n): n 2 i 2 n 1 1 i 0

84 INDUZIONE Es. Se x 4, allora 2 x x 2 Affermazione S(x): 2 x x 2 Mostriamo per induzione che S(x) vera per ogni x 4. Base: x = 4 2 x = 2 4 = 16 e x 2 = 4 2 = 16 Passo I.: Supponiamo che 2 x x 2 per x 4 Dobbiamo dimostrare che 2 x +1 (x + 1) 2 Abbiamo: 2 x +1 = 2 2 x 2 x 2 (dalla ipotesi induttiva) Dimostriamo adesso che 2x 2 (x + 1) 2 =x x Semplificando: x 2-2x 1 Se x 4, x(x-2) 8>1

85 VALIDITA delle dimostrazioni per INDUZIONE Dim. per induzione Base: S(a) vera Passo induttivo S(n) vera, ogni n>a Minimo controesempio. IPOTESI: S(n) falsa per qualche n. Sia b il più piccolo intero tale che S(b) falsa. DEDUCIAMO: Se b=a contraddiciamo la base. Quindi b>a. Essendo b = minimo intero per cui l affermazione è falsa, risulta S(b-1) vera (nota b-1 > a). Per il Passo Induttivo, S(b-1) S(b). Allora S(b) vera: contraddizione con assunzione che S(b) falsa. Quindi ipotesi è sbagliata, Cioè non esiste intero per cui l affermazione è falsa Cioè S(n) vera per ogni intero

86 Teorema. Tutti i cavalli hanno lo stesso colore Dim. Sia P(n): ''in ogni insieme di n cavalli, tutti i cavalli hanno lo stesso colore.'' Mostriamo per induzione che P(n) vera per ogni n 1. Base : P (1) vera. Passo. Assumiamo P (n) vera, n>1. Consideriamo insieme di n + 1 cavalli: h1, h2,..., hn, hn+1 Per I.I. I primi n cavalli h1, h2,..., hn hanno stesso colore, Per I.I. Gli ultimi n cavalli h2, h3,..., hn+1 hanno stesso colore, Quindi h1, h2,..., hn+1 hanno stesso colore, e P(n+1) vera Poiche` P (n) P (n + 1), allora P(n) vera per ogni n 1.

87 Teorema. Tutti i cavalli hanno lo stesso colore Dim. Per induzione su n. Sia P(n): ''in ogni insieme di n cavalli, tutti i cavalli hanno lo stesso colore.'' Conseguenza: se n=(numero cavalli nel mondo) allora tutti cavalli hanno lo stesso colore. Abbiamo provato una cosa FALSA! ERRORE? Abbiamo provato: P (1) P (2) P (3), P (3) P (4), etc. NON P (1) P (2)

88 INDUZIONE COMPLETA Vogliamo dimostrare che P(n) vale per ogni intero n>a. Dimostrazione per induzione completa: 1. BASE INDUTTIVA. Si dimostra che l affermazione è vera per il primo valore, cioè P(a) è vera. 2. PASSO INDUTTIVO. Assumiamo che P(a), P(a+1),, P(n-1) sono tutte vere e dimostriamo che anche P(n) è vera.

89 Definizioni Induttive ; Una definizione per induzione (o induttiva o ricorsiva) di un insieme di oggetti consiste di una base e di un passo induttivo. BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti

90 Definizioni Induttive ; BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti Es. Definizione induttiva di n! (prodotto primi n interi) BASE 1! P.I. n!=n (n-1)! Per ogni n>1

91 Definizioni Induttive ; BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti Es. Definizione dei numeri di fibonacci BASE f(0)=f(1)=1 P.I. f(n)=f(n-1)+f(n-2), per ogni n>1

92 Teorema. Ogni intero maggiore di 1 è un prodotto di primi Dim. Stabiliamo affermazione P(n): l intero n è un prodotto di primi Vogliamo dimostrare per induzione completa che p(n) vera per ogni n>1. Base. P(2) vera, poichè 2 è primo Passo. II: p(2),,p(n-1) vere Proviamo che P(n) è vera. Se n è primo, ok Se n non è primo allora n=km per qualche k e m II ci dice che P(k), p(m) vere, Cioè k ed m sono prodotti di primi Quindi anche il loro prodotto n=km è un prodotto di primi.

93 Definizioni Induttive ; Una definizione per induzione (o induttiva o ricorsiva) di un insieme di oggetti consiste di una base e di un passo induttivo. BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti

94 Definizioni Induttive ; BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti Es. Definizione induttiva di n! (prodotto primi n interi) BASE 1! P.I. n!=n (n-1)! Per ogni n>1

95 Definizioni Induttive ; BASE definisce uno o più oggetti elementari. Passo Induttivo definisce la regola che permette di costruire oggetti più complessi in termini di quelli già definiti Es. Definizione dei numeri di fibonacci BASE f(0)=f(1)=1 P.I. f(n)=f(n-1)+f(n-2), per ogni n>1

96 Definizioni Induttive e Dimostrazioni Induttive ; Es. Mostrare che il numero di fibonacci f(n) soddisfa f(n)<2 n, per ogni n>0

(ETC) MATRICOLE DISPARI

(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à

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

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

Elementi di Informatica e Programmazione

Elementi 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

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

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

Complessità computazionale degli algoritmi

Complessità 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

Dettagli

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007

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

Dettagli

Risoluzione. Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005

Risoluzione. Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005 Risoluzione Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005 1 Risoluzione Introdurremo ora un metodo per capire se un insieme di formule è soddisfacibile o meno. Lo vedremo prima per insiemi

Dettagli

Sui concetti di definizione, teorema e dimostrazione in didattica della matematica

Sui concetti di definizione, teorema e dimostrazione in didattica della matematica Liceo Scientifico Statale P. Paleocapa, Rovigo XX Settimana della Cultura Scientifica e Tecnologica 19 marzo 2010 Sui concetti di definizione, teorema e dimostrazione in didattica della matematica Prof.

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

un nastro di carta prolungabile a piacere e suddiviso in celle vuote o contenenti al più un unico carattere;

un nastro di carta prolungabile a piacere e suddiviso in celle vuote o contenenti al più un unico carattere; Algoritmi 3 3.5 Capacità di calcolo Il matematico inglese Alan Turing (1912-1954) descrisse nel 1936 un tipo di automi, oggi detti macchine di Turing, e fornì una della prime definizioni rigorose di esecuzione

Dettagli

G. Pareschi GENERALITÀ SULLE FUNZIONI. CARDINALITÀ

G. Pareschi GENERALITÀ SULLE FUNZIONI. CARDINALITÀ G. Pareschi GENERALITÀ SULLE FUNZIONI. CARDINALITÀ 1. Definizione di funzione Definizione 1.1. Siano X e Y due insiemi. Una funzione f da X a Y è un sottoinsieme del prodotto cartesiano: f X Y, tale che

Dettagli

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Dettagli

Introduzione al Corso di Algoritmi

Introduzione al Corso di Algoritmi Università di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Accademico 2014/15 p. 1/36 Introduzione al Corso di Algoritmi Di cosa parliamo oggi: Una discussione generale su cosa studieremo, perchè

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

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

Dettagli

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

Dettagli

Algoritmi e Complessità

Algoritmi 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

Dettagli

Varianti Macchine di Turing

Varianti 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

Dettagli

4.1 Modelli di calcolo analisi asintotica e ricorrenze

4.1 Modelli di calcolo analisi asintotica e ricorrenze 4 Esercizi Prima Parte 4.1 Modelli di calcolo analisi asintotica e ricorrenze Esercizio 4 1 Rispondere alle seguenti domande: 1. Come misuriamo l efficienza di un algoritmo?. Quali sono gli algoritmi più

Dettagli

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 6

Note 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

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

Automi. Sono così esempi di automi una lavatrice, un distributore automatico di bibite, un interruttore, una calcolatrice tascabile,...

Automi. Sono così esempi di automi una lavatrice, un distributore automatico di bibite, un interruttore, una calcolatrice tascabile,... Automi Con il termine automa 1 s intende un qualunque dispositivo o un suo modello, un qualunque oggetto, che esegue da se stesso un particolare compito, sulla base degli stimoli od ordini ricevuti detti

Dettagli

Fondamenti di Informatica. Computabilità e Macchine di Turing. Prof. Franco Zambonelli Gennaio 2011

Fondamenti di Informatica. Computabilità e Macchine di Turing. Prof. Franco Zambonelli Gennaio 2011 Fondamenti di Informatica Computabilità e Macchine di Turing Prof. Franco Zambonelli Gennaio 2011 Letture Consigliate: Roger Penrose, La Mente Nuova dell Imperatore, Sansoni Editrice. Martin Davis, Il

Dettagli

SOMMARIO. 13.1 I radicali pag. 3. 13.2 I radicali aritmetici pag. 5. 13.3 Moltiplicazione e divisione fra radicali aritmetici pag.

SOMMARIO. 13.1 I radicali pag. 3. 13.2 I radicali aritmetici pag. 5. 13.3 Moltiplicazione e divisione fra radicali aritmetici pag. SOMMARIO CAPITOLO : I RADICALI. I radicali pag.. I radicali aritmetici pag.. Moltiplicazione e divisione fra radicali aritmetici pag.. Potenza di un radicale aritmetico pag.. Trasporto di un fattore esterno

Dettagli

PRIMAVERA IN BICOCCA

PRIMAVERA IN BICOCCA PRIMAVERA IN BICOCCA 1. Numeri primi e fattorizzazione Una delle applicazioni più rilevanti della Teoria dei Numeri si ha nel campo della crittografia. In queste note vogliamo delineare, in particolare,

Dettagli

Algoritmi. a.a. 2013/14 Classe 2: matricole dispari

Algoritmi. a.a. 2013/14 Classe 2: matricole dispari Algoritmi a.a. 2013/14 Classe 2: matricole dispari Marcella Anselmo Presentazioni Info: http://www.di.unisa.it/professori/anselmo/ Orario ricevimento: Lunedì 15-17 Giovedì 12-13 Il mio studio è il n 57

Dettagli

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15 Nozioni di Base

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15 Nozioni di Base Fondamenti di Informatica Allievi Automatici A.A. 2014-15 Nozioni di Base Perché studiare informatica? Perché l informatica è uno dei maggiori settori industriali, e ha importanza strategica Perché, oltre

Dettagli

Alcune nozioni di base di Logica Matematica

Alcune nozioni di base di Logica Matematica Alcune nozioni di base di Logica Matematica Ad uso del corsi di Programmazione I e II Nicola Galesi Dipartimento di Informatica Sapienza Universitá Roma November 1, 2007 Questa é una breve raccolta di

Dettagli

2 Progetto e realizzazione di funzioni ricorsive

2 Progetto e realizzazione di funzioni ricorsive 2 Progetto e realizzazione di funzioni ricorsive Il procedimento costruttivo dato dal teorema di ricorsione suggerisce due fatti importanti. Una buona definizione ricorsiva deve essere tale da garantire

Dettagli

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Processo 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

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento:

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento: Capitolo 3 Serie 3. Definizione Sia { } una successione di numeri reali. Ci proponiamo di dare significato, quando possibile, alla somma a + a 2 +... + +... di tutti i termini della successione. Questa

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

MATEMATICA. { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un numero x ed un numero y che risolvano entrambe le equazioni.

MATEMATICA. { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un numero x ed un numero y che risolvano entrambe le equazioni. MATEMATICA. Sistemi lineari in due equazioni due incognite. Date due equazioni lineari nelle due incognite x, y come ad esempio { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un

Dettagli

Università degli Studi di Napoli Federico II. Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica

Università degli Studi di Napoli Federico II. Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica Università degli Studi di Napoli Federico II Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica Anno Accademico 2009/2010 Appunti di Calcolabilità e Complessità Lezione 9: Introduzione alle logiche

Dettagli

Introduzione ai problemi NP-completi

Introduzione 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

Dettagli

Capitolo 7: Teoria generale della calcolabilitá

Capitolo 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

Dettagli

Management Sanitario. Modulo di Ricerca Operativa

Management Sanitario. Modulo di Ricerca Operativa Management Sanitario per il corso di Laurea Magistrale SCIENZE RIABILITATIVE DELLE PROFESSIONI SANITARIE Modulo di Ricerca Operativa Prof. Laura Palagi http://www.dis.uniroma1.it/ palagi Dipartimento di

Dettagli

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie

b) 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

Dettagli

ci sono più problemi che programmi esiste un problema che non si può risolvere con un programma

ci sono più problemi che programmi esiste un problema che non si può risolvere con un programma Calcolabilità problemi facili trovare la media di due numeri stampare le linee di un file che contengono una parola problemi difficili trovare il circuito minimo data una tabella determinare la migliore

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

FACOLTÀ DI INGEGNERIA ESAME DI ANALISI MATEMATICA A A.A. 2008/2009 - Ing. Biomedica, Elettrica, Elettronica, Informatica - L Z

FACOLTÀ DI INGEGNERIA ESAME DI ANALISI MATEMATICA A A.A. 2008/2009 - Ing. Biomedica, Elettrica, Elettronica, Informatica - L Z FACOLTÀ DI INGEGNERIA ESAME DI ANALISI MATEMATICA A A.A. 2008/2009 - Ing. Biomedica, Elettrica, Elettronica, Informatica - L Z L esame è costituito da una prova scritta (o, in alternativa, da due prove

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Problema Strategia

Dettagli

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto

Dettagli

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio

I 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

Dettagli

Successioni ricorsive

Successioni ricorsive Capitolo 1 Successioni ricorsive Un modo spesso usato per assegnare una successione è quello ricorsivo che consiste nell assegnare alcuni termini iniziali (il primo, oppure i primi due, oppure i primi...

Dettagli

Algebra di Boole ed Elementi di Logica

Algebra 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

Equazioni alle differenze finite (cenni).

Equazioni alle differenze finite (cenni). AL 011. Equazioni alle differenze finite (cenni). Sia a n } n IN una successione di numeri reali. (Qui usiamo la convenzione IN = 0, 1,,...}). Diremo che è una successione ricorsiva o definita per ricorrenza

Dettagli

L interesse nella macchina di Turing

L 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

Dettagli

Matematica generale CTF

Matematica generale CTF Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione

Dettagli

PROVA INTRACORSO TRACCIA A Pagina 1 di 6

PROVA 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

Dettagli

Algoritmi, dati e programmi

Algoritmi, dati e programmi 1 Algoritmi, dati e programmi 2 Informatica Informatica: Scienza che studia l informazione e la sua elaborazione. informazione rappresentazione dell informazione (dati) dati elaborazione dei dati tramite

Dettagli

Gli algoritmi: definizioni e proprietà

Gli algoritmi: definizioni e proprietà Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da

Dettagli

la "macchina" universale di Turing

la macchina universale di Turing la "macchina" universale di Turing Nel 1854, il matematico britannico George Boole (1815-1864), elaborò una matematica algebrica che da lui prese il nome. Nell'algebra booleana le procedure di calcolo

Dettagli

Prolog: aritmetica e ricorsione

Prolog: aritmetica e ricorsione Capitolo 13 Prolog: aritmetica e ricorsione Slide: Aritmetica e ricorsione 13.1 Operatori aritmetici In logica non vi è alcun meccanismo per la valutazione di funzioni, che è fondamentale in un linguaggio

Dettagli

Fondamenti dei linguaggi di programmazione

Fondamenti 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

Dettagli

estratto da Competenze assi culturali Raccolta delle rubriche di competenza formulate secondo i livelli EFQ a cura USP Treviso Asse matematico

estratto da Competenze assi culturali Raccolta delle rubriche di competenza formulate secondo i livelli EFQ a cura USP Treviso Asse matematico Competenza matematica n. BIENNIO, BIENNIO Utilizzare le tecniche e le procedure del calcolo aritmetico ed algebrico, rappresentandole anche sotto forma grafica BIENNIO BIENNIO Operare sui dati comprendendone

Dettagli

Algebra e Logica Matematica. Calcolo delle proposizioni Logica del primo ordine

Algebra e Logica Matematica. Calcolo delle proposizioni Logica del primo ordine Università di Bergamo Anno accademico 2006 2007 Ingegneria Informatica Foglio Algebra e Logica Matematica Calcolo delle proposizioni Logica del primo ordine Esercizio.. Costruire le tavole di verità per

Dettagli

Applicazioni lineari

Applicazioni lineari Applicazioni lineari Esempi di applicazioni lineari Definizione. Se V e W sono spazi vettoriali, una applicazione lineare è una funzione f: V W tale che, per ogni v, w V e per ogni a, b R si abbia f(av

Dettagli

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Dettagli

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana Schemi delle Lezioni di Matematica Generale Pierpaolo Montana Al-giabr wa al-mukabalah di Al Khuwarizmi scritto approssimativamente nel 820 D.C. Manuale arabo da cui deriviamo due nomi: Algebra Algoritmo

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

Capitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali

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

Dettagli

Obiettivi Cognitivi OBIETTIVI MINIMI

Obiettivi Cognitivi OBIETTIVI MINIMI Docente Materia Classe Mugno Eugenio Matematica 1F Programmazione Preventiva Anno Scolastico 2012/2013 Data 25/11/2012 Obiettivi Cognitivi OBIETTIVI MINIMI conoscere il concetto di numero intero; conoscere

Dettagli

Algoritmo. Funzioni calcolabili. Unità 28

Algoritmo. Funzioni calcolabili. Unità 28 Prerequisiti: - Conoscenza dei numeri naturali e interi e delle loro proprietà. - Acquisizione del concetto di funzione. Questa unità è riservata al primo biennio dei Licei, eccezion fatta per il Liceo

Dettagli

Corso di Esercitazioni di Programmazione

Corso di Esercitazioni di Programmazione Corso di Esercitazioni di Programmazione Introduzione Dott.ssa Sabina Rossi Informazioni Pagina web del corso: News Orari Mailing list Lezioni Esercitazioni Date esami Risultati esami.. http://www.dsi.unive.it/~prog1

Dettagli

LICEO CLASSICO C. CAVOUR DISCIPLINA : MATEMATICA PROGRAMMAZIONE DIDATTICA ED EDUCATIVA

LICEO CLASSICO C. CAVOUR DISCIPLINA : MATEMATICA PROGRAMMAZIONE DIDATTICA ED EDUCATIVA PROGRAMMAZIONE DIDATTICA ED EDUCATIVA 1. OBIETTIVI SPECIFICI DELLA DISCIPLINA PROGRAMMAZIONE PER COMPETENZE Le prime due/tre settimane sono state dedicate allo sviluppo di un modulo di allineamento per

Dettagli

Interpretazione astratta

Interpretazione astratta Interpretazione astratta By Giulia Costantini (819048) e Giuseppe Maggiore (819050) Contents Interpretazione astratta... 2 Idea generale... 2 Esempio di semantica... 2 Semantica concreta... 2 Semantica

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

Corso di Calcolo Numerico

Corso 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

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

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

3.1 Successioni. R Definizione (Successione numerica) E Esempio 3.1 CAPITOLO 3

3.1 Successioni. R Definizione (Successione numerica) E Esempio 3.1 CAPITOLO 3 CAPITOLO 3 Successioni e serie 3. Successioni Un caso particolare di applicazione da un insieme numerico ad un altro insieme numerico è quello delle successioni, che risultano essere definite nell insieme

Dettagli

Insiemi con un operazione

Insiemi con un operazione Capitolo 3 Insiemi con un operazione 3.1 Gruppoidi, semigruppi, monoidi Definizione 309 Un operazione binaria su un insieme G è una funzione: f : G G G Quindi, un operazione binaria f su un insieme G è

Dettagli

Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10. Lecture 22: 1 Giugno 2010. Meccanismi Randomizzati

Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10. Lecture 22: 1 Giugno 2010. Meccanismi Randomizzati Strumenti della Teoria dei Giochi per l Informatica AA 2009/10 Lecture 22: 1 Giugno 2010 Meccanismi Randomizzati Docente Vincenzo Auletta Note redatte da: Davide Armidoro Abstract In questa lezione descriveremo

Dettagli

Algebra e Geometria. Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2)

Algebra e Geometria. Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2) Algebra e Geometria Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2) Traccia delle lezioni che saranno svolte nell anno accademico 2012/13 I seguenti appunti

Dettagli

Cos è un Calcolatore?

Cos è 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

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori Informazione e computer Si può rappresentare l informazione attraverso varie forme: Numeri Testi Suoni Immagini 0001010010100101010 Computer Cerchiamo di capire come tutte queste informazioni possano essere

Dettagli

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Aprile 20 Indice Serie numeriche. Serie convergenti, divergenti, indeterminate.....................

Dettagli

Introduzione ai tipi di dato astratti: applicazione alle liste

Introduzione ai tipi di dato astratti: applicazione alle liste Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione

Dettagli

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15. Informazioni Generali

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15. Informazioni Generali Fondamenti di Informatica Allievi Automatici A.A. 2014-15 Informazioni Generali Informazioni generali Docente: Daniele M. BRAGA e-mail: daniele.braga@polimi.it Dip. di Elettronica e Informazione (DEI)

Dettagli

Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione

Appunti 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)

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Perchè studiare l informatica? Perchè ha a che fare con quasi tutto quello con cui abbiamo a che fare ogni giorno Perché è uno strumento fondamentale per progettare l innovazione

Dettagli

Cosa dobbiamo già conoscere?

Cosa dobbiamo già conoscere? Cosa dobbiamo già conoscere? Insiemistica (operazioni, diagrammi...). Insiemi finiti/numerabili/non numerabili. Perché la probabilità? In molti esperimenti l esito non è noto a priori tuttavia si sa dire

Dettagli

Sommario della lezione

Sommario 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

Dettagli

APPENDICE NOZIONI BASE E VARIE

APPENDICE NOZIONI BASE E VARIE pag. 131 Appendice: Nozioni base e varie G. Gerla APPENDICE NOZIONI BASE E VARIE 1. Funzioni e relazioni di equivalenza Questi appunti sono rivolti a persone che abbiano già una conoscenza elementare della

Dettagli

La Logica Proposizionale. (Algebra di Boole)

La Logica Proposizionale. (Algebra di Boole) 1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY La Logica Proposizionale (Algebra di Boole) Prof. G. Ciaschetti 1. Cenni storici Sin dagli antichi greci, la logica è intesa come lo studio del logos, che in greco

Dettagli

Corso Programmazione 2011-2012

Corso 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

Dettagli

USO DI CONCETTI PROBABILISTICI NEL PROGETTO E NELL ANALISI DI ALGORITMI

USO DI CONCETTI PROBABILISTICI NEL PROGETTO E NELL ANALISI DI ALGORITMI USO DI CONCETTI PROBABILISTICI NEL PROGETTO E NELL ANALISI DI ALGORITMI - Analisi probabilistica di algoritmi deterministici: si assume una distribuzione di probabilità delle istanze e si calcola il tempo

Dettagli

Anno 1. Definizione di Logica e operazioni logiche

Anno 1. Definizione di Logica e operazioni logiche Anno 1 Definizione di Logica e operazioni logiche 1 Introduzione In questa lezione ci occuperemo di descrivere la definizione di logica matematica e di operazioni logiche. Che cos è la logica matematica?

Dettagli

PROGRAMMAZIONE INDIVIDUALE DOCENTE ANNO SCOLASTICO 2013-14 PROF. ROBERTA BIAGI. MATERIA: Matematica CLASSE I E

PROGRAMMAZIONE INDIVIDUALE DOCENTE ANNO SCOLASTICO 2013-14 PROF. ROBERTA BIAGI. MATERIA: Matematica CLASSE I E PROGRAMMAZIONE INDIVIDUALE DOCENTE ANNO SCOLASTICO 2013-14 PROF. ROBERTA BIAGI MATERIA: Matematica CLASSE I E DATA DI PRESENTAZIONE: 28 novembre 2013 Finalità della disciplina La finalità della disciplina

Dettagli

Capitolo I STRUTTURE ALGEBRICHE ELEMENTARI

Capitolo I STRUTTURE ALGEBRICHE ELEMENTARI Capitolo I STRUTTURE ALGEBRICHE ELEMENTARI In matematica, per semplificare la stesura di un testo, si fa ricorso ad un linguaggio specifico. In questo capitolo vengono fornite in maniera sintetica le nozioni

Dettagli

Serie numeriche. 1 Definizioni e proprietà elementari

Serie numeriche. 1 Definizioni e proprietà elementari Serie numeriche Definizioni e proprietà elementari Sia { } una successione, definita per ogni numero naturale n n. Per ogni n n, consideriamo la somma s n degli elementi della successione di posto d s

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

LA RAPPRESENTAZIONE DELLE INFORMAZIONI

LA RAPPRESENTAZIONE DELLE INFORMAZIONI ISTITUTO TECNICO E LICEO SCIENTIFICO TECNOLOGICO ANGIOY LA RAPPRESENTAZIONE DELLE INFORMAZIONI Prof. G. Ciaschetti DATI E INFORMAZIONI Sappiamo che il computer è una macchina stupida, capace di eseguire

Dettagli

Laurea Specialistica in Informatica - Università di Ferrara 2008-2009 [1]

Laurea Specialistica in Informatica - Università di Ferrara 2008-2009 [1] Laurea Specialistica in Informatica - Università di Ferrara 2008-2009 [1] Macchine di Turing modello di calcolo introdotto dall ingegner Alan Turing nel 1936, per simulare il processo di calcolo umano

Dettagli