Materiali. Logica: tutorials e slides power point in rete.

Slides:



Advertisements
Presentazioni simili
Metodologia Sperimentale Agronomica / Metodi Statistici per la Ricerca Ambientale Marco Acutis a.a CdS.
Advertisements

I circuiti elettrici.
IL GOLD STANDARD: INTRODUZIONE
XXXII CONVEGNO NAZIONALE Società Italiana di Chimica Agraria
Il problema dello zaino
Campi di gravità e topografia: analisi con QGIS
Regole associative Gianluca Amato
Ciclo di Seminari e Corso
Valutazione dei risultati della classificazione
Generalità Laboratorio Arduino.
Natura e origini della attuale crisi europea
ECONOMIA DELLE ISTITUZIONI FINANZIARIE
Stato di COMPASS Franco Bradamante CSN1 Roma, 16 luglio 2012.
La struttura dei materiali
ESSERE HOMELESS: PERCORSI DI VITA E FATTORI DETERMINANTI
Introduzione a VPN Ing. Gianpiero Ciacci.
Le verifiche empiriche del teorema di Heckscher-Ohlin: il paradosso di Leontief Wassily Leontief realizzò la prima verifica empirica del teorema di HO.
…. modello di Solow?.
Politica economica: che cosa è?
 π BUZZO GIACOMO D’AGOSTINO ALBERTO DE ANGELIS FEDERICA
“BLAISE PASCAL”- Voghera-
La vitamina C è una molecola contenente C,H e O
REDDITO DI CITTADINANZA E OPPORTUNITA’ ECONOMICA: UN CONFRONTO TRA ITALIA E RESTO D’EUROPA Pasquale Tridico Dipartimento di Economia, Università Roma Tre.
Classificazione e Predizione
L’economia monetaria Corso di Economia delle Istituzioni Finanziarie
L’infiltrazione LM-75: 2016/2017
UN NUOVO MODO DI GUARDARE IL MONDO
LA PREVENZIONE INCENDI NELLE STRUTTURE RELIGIOSE APERTE AL PUBBLICO
LE NOVITÀ DEL BILANCIO 2016 …………………………………………………………………………………………………………..
Le unità territoriali per le analisi socio-economiche
Pompe di calore a integrazione geotermica
ISTITUZIONI (regole scritte e nn scritte che governano l’interazione tra individui) → d.p. e contratti → norme sociali con appropriati Δ delle regole.
Università di Roma Tor Vergata
Convegno europeo sui minori
ATIPICITA’ DEL FATTORE UMANO NEL PILOTAGGIO DEI DRONI
CALENDARIO LEZIONI AGGIORNATO
RAEE è l’acronimo di Rifiuti da Apparecchiature Elettriche ed Elettroniche; ogni elettrodomestico ha un ciclo di vita terminato il quale, sia per malfunzionamento.
Appunti per ostetriche e non solo
Ricerca e innovazione:
Pubblica Amministrazione: semplificazione e costi della politica
Il processo di analisi dei fabbisogni
Comunicazioni Assemblea nazionale TTA 1-2 dicembre 2016
Proactive Care e Proactive Care Advanced
Maria Antonietta Volonté Dipartimento di Neurologia
IL CONFLITTO NELLA CHIESA PRIMITIVA
Piano di formazione Docenti neoassunti a.s. 2016/2017
È possibile rendere comprensibile oggi questo termine filosofico, al di fuori della esigua cerchia degli specialisti? Io una volta ci ho provato in una.
ACCORDO AGROAMBIENTALE D’AREA OPPORTUNITA’ PER LA VALDASO
Il secondo principio.
PROGETTO RELAZIONI PREPOTENTI
Vitamine Sono sostanze organiche a basso peso molecolare strutturalmente assai varie indispensabili per lo svolgimento delle funzioni vitali, di origine.
La misurazione e la valutazione della performance
1.2 Nuovi prodotti alimentari
ASSOCIAZIONE ITALIANA GIURISTI DI IMPRESA
L’evoluzione del Diritto delle Assicurazioni Continuità o rottura con il passato? Avv. Giuseppe Ranieri Studio Legale Tributario Ranieri Comitato Esecutivo.
ADOZIONE INTERNAZIONALE
Esame delle modifiche apportate al precedente ordinamento
e l’associazione in partecipazione
Profilo biografico e opere
IL TOTALITARISMO.
L’Imposta sul reddito delle società (IRES)
Asl Vco – Direzione Generale
Assunzioni, Attività, Investimenti
UROLOGIA - RIMINI VISITE UROLOGICHE AMBULATORIALI REGIME RICOVERO
Endometriosi profonda: quando la chirurgia
Nota AIFA 75 Determinazione 18 novembre 2010 (GU 29 novembre 2010, n. 279): modifiche, con riferimento alla nota AIFA 75,  alla determinazione del 4 gennaio.
PIANO DI RIORDINO PRESIDI DI FOLIGNO E SPOLETO
SINTOMI DEL BASSO APPARATO URINARIO 4 MARZO 2017
Con gli occhi di Maxwell
Transcript della presentazione:

