Le logiche temporali e di strategia nell ambito della verifica formale

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Le logiche temporali e di strategia nell ambito della verifica formale"

Transcript

1 Le logiche temporali e di strategia nell ambito della verifica formale, Napoli, Italy Seminario di Logica Permanente Napoli, 5 Aprile 2013 Le logiche temporali e di strategia nell ambito della verifica formale 1 / 24

2 Il tacchino induttivista Una storiella Fin dal primo giorno di permanenza nel suo nuovo allevamento, il tacchino aveva osservato che alle nove del mattino gli veniva portato il cibo. Da buon induttivista egli non trasse precipitose conclusioni dalle prime osservazioni e ne eseguì altre in una vasta gamma di circostanze: di mercoledì e di giovedì, nei giorni caldi e in quelli freddi, sia che piovesse sia che splendesse il sole. Finalmente la sua coscienza induttivista fu soddisfatta e il tacchino elaborò allora un induzione che dalle asserzioni particolari relative alle sue vicende alimentari lo fece passare a un asserzione generale, una legge, che suonava così: Tutti i giorni, alle ore nove, mi danno il cibo. Le logiche temporali e di strategia nell ambito della verifica formale 2 / 24

3 Il tacchino induttivista Una storiella Fin dal primo giorno di permanenza nel suo nuovo allevamento, il tacchino aveva osservato che alle nove del mattino gli veniva portato il cibo. Da buon induttivista egli non trasse precipitose conclusioni dalle prime osservazioni e ne eseguì altre in una vasta gamma di circostanze: di mercoledì e di giovedì, nei giorni caldi e in quelli freddi, sia che piovesse sia che splendesse il sole. Finalmente la sua coscienza induttivista fu soddisfatta e il tacchino elaborò allora un induzione che dalle asserzioni particolari relative alle sue vicende alimentari lo fece passare a un asserzione generale, una legge, che suonava così: Tutti i giorni, alle ore nove, mi danno il cibo. Purtroppo per il tacchino, questa concezione si rivelò incontestabilmente falsa alla vigilia di Natale... Le logiche temporali e di strategia nell ambito della verifica formale 2 / 24

4 Il tacchino induttivista Una storiella Fin dal primo giorno di permanenza nel suo nuovo allevamento, il tacchino aveva osservato che alle nove del mattino gli veniva portato il cibo. Da buon induttivista egli non trasse precipitose conclusioni dalle prime osservazioni e ne eseguì altre in una vasta gamma di circostanze: di mercoledì e di giovedì, nei giorni caldi e in quelli freddi, sia che piovesse sia che splendesse il sole. Finalmente la sua coscienza induttivista fu soddisfatta e il tacchino elaborò allora un induzione che dalle asserzioni particolari relative alle sue vicende alimentari lo fece passare a un asserzione generale, una legge, che suonava così: Tutti i giorni, alle ore nove, mi danno il cibo. Purtroppo per il tacchino, questa concezione si rivelò incontestabilmente falsa alla vigilia di Natale... Bertrand Russell, Le logiche temporali e di strategia nell ambito della verifica formale 2 / 24

5 Il problema della verifica di un sistema Problema Dato un sistema informatico (hardware, software, etc.), individuarne le possibili carenze di correttezza, completezza e affidabilità. Esempi Il sistema operativo non raggiunge mai la Blue screen of death (o simili); L algoritmo calcola esattamente cosa mi ero prefisso di fare. Le logiche temporali e di strategia nell ambito della verifica formale 3 / 24

6 Il problema della verifica di un sistema Soluzione 1: Test Eseguire il sistema su un insieme di input per valutare se il comportamento ne soddisfi i requisiti. Le logiche temporali e di strategia nell ambito della verifica formale 4 / 24

7 Il problema della verifica di un sistema Soluzione 1: Test Eseguire il sistema su un insieme di input per valutare se il comportamento ne soddisfi i requisiti. Il metodo non è esaustivo Scopro un errore = il sistema non è corretto Le logiche temporali e di strategia nell ambito della verifica formale 4 / 24

8 Il problema della verifica di un sistema Soluzione 1: Test Eseguire il sistema su un insieme di input per valutare se il comportamento ne soddisfi i requisiti. Il metodo non è esaustivo Scopro un errore = il sistema non è corretto Non scopro un errore =?? Le logiche temporali e di strategia nell ambito della verifica formale 4 / 24

9 Il problema della verifica di un sistema Soluzione 2: Metodo formale Rappresentare il sistema con una opportuna astrazione matematica S e la specifica di correttezza con una formula ϕ di una opportuna logica e chiedersi se S = ϕ. Le logiche temporali e di strategia nell ambito della verifica formale 5 / 24

10 Il problema della verifica di un sistema Soluzione 2: Metodo formale Rappresentare il sistema con una opportuna astrazione matematica S e la specifica di correttezza con una formula ϕ di una opportuna logica e chiedersi se S = ϕ. Il metodo è esaustivo S = ϕ = il sistema non è corretto Le logiche temporali e di strategia nell ambito della verifica formale 5 / 24

11 Il problema della verifica di un sistema Soluzione 2: Metodo formale Rappresentare il sistema con una opportuna astrazione matematica S e la specifica di correttezza con una formula ϕ di una opportuna logica e chiedersi se S = ϕ. Il metodo è esaustivo S = ϕ = il sistema non è corretto S = ϕ = il sistema è corretto Le logiche temporali e di strategia nell ambito della verifica formale 5 / 24

12 Le logiche temporali e di strategia nell ambito della verifica formale 6 / 24

13 Le logiche temporali e di strategia nell ambito della verifica formale 6 / 24

14 Alcuni problemi decisionali relativi alla verifica formale. Model Checking Dati un sistema S e una formula ϕ, verificare algoritmicamente se S = ϕ. Satisfiability Data una formula ϕ, verificare algoritmicamente se esista un sistema S tale che S = ϕ. Synthesis Data una formula ϕ, verificare algoritmicamente se esista un sistema S tale che S = ϕ e inoltre costruirlo attraverso una procedura automatica. Le logiche temporali e di strategia nell ambito della verifica formale 7 / 24

