Semantica operazionale dei linguaggi di Programmazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Semantica operazionale dei linguaggi di Programmazione"

Transcript

1 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. Mancarella e F. Turini Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.1/51

2 Oggetti sintattici Nella prima parte del corso abbiamo visto alcuni strumenti per definire formalmente dei linguaggi Abbiamo visto come le regole di una grammatica libera dal contesto non ambigua diano una struttura ben precisa ad ogni stringa de linguaggio Tale struttura è ricorsiva se il linguaggio non è banale (finito) Tale struttura è completamente rappresentata dall albero di derivazione Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.2/51

3 Oggetti sintattici Abbiamo più volte sottolineato il fatto che le stringhe di un linguaggio sono di base oggetti simbolici puri Non hanno un significato particolare associato, a parte quello di essere stringhe formate con certi simboli Siamo noi che diamo loro un significato a seconda del contesto in cui le usiamo Tale significato lo chiameremo semantica del linguaggio Possiamo assegnare infinite semantiche ad uno stesso linguaggio! Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.3/51

4 Funzioni di valutazione semantica In un contesto informale il significato di una parola o di una frase può essere ambiguo Nel nostro ambito vogliamo la massima precisione Assegneremo la semantica in maniera formale Definiremo in maniera rigorosa delle funzioni che associano ad ogni stringa del linguaggio il relativo significato Il significato sarà un elemento di un certo dominio semantico Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.4/51

5 Domini semantici Se gli oggetti sintattici sono definiti precisamente, altrettanto vogliamo per gli oggetti semantici Utilizzeremo come domini semantici gli oggetti matematici: Insiemi con relative operazioni: numeri naturali con +,,... Funzioni parziali o totali fra domini semantici Strutture: pile di funzioni, alberi, Le funzioni di valutazione semantica saranno definite in maniera formale Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.5/51

6 Stringhe di cifre Facciamo il primo esempio di funzione di valutazione semantica Consideriamo gli elementi della categoria sintattica Num Sono stringhe formate da cifre decimali Qual è il loro significato? A noi risulta naturale pensare ai numeri naturali, perché questa è la semantica che quasi sempre viene assegnata loro Ma tali stringhe sono solo una possibile rappresentazione dei numeri naturali! Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.6/51

7 Stringhe di cifre Formalmente ciò che lega una stringa di cifre decimali a un numero naturale è una funzione che associa ad ogni stringa un certo numero naturale Questa funzione è un esempio di funzione di valutazione semantica: lega oggetti sintattici a elementi di un certo dominio semantico Vediamo come può essere definita formalmente tale funzione Sappiamo che il sistema di numerazione in base dieci funziona in questo modo: La stringa 134 rappresenta il numero = Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.7/51

8 Formalizziamo Indichiamo con n,n,... elementi della categoria sintattica Num, cioè stringhe generate dalla grammatica Num ::= Num Cif Cif Cif ::= Indichiamo con n,n,... numeri naturali: IN = {0,1,2,3,4,5,...} Definiamo una funzione η:num IN che lega ad ogni stringa il numero naturale denotato Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.8/51

9 Definizione di η La funzione η può essere convenientemente definita in maniera ricorsiva utilizzando la struttura ricorsiva a sinistra suggerita dalla grammatica: η(0) = 0 η(1) = 1... η(9) = 9 η(nc) = (η(n) 10) + η(c) Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.9/51

10 Altre rappresentazioni I numeri naturali possono avere un numero infinito di rappresentazioni sintattiche! Ad esempio possiamo utilizzare una notazione binaria in cui i simboli sono le lettere dell alfabeto {z,u} La grammatica che usiamo è: Binary ::= Bit Binary Bit Bit ::= z u Possiamo definire in maniera analoga alla precedente una funzione che associa a queste stringhe un numero naturale: η :Binary IN Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.10/51

11 Altre rappresentazioni Basta associare a z il numero 0, ad u ul numero 1 e poi utilizzare il sistema binario di rappresentazione: zuzz rappresenta = 4 η (z) = 0 η (u) = 1 η (xb) = (η (x) 2) + η (b) Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.11/51