Materiali. Logica: tutorials e slides power point in rete. www.dm.uniba.it/Members/borzacchini G. Lolli - La logica formale http://homepage.sns.it/lolli/dispense07.htm e-mail: luigi.borzacchini@uniba.it

Introduzione alla LOGICA MATEMATICA Prof. Luigi Borzacchini I. I segni, gli algoritmi, i linguaggi, la rappresentazione, sintassi e semantica.

Il pensiero formale Che intendiamo per ‘formale’? La ‘forma’ contrapposta al ‘contenuto’? Come nei temi di italiano : il contenuto è buono, ma la forma è sgrammaticata. O alla ‘materia’? un tavolo fatto di legno e di forma rettangolare. O alla ‘sostanza’? Come nel diritto in cui il ‘vizio di forma’ annulla un procedimento sostanzialmente ineccepibile. ‘Formale’ in matematica e nella computer science sta per sintattico, basato sulla sola manipolazione di segni secondo regole, mentre semantico è relativo al significato.

Ragione formale (sintattica): «Ragionare senza comprendere» Ragionare tramite la sola manipolazione di segni secondo regole. E’ una capacità soltanto umana. Gli animali hanno un qualche linguaggio, una certa logica concreta, anche una semplice aritmetica di piccoli numeri. Ma non hanno una ragione formale. La ragione formale e la logica formale sono assenti anche nelle popolazioni cosiddette ‘primitive’, e storicamente appare insieme alla alfabetizzazione. E il computer è la macchina sintattica, che possiede solo la ragione formale: l’uomo moderno è l’uomo primitivo + il computer + la loro fusione.

La logica aristotelica La logica ha le sue radici ne linguaggio, nella capacità solo umana di «ragionare senza comprendere», manipolando segni linguistici. Il linguaggio ha alla sua base le singole parole, i ‘concetti’ in logica, con le quali si formano frasi del tipo <S è P>, le ‘proposizioni’ in logica, dove S è il soggetto/sostanza e P il predicato (Giovanni è alto, 2 è pari, gli ateniesi sono greci), il soggetto può essere un nome proprio (una ‘sostanza’ individuale) o un nome comune. Il predicato è un nome comune. Il mondo, per i Greci era fatto di sostanze individuali cui sono attaccati innumerevoli predicati.

Il triangolo semiotico Sino dagli antichi Greci la rappresentazione sintattica si è strutturata come un triangolo i cui tre vertici sono Il mondo reale, la mente e il linguaggio. Le relazioni interne al linguaggio caratterizzano la sintassi, mentre le relazioni tra linguaggio e realtà caratterizzano la semantica, il regno del significato. Le parole (rosso) hanno una intensione (la ‘rossità’) ed una estensione (l’insieme degli oggetti rossi). Il termine ‘pari’ ha come intensione la definizione (divisibile per 2) e come estensione {2,4,6,8,10,…}

Difficoltà della logica aristotelica La logica aristotelica aveva difficoltà a trattare soprattutto la negazione e le relazioni. Esistono infatti parole cui è difficile trovare il corrispondente nel mondo reale: essere, verità, negazione, etc. A cosa corrisponde nel mondo e nella mente la parola ‘non’? Quale fatto descrive la frase «non c’è niente di rosso»? O «questa frase non è vera» (paradosso del mentitore). E quale è la sostanza e quale è il predicato in «Nicola è più alto di Michele», che possiamo anche scrivere come «Michele è più basso di Nicola»?

La logica matematica La logica moderna nasce quando il linguaggio matematico non è più limitato a trattare le quantità (numeri interi e figure geometriche) che nel linguaggio comune sono aggettivi o nomi comuni, ma comincia a fondarsi su segni (algebra simbolica), relazioni (numero reale) e concetti negativi (infinito, infinitesimi). La proposizione assume allora la forma <p(t1, t2, …, tn)> : «fido mangia la carne sul tappeto» diventa mangiare(fido, carne, tappeto)