15 Esempi di sistemi da modellare Le logiche temporali e di strategia nell ambito della verifica formale 8 / 24

16 Esempi di sistemi da modellare Le logiche temporali e di strategia nell ambito della verifica formale 8 / 24

17 Esempi di sistemi da modellare [0, 366] Waiting for Submission [0, 366] New Idea [7, 45] Draft Written Submission Revise draft Acts [25, 50] [25, 50] [0, 10] Accept. notif. Reject notif. Publication [50, 110] [0, 7] Final version Le logiche temporali e di strategia nell ambito della verifica formale 9 / 24

18 Kripke structure w0 /0 w1 {p} w2 {p,q} Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

19 Kripke structure w0 /0 AP = {p,q}; w1 {p} w2 {p,q} Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

20 Kripke structure w0 /0 AP = {p,q}; W = {w 0,w 1,w 2 }; w1 {p} w2 {p,q} Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

21 Kripke structure w1 {p} w0 /0 w2 {p,q} AP = {p,q}; W = {w 0,w 1,w 2 }; R W W; Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

22 Kripke structure w1 {p} w0 /0 w2 {p,q} AP = {p,q}; W = {w 0,w 1,w 2 }; R W W; L : W 2 AP. Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

23 Kripke structure w1 {p} w0 /0 w2 {p,q} AP = {p,q}; W = {w 0,w 1,w 2 }; R W W; L : W 2 AP. Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

24 Kripke structure w1 {p} w0 /0 w2 {p,q} AP = {p,q}; W = {w 0,w 1,w 2 }; R W W; L : W 2 AP. Una Kripke structure è una tupla K = AP,W,R,L,w 0. Le logiche temporali e di strategia nell ambito della verifica formale 10 / 24

25 Percorsi, computazioni e soddisfacimento Percorso: w 0,w 1,... w 0 è lo stato iniziale; (w i,w i+1 ) R, per ogni numero naturale i. Computazione: L(w 0 ),L(w 1 ),... L insieme delle computazioni viene indicato con L(K ). Soddisfacimento: La Kripke structure soddisfa una specifica ϕ se tutte le computazioni in L(K ) soddisfano ϕ Le logiche temporali e di strategia nell ambito della verifica formale 11 / 24

26 Le specifiche Le specifiche sono proprietà delle computazioni. Esempi: Due processi non possono occupare criticamente lo stesso settore del sistema: (Safety); Tutte le richieste di un processo sono prima o poi garantite: (Liveness); Tutte le richieste di un processo fatte in maniera continua sono prima o poi garantite: (Liveness); Ogni richiesta ripetuta di un processo viene prima o poi garantita: (Liveness). Le logiche temporali e di strategia nell ambito della verifica formale 12 / 24

27 Le specifiche Le specifiche sono proprietà delle computazioni. Esempi: Due processi non possono occupare criticamente lo stesso settore del sistema: (Safety); Tutte le richieste di un processo sono prima o poi garantite: (Liveness); Tutte le richieste di un processo fatte in maniera continua sono prima o poi garantite: (Liveness); Ogni richiesta ripetuta di un processo viene prima o poi garantita: Domanda (Liveness). Come rappresentare in maniera formale le specifiche? Le logiche temporali e di strategia nell ambito della verifica formale 12 / 24

28 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

29 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ F ϕ G ϕ ϕu ϕ Semantica Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

30 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ F ϕ G ϕ ϕu ϕ Semantica X ϕ w 0 ϕ w 1 w 2 w i w k Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

31 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ F ϕ G ϕ ϕu ϕ Semantica X ϕ w 0 ϕ w 1 w 2 w i w k F ϕ w 0 w 1 w 2 w i ϕ w k Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

32 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ F ϕ G ϕ ϕu ϕ Semantica X ϕ F ϕ ϕ w 0 w 1 w 2 w i w k w 0 w 1 w 2 w i w k ϕ G ϕ ϕ ϕ ϕ ϕ ϕ w 0 w 1 w 2 w i w k ϕ Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

33 Linear Temporal Logic (LTL, [Pnueli, 77]) Sintassi ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ F ϕ G ϕ ϕu ϕ Semantica X ϕ F ϕ ϕ w 0 w 1 w 2 w i w k w 0 w 1 w 2 w i w k ϕ G ϕ ϕ ϕ ϕ ϕ ϕ w 0 w 1 w 2 w i w k ϕu ψ ϕ ϕ ϕ ϕ ψ w 0 w 1 w 2 w i w k ϕ Le logiche temporali e di strategia nell ambito della verifica formale 13 / 24

34 Rappresentazione formale delle specifiche Due processi non possono occupare criticamente lo stesso settore del sistema: G (p 1 p 2 ); Tutte le richieste di un processo sono prima o poi garantite: G (r F g); Tutte le richieste di un processo fatte in maniera continua sono prima o poi garantite: G (r (ru g)); Ogni richiesta ripetuta di un processo viene prima o poi garantita: G (G F r F g). Le logiche temporali e di strategia nell ambito della verifica formale 14 / 24

35 Altre logiche temporali CTL ϕ ::= p ϕ ϕ ϕ ϕ ϕ X ϕ X ϕ F ϕ F ϕ G ϕ G ϕ (ϕu ϕ) (ϕu ϕ) CTL ϕ ::= p ϕ ϕ ϕ ϕ ϕ ψ ψ ψ ::= p ψ ψ ψ ψ ψ X ψ F ψ G ψ ψu ψ Relazioni tra le logiche LTL< CTL : X p CTL< CTL : F G p Le logiche temporali e di strategia nell ambito della verifica formale 15 / 24

36 Complessità computazionali Model-checking Satisfiability LTL PSPACE-COMPLETE PSPACE-COMPLETE CTL PTIME EXPTIME-COMPLETE CTL PSPACE-COMPLETE 2EXPTIME-COMPLETE Le logiche temporali e di strategia nell ambito della verifica formale 16 / 24

