Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini VII. Relazioni e funzioni.

Slides:



Advertisements
Presentazioni simili
LIMITI:DEFINIZIONI E TEOREMI
Advertisements

Algebra Relazionale 3 Università degli Studi del Sannio
Calcolo Combinatorio.
Algebra di Boole Casazza Andrea 3EA I.I.S. Maserati.
MATEMATICA PER L’ECONOMIA
Sommario Nelle lezioni precedenti abbiamo introdotto tutti gli elementi che formano un particolare tipo di linguaggio logico, denominato linguaggio predicativo.
Capitolo 8 Sistemi lineari.
Intelligenza Artificiale
Relazione tra due insiemi:
Definizione e caratteristiche
Il linguaggio della geometria
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Il ragionamento classico
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Università degli Studi di Roma Tor Vergata
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Elementi di Matematica
Macchine non completamente specificate
CONCETTO DI FUNZIONE Una funzione f da X in Y consiste in:
A cura Prof. Salvatore MENNITI
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Semantica di Tarski.
L'algebra di Boole e le sue applicazioni
Corso di Matematica Discreta I Anno
Corso di Matematica Discreta cont. 2
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Conoscenza e ragionamento Logica dei predicati del primo ordine.
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Logica dei predicati del primo ordine.
IL GIOCO DELLA LOGICA.
GLI INSIEMI Presentazione a cura della Prof.ssa anNUNZIAta DI BIASE
Algebra di Boole … logica matematica Progetto Eracle 2
Relazioni binarie.
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
Funzioni Dati due insiemi non vuoti A e B,
TEORIA DEGLI INSIEMI INIZIO.
Definizione e caratteristiche
La logica è lo studio del ragionamento.
Calcolo letterale.
Didattica e Fondamenti degli Algoritmi e della Calcolabilità Terza giornata: principali classi di complessità computazionale dei problemi Guido Proietti.
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Rappresentazione dell'informazione
Grammatiche Grammatiche libere da contesto Grammatiche regolari
Grammatiche non contestuali (1)
Corso di Matematica Discreta 4
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
Automi temporizzati.
Algebra di Boole ?.
F U N Z I O N I Definizioni Tipi Esponenziale Logaritmica
Le funzioni.
Insiemi DE VITIS GABRIELE.
FUNZIONE: DEFINIZIONE Una FUNZIONE è una LEGGE che ad ogni elemento di un dato insieme A, detto DOMINIO, associa uno ed un solo elemento di un insieme.
Le funzioni goniometriche
FUNZIONE: DEFINIZIONE
Le funzioni matematiche e il piano cartesiano
Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini VIII. Insiemi e Strutture Dati.
Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni.
TEORIA ELEMENTARE DEGLI INSIEMI
Elementi di Logica Teoria degli insiemi Proff. A. Albanese – E. Mangino Dipartimento di Matematica e Fisica “E. De Giorgi” - Università del Salento Precorso.
Elementi di Topologia in R
Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini IV. Introduzione elementare alla.
Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini V. La logica dei predicati. Sintassi.
FUNZIONI MATEMATICHE DANIELA MAIOLINO.
Logica Lezione 8, DISTRIBUIRE COMPITO 1.
 Scale di Misura 4Scala nominale 4Scala ordinale Argomenti della lezione.
I PARALLELOGRAMMI PARALLELOGRAMMI
Logica Lezione 11, Annuncio Non si terrà la lezione di Lunedì 16 Marzo.
Cenni sull'insiemistica
INSIEMI E LOGICA PARTE QUARTA.
Le relazioni tra due insiemi
Le frazioni A partire da N vogliamo costruire un nuovo insieme numerico nel quale sia sempre possibile eseguire la divisione. Per fare ciò dobbiamo introdurre.
Transcript della presentazione:

Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini VII. Relazioni e funzioni

Le relazioni Il trattamento formale delle relazioni è una delle novità principali della logica e della matematica moderna. Nel formalismo di Frege la relazione è data sintatticamente da un simbolo predicativo con due o più argomenti: ama(Michele, Francesca) per o passa_per(r, A, B) per. Semanticamente una relazione R n-aria (cioè con n argomenti) è data dall’insieme delle n-ple (a 1, a 2,…, a n ) per le quali R(a 1, a 2,…, a n ) è soddisfatta. Se M è il nostro universo, R  M n