Storicamente la logica e la matematica sono alle radici della computer science: il primo computer con programma registrato si deve a Charles Babbage, un matematico inglese dell’Ottocento. Il modello teorico degli algoritmi e dello stesso computer è la macchina di Turing, l’attuale architettura dei computer è sostanzialmente ascritta a John von Neumann: ebbene Turing e von Neumann erano logici e matematici di un secolo fa, legati al più importante approccio alla indagine matematica all’inizio del secolo: il “formalismo”. Ed anche oggi, tutti gli aspetti sia teorici che applicativi della computer science hanno una base matematica, più precisamente in un approccio ‘formalista’

L’anima logico-matematica del computer Il computer attuale nasce circa 70 anni fa dalla collaborazione di due classi di scienziati: gli ‘elettronici’ e i ‘logici-matematici’ che fornirono rispettivamente il corpo e l’anima del computer. L’elettronica ha subito cambiamenti epocali: dai relais alle valvole, ai transistor, ai microchip sempre più piccoli e potenti, tanto che questa evoluzione di misura in ‘generazioni’ L’anima logico-matematica invece è rimasta sempre la stessa: lo schema della macchina universale di Turing e l’architettura di von Neumann.

La logica, gli algoritmi, l’argomentazione La logica tratta delle argomentazioni razionali, in tutti i campi, dalla filosofia alla matematica, dal diritto alla tecnica. C’è una qualche somiglianza tra i calcoli (le operazioni, gli algoritmi) e i ragionamenti, ad esempio filosofici? Per Leibniz (XVII secolo) si! Il computer nasce dall’idea che ogni argomentazione logica, ogni dimostrazione, è un algoritmo, e che ogni calcolo, ogni algoritmo è una dimostrazione, una argomentazione logica

… e poi c’è la x, il segno algebrico I SEGNI Ma che cosa sono i segni? Qualcosa che sta per qualcos’altro (il significato): L’effetto per la causa (il fumo per il fuoco, gli occhi lucidi per la febbre, etc.) Per convenzione (il fischio dell’arbitro per il fallo, le lettere per i suoni alfabetici, etc.) Per analogia o similitudine (silhouette di uomini e donne sui bagni, segnali stradali: , , etc.) Il significato è preciso, fisso, ben definito. … e poi c’è la x, il segno algebrico

I segni matematici e logici La x è l’incognita, quello che non si sa e quindi non significa niente, non sappiamo neanche se sia un numero, un cliente, uno studente… Oppure è generico o variabile I segni algebrici non hanno un vero ‘significato’. x+2=5 mi dice che x=3. Anche se supponiamo di sapere che cosa ‘significano’ +, 2, =, 5, da dove ricaviamo che x ‘significa’ o ‘denota’ il 3? Il significato che i segni matematici hanno perso, in realtà è stato ‘trasferito’ agli algoritmi che trattano segni, e gli algoritmi manipolano solo segni x+2=5  x=5-2  x=3

Sintassi e Semantica La distinzione tra sintassi e semantica caratterizza la logica matematica attuale rispetto all’antica logica aristotelica La sintassi tratta della struttura formale delle espressioni, a prescindere dal significato. «A è un B» è una struttura formale che descrive il tipo più comune di giudizi. Ma non sappiamo se sia vera o falsa, dovremmo conoscere il significato di A e B. Il significato si associa a espressioni. In italiano «il cane mangia la carne» ha un significato, «cane» ha un significato, «c» non ha alcun significato.

La deduzione e la verità Le deduzioni hanno aspetti tanto semantici (contenutistici) che sintattici (formali). Ad esempio da «Michele è brindisino» e «Tutti i brindisini sono pugliesi» si deduce «Michele è pugliese», ed il significato è chiaro ed evidente. Ma se dico: «Michele è un sarchiapone» e «Tutti i sarchiaponi sono sesquipedali», posso dedurre formalmente «Michele è sesquipedale», ma il significato è oscuro: la deduzione è in questo caso un fatto solo sintattico, relativo ad una forma del tipo «a è un B», «tutti i B sono C», e dunque «a è un C».