37 L interazione del sistema con l ambiente Le logiche temporali e di strategia nell ambito della verifica formale 17 / 24

38 L interazione del sistema con l ambiente Le logiche temporali e di strategia nell ambito della verifica formale 17 / 24

39 Concurrent game structure D i s i /0 D A D B s A W A s B W B Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

40 Concurrent game structure D i Ag = {A,B}; s i /0 D A D B s A W A s B W B Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

41 Concurrent game structure D i s i /0 Ag = {A,B}; St = {s i,s A,s B }; D A D B s A W A s B W B Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

42 Concurrent game structure D i s i /0 Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; D A D B s A W A s B W B Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

43 Concurrent game structure D A D i s i /0 D B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; s A W A s B W B Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

44 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

45 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Ac = {P,R,S}; Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

46 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Ac = {P,R,S}; D i D A D B = Dc = Ac Ag ; Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

47 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Ac = {P,R,S}; D i D A D B = Dc = Ac Ag ; τ : St Dc St. Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

48 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Ac = {P,R,S}; D i D A D B = Dc = Ac Ag ; τ : St Dc St. Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

49 Concurrent game structure s A W A D A D i s i /0 D B s B W B Ag = {A,B}; St = {s i,s A,s B }; s i stato iniziale; AP = {W A,W B }; λ : St 2 AP ; Ac = {P,R,S}; D i D A D B = Dc = Ac Ag ; τ : St Dc St. Una concurrent game structure è una tupla G = AP,Ag,Ac,St,λ,τ,s 0. Le strategie sono funzioni che mappano storie del gioco in azioni. I run e le computazioni sono completamente determinati dalle strategie. Le logiche temporali e di strategia nell ambito della verifica formale 18 / 24

50 Strategy Logic (SL [Mogavero, Murano, and Vardi, 2010]) SL estende LTL attraverso l uso di due strategy quantifiers, l esistenziale x e l universale [[x]], e di un agent binding (a,x). Sintassi ϕ ::= LTL x ϕ [[x]]ϕ (a,x)ϕ. Semantica x ϕ: esiste una strategia x tale che ϕ è vera. [[x]]ϕ: per ogni strategia x, accade che ϕ è vera. (a,x)ϕ: ϕ è vera, quando l agente a usa la strategia x. Restrizioni sintattiche di SL sono equivalenti a logiche molto usate nell ambito della verifica formale, come ATL, CHP-SL ed altre. Le logiche temporali e di strategia nell ambito della verifica formale 19 / 24

51 Esempio: Failure is not an option No failure property In un sistema S costituito da tre processi, α, β, e γ, i primi due devono cooperare per assicurare che S non entra mai in uno stato di errore. Tre diverse formalizzazioni in SL. x y [[z]](α,x)(β,y)(γ,z)(g fail): α e β hanno due strategie, x e y, rispettivamente, che, indipendentemente da cosa γ decide, assicurano che uno stato d errore non sia mai raggiunto. x [[z]] y (α,x)(β,y)(γ,z)(g fail): β può scegliere la sua strategia y in dipendenza da cosa è stato scelto da γ. x [[z]](α,x)(β,x)(γ,z)(g fail): α e β hanno una strategia comune x che assicura la proprietà richiesta. Le logiche temporali e di strategia nell ambito della verifica formale 20 / 24

52 Esempio: Fuga da Alcatraz Un prigioniero di Alcatraz p tenta la fuga in elicottero con l aiuto di un complice a. La visione panoramica consente ad a di osservare il comportamento delle guardie g, mentre p non ha la stessa possibilità. Il prigioniero p deve attuare una strategia di fuga che, indipendentemente dal comportamento di g, può essere supportata dal complice a. ϕ = x [[y]] z (p,x)(g,y)(a,z)(f escape p ). Le logiche temporali e di strategia nell ambito della verifica formale 21 / 24

53 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

54 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

55 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

56 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

57 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

58 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

59 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

60 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

61 Una scelta difficile... s0 /0 0 1 s2 p 0 s1 p s4 p s5 p ϕ = [[x]] y ψ 1 ψ 2 ψ 1 = (α,x)x p (α,y)x p ψ 2 = (α,x)x X p (α,y)x X p s3 p s6 p Le logiche temporali e di strategia nell ambito della verifica formale 22 / 24

62 Complessità computazionali Model-checking Satisfiability CTL PSPACE-COMPLETE 2EXPTIME-COMPLETE SL[1G] 2EXPTIME-COMPLETE 2EXPTIME-COMPLETE SL[BG]? Σ 1 1 -HARD SL[NG] NONELEMENTARY-COMPLETE Σ 1 1 -HARD SL NONELEMENTARY-COMPLETE Σ 1 1 -HARD Le logiche temporali e di strategia nell ambito della verifica formale 23 / 24

63 Le logiche temporali e di strategia nell ambito della verifica formale 24 / 24

Efficacia di 3000 trattamenti, risultati da studi controllati randomizzati selezionati da Clinical Evidence. 2013

Efficacia di 3000 trattamenti, risultati da studi controllati randomizzati selezionati da Clinical Evidence. 2013 Efficacia di 3000 trattamenti, risultati da studi controllati randomizzati selezionati da Clinical Evidence. 2013 Crescente incertezza 1517. Martin Luther posted the Ninety-five Theses on the door of the

Dettagli

Quantità vs. qualità. Un approccio sintattico

Quantità vs. qualità. Un approccio sintattico Lez. 2 La teoria dell informazione La culla dell informatica La base dei modelli comunicativi Alla base di tutti i modelli della comunicazione ci sono 2 differenti impianti: Shannon e Weaver Roman Jakobson

Dettagli

Specifica formale. Verifica formale (Prima parte) 03: Logica temporale lineare 1 / 26

Specifica formale. Verifica formale (Prima parte) 03: Logica temporale lineare 1 / 26 Specifica formale La correttezza di un programma è relativa a una determinata specifica: la verifica formale è connessa alle specifiche Linguaggi di specifica Automi LTL (Linear Temporal Logic): una specifica