Consideriamo ad esempio l’insieme  di tutti i numeri interi, una relazione m-aria sarà quindi interpretata come un sottoinsieme di  m. Una relazione binaria su  sarà un sottoinsieme dell’insieme delle coppie:  2 ={(1,1), (1,2), (1,3), …, (2,1), (2,2),…, (3,1),…, (n,m),…}. Consideriamo per esempio la relazione binaria divisore(x,y),x|y                   …. ………………………………………………………. rappresentata dalle coppie segnate con  nella tabella. Nell’altro esempio abbiamo la relazione ‘passa per’ tra due       Bari Pisa Roma Milano Torino Firenze Po Tevere Dora Adige Arno Aniene insiemi diversi: città e fiumi.

I Grafi Un grafo è formato da un insieme di vertici V ed un insieme di archi (formati da due vertici). Ma per arco possiamo intendere o una coppia ordinata (a,b)  V 2, come una strada a senso unico, o una coppia non ordinata {a,b}, come una strada a doppio senso (o un sentiero). Nel primo caso parliamo di grafo diretto (o orientato), nel secondo caso di grafo indiretto (o non orientato). Risulta chiaro quindi che nello studio delle relazioni binarie risulta utile rappresentarle tramite grafi diretti.

Per le relazioni binarie esiste quindi la rappresentazione tramite un grafo diretto. Per gli esempi precedenti il grafo è: (a sinistra per la relazione ‘divisore’ ignorando l’1 che è divisore di tutti gli interi e le frecce di transitività, a destra per la relazione ‘passa per’) Bari Torino Pisa Firenze Roma Milano Dora Po Arno Adige Tevere Aniene Un altro esempio già incontrato riguardava le relazioni di ‘inclusione’ tra insiemi o di ‘implicazione’ tra definizioni negli alberi delle tassonomie o nell’insieme dei domini numerici. Tutti gli esempi visti riguardavano relazioni binarie, le più frequenti, ma in computer science si trovano relazioni con più numerosi argomenti, come vedremo in seguito

Da una relazione binaria R  X  Y si definisce la relazione inversa R -1  Y  X così definita (y,x)  R -1  (x,y)  R. Nella rappresentazione tramite grafo la relazione inversa si ottiene semplicemente invertendo le frecce (padre -1 è figlio) Date due relazioni binarie R  X  Y e S  Y  Z, si può definire la relazione composta R  S  X  Z così definita (x,z)  R  S   y (x,y)  R  (y,z)  S. Nella rappresentazione tramite grafo la relazione composta si ottiene da un cammino di due frecce. Lazio Ile de france Scotland Lombardia Italia Francia Regno Unito Roma Bergamo Parigi Cardiff Milano Glascow

Qual è la relazione inversa della relazione ‘divisore’? Se divisore(4,20) 4|20 allora…… (20,4). E quindi divisore -1 = multiplo. In termini insiemistici: (x,y)  multiplo  (y,x)  divisore. In termini logici: multiplo (x,y)  divisore (y,x) ovvero y|x. Se R è la relazione fratello e S è la relazione padre, allora R  S è la relazione, in quanto x è lo zio di y se esiste un z di cui x è fratello e che è il padre di y. In termini insiemistici: (x,y)  R  S   z (x,z)  R  (z,y)  S. In termini logici: zio(x,y)   z fratello(x,z)  padre(z,y) multiplo zio

Relazioni funzionali e funzioni Consideriamo la relazione nella_regione(x,y) da interpretarsi come la frase. La sua interpretazione standard sarebbe: {(Firenze, Toscana), (Torino, Piemonte), (Milano, Lombardia), (Pisa, Toscana), (Roma, Lazio), (Bari, Puglia),…}. Essa ha una particolarità: ogni città può appartenere al massimo ad una regione; una relazione f(x,y) con tale proprietà si dice funzionale, e da essa si può costruire una funzione y=f(x). Nel nostro esempio possiamo definire la funzione regione: Toscana =regione(Firenze), Piemonte =regione(Torino), Lombardia =regione(Milano), etc.

L’insieme X su cui la funzione f è definita si dice dominio, l’insieme Y dei suoi valori si dice codominio, e si scrive f: X  Y. Se la funzione assume un valore per ogni elemento del dominio si dice totale, altrimenti si dice parziale. La funzione stato che ad ogni città associa lo stato di appartenenza è totale in Europa, parziale negli USA (in quanto Washington non appartiene a nessuno stato). Una funzione f si dice ingettiva sse  x  y f(x)=f(y)  x=y, sul grafo cioè non esistono vertici del tipo. Si dice surgettiva sse  y  x f(x)=y, cioè se ogni vertice del codominio è raggiunto da una freccia.