12 Applicazione di η η (zuzz) = (η (zuz) 2) + η (z) = (η (zuz) 2) +0 = (((η (zu) 2) + η (z)) 2) +0 = (((η (zu) 2) +0) 2) +0 = (((((η (z) 2) + η (u)) 2) +0) 2) +0 = (((((0 2) +1) 2) +0) 2) +0 = ((((0 +1) 2) +0) 2) +0 = (((1 2) +0) 2) +0 = ((2 +0) 2) +0 = (2 2) +0 = 4 +0 = 4 Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.12/51

13 Espressioni Definiamo formalmente l associazione fra espressioni aritmetiche e loro valore La definizione formale di questa funzione di valutazione semantica sarà il primo passo verso il nostro obiettivo finale Ci concentreremo attentamente su tutte le fasi di questo esempio Nel seguito infatti lo schema di definizione sarà sempre lo stesso Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.13/51

14 Sintassi Abbiamo già visto come si scrive una grammatica per le espressioni con operatori a cui è assegnata una precedenza e una regola di associatività Tali regole si riflettono sull albero di derivazione che rappresenta precisamente la struttura della stringa. Ad esempio : E E + T T T * F F F Num Num Num Num Cif Cif Cif Cif Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.14/51

15 Sintassi La risoluzione dell ambiguità della grammatica e la gestione delle regole di precedenza e di associatività rendono l albero di derivazione complesso In realtà basterebbe una rappresentazione più semplice per rappresentare la struttura della stringa Quello che faremo da adesso in poi è utilizzare un albero di derivazione semplificato chiamato albero sintattico L albero sintattico non è dettagliato come l albero di derivazione ed esprime solo ciò che serve ai fini della definizione della semantica Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.15/51

16 Albero sintattico Ad esempio l albero sintattico corrispondente all albero di derivazione della stringa introdotta prima è: Exp Exp + Exp 9 Exp * Exp 3 16 Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.16/51

17 Albero sintattico Nell albero sintattico sono indicati solo gli operandi e gli operatori La struttura dei sottoalberi esprime le regole di precedenza e associatività Tutto il resto è omesso Da un albero di derivazione è semplice ottenere il corrispondente albero sintattico Si può dire che l albero sintattico è una rappresentazione compatta dell albero di derivazione Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.17/51

18 Convenzione Da ora in poi useremo solo alberi sintattici come oggetti sintattici Assumeremo che ai nostri sistemi di transizioni vengano sempre passati alberi sintattici ottenuti semplificando alberi di derivazione In questo modo semplifichiamo i sistemi di transizioni che si concentrano solo sul problema della definizione della semantica Chi fornisce gli alberi sintattici si occuperà dei problemi relativi alla scrittura della grammatica giusta, problemi prettamente sintattici Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.18/51

19 Grammatiche semplici Alla luce di questa convenzione facciamo anche un altra operazione di semplificazione Non usiamo grammatiche complicate introdotte per gestire i problemi di ambiguità e precedenza/associatività Per specificare la sintassi ci basterà scrivere grammatiche semplici, anche ambigue Questo perché comunque i problemi di queste grammatiche sono risolti alla fonte: ci viene passato un albero sintattico Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.19/51

20 Grammatica semplice Daremo semantica precisamente all albero sintattico, considerando solamente gli operandi, gli operatori e la struttura di questo Quindi per specificare la sintassi delle espressioni ci basterà utilizzare questa grammatica: Exp ::= Num (Exp) Exp Op Exp Op ::= + - * / % Chi ci fornisce gli alberi sintattici si sarà preoccupato di eliminare l ambiguità e di aver espresso nell albero stesso la struttura della stringa in accordo alla precedenza/associatività Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.20/51

21 Convenzione di scrittura Risulterà comodo, per la chiarezza dell esposizione, poter rappresentare un albero sintattico in maniera lineare, cioè senza disegnare l albero Per far questo aggiungeremo alle stringhe delle parentesi quadre che indicheranno la struttura dell albero... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.21/51

22 Convenzioni di scrittura Ad esempio, per indicare l albero sintattico: Exp Exp + Exp 9 Exp * Exp 3 16 scriveremo la stringa 9 + [3 16] Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.22/51

23 Metavariabili Utilizzeremo i simboli E,E,E 1,E 2,... per denotare alberi sintattici della categoria sintattica Exp In questo caso quindi la scrittura E Exp denota che E è un albero sintattico, non una stringa Ometteremo queste premesse nelle regole, poiché usiamo metavariabili Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.23/51