Il calcolo Anche i calcoli hanno aspetti tanto semantici che sintattici. Ad esempio il problema: <ogni cartone contiene 6 uova, la mamma ha comprato 4 cartoni. Quante uova ha comprato?>, la risposta è 24 Ma se il problema è: <ogni struck ha 6 stiff e ho 4 struck. Quanti stiff ho?>, la risposta è 24. Anche qui la stessa differenza: da un punto di vista sintattico i due problemi sono identici e si riducono al calcolo 64 = 24, ma semanticamente il primo è comprensibile il secondo no.

Gli algoritmi e le macchine. L’algoritmo è una macchina sintattica. Il computer è la macchina sintattica universale. Input: dati Output: soluzione algoritmo Sintattica perché consiste nel manipolare segni secondo regole fisse indipendenti dal significato dei segni. Esistono problemi risolubili meccanicamente, e problemi che richiedono l’assemblaggio non ovvio di diverse procedure. E soprattutto ‘creare’ algoritmi non è una procedura meccanica, e non lo è adattarli ai problemi concreti. Può essere facile o difficile, ma è spesso un’attività creativa, in quanto il problema deve essere ‘rappresentato’ formalmente

La rappresentazione (semantica) La rappresentazione iconica La rappresentazione sintattica CASA 𝐴=𝜋 𝑟 2 Nessuna somiglianza, non è analitica (la lettera C di CASA non corrisponde a nessuna parte di una casa), ha natura linguistica, dipende da un particolare linguaggio, ma può rappresentare anche termini astratti. Si basa sulla somiglianza, è analitica (il camino nella immagine della casa è la immagine di un camino), è universale, ma ha difficoltà coi termini astratti, giustizia, verità, negazione, essere, … Talora si usano insieme i due tipi di rappresentazione

Le primitive e i segni interpretabili Se in algebra numerica scrivo a+b=b+a (la proprietà commutativa), i segni usati sono a, b, +, =. Ma hanno un ruolo diverso i primi due dai secondi due. Trattando di numeri, a e b sono segni interpretabili, posso assegnare loro il significato che desidero: a può essere interpretato come 3 o 7 o 3418, …. E così anche b. + e = hanno invece un significato immutabile, sono delle primitive dell’aritmetica, non sono interpretabili, ed il loro ‘significato’ è dato dalle regole della manipolazione algebrica.

Il computer manipola segni Che ‘significa’ un segno quando lavori col computer? Solo l’uso che di quel segno faranno il sistema operativo o il compilatore, che sono gli algoritmi che manipolano i segni sul computer. Sono segni interpretabili gli indici, i parametri, gli indirizzi, etc., assegnabili a piacere, altri sono delle primitive, il cui significato è ‘built in’, fissato nel compilatore dal modo con cui esso li manipola: if-then-else, for, while, le operazioni logico-aritmetiche, etc. Non esistono algoritmi senza segni da manipolare e non esistono segni senza algoritmi che li manipolano

I linguaggi di rappresentazione Realtà e Segni sono diversi La rappresentazione sintattica è un linguaggio per esprimere fatti e deduzioni ottenute da essi tramite segni. Ogni linguaggio di rappresentazione deve quindi fornire sia una ‘rappresentazione’ sintattica di ogni possibile fatto (come proposizione), sia un ‘calcolo’ per dedurre dai fatti (come inferenza)le loro possibili conseguenze logiche.

Linguaggio e Calcolo Leibniz si era accorto che la rappresentazione sintattica aveva questo grande vantaggio: era sia un linguaggio di rappresentazione che un calcolo. Ogni individuo e ogni fatto del mondo da rappresentare poteva essere rappresentato tramite i simboli: la rappresentazione era universale. Il divenire e le deduzioni in tale mondo potevano essere ‘simulate’ con la manipolazione dei segni secondo regole: la rappresentazione era un calcolo. L’algebra, l’analisi, i linguaggi di programmazione, e soprattutto la logica e gli algoritmi sono linguaggi di rappresentazione, linguaggi formali.

Alfabeti e linguaggi formali Un alfabeto S è un insieme di segni, ad esempio: {a, b, c, d, … , u, v, z} è l’alfabeto italiano Una sequenza finita di segni di un alfabeto è un’espressione (o parola) dell’alfabeto: bdactru Indicheremo con S* l’insieme di tutte le parole. Una parte L di S* è detta un linguaggio. Ad esempio {abaco, abate, abbinare, …, zucca, zuzzurellone} è il lessico del linguaggio italiano. I linguaggi naturali hanno un’origine storica e non sono formati tramite regole precise. I linguaggi formali sono stati costruiti artificialmente e sono formati tramite regole precise