Definizioni equivalenti della ingettività  x  y (f(x)=f(y)  x=y) «se due elementi hanno immagini coincidenti, allora coincidono» Dalla conversione:  x  y (x  y  f(x)  f(y)) «elementi diversi hanno immagini diverse» e trascrivendo l’ , otteniamo  x  y (  f(x)=f(y)  x=y), e dalle regole che legano quantificatori e negazione la formula diventa  x  y (f(x)=f(y)  x  y) «dato un qualsiasi elemento non ne esiste un altro con la stessa immagine». Ovvero  x  y ( f(x)=f(y)  x  y) «non esistono due elementi distinti con la stessa immagine»

Una funzione si dice bigettiva se è ingettiva e surgettiva, e si dice anche una corrispondenza biunivoca o una corrispondenza 1-1. La composizione di una funzione f: X  Y con una funzione g: Y  Z dà la funzione g  f: X  Z definita come g  f(x) = g(f(x)), che si ottiene come sequenza delle due frecce f g Se f è totale l’inversa f -1 : Y  X, si ottiene capovolgendo la direzione delle frecce f Se la funzione identica 1 X : X  X è definita  x 1 X (x)=x, allora f -1  f = 1 X, f  f -1 = 1 Y, f -1 (f(x))=x f(x) Esempio: la relazione ‘a multiplo di b’ è la relazione inversa della relazione ‘b è divisore di a’, ‘b divide a’.. x g  f g  f(x) f -1 f(x)

Relazioni n-arie e funzioni (n-1)-arie Le relazioni binarie sono le più diffuse, ma si trovano anche relazioni n-arie. Punto di partenza: il prodotto cartesiano M 1  M 2  …  M n, l’insieme delle n-uple, (a 1, a 2,…. a n ), in cui a 1  M 1, a 2  M 2 ….., a n  M n, Una relazione è un sottoinsieme di un prodotto cartesiano: (a 1, a 2,…. a n )  R  M 1  M 2  …  M n vuol dire che gli elementi a 1, a 2,…. a n sono in relazione R Se, fissati a 1, a 2,…. a n-1 c’è un unico a n per il quale (a 1, a 2,…. a n )  R, allora si può definire la funzione f R (n-1)-aria: f R (a 1, a 2,…. a n-1 ) = a n

Definiamo ad esempio la relazione S ternaria su  : (a,b,c)  S   3 sse aggiungendo b oggetti ad un gruppo di a oggetti troviamo un gruppo di c oggetti, ad esempio (3,6,9)  S, scritto anche S(3,6,9), mentre (4,3,8)  S. Poiché fissati a e b è univocamente determinato c, possiamo definire la funzione +:  2 →  : a+b=c Se  è un alfabeto,    è l’insieme delle parole su  (a,b,c)  append   3 sse aggiungendo alla parola a la parola b otteniamo la parola c, ad esempio (car, ta, carta)  append, scritto anche append(car, ta, carta), mentre (ca, ne, gatto)  append. Anche in questo caso possiamo definire la funzione Append:   2 →  , append(car, ta)=carta

Logica e Matematica Nella matematica moderna, fondata sulla teoria degli insiemi, sono molto importanti le distinzioni logiche tra elementi (variabili e costanti), insiemi, funzioni, predicati (sottoinsiemi e relazioni), proposizioni (formule).  è l’insieme dei numeri interi, i singoli numeri sono le costanti; x, n, m, etc. denotano variabili che possono assumere numeri come valori; funzioni sono le operazioni che ad uno o più numeri associano un altro numero (somma, prodotto, etc.); predicati sono proprietà vere su uno o più numeri: nel primo caso individuano sottoinsiemi (pari  insieme dei numeri pari), nel secondo relazioni (a è minore di b  l’insieme delle coppie (a,b) con a<b); proposizioni (formule) esprimono fatti aritmetici, veri o falsi

Esempio: il minimo comune multiplo Definiamo in  la relazione binaria ‘a divide b’ a|b   m b=m  a, e definiamo ‘c multiplo comune di a e b’  a|c  b|c, relazione ternaria su . Diciamo ‘n minimo comune multiplo di a e b’ il più piccolo dei multipli comuni di a e b, cioè  a|n  b|n   c (a|c  b|c)  n  c. E in tal caso si ha anche n|c Per le caratteristiche della relazione  tale numero esiste sempre ed è unico (un sottoinsieme non vuoto di  ha sempre un unico minimo), e quindi la relazione ternaria ‘n minimo multiplo comune di a e b’ può essere considerata come una funzione binaria: n=mcm(a,b).