24 Matching Per il matching bisogna tener conto della struttura: E+E fa match con 9 + [3 16] ponendo E = 9 ed E = [3 16] non fa match con E E poiché l albero 9 + [3 16] non ha al primo livello l operatore Un albero che fa match con E E potrebbe essere [([9 + 3])] 16 Si noti che le parentesi hanno al loro interno l albero 9 + 3, che è a tutti gli effetti un sottoalbero dell albero ([9 + 3]) Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.24/51

25 Calcolo del valore Abbiamo tutti gli ingredienti per definire un sistema di transizioni che calcola il valore di una espressione Naturalmente sarà un sistema big-step che utilizza come base per la ricorsione la relazione di sottoalbero degli alberi sintattici Le regole saranno guidate dalla sintassi: ogni caso sintattico della grammatica semplificata avrà una regola semantica Nelle configurazioni non ci saranno stringhe, ma alberi sintattici Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.25/51

26 Configurazioni Le configurazioni del sistema sono le seguenti Γ exp T exp = {E E Exp} {n n IN} = {n n IN} Come abbiamo visto in precedenza, poiché il sistema è definito nello stile big-step non abbiamo bisogno di configurazioni intermedie Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.26/51

27 Configurazioni Si noti come ad una configurazione contentente un oggetto sintattico (l albero sintattico) il sistema associa una configurazione terminale formata da un oggetto di un dominio semantico (un numero naturale) Questo sistema sarà la base con cui definiremo la funzione di valutazione semantica delle espressioni aritmetiche Dalla grammatica vediamo che per ora le espressioni hanno come operandi solo stringhe di Num Partiamo con la prima regola che tratta il caso base... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.27/51

28 Regole per exp Una espressione il cui albero sintattico è formato solo da una stringa di cifre n, elemento della categoria sintattica Num, ha come valore il numero naturale denotato da n In questo caso supponiamo che il sistema sia in grado di ottenere il numero dalla rappresentazione, ad esempio usando la funzione η definita sopra La regola di exp per questo caso sintattico non ha premesse: n exp n (exp n ) Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.28/51

29 Regole per exp? E+E exp? Vediamo la regola (exp + ) che gestisce il caso sintattico Exp +Exp La configurazione di input richiede che venga passato un albero sintattico in cui al primo livello ci sia l operatore + applicato a due sottoalberi E ed E Per calcolare il valore di tutta l espressione abbiamo bisogno del valore delle espressioni che sono nei sottoalberi... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.29/51

30 Regole per exp E exp n? E+E exp? Per calcolare il valore dell espressione rappresentata dal sottoalbero E applichiamo la ricorsione L ipotesi induttiva ci garantisce che il sistema è in grado di effettuare il calcolo sull albero E poiché questo è un albero più piccolo dell albero che si sta trattando Inoltre l ipotesi induttiva garantisce che se il calcolo viene effettuato allora il risultato, che chiamiamo n, è corretto Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.30/51

31 Regole per exp E exp n E exp n E+E exp? Facciamo una chiamata ricorsiva anche sul sottoalbero destro E per ottenere il valore n Non ci resta che applicare l operatore semantico di somma tra numeri naturali per ottenere il valore dell espressione E+E Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.31/51

32 Regole per exp E exp n E exp n m = n +n E+E exp m Chiamiamo m il valore della somma e poniamolo come configurazione di arrivo Facciamo ora una precisazione sugli operatori e sulla loro rappresentazione Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.32/51

33 Operatori e loro rappresentazione Anche per gli operatori, come per i numeri, bisogna distinguere tra rappresentazione sintattica e operatore vero e proprio Nella regola precedente abbiamo utilizzato il + sia come simbolo di alfabeto che come operatore binario fra numeri naturali Nell albero sintattico E +E il + è un mero simbolo, la semantica può assegnargli un qualsiasi significato Nell equazione m = n +n il + è il ben noto operatore di somma tra numeri naturali Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.33/51

34 Operatori e loro rappresentazione Formalmente è buona regola usare due simboli diversi o degli accorgimenti tipografici per distinguerli In questo caso facciamo un eccezione a questa regola, ma per altri operatori faremo la distinzione Quando uno stesso simbolo, come in questo caso il +, viene usato per rappresentare diversi oggetti bisogna fare attenzione al suo uso In genere si capisce dal contesto il significato da attribuirgli di volta in volta Se questo non è vero allora conviene distinguere i simboli o specificare di volta in volta il significato Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.34/51