Dettagli

MISURARE per CONOSCERE la REALTA. Roberto Francini

MISURARE per CONOSCERE la REALTA. Roberto Francini MISURARE per CONOSCERE la REALTA Roberto Francini MISURARE per CONOSCERE la REALTA Cosa intendiamo per REALTA? SOGGETTIVA OGGETTIVA Mondo Natura Realtà Tanti modi e approcci per: La NATURA / REALTA Per

Dettagli

Modellazione di sistemi software

Modellazione di sistemi software Modellazione di sistemi software Modellare un sistema: rappresentarlo in termini di oggetti matematici che ne riflettono le proprietà Modellare implica astrarre: semplificare la descrizione del sistema,

Dettagli

Ragionamento Automatico Logiche Temporali: LTL. Lezione 10 Ragionamento Automatico Carlucci Aiello, 2004/05Lezione Sommario

Ragionamento Automatico Logiche Temporali: LTL. Lezione 10 Ragionamento Automatico Carlucci Aiello, 2004/05Lezione Sommario Sommario Ragionamento Automatico Logiche Temporali: LTL Capitolo 3 del libro di M. Huth e M. Ryan: Logic in Computer Science: Modelling and reasoning about systems (Second Edition) Cambridge University

Dettagli

µ-calculus Model Checking

µ-calculus Model Checking Dipartimento di Matematica e Informatica Università di Udine Outline 1 2 Logiche proposizionali, modali e temporali µ-calculus proposizionale 3 µ-calculus Il µ-calculus proposizionale è un frammento della

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

Parole note, nuovi significati: linguaggio, determinismo e infinito

Parole note, nuovi significati: linguaggio, determinismo e infinito Parole note, nuovi significati: linguaggio, determinismo e infinito Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico

Dettagli

SOLUZIONI DI ESERCIZI SCELTI ELEMENTI DI MATEMATICA E INFORMATICA TEORICA VERSIONE DEL 14 MAGGIO Esercizio 18

SOLUZIONI DI ESERCIZI SCELTI ELEMENTI DI MATEMATICA E INFORMATICA TEORICA VERSIONE DEL 14 MAGGIO Esercizio 18 SOLUZIONI DI ESERCIZI SCELTI ELEMENTI DI MATEMATICA E INFORMATICA TEORICA 2017-8 VERSIONE DEL 14 MAGGIO 2018 HYKEL HOSNI Esercizio 18 Scrivere le tabelle booleane per i seguenti enunciati: (1) p q (2)

Dettagli

Teorema 1. Il problema AP è N P-complete.

Teorema 1. Il problema AP è N P-complete. (Dalla prova scritta d esame del 18/12/2006.) Si consideri il seguente problema AssegnazioneProgetto (AP). Input: un insieme, P, di n persone, ed un insieme V di m vincoli. Ogni vincolo ha la forma k#(l

Dettagli

ASM multi-agente sincrone

ASM multi-agente sincrone ASM multi-agente sincrone Una ASM multi-agente sincrona è definita come un insieme di agenti che eseguono la loro ASM in parallelo. Questi sono sincronizzati utilizzando un clock di sistema globale Semanticamente

Dettagli

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Prima parte: verifica basata su logica temporale lineare Peled: Software Reliability Methods, cap. 1. Katoen: Concepts,

Dettagli

Introduzione al Corso di Verifica Automatica dei Sistemi: Teoria e Applicazioni

Introduzione al Corso di Verifica Automatica dei Sistemi: Teoria e Applicazioni Introduzione al Corso di Verifica Automatica Anno Accademico 2010/11 1 Introduzione al Corso di Verifica Automatica dei Sistemi: Teoria e Applicazioni Angelo Montanari Dipartimento di Matematica e Informatica

Dettagli

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ TRADUZIONE DI STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ a cura di: Eleonora Antonelli Simone Maletta Stefano Novara INDICE 1. Grammatica di TLA+ a cura di Eleonora Antonelli

Dettagli

Turbo ASM. Estendiamo le ASM Basic con

Turbo ASM. Estendiamo le ASM Basic con Estendiamo le ASM Basic con Turbo ASM operazioni che permettono la composizione sequenziale e l iterazione di macchine sottomacchine parametrizzate che possono richiamare se stesse in maniera ricorsiva

Dettagli

Sommario. Espressioni regolari. Equivalenza tra espressioni regolari e DFA. Esercizi problemi di decisione

Sommario. Espressioni regolari. Equivalenza tra espressioni regolari e DFA. Esercizi problemi di decisione Sommario Espressioni regolari Equivalenza tra espressioni regolari e DFA Esercizi problemi di decisione ESPRESSIONI REGOLARI Le espressioni regolari sono una notazione per rappresentare insiemi di stringhe

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

Logica: materiale didattico

Logica: materiale didattico Logica: materiale didattico M. Cialdea Mayer. Logica (dispense): http://cialdea.dia.uniroma3.it/teaching/logica/materiale/dispense-logica.pdf Logica dei Predicati (Logica per l Informatica) 01: Logica

Dettagli

Aspetti computazionali della logica lineare

Aspetti computazionali della logica lineare Proof-nets, λ-calcolo e complessità computazionale implicita 26 febbraio 2009 Relatore: Prof. Stefano Guerrini Correlatore: Prof.ssa Adele Morrone Contenuto Introduzione 1 Introduzione 2 Corrispondenza

Dettagli

LA TEORIA DELLA COMPLESSITÀ COMPUTAZIONALE

LA TEORIA DELLA COMPLESSITÀ COMPUTAZIONALE LA TEORIA DELLA COMPLESSITÀ COMPUTAZIONALE INTRODUZIONE OBIETTIVO: classificare gli algoritmi a seconda delle risorse utilizzate - risorse necessarie (lower bound) - risorse sufficienti (upper bound) Aspetti

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

Logica proposizionale

Logica proposizionale Logica proposizionale Proposizione: frase compiuta che è sempre o vera o falsa. Connettivi Posti in ordine di precedenza: not, and, or, implica, doppia implicazione Sintassi Le proposizioni sono costituite