E proveremo anche che il mcm divide ogni altro comune multiplo. Consideriamo mcm una relazione ternaria: mcm(a,b,x) quando x è mcm di a e b. Supponiamo per assurdo che i due numeri a e b abbiano due distinti mcm. L’ipotesi assurda ha forma esistenziale:  x  y mcm(a,b,x)  mcm(a,b,y)   (x=y) e quindi iniziamo con una doppia sottoderivazione  - eliminazione: m ed n sono costanti nuove, a|m  b|m   c (a|c  b|c  m|c ) a|n  b|n   d (a|d  b|d  n|d )  (m=n) A questo punto entra in gioco l’intuizione: le variabili c e d sono sostituibili nella  -eliminazione con qualsiasi termine, potrebbe essere utile farle coincidere con le costanti m e n

possiamo sostituire a c il numero n e a d il numero m, ottenendo a|m  b|m  (a|n  b|n  m|n ) a|n  b|n  (a|m  b|m  n|m) m|n n|m,  x n=m  x  y m=n  y n=m  x’ m=n  y’ n= n  y’  x’ e quindi y’  x’ = 1 da cui y’=x’=1 e allora m=n. Ma  (m=n) e quindi  In algebra studierete il problema in e non in , e quindi la soluzione sarà ±1

Prendiamo a=6, b=15. I multipli di 6 sono: {6, 12, 18, 24, 30, 36, 42, 48, 54, 60...}, i multipli di 15 sono: {15, 30, 45, 60, 75,...}, i loro multipli comuni sono: {30, 60, 90, 120, 150,...}, il loro minimo comune multiplo è 30: 30=mcm(6,15), e gli altri multipli comuni sono tutti e soli i multipli di Analogo ragionamento per definire il ‘massimo comun divisore’: i divisori di 6 sono: {1,2,3}, quelli di 15 sono: {1,3,5}, quelli comuni sono: {1,3} e quindi 3 = MCD(6,15).

Ancora la combinatoria La combinatoria conta le configurazioni simboliche, ad esempio «quante parole distinte di lunghezza n si possono costruire da una alfabeto di k segni?» oppure «in quanti modi diversi si possono mettere n palline distinte in k scatole?». Ad esempio se k=3 e n=2, le parole distinte sono {aa, ab, ac, ba, bb, bc, ca, cb, cc}, mentre le distribuzioni nelle scatole sono ab/Ø/Ø, a/b/Ø, a/Ø/b, b/a/Ø, Ø/ab/Ø, Ø/a/b, b/Ø/a, Ø/b/a, Ø/Ø/ab. In entrambi i casi abbiamo 9=3 2 =k n configurazioni: è un caso? In entrambi i casi sono le funzioni da un n-insieme in un k-insieme.

1 I 1 I 1 I 1 I 1 I 1 I 2 II 2 II 2 II 2 II 2 II 2 II III III III III III III …… aa ab ac ba bb bc ab/Ø/Ø a/b/Ø a/Ø/b b/a/Ø Ø/ab/Ø Ø/a/b Altro esempio: contiamo quante sono le proposizioni non equivalenti (che hanno cioè diversa tavola di verità) che si possono creare con n proposizioni elementari. In primo luogo le diverse interpretazioni sono 2 n, in quanto ogni proposizione elementare può essere vera o falsa. Poi per ogni interpretazione la proposizione può essere vera o falsa, e quindi in totale abbiamo 2 2 diverse tavole di verità. n

Sia M un insieme di m elementi (distinti): |M|=m Le coppie ordinate di elementi di M sono: |M 2 |= m 2 Quante sono le coppie ordinate di elementi di M se non sono ammesse ripetizioni? m 2 – m E quante sono le coppie non ordinate senza ripetizioni? (m 2 – m)/2 Possiamo generalizzare a M n ? |M n |= m n Le n-uple ordinate senza ripetizioni sono: m  (m-1)  (m-2)  …  (m-n+1). Ad esempio le terne ordinate su M = {a, b, c, d} sono X X X X X X

a b c d ab ac ad ba bc bd ca cb cd da db dc abc abd acb acd adb adc bac bad bca bcd bda bdc cab cad cba cbd cda cdb dab dac dba dbc dca dcb Se m=n otteniamo il numero degli ordinamenti possibili di M: m! = m  (m-1)  (m-2)  …  2  1 Ma una n-upla non ordinata (un sottoinsieme di n elementi) può essere ordinata in n! modi diversi. Ad esempio {a,c,d} corrisponde ai 6=3! ordinamenti acd, adc, cad, cda, dac, dca. E quindi le n-uple su M non ordinate (i sottoinsiemi di M di cardinalità n) sono: (m  (m-1)  (m-2)  …  (m-n+1))/n! = (m-n)!  (m  (m-1)  (m-2)  …  (m-n+1))/ (m-n)!  n! (m  (m-1)  (m-2)  …  2  1)/(m-n)! n! = m!/(m-n)!  n!

Il poker numero di n-sottoinsiemi da un m-insieme