35 Regole per exp E exp n E exp n m = n n E*E exp m Questa regola (exp ) si occupa del caso sintattico Exp Exp Essa opera allo stesso modo di (exp + ): fa due chiamate ricorsive e un calcolo In questo caso abbiamo distinto il simbolo dall operatore di prodotto fra numeri naturali vero e proprio, rappresentato con Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.35/51

36 Regole per exp E exp n E exp n? E / E exp? Questa regola (exp div ) si occupa del caso sintattico Exp/Exp Come operatore useremo div, che fa la divisione intera fra numeri naturali: il risultato è un numero naturale e l operazione ha un resto Una volta che abbiamo ottenuto i valori delle espressioni dei sottalberi si presenta un problema Se il valore n è 0 l operatore div non è applicabile! Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.36/51

37 Regole per exp E exp n E exp n n 0 m = n div n E / E exp m Dobbiamo inserire nelle premesse una condizione logica che escluda questo caso, cioè n 0 A questo punto possiamo andare avanti e applicare l operatore div per ottenere il risultato m Ma cosa succede al sistema se il valore di n è proprio 0? Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.37/51

38 Configurazioni Bloccate Supponiamo di mettere il sistema nella configurazione 4/0 Che valore ci aspettiamo per questa espressione? Chiaramente non possiamo aspettarci nessun numero naturale se interpretiamo il simbolo / come la divisione intera! La regola che abbiamo scritto ha una premessa che esclude la sua applicabilità nei casi in cui il divisore sia 0 Non essendoci altre regole che gestiscono questo caso quello che abbiamo è che il sistema si blocca Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.38/51

39 Configurazioni Bloccate Abbiamo visto che una configurazione γ di un sistema di transizioni si dice bloccata se non è terminale e se non esiste nessuna configurazione γ tale che γ γ Questo è proprio il caso di tutte le configurazioni che contengono alberi sintattici in cui in qualche sottoalbero c è una divisione per un espressione che ha valore 0 Es: 4/0, 3 + [53/0], 4 [25/[([2 2])]],... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.39/51

40 Configurazioni bloccate Alla luce di questo fatto dobbiamo rivedere l ipotesi induttiva Quello che possiamo veramente assumere è che, dato un sottoalbero E dell albero che stiamo gestendo, la chiamata ricorsiva del sistema se non si blocca allora è in grado di restituire il valore associato alla espressione rappresentata dal sottoalbero Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.40/51

41 Configurazioni bloccate Quindi in ogni regola in cui nelle premesse usiamo la ricorsione può succedere che il sistema si blocchi provocando, a sua volta, il blocco della regola in questione Ad esempio il sottoalbero 3/0 dell albero 2 [3/0] provocherà il blocco di tutta la configurazione 2 [3/0] gestita dalla regola (exp ) Anche la regola per %, che rappresenta l operatore che dà il resto della divisione intera, può provocare dei blocchi... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.41/51

42 Regole per exp E exp n E exp n n 0 m = n mod n E % E exp m In questa regola (exp mod ) trattiamo il caso sintattico Exp % Exp L operatore semantico è rappresentato con mod Anche in questo caso c è bisogno della premessa che esclude i casi in cui il divisore sia 0 Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.42/51

43 Regole per exp E exp n E exp n? E-E exp? In questa regola (exp ) si presenta un altro problema: che succede se n è più grande di n? Tutto dipende dal dominio semantico che vogliamo utilizzare Se come dominio semantico usiamo l insieme IN allora in questi casi il sistema si deve bloccare Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.43/51

44 Regole per exp E exp n E exp n n n m = n n E-E exp m Se invece usassimo l insieme dei numeri interi allora potremmo trattare i numeri negativi Per semplicità prendiamo IN e facciamo bloccare il sistema Si noti che, come per +, anche al simbolo diamo un doppio significato Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.44/51

45 Regole per exp E exp n (E) exp n Questa regola (exp () ) semplicemente esprime il fatto che il valore di un espressione tra parentesi è uguale al valore dell espressione dentro la parentesi Si noti che la ricorsione è applicata correttamente poiché l albero E è un sottoalbero dell albero (E) Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.45/51

46 Derivazione Facciamo un esempio di derivazione che usa le regole viste: / 2 exp { (exp ), (exp n ): 25 exp 25, (d1): 15 / 2 exp 7, 25 7, 25 7 = 18 } 18 E utilizzata una sottoderivazione (d1)... Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.46/51