Dettagli

Il model checker UPPAAL

Il model checker UPPAAL Il model checker UPPAAL UPPAAL: http://www.uppaal.org/ Language Reference: http://www.uppaal.com/index.php?sida=217&rubrik=101 I sistemi sono modellati come reti di timed automata, con l aggiunta di variabili

Dettagli

Linguaggi e Ambienti di Programmazione

Linguaggi e Ambienti di Programmazione Linguaggi e Ambienti di Programmazione Principi e tecniche diffuse che si incontrano spesso nelle applicazioni dell informatica. Compilatori Editor di struttura: riceve in input una sequenza di comandi

Dettagli

Fondamenti Informatica A.A. 2010/'11. (I parte)

Fondamenti Informatica A.A. 2010/'11. (I parte) Problemi e algoritmi Macchina di Turing Fondamenti di informatica Proff. De Nitto e D Ambrogio A.A. 2010/2011 (I parte) Architettura e visione funzionale Rappresentazione dei numeri Modello computazionale

Dettagli

Linguaggi di specifica

Linguaggi di specifica Specifica formale (Peled, cap. 5) Importanza della specifica formale di un progetto (sviluppato in mesi, da diverse persone, modificato,...) Correttezza di un programma rispetto alla specifica: verifica

Dettagli

Laboratorio di Python

Laboratorio di Python Istruzione di condizione, Input da tastiera, Università di Bologna 6 e 8 marzo 2013 Sommario 1 Tipi di errore e Debugging 2 3 4 Outline Tipi di errore e Debugging 1 Tipi di errore e Debugging 2 3 4 Esercizio

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

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 Linguaggi e Complessità : Lezione 1 Corso Fondamenti di Informatica 2 Marco Schaerf, 2009-2010 Linguaggi e Complessità : Lezione 1 1 Logica proposizionale Linguaggio matematico

Dettagli

CALCOLO PROPOSIZIONALE: CENNI

CALCOLO PROPOSIZIONALE: CENNI CALCOLO PROPOSIZIONALE: CENNI Francesca Levi Dipartimento di Informatica February 26, 2016 F.Levi Dip.to Informatica Informatica per le Scienze Umane a.a. 15/16 pag. 1 La Logica La logica è la disciplina

Dettagli

C.d.L. in Matematica - I Modulo

C.d.L. in Matematica - I Modulo A A 2006-07 - ESAME DI PROFITTO DI GEOMETRIA 2 - gennaio 2007 CdL in Matematica - I Modulo Siano V uno spazio vettoriale reale di dimensione 4, U un suo sottospazio di dimensione 2, ϕ un endomorfismo di

Dettagli

Università degli Studi di Milano

Università degli Studi di Milano Università degli Studi di Milano Laurea in Sicurezza dei sistemi e delle reti informatiche Note di Matematica STEFANO FERRARI Fondamenti di informatica per la sicurezza Note di Matematica Pagina 2 di 8

Dettagli

ufficio: Ca Vignal 2, primo piano, stanza 80 ricevimento: Giovedì, oppure su appuntamento

ufficio: Ca Vignal 2, primo piano, stanza 80 ricevimento: Giovedì, oppure su appuntamento Contatti e-mail: davide.bresolin@univr.it ufficio: Ca Vignal 2, primo piano, stanza 80 ricevimento: Giovedì, 11-12 oppure su appuntamento Sistemi in Tempo Reale (Lab) Uppaal 6 Novembre 2008 1 / 29 Lezione

Dettagli

Ragionamento Automatico Richiami di tableaux proposizionali

Ragionamento Automatico Richiami di tableaux proposizionali Richiami di logica e deduzione proposizionale Ragionamento Automatico Richiami di tableaux proposizionali (L. Carlucci Aiello & F. Pirri: SLL, Cap. 5) La logica proposizionale I tableau proposizionali

Dettagli

Algoritmi e Principi dell'informatica

Algoritmi e Principi dell'informatica Algoritmi e Principi dell'informatica Appello d esame 17 luglio 2014 Nome: Matricola: Firma: svolgere tutti gli esercizi in 2 ore e 30 minuti. Chi deve sostenere solo il modulo di Informatica teorica deve

Dettagli

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello AN - 1995 Linguaggi di alto livello AN - 1995 Evoluzione dei

Dettagli

delta δ mu (mi) µ M iupsilon υ Y eta η H omicron o O psi ψ Ψ 1. Scrivere il proprio nome e cognome in lettere greche.

delta δ mu (mi) µ M iupsilon υ Y eta η H omicron o O psi ψ Ψ 1. Scrivere il proprio nome e cognome in lettere greche. Capitolo 1 Numeri 1.1 Alfabeto greco Un ingrediente indispensabile per lo studente che affronta un corso di analisi matematica è la conoscenza dell alfabeto greco, di cui verranno usate a vario titolo

Dettagli

Semantica operazionale e denotazionale

Semantica operazionale e denotazionale Semantica operazionale e denotazionale Abbiamo definito la semantica di tre linguaggi di programmazione in termini operazionali, cioé in termini di sequenze di computazione Abbiamo assegnato un algoritmo

Dettagli

Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd

Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd Fondamenti d Informatica: linguaggi formali Barbara Re, Phd Agenda } Introdurremo } La nozione di linguaggio } Strumenti per definire un linguaggio } Espressioni Regolari 2 Linguaggio } Da un punto di

Dettagli

Informatica e Laboratorio di Programmazione Automi Alberto Ferrari. Alberto Ferrari Informatica e Laboratorio di Programmazione

Informatica e Laboratorio di Programmazione Automi Alberto Ferrari. Alberto Ferrari Informatica e Laboratorio di Programmazione Informatica e Laboratorio di Programmazione Automi Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione automa o automa: macchina astratta o realizza un certo algoritmo, secondo

Dettagli

Analisi di Sistemi Complessi (1) Model Checking (1) Analisi di Sistemi Complessi (2) Proprietà Computazionalmente Interessanti