I linguaggi finiti sono descritti elencandone le parole. Un linguaggio può essere usato come alfabeto per un linguaggio più complesso: Alfabeto italiano  Lessico italiano (parole) nel vocabolario Lessico Italiano  Linguaggio italiano (frasi) Frasi in italiano  Libri in italiano Cifre  Numeri interi Numeri interi, {+, -, , :, (, )}  Espressioni Espressioni  Sequenza di espressioni (eserciziario) Cifre, simboli e lettere (tastiera) Istruzioni in C++ Istruzioni in C++  Programmi in C++ Programmi in C++  Libreria programmi in C++ I linguaggi finiti sono descritti elencandone le parole. Ma come si può descrivere un linguaggio infinito?

Grammatiche Generative Il linguaggio formale è dato da una grammatica generativa che produce tutte e sole le espressioni del linguaggio (formule ben formate, fbf). Esempio: i numeri Alfabeto 1: {|} Grammatica: i) sono numeri | e i numeri seguiti da | ii) nient’altro è un numero. Linguaggio: {|, ||, |||, ||||, |||||, ||||||, ….} Alfabeto 2: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, le cifre Grammatica: i) sono numeri le cifre e i numeri seguiti da una cifra ii) nient’altro è un numero. Linguaggio: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,…}

Esempio: le espressioni aritmetiche Alfabeto: {+, -, , :, (, ), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Grammatica: i) sono numeri le cifre e le cifre seguite da un numero [così generiamo tutti i numeri], ii) sono espressioni tutti i numeri, iii) Se E è una espressione, -E è una espressione, iiii) Se E è una espressione, (E + E), (E - E), (E : E), (E  E) sono espressioni. iiiii) nient’altro è una espressione. Distinguiamo ‘sostituzione’ e ‘rimpiazzamento’ di un simbolo in una espressione formale. La ‘sostituzione’ avviene ovunque con lo stesso simbolo, come in algebra, il ‘rimpiazzamento’ si può fare sostituendo simboli distinti: le due E in E+E possono essere due espressioni qualsiasi anche diverse.

Simboli ausiliari e Rimpiazzamento Usando i simboli ausiliari Cifra, Numero ed Espressione, che non compariranno nel linguaggio, possiamo scriverla nella forma: Cifra  0/1/2/3/4/5/6/7/8/9 Numero  Cifra / Cifra Numero Espressione  Numero / - Espressione / (Espressione + Espressione) / (Espressione : Espressione) / (Espressione  Espressione) ove / vuol dire ‘oppure’ e i simboli ausiliari a destra di  possono essere ‘rimpiazzati’ anche da termini diversi.

Così che possiamo costruire L’Espressione (-37  (125 + 7)) generandola: Espressione  (Espressione  Espressione)  (- Espressione  (Espressione + Espressione))  (- Numero  (Numero + Numero))  (- Cifra Numero  (Cifra Numero + Cifra))  (- Cifra Numero  (Cifra Cifra Numero + Cifra))  (- Cifra Cifra  (Cifra Cifra Cifra + Cifra))  (- 37  (125 + 7))

Esempio: le espressioni algebriche Alfabeto: {+, -, , :, (, ), 0, 1, 2, 3, 4, ….., x, y, z, ….} Grammatica: i) sono espressioni tutti i numeri e tutte le variabili [diamo per già generati i numeri] ii) Se E è una espressione, -E è una espressione iii) Se E1 e E2 sono espressioni, (E1 + E2), (E1 - E2), (E1 : E2), (E1  E2) sono espressioni. iiii) nient’altro è una espressione. Esempio: (((x+3)  (y-x)) : ((x  y) + 3)). Generiamola: E  (E1 : E2)  ((E11  E12) : (E21 + E22))  (((E111+ E112)  (E121- E122)) : ((E211 E212)+ E22))  ((( x + 3 )  ( y - x )) : (( x  y) + 3 ))

Espressione scritta come un albero, senza parentesi : E1 E2  + E11 E12 E21 E22 + -  E111 E112 E121 E122 E211 E212 E22 x 3 y x x y 3

scriviamo le espressioni ma intendiamole come alberi :  + + -  x 3 y x x y 3 ((( x + 3 )  ( y - x )) : (( x  y ) + 3 )) e il calcolo si effettua dal basso verso l’alto: prova a porre x=2 e y=4, ottenendo 10/11 10/11 10 11 5 2 8 2 4 2 2 4