47 Derivazione (d1): Vediamo la sottoderivazione (d1) attivata dalla derivazione principale: 15 / 2 exp { (exp div ), (exp n ): 15 exp 15, (exp n ): 2 exp 2, 2 0, 15 div 2 = 7 } 7 Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.47/51

48 Derivazione ad albero E possibile esprimere una derivazione anche costruendo un albero in cui le sottoderivazioni sono sottoalberi: 2 2 (exp n) 3 3 (exp n) 8 8 ((exp n) 11 = [3 +8] 13 (exp + ) 13 = (exp + ) Si noti che l applicazione di regole senza premesse determina un nodo foglia (cioè senza figli) dell albero Nel seguito, tuttavia, continueremo ad utilizzare prevalentemente le sottoderivazioni Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.48/51

49 Funzione di valutazione semantica Possiamo ora definire formalmente la funzione di valutazione semantica E che associa ad un albero sintattico E di Exp il suo valore Il dominio semantico di riferimento è l insieme dei numeri naturali IN con le operazioni in esso definite: +,,,div,mod Il tipo della funzione è il seguente: E:Exp IN La definizione di questa funzione viene data mediante il sistema di transizione Γ exp,t exp, exp Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.49/51

50 Funzione di valutazione semantica Per definire E usiamo una notazione speciale che sta ad indicare che la funzione che stiamo definendo è una funzione di valutazione semantica: E [E] = k se e solo se E exp k Dalla definizione e dalle regole che abbiamo scritto segue che E, a differenza di η, non è definita per tutte le espressioni Infatti abbiamo visto che per certe espressioni E il sistema che abbiamo definito si blocca In questo caso la definizione se e solo se non dà nessun valore per E [E] Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.50/51

51 Funzione di valutazione semantica Una funzione si dice totale se è definita per tutti gli elementi del suo dominio Se almeno per un elemento del dominio la funzione non è definita allora si dice che è parziale E è quindi una funzione parziale In particolare E non è definita per ogni E Exp tale che E exp Spesso si usa la seguente notazione per indicare che la funzione su un certo elemento del dominio non è definita: E [3/0] = si legge bottom o indefinito Università degli Studi di Camerino - Corso di Laurea in Informatica - Programmazione - Semantica - Oggetti sintattici e oggetti semantici p.51/51

Oggetti sintattici. Semantica operazionale dei linguaggi di Programmazione. Oggetti sintattici. Funzioni di valutazione semantica

Oggetti sintattici. Semantica operazionale dei linguaggi di Programmazione. Oggetti sintattici. Funzioni di valutazione semantica Oggetti sintattici Abbiamo più volte sottolineato il fatto che le stringhe di un linguaggio sono di base oggetti simbolici puri Non hanno un significato particolare associato, a parte quello di essere

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

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

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

Elementi di semantica operazionale

Elementi di semantica operazionale Elementi di semantica operazionale 1 Contenuti sintassi astratta e domini sintattici un frammento di linguaggio imperativo semantica operazionale domini semantici: valori e stato relazioni di transizione

Dettagli

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Rappresentazione di numeri Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Un numero e un entità teorica,

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 2 anno accademico 2015-2016 Mario Verdicchio Sistema binario e logica C è un legame tra i numeri binari (0,1) e la logica, ossia la disciplina che si occupa del ragionamento

Dettagli

I SISTEMI DI NUMERAZIONE

I SISTEMI DI NUMERAZIONE ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA I SISTEMI DI NUMERAZIONE Prof. G. Ciaschetti Fin dall antichità, l uomo ha avuto il bisogno di rappresentare le quantità in modo simbolico. Sono nati

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

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti Un ripasso di aritmetica: Rappresentazione binaria - operazioni A queste rappresentazioni si possono applicare le operazioni aritmetiche: riporti 1 1 0 + 1 0 = 1 0 0 24 Un ripasso di aritmetica: Rappresentazione

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

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

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede

Dettagli

Ricorsione. Rosario Culmone. - p. 1/13

Ricorsione. Rosario Culmone. - p. 1/13 Ricorsione Rosario Culmone - p. 1/13 Induzione e Ricorsione Spesso utilizzeremo le definizioni induttive. Sono forme di definizione compatte che descrivono un numero infinito di elementi. I contesti di

Dettagli

ESEMPIO 1: eseguire il complemento a 10 di 765

ESEMPIO 1: eseguire il complemento a 10 di 765 COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento

Dettagli

Informazione analogica e digitale

Informazione analogica e digitale L informazione L informazione si può: rappresentare elaborare gestire trasmettere reperire L informatica offre la possibilità di effettuare queste operazioni in modo automatico. Informazione analogica

Dettagli

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO SISTEMI DI NUMERAZIONE DECIMALE E BINARIO Il sistema di numerazione decimale (o base dieci) possiede dieci possibili valori (0, 1, 2, 3, 4, 5, 6, 7, 8 o 9) utili a rappresentare i numeri. Le cifre possiedono

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p. 3/43 M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p.

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

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

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

Informatica. Rappresentazione dei numeri Numerazione binaria

Informatica. Rappresentazione dei numeri Numerazione binaria Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione

Dettagli

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma

Dettagli

La selezione binaria

La selezione binaria Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI 119 4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI Indice degli Argomenti: TEMA N. 1 : INSIEMI NUMERICI E CALCOLO

Dettagli

Rappresentazione delle informazioni

Rappresentazione delle informazioni Rappresentazione delle informazioni Abbiamo informazioni (numeri, caratteri, immagini, suoni, video... ) che vogliamo rappresentare (e poter elaborare) in un calcolatore. Per motivi tecnologici un calcolatore

Dettagli

11010010 = 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210

11010010 = 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210 Il sistema BINARIO e quello ESADECIMALE. Il sistema di numerazione binario è particolarmente legato ai calcolatori in quanto essi possono riconoscere solo segnali aventi due valori: uno alto e uno basso;

Dettagli

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Corso di Scienza Economica (Economia Politica) prof. G. Di Bartolomeo Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Facoltà di Scienze della Comunicazione Università di Teramo Scelta

Dettagli

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1)

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1) Transitori Analisi nel dominio del tempo Ricordiamo che si definisce transitorio il periodo di tempo che intercorre nel passaggio, di un sistema, da uno stato energetico ad un altro, non è comunque sempre