Analisi di Sistemi Complessi (1) Model Checking (1) Analisi di Sistemi Complessi (2) Proprietà Computazionalmente Interessanti Proprietà Computazionalmente Interessanti Proprietà 1 Analisi di Sistemi Complessi (1) Per i sistemi complessi è necessario analizzare caratteristiche specifiche, che possono dare origine a problemi Ad

Dettagli

Elementi di Algebra Lineare

Elementi di Algebra Lineare Elementi di Algebra Lineare Corso di Calcolo Numerico, a.a. 2009/2010 Francesca Mazzia Dipartimento di Matematica Università di Bari 13 Marzo 2006 Francesca Mazzia (Univ. Bari) Elementi di Algebra Lineare

Dettagli

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) DISPENSA N. 4 Sommario. Dimostriamo il Teorema di Completezza per il Calcolo dei Predicati del I ordine. 1. Teorema di Completezza Dimostriamo il Teorema

Dettagli

µ-calculus Model Checking

µ-calculus Model Checking µ-calculus Model Checking Rita D Ambrosio Università degli Studi di Salerno Corso di Tecniche Automatiche per la Correttezza del Software December 13, 2016 Rita D Ambrosio (UNISA) µ-calculus December 13,

Dettagli

Risoluzione di un problema

Risoluzione di un problema Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito

Dettagli

Linguaggi di programmazione: sintassi e semantica Sintassi fornita con strumenti formali: Semantica spesso data in modo informale

Linguaggi di programmazione: sintassi e semantica Sintassi fornita con strumenti formali: Semantica spesso data in modo informale LOGICA DI HOARE INTRODUZIONE Linguaggi di programmazione: sintassi e semantica Sintassi fornita con strumenti formali: es. grammatica in BNF Semantica spesso data in modo informale di stile operazionale

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

Agenti Basati su Logica

Agenti Basati su Logica Agenti Basati su Logica Corso di Intelligenza Artificiale, a.a. 2017-2018 Prof. Francesco Trovò 09/04/2018 Agenti basati sulla logica Generico agente logico Il mondo del Wumpus Logica proposizionale Inferenza

Dettagli

Fondamenti di Teoria delle Basi di Dati

Fondamenti di Teoria delle Basi di Dati Fondamenti di Teoria delle Basi di Dati Riccardo Torlone Parte 8: Teoria delle dipendenze Vincoli di integrità Esistono istanze di basi di dati che, pur sintatticamente corrette, non rappresentano informazioni

Dettagli

Dall algoritmo al calcolatore: concetti introduttivi. Algoritmo. Problema: consumo medio 9/27/2018. Fondamenti di Programmazione 3

Dall algoritmo al calcolatore: concetti introduttivi. Algoritmo. Problema: consumo medio 9/27/2018. Fondamenti di Programmazione 3 Dall algoritmo al calcolatore: concetti introduttivi Fondamenti di Programmazione Algoritmo Problema o compito Preparazione di una torta Programmazione del VCR MCD tra due numeri Algoritmo sequenza precisa

Dettagli

Teoria dei modelli. Alessandro Berarducci. 3 Marzo Dipartimento di Matematica Pisa

Teoria dei modelli. Alessandro Berarducci. 3 Marzo Dipartimento di Matematica Pisa Teoria dei modelli Alessandro Berarducci Dipartimento di Matematica Pisa 3 Marzo 2014 Teoria dei campi algebricamente chiusi Denizione 1 La teoria del primo ordine dei campi algebricamente chiusi, ACF,

Dettagli

Backus Naur Form. Paolo Bison. Fondamenti di Informatica 1 A.A. 2004/05 Università di Padova. BNF, Paolo Bison, A.A ,

Backus Naur Form. Paolo Bison. Fondamenti di Informatica 1 A.A. 2004/05 Università di Padova. BNF, Paolo Bison, A.A , p.1/19 Backus Naur Form Paolo Bison Fondamenti di Informatica 1 A.A. 2004/05 Università di Padova Linguaggio di programmazione p.2/19 strumento linguistico per scrivere una sequenza di istruzioni (programma)

Dettagli

ESERCIZI DI LOGICA MATEMATICA A.A Alessandro Combi

ESERCIZI DI LOGICA MATEMATICA A.A Alessandro Combi ESERCIZI DI LOGICA MATEMATICA A.A. 2015-16 Alessandro Combi Esercizio 1.7 Per ogni formula A, dimostrare che ρ(a) = min{n A F n } Soluzione: Chiamo rank(a) = min{n A F n }. Bisogna provare che rank segue

Dettagli

LOGICA MATEMATICA PER INFORMATICA

LOGICA MATEMATICA PER INFORMATICA LOGICA MATEMATICA PER INFORMATICA A.A. 10/11, DISPENSA N. 2 Sommario. Assiomi dell identità, modelli normali. Forma normale negativa, forma normale prenessa, forma normale di Skolem. 1. L identità Esistono

Dettagli

$marina/did/md $marina/did/mdis03/ $marina/did/mdis03/

$marina/did/md   $marina/did/mdis03/   $marina/did/mdis03/ 1 2 Avvertenze Matematica Discreta (elementi) E-O CdL Informatica 3 dicembre 2003 Queste fotocopie sono distribuite solo come indicazione degli argomenti svolti a lezione e NON sostituiscono in alcun modo

Dettagli

Linguaggi. Claudio Sacerdoti Coen 23/02/ : Logica a Informatica. Universitá di Bologna. Logica a informatica

Linguaggi. Claudio Sacerdoti Coen 23/02/ : Logica a Informatica. Universitá di Bologna. Logica a informatica Linguaggi 0: Logica a Informatica Universitá di Bologna 23/02/2011 Outline 1 Logica... Wikipedia: La logica è lo studio del ragionamento e dell argomentazione e, in particolare,

Dettagli

$marina/did/md

$marina/did/md Matematica Discreta (elementi) E-O CdL Informatica Strutture algebriche 3 dicembre 2003 Marina Cazzola (marina@matapp.unimib.it) Dipartimento di Matematica e Applicazioni Università di Milano Bicocca Matematica