Dettagli

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD

Dettagli

Calcolo del Valore Attuale Netto (VAN)

Calcolo del Valore Attuale Netto (VAN) Calcolo del Valore Attuale Netto (VAN) Il calcolo del valore attuale netto (VAN) serve per determinare la redditività di un investimento. Si tratta di utilizzare un procedimento che può consentirci di

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

BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario?

BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario? BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario? Cosa c è dietro a questo nome? BIT è un acronimo e deriva da BInary digit, cioè cifra binaria Che

Dettagli

Metodologie di programmazione in Fortran 90

Metodologie di programmazione in Fortran 90 Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di

Dettagli

SISTEMI DI NUMERAZIONE E CODICI

SISTEMI DI NUMERAZIONE E CODICI SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema

Dettagli

Osservazioni sulla continuità per le funzioni reali di variabile reale

Osservazioni sulla continuità per le funzioni reali di variabile reale Corso di Matematica, I modulo, Università di Udine, Osservazioni sulla continuità Osservazioni sulla continuità per le funzioni reali di variabile reale Come è noto una funzione è continua in un punto

Dettagli

Alessandro Pellegrini

Alessandro Pellegrini Esercitazione sulle Rappresentazioni Numeriche Esistono 1 tipi di persone al mondo: quelli che conoscono il codice binario e quelli che non lo conoscono Alessandro Pellegrini Cosa studiare prima Conversione

Dettagli

Lezione 9: Cambio di base

Lezione 9: Cambio di base Lezione 9: Cambio di base In questa lezione vogliamo affrontare uno degli argomenti piu ostici per lo studente e cioè il cambio di base all interno di uno spazio vettoriale, inoltre cercheremo di capire

Dettagli

1 Applicazioni Lineari tra Spazi Vettoriali

1 Applicazioni Lineari tra Spazi Vettoriali 1 Applicazioni Lineari tra Spazi Vettoriali Definizione 1 (Applicazioni lineari) Si chiama applicazione lineare una applicazione tra uno spazio vettoriale ed uno spazio vettoriale sul campo tale che "!$%!

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

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

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano Breve introduzione storica Nel 1854, il prof. Boole pubblica un trattato ormai famosissimo: Le leggi del pensiero. Obiettivo finale del trattato è di far nascere la matematica dell intelletto umano, un

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

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Matematica 1 - Corso di Laurea in Ingegneria Meccanica Matematica 1 - Corso di Laurea in Ingegneria Meccanica Esercitazione su massimi e minimi vincolati 9 dicembre 005 Esercizio 1. Considerare l insieme C = {(x,y) R : (x + y ) = x } e dire se è una curva

Dettagli

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente Funzioni In matematica, una funzione f da X in Y consiste in: 1. un insieme X detto dominio di f 2. un insieme Y detto codominio di f 3. una legge che ad ogni elemento x in X associa uno ed un solo elemento

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

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

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16 Un ripasso di aritmetica: Conversione dalla base 1 alla base 16 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base sedici sarà del tipo: c m c m-1... c 1 c (le c i sono cifre

Dettagli

Polli e conigli. problemi Piano cartesiano. Numeri e algoritmi Sistemi e loro. geometrica. Relazioni e funzioni Linguaggio naturale e

Polli e conigli. problemi Piano cartesiano. Numeri e algoritmi Sistemi e loro. geometrica. Relazioni e funzioni Linguaggio naturale e Polli e conigli Livello scolare: primo biennio Abilità Interessate Calcolo di base - sistemi Risolvere per via grafica e algebrica problemi che si formalizzano con equazioni. Analizzare semplici testi

Dettagli

ALGEBRA DELLE PROPOSIZIONI

ALGEBRA DELLE PROPOSIZIONI Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra

Dettagli

Laurea Specialistica in Informatica

Laurea Specialistica in Informatica Corso di Laurea in FISICA Laurea Specialistica in Informatica Fisica dell informazione 1 Elementi di Architettura degli elaboratori Prof. Luca Gammaitoni Informazioni sul corso: www.fisica.unipg unipg.it/gammaitoni/fisinfoit/gammaitoni/fisinfo

Dettagli

Funzioni. Funzioni /2

Funzioni. Funzioni /2 Funzioni Una funzione f è una corrispondenza tra due insiemi A e B che a ciascun elemento di A associa un unico elemento di B. Si scrive: f : A B l'insieme A si chiama il dominio della funzione f, l'insieme

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

Dettagli

Le Macchine di Turing

Le Macchine di Turing Le Macchine di Turing Come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale Il nastro Il nastro è infinito suddiviso in celle In una cella

Dettagli

Transitori del primo ordine

Transitori del primo ordine Università di Ferrara Corso di Elettrotecnica Transitori del primo ordine Si consideri il circuito in figura, composto da un generatore ideale di tensione, una resistenza ed una capacità. I tre bipoli

Dettagli

II.f. Altre attività sull euro

II.f. Altre attività sull euro Altre attività sull euro II.f È consigliabile costruire modelli in carta o cartoncino di monete e banconote, e farli usare ai bambini in varie attività di classe fin dal primo o al più dal secondo anno.

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione grafica di entità e attributi PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema

Dettagli

FISICA. Le forze. Le forze. il testo: 2011/2012 La Semplificazione dei Testi Scolastici per gli Alunni Stranieri IPSIA A.

FISICA. Le forze. Le forze. il testo: 2011/2012 La Semplificazione dei Testi Scolastici per gli Alunni Stranieri IPSIA A. 01 In questa lezione parliamo delle forze. Parliamo di forza quando: spostiamo una cosa; solleviamo un oggetto; fermiamo una palla mentre giochiamo a calcio; stringiamo una molla. Quando usiamo (applichiamo)

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

Analizzatore lessicale o scanner

Analizzatore lessicale o scanner Analizzatore lessicale o scanner Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser. Lo scanner, attraverso un esame carattere per carattere dell'ingresso,

Dettagli

Formattazione. ü Introduzione

Formattazione. ü Introduzione Formattazione ü Introduzione Abbiamo fatto un bel po' di lavoro con Mathematica, vero? Abbiamo visto come creare, valutare, semplificare, disegnare, programmare, cucinare, pescare, ed anche come sfilare

Dettagli

1 Principali funzioni e loro domini

1 Principali funzioni e loro domini Principali funzioni e loro domini Tipo di funzione Rappresentazione Dominio Polinomio intero p() = a n + + a n R p() Polinomio fratto q() 6= q() 2n Radici pari p f() f() 2n+ Radici dispari p f() R Moduli

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Variabili e tipi di dato

Variabili e tipi di dato Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per

Dettagli

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Le equazioni Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Definizione e caratteristiche Chiamiamo equazione l uguaglianza tra due espressioni algebriche,

Dettagli

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe

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

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

La misura degli angoli

La misura degli angoli La misura degli angoli In questa dispensa introduciamo la misura degli angoli, sia in gradi che in radianti, e le formule di conversione. Per quanto riguarda l introduzione del radiante, per facilitarne

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

Dettagli

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che:

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che: Teoria dei Giochi, Trento, 2004/05 c Fioravante Patrone 1 Teoria dei Giochi Corso di laurea specialistica: Decisioni economiche, impresa e responsabilità sociale, A.A. 2004/05 Soluzioni degli esercizi

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

RETI E SOTTORETI. Copyright 2010 Marco Salatin Pagina 1

RETI E SOTTORETI. Copyright 2010 Marco Salatin Pagina 1 RETI E SOTTORETI Copyright 2010 Marco Salatin Pagina 1 COME CREARE UNA RETE DI COMPUTER Le maschere di rete Una maschera è uno schema usato per filtrare precisi caratteri o numeri da stringhe di caratteri

Dettagli

L opposizione digitale-analogico: un problema di fondamenti di scienze dell informazione

L opposizione digitale-analogico: un problema di fondamenti di scienze dell informazione L opposizione digitale-analogico: un problema di fondamenti di scienze dell informazione Luca Mari 20.1.00 Il problema Termini connotati tecnologicamente (p.es. esistono componenti elettronici che operano

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Codifica binaria dei numeri relativi

Codifica binaria dei numeri relativi Codifica binaria dei numeri relativi Introduzione All interno di un calcolatore, è possibile utilizzare solo 0 e 1 per codificare qualsiasi informazione. Nel caso dei numeri, non solo il modulo ma anche

Dettagli

Dall italiano al linguaggio della logica proposizionale

Dall italiano al linguaggio della logica proposizionale Dall italiano al linguaggio della logica proposizionale Dall italiano al linguaggio della logica proposizionale Enunciati atomici e congiunzione In questa lezione e nelle successive, vedremo come fare

Dettagli

4. Operazioni aritmetiche con i numeri binari

4. Operazioni aritmetiche con i numeri binari I Numeri Binari 4. Operazioni aritmetiche con i numeri binari Contare con i numeri binari Prima di vedere quali operazioni possiamo effettuare con i numeri binari, iniziamo ad imparare a contare in binario:

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

CONCETTO DI LIMITE DI UNA FUNZIONE REALE

CONCETTO DI LIMITE DI UNA FUNZIONE REALE CONCETTO DI LIMITE DI UNA FUNZIONE REALE Il limite di una funzione è uno dei concetti fondamentali dell'analisi matematica. Tramite questo concetto viene formalizzata la nozione di funzione continua e

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni

Dettagli

Università degli Studi di Ferrara Corso di Laurea in Informatica A.A. 2007/2008

Università degli Studi di Ferrara Corso di Laurea in Informatica A.A. 2007/2008 Università degli Studi di Ferrara Corso di Laurea in Informatica A.A. 2007/2008 Tutorato di Architettura degli Elaboratori e Laboratorio Cambio di base Operazioni binarie Dott.ssa Ambra Giovannini 15 Aprile

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione La Codifica dell informazione (parte 1) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente:

Dettagli

CALCOLO COMBINATORIO

CALCOLO COMBINATORIO CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,

Dettagli

Parte 1. Vettori di bit - AA. 2012/13 1.1

Parte 1. Vettori di bit - AA. 2012/13 1.1 1.1 Parte 1 Vettori di bit 1.2 Notazione posizionale Ogni cifra assume un significato diverso a seconda della posizione in cui si trova Rappresentazione di un numero su n cifre in base b: Posizioni a n

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

La struttura dati ad albero binario

La struttura dati ad albero binario La struttura dati ad albero binario L albero è una struttura dati nella quale le informazioni sono organizzate in modo gerarchico, dall alto verso il basso. Gli elementi di un albero si chiamano nodi,

Dettagli

Corrispondenze e funzioni

Corrispondenze e funzioni Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei

Dettagli