Dettagli

Lezione Introduzione alla Logica Lineare

Lezione Introduzione alla Logica Lineare Lezione Introduzione alla Logica Lineare Roberto Maieli Università degli Studi Roma Tre maieli@uniroma3.it http://logica.uniroma3.it/ maieli/teaching Corso di Logica (II livello, magistrale): Introduzione

Dettagli

Logiche descrittive Le logiche descrittive sono una famiglia di formalismi per la rappresentazione della conoscenza (KR) che descrivono ciò che è

Logiche descrittive Le logiche descrittive sono una famiglia di formalismi per la rappresentazione della conoscenza (KR) che descrivono ciò che è Logiche descrittive Le logiche descrittive sono una famiglia di formalismi per la rappresentazione della conoscenza (KR) che descrivono ciò che è noto in un dominio di applicazione definendo i concetti

Dettagli

A m n B n p = P m p. 0 1 a b c d. a b. 0 a 0 c Il risultato e lo stesso solo nel caso in cui c = 0 e a = d.

A m n B n p = P m p. 0 1 a b c d. a b. 0 a 0 c Il risultato e lo stesso solo nel caso in cui c = 0 e a = d. Matematica II, 220404 Il prodotto di matrici e un operazione parziale che prende in entrata una matrice A ed una matrice B, tali che il numero delle colonne di A sia uguale al numero delle righe di B,

Dettagli

Che cos è l Informatica?

Che cos è l Informatica? Che cos è l Informatica? Che cos è l Informatica? Non è facile da definire! Alcune affermazioni vere: L informatica è parente stretta della matematica Ha a che fare con il modo in cui risolviamo i problemi

Dettagli

Dimostrazioni e programmi come oggetti geometrici. Simone Martini

Dimostrazioni e programmi come oggetti geometrici. Simone Martini Dimostrazioni e programmi come oggetti geometrici Simone Martini Dipartimento di Scienze dell Informazione Alma Mater Studiorum Università di Bologna 1 Dimostrazioni alla Hilbert Assiomi, che caratterizzano

Dettagli

Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale

Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale di Francesco Maria Milizia francescomilizia@libero.it Model Checking vuol dire cercare di stabilire se una formula è vera

Dettagli

Due tipi di logica. Gianluigi Bellin

Due tipi di logica. Gianluigi Bellin Due tipi di logica Gianluigi Bellin 15 Novembre 2012 Calcolo dei sequenti LK, logica classica. axiom Γ, A A, A, Γ Γ, A R Γ, A L A, Γ R Γ, A Γ, B Γ, A B A, B, Γ L A B, Γ A, Γ B, Γ, A B, Γ R Γ A B, L Γ,

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

PN in sintesi. PN ASM: Corrispondenze. ASM in sintesi. ASM Analisi di Alcune Properietà. PN Ideate per rappresentare sistemi complessi

PN in sintesi. PN ASM: Corrispondenze. ASM in sintesi. ASM Analisi di Alcune Properietà. PN Ideate per rappresentare sistemi complessi PN in sintesi ASM Analisi di Alcune Properietà PN Ideate per rappresentare sistemi complessi Concorrenza Sincronizzazione Composizione di sotto-reti Una transizione influenza solo una parte dello stato

Dettagli

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada

Dettagli

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1 Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1 1) Dato un diagramma di flusso quali sono le condizioni necessarie perché si possa costruire un programma corrispondente?

Dettagli

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Basic Pascal

Dettagli

Intelligenza Artificiale II. Logiche modali e temporali

Intelligenza Artificiale II. Logiche modali e temporali Intelligenza Artificiale II Logiche modali e temporali Marco Piastra Logiche non classiche - 1 1 Logiche modali Logiche non classiche - 2 Un paradosso? Una fbf di L P ( ) ( ) Si tratta di una tautologia

Dettagli

Corso di Linguaggi di Programmazione

Corso di Linguaggi di Programmazione Corso di Linguaggi di Programmazione Lezione 2 Alberto Ceselli alberto.ceselli@unimi.it Università degli Studi di Milano 01 Marzo 2013 1 2 3 Obiettivo chiave dei LdP: fornire costrutti che riducano la

Dettagli

ESAME di LOGICA PER INFORMATICA 24 giugno 2003

ESAME di LOGICA PER INFORMATICA 24 giugno 2003 ESAME di LOGICA PER INFORMATICA 24 giugno 2003 Compito 1 Esercizio 1. Siano Φ e Ψ due insiemi consistenti di formule. Dire, giustificando la risposta, se Φ Ψ e Φ Ψ sono consistenti. Soluzione. Se fosse

Dettagli

Logica per la Programmazione

Logica per la Programmazione Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 8 Modelli, Formule Valide, Conseguenza Logica Proof Systems Regole di inferenza per Calcolo Proposizionale

Dettagli

Dati e Algoritmi 1: A. Pietracaprina. Text Processing

Dati e Algoritmi 1: A. Pietracaprina. Text Processing Dati e Algoritmi 1: A. Pietracaprina Text Processing 1 Campi Applicativi text editing web searching computational biology (e.g., DNA analysis) vision... 2 Definizioni Stringa P P P[0]P[1]... P[m 1] (lunghezza

Dettagli

Fondamenti d Informatica: Grammatiche. Barbara Re, Phd

Fondamenti d Informatica: Grammatiche. Barbara Re, Phd Fondamenti d Informatica: Grammatiche Barbara Re, Phd Grammatiche } Con il termine grammatica s intende } Un formalismo che permette di definire un insieme di stringhe mediante l imposizione di un particolare

Dettagli

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI Linguaggi di alto livello Barriera di astrazione C Fortran Cobol Modula-2 Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI C Fortran Modula-2

Dettagli

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI Fortran Cobol

Dettagli

Quantum Computing. Esercizi. Esercizio 1.1 Mostra che lo stato di un qubit può essere espresso nella forma

Quantum Computing. Esercizi. Esercizio 1.1 Mostra che lo stato di un qubit può essere espresso nella forma Quantum Computing Esercizi 1 Qubit Esercizio 1.1 Mostra che lo stato di un qubit può essere espresso nella forma ψ = e iγ ( cos(θ/) 0 + e iφ sin(θ/) 1 ), dove γ, θ e φ sono numeri reali. Il fattore di

Dettagli

Logica Computazionale

Logica Computazionale Logica Computazionale 2009-2010 Gianluigi Bellin 24 febbraio 2010 1 Domanda 1 Si consideri il sequente S (i) Si applichi la procedura semantic tableaux per verificare se S sia valido o falsificabile nella

Dettagli

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati Basi di Dati Cosa vuol dire progettare una base di dati? Il DBMS non va progettato il DBMS si acquista o esiste già è impossibile pensare di sviluppare un DBMS anni di sviluppo necessità di elevate competenze

Dettagli

ESERCIZI DI ALGEBRA LINEARE (D) A = A = A = R 2,2. D5 Dire come bisogna scegliere i parametri h e k affinché la

ESERCIZI DI ALGEBRA LINEARE (D) A = A = A = R 2,2. D5 Dire come bisogna scegliere i parametri h e k affinché la ESERCIZI DI ALGEBRA LINEARE (D) D1 Nello spazio vettoriale R 2,2 si consideri l insieme { V = X R 2,2 XA = AX, A = ( 1 1 1 2 )} delle matrici che commutano con A. Verifiare che V = L(I 2, A). Verificare

Dettagli

ESERCIZI DI ALGEBRA LINEARE (D) V = 1 2. Verificare che V è un sottospazio e determinarne una base. A =

ESERCIZI DI ALGEBRA LINEARE (D) V = 1 2. Verificare che V è un sottospazio e determinarne una base. A = ESERCIZI DI ALGEBRA LINEARE (D) D1 Nello spazio vettoriale R 2,2 si consideri l insieme V = { X R 2,2 XA = AX, A = ( 1 1 1 2 )} delle matrici che commutano con A. Verifiare che V = L(I 2, A). Verificare

Dettagli

Registro dell'insegnamento

Registro dell'insegnamento Registro dell'insegnamento Anno accademico 2018/2019 Prof. ALESSANDRO FANTECHI Settore inquadramento ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI REGISTRO Scuola Ingegneria NON CHIUSO Dipartimento

Dettagli

Prova scritta di Matematica Discreta del 15/2/2005

Prova scritta di Matematica Discreta del 15/2/2005 Prova scritta di Matematica Discreta del 15/2/2005 1. a. Quante parole di 6 lettere si possono formare con un alfabeto contenente 25 lettere? b. Quante se sono proibite le doppie (ossia lettere uguali

Dettagli

Complementi di Logica Modale

Complementi di Logica Modale Complementi di Logica Modale Umberto Grandi 17 Maggio 2008 1 Completezza 1.1 Livelli di interpretazione semantica Per fissare la notazione e prendere confidenza con le strutture di Kripke (i modelli in

Dettagli

Fondamenti di Informatica. per la Sicurezza. a.a. 2003/04. Grammatiche. Stefano Ferrari

Fondamenti di Informatica. per la Sicurezza. a.a. 2003/04. Grammatiche. Stefano Ferrari Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Grammatiche Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università degli Studi

Dettagli

Semantica proposizionale. Unit 2, Lez 3 e 4 Corso di Logica

Semantica proposizionale. Unit 2, Lez 3 e 4 Corso di Logica Semantica proposizionale Unit 2, Lez 3 e 4 Corso di Logica Sommario Semantica dei connettivi Costruzione delle tavole di verità Tautologie, contraddizioni e contingenze Semantica delle forme argomentative

Dettagli

MATEMATICA DISCRETA E LOGICA MATEMATICA

MATEMATICA DISCRETA E LOGICA MATEMATICA Cognome Nome Matricola MATEMATICA DISCRETA E LOGICA MATEMATICA Docenti: C. Delizia, M. Tota Primo Appello 26 gennaio 2011 IMPORTANTE: indicare l esame che si intende sostenere e svolgere solo gli esercizi

Dettagli

02/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 8 STRUTTURE DI CONTROLLO (1)

02/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 8 STRUTTURE DI CONTROLLO (1) LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 8 STRUTTURE DI CONTROLLO (1) Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Esonero di MATEMATICA DISCRETA,

Esonero di MATEMATICA DISCRETA, Esonero di MATEMATICA DISCRETA, 22-12-2014 1. Dimostrare A (B C) (A) (A C) a) Con le tavole di verità ABC B C A (B C) A A C (A) (A C) 000 1 1 1 1 1 001 1 1 1 1 1 010 0 1 1 1 1 011 1 1 1 1 1 100 1 1 0 0

Dettagli

Fondamenti d Informatica: Simulazione d esame. Barbara Re, Phd

Fondamenti d Informatica: Simulazione d esame. Barbara Re, Phd Fondamenti d Informatica: Simulazione d esame Barbara Re, Phd 2 Parte teorica (1 punto per ogni domanda) Domande Parte Teorica } Che cosa s intende per teoria della computabilità? Cosa è computabile? Chi

Dettagli

Limiti della calcolabilità

Limiti della calcolabilità Limiti della calcolabilità Argomenti della lezione Macchina di Turing universale Il problema della terminazione Altri problemi indecidibili Macchine di Turing in forma ridotta Per ogni MT M esiste una

Dettagli

Verifica dei programmi

Verifica dei programmi Verifica dei programmi Consiste nella specifica e nella dimostrazione delle proprietà dei programmi. Per specificare le proprietà utilizzeremo la logica del I ordine. Per dimostrare che le proprietà specificate

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

AUTOMI A STATI FINITI

AUTOMI A STATI FINITI AUTOMI A STATI FINITI I linguaggi regolari godono di interessanti proprietà algebriche: Sono defnibili con le espressioni regolari Sono generati da grammatiche di Chomsky di tipo 3. Sono riconoscibili

Dettagli