-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path25-09 first half.txt
More file actions
5 lines (3 loc) · 64.9 KB
/
25-09 first half.txt
File metadata and controls
5 lines (3 loc) · 64.9 KB
1
2
3
4
5
Ma una proposizione è un giudizio di valore, di verità, rispetto a una cosa che c'è dentro. Se io dico "piove", questa è una sezione. Se io dico "è vero che piove", questa è una proposizione. E voi mi dite "ma è la stessa cosa". E no, non è la stessa cosa. Perché nel momento che tu ti permetti di dire "è vero che piove", puoi dire anche "è falso che piove". E puoi anche dire "non so se piove". Il tuo giudizio sul valore di verità è un giudizio che permette la sezione del del giudizio di valore di verità su una sezione, ti permette di dire sia che la sezione è falsa, e questo può introdurre il famoso segno di negazione che avete visto, ma anche il fatto che non sai. Ok? E, come vedremo poi nel dettaglio quando andremo a fare gli algoritmi, la conoscenza cosiddetta parziale è, insieme alla conoscenza negativa, è dove essenzialmente il 90% degli errori vengono fatti. Quindi, di fatto, noi in questo corso qui ci occupiamo di quelle quattro attività e in particolare di queste quattro... cosa sono? Sono rappresentazioni del mondo. Sono quattro rappresentazioni del mondo che noi costruiamo sequenzialmente, in qualche maniera, e che la logica ci permette di ricostruire e di ragionarci sopra. Ok? Quindi, di fatto, noi alla fine di questa lezione, spero di essere riuscito a farvi capire come su questi quattro concetti noi riusciamo a fare un calcolo, un algoritmo tale per cui riusciamo alla fine a far cosa? Avere una memoria, capire se la memoria che abbiamo è consistente con quello che abbiamo visto. È vero se io vedo un uomo a tre gambe? È vero o non è vero? Non l'ho mai visto, quindi o è venuto marziano o non è vero. Però non è un uomo, quindi in teoria è un uomo a due gambe. Non solo, il fatto di riuscire a estendere quello che conosciamo tramite meccanismi di ragionamento che ci permettono anche di derivare che cosa, di capire, di conoscere cosa noi non sappiamo. Bene. E ovviamente, nel questo ovviamente non è vero nei grandi sistemi informatici, ma sicuramente nei sistemi di intelligenza artificiale questa roba qui viene implementata una pipeline, continua ad andare, noi continuiamo a percepire, continuiamo ad arricchire la memoria, continuiamo ad aggiustare, la allineiamo, eccetera, eccetera, eccetera. Di fatto, questo è il processo. I dati, le percezioni, quello che percepiamo, delle delle delle rappresentazioni, poi queste rappresentazioni subconsce delle immagini diventano concetti, concettualizzazioni, nomi, diventano sezioni che sono proprietà di quello che abbiamo visto, una cosa è una maglietta nera, una maglietta rossa, quello che vogliamo, e diventano giudizi di verità, vero o falso, di quello che ci dicono le sezioni. Bene. Noi dobbiamo semplicemente formalizzare questo aspetto qui e fare un calcolo logico che formalizza questo aspetto falso. Ricorderete questa slide qui, è un record, volevo scrivere "record" qui, avevamo parlato di rappresentazioni analogiche e rappresentazioni linguistiche. Allora, c'è il mondo, ma al mondo nessuno c'ha accesso, noi abbiamo accesso a quello che percepiamo, e questo è quello che viene chiamato le percezioni, quello che noi percepiamo. Tutto il resto, quindi le altre tre rappresentazioni, concetti, a sezioni e a proposizioni sono nella parte linguistica. Come vedremo fra cinque minuti, fino adesso e nei corsi di linguistica abbiamo fatto un sacco di linguaggi, abbiamo scritto in particolare tutorial model, UML, quello che volete, ma hanno sempre dato la sintassi più o meno precisamente, ma non vi hanno mai dato la semantica. Quindi vi hanno detto più o meno in un UML, quella roba lì vuole proprietà, ma non avendovi dato la semantica, non potevano e non potranno mai dimostrare che un certo calcolo, un certo algoritmo è corretto rispetto a quello che hai visto. Quindi l'elemento di nuovo che vi porto in questo corso è che vi diamo un meccanismo per formalizzare la semantica, così chiamata, delle rappresentazioni analogiche tramite questo oggetto di percezioni, e sulla base di quello non solo vi darò le regole che ho messo prima per calcolare alfa, ma dimostreremo che sono le corrette e complete. Ovverosia, se quella tua memoria è corretta, sei garantito che quello che deduci è corretto. Non solo, sei garantito, sotto certe ipotesi, certi calcoli molto costosi dal punto di vista computazionale, che sei completo, ovvero se non dimentichi la tua verità. È chiaro? Vedo che sta mandando. La cosa interessante è quindi, di fatto, adesso noi in questo corso vi do, in questo corso, in questa lezione, la panoramica da arrivare al mondo a qua in cima. Questa è la rappresentazione che vi ricordate che avevo messo nella lezione precedente, dicendo "tutto questo è mentale". Noi ci dobbiamo dare dei linguaggi di rappresentazione che ci mappano questo processo, esattamente quello che dobbiamo fare, ed è quello che facciamo adesso. In questa lezione proverò a raccontarvi usando il concetto di piramide, vedremo anche poi come mai, in che modo il processo di formalizzazione logica si struttura garantendo in ogni passo la correttezza e la completezza del ragionamento, ovverosia della capacità di diretta. Ok. Ok. Ok. Ok. Ok. Ok. Ok. Questa piramide è la prima, è stata fatta da un famoso database dell'89, e l'ho fatta e l'ho messa, anche se potevamo farne a meno, perché in qualche maniera si mappa su termini che noi conosciamo. Ovviamente questa reason qui non si sa bene che cos'è, infatti se uno legge il paper si dice che cos'è, ma i dati in qualche maniera lo capiamo? Lui ha detto "quando tu fai un sistema informativo, devi avere i dati, i dati portano informazione". È interessante, lui fa information systems, quindi lui dice "i dati da soli non portano informazione, i dati connessi danno informazione". In realtà, se ci pensate bene, i dati in qualche maniera sono simili a quello che è Marco Percetti, perché il dato è qualche dato vuol dire che ti è stato dato. L'informazione è in qualche maniera l'informazione che hai sui vari dati, la conoscenza è la conoscenza che tu sai, e lui su reason se l'è un po' arrampicato sui vetri, in realtà non si capisce cosa cosa vuol dire. Noi qui in qualche maniera lo traduciamo come la capacità di ragionare su quello che sai e quello che non sai, quindi fare la scelta giusta. Se guardate sul vocabolario, reason ha questo significato di "si dice i vecchi sono saggi", perché sono la scelta giusta, quindi c'è una capacità. Poi è chiaramente molto discutibile, anzi direi che è abbastanza sbagliato assumere che la reason o la saggezza sia solo ragionamento, ma in questo contesto ci va bene. Comunque, il punto fondamentale volevo dire è che le quattro di questa slide qui, e poi qui potete leggere i dettagli, i quattro livelli che io vi ho rappresentato, le fasi del ragionamento umano, in realtà si mappano abbastanza naturalmente sui quattro concetti che noi facciamo quando facciamo database e sistemi informativi in anche intelligenza artificiale. E in effetti in questo corso noi andremo avanti in parallelo a fare usare la logica come modo di ragionamento, ma in tutte le esercitazioni vedremo come tutta, a cominciare anche da oggi, in maniera minima, come tutto quello che noi formalizziamo in logica in realtà ha una controparte in quello che avete già visto, e questo avete già visto in parte anche la volta scorsa. Ok. E questo è quello che volevo dire. Uno, questa è quella di è la di KVD, in caricabile quindi. Se la guarda con la slide precedente che vi ho fatto vedere, ci sono i percetti, ci sono i concetti, concettualizzazioni, sezioni delle assunzioni, ci sono le proposizioni. Allora uno dice "ma perché hai messo i dati fuori?". Ho messo i dati fuori perché in qualche maniera lui probabilmente dal sistema informatico si è innamorato dei dati e ce li ha tagliati lo stesso. Ma se ci pensate bene, cos'è la percezione? La percezione non è altro che il processo tale per cui un'informazione esterna gli arriva in testa. Quindi la percezione è quel qualcosa che prende i dati e li porta su una rappresentazione analogica, come l'abbiamo chiamata, e poi così via. Le concetti e concettualizzazioni, io dieci minuti fa ve li ho presentati come il fatto di collegare, non mettere più, non dire solamente "ho visto una persona", ma "ho visto una persona vicino a un'altra persona", è questa informazione. Il concetto di concettualizzazione, che è il concetto di legare le parole per descrivere cose vere o false, è molto, è essenzialmente un concetto di informazione. La conoscenza è quella che sappiamo, e io l'ho chiamata un insieme di assunzioni. Lui ha questo termine reason, che io dico è la capacità di dare un giudizio di valore, magari nel caso di LLM non è solamente vero o falso, ma a noi ci basta per il momento. Poi ovviamente uno può entrare e far diventare quello che vuole. Negli LLM c'è l'intero infinito, sul value alignment tra gli LLM e gli umani, però in questo contesto, in questo per noi la saggezza è la capacità di fare un giudizio, un judgment di valore di verità su una sezione che ci viene detta sul mondo. Sì. Ma la nostra conoscenza può modificare la percezione? Sempre. Tu vedi solo quello che ti aspetti, c'è un sacco di... c'è un sacco, in realtà è esattamente, è esattamente quello che succede sempre, c'è un sacco di evidenza psicologica. Noi vediamo quello che ci aspettiamo di sapere. Ed è anche il motivo per cui la gente fa fatica a cambiare opinione. È triste perché c'hai esattamente... è un pazzo. Poi uno può... cioè la... io ti faccio un esempio, no? Se tu entri in casa, in casa ci sono i tuoi genitori, i tuoi parenti, i tuoi amici, chiunque, e tu vedi un'ombra muoversi, cosa vedi? Vedi uno che non hai mai visto in casa o vedi esattamente quello che ti aspetti che ci sia? Ti passa un'ombra. È chiaro che la memoria ti crea un prior fortissimo. Ed è il motivo per cui chi fa LLM e AI, o anche chi fa sistemi di trading o qualunque cosa, riesce a farlo bene. Perché? Perché una volta che l'hai visto una volta, ci rivedi la seconda volta. Poi dieci volte che l'hai visto, certo potresti andare in casa e vedere un'ombra che è del lago, però voglio dire, è uno su centomila. No. Quindi è più un cerchio più che una piramide. Esatto, infatti, esatto. Infatti è esattamente uno su centomila. Soltanto che se tu lo vedi come vediamo, perché l'abbiamo messa come piramide? Perché la piramide, e qui me l'ho messa come piramide, perché in realtà sale il livello di assunzione. Più sali, e più ti allontani dalla realtà. E vedremo a fine lezione che a questo livello qui non c'è più la realtà, c'è solo vero o falso. Come ho detto la volta scorsa, nel ragionamento, come lo formalizziamo in logica, il mondo non c'è più. L'importante è solamente mettere insieme valori di verità. Quindi la piramide vuol dire stiamo alzando, stiamo dando struttura a quello che vediamo. E tanto più diamo struttura e più creiamo dei prior. E più creiamo dei prior e più influenziamo quello che andiamo a vedere dopo. Ed è il motivo, tutte queste storie qui, per cui è sempre difficile da un punto di vista anche sociale, sociologico, accettare cose diverse da te, perché semplicemente la tua mente non è allenata. Magari uno fa una cosa diversa, ma fa male. No, magari la fa solo diversa da te, ma tu non riesci a capire cosa sta facendo, non hai il prior pronto. Ok? Qui ho detto appunto che ho splittato questa roba qui perché io il dato lo intendo come il dato, come nella mia testa. Facendo questa passa qui, io il mondo non ce l'ho più. Ok? E perché il mondo non ce l'ho più mi aiuta? Perché a questo punto io, se riesco a darvi, come riuscirò a darvi, una formalizzazione di questo concetto di quell'esperienza del mondo, posso darti una definizione di correttezza. Io posso farmi la domanda: ma questa concettualizzazione qua descrive questo sì o no? Posso farlo, lo farò, fare esattamente questo. Questo calcolo mi permette di descrivere una cosa? Sì, lo faccio. Cioè, questo diventa un formalismo. Facendo questo ho un formalismo formale tale per cui io posso calcolare la correttezza e la completezza, o qualunque altra proprietà di consistenza, ne vedremo varie, ce ne sono varie, rispetto al mio formalismo di prima. E infatti queste, dalla slide precedente, la seconda che vi ho fatto vedere, sono le quattro attività, notate bene, che sono messe un po' più basse. Cioè, la percezione prende in input i dati e produce i percetti. Ok? Poi ho fatto i percetti nel mondo, c'ho questa roba nella mia memoria subconscia, gli do un nome, come vedremo fra un secondo, e poi compongo. Poi, dopo che li ho composti, prendo quelli che, la mia costruzione linguistica di quello che ho visto, e li metto in memoria. E però devo collegarli con quelli che ci sono. Quindi in ogni passo la mia attività prende in output, in input, le strutture dati, le rappresentazioni del mondo a livello precedente, le sale. Qui abbiamo immagini, qui dobbiamo rappresentare, abbiamo immagini nel mondo reale, dobbiamo avere un formalismo che ci permette di rappresentare le immagini. Qui abbiamo un linguaggio, qui abbiamo una memoria, qui abbiamo proposizioni. In ogni passo tu devi riuscire, hai questa funzione che formalizzeremo. Tutti questi passi li formalizziamo matematicamente. È chiaro? Quindi la logica a questo punto, ve la vedremo adesso, e l'altro non è che facendo queste ipotesi che ho fatto adesso, ovverosia di darmi un formalismo per formalizzare quello che io percepisco, io da qui in poi faccio tutta la matematica, e data questa percezione posso costruire teoremi di completezza, correttezza, e la complessità computazionale. Questo è quello che si chiama semantica. L'elemento nuovo della logica, di fatto, non è altro che darti una semantica formale. Tutto quello che avete fatto fino adesso lo rifacciamo, lo rifacciamo in un formalismo leggermente diverso, ma a esercitazione vedrete che di fatto stiamo facendo la stessa cosa, con la differenza che per ognuno di questi passi dimostreremo che il passo che facciamo sopra mi mantiene la semantica di quello che vedo. Se qui una cosa era così, qua sopra, o se deduco nuovi fatti, non posso che essere fatti veri per l'espressione. Ok? E questa è la di prima. Cos'è che ho aggiunto adesso? Ho aggiunto il fatto che io dall'elemento dei dati percepisco i percetti, ma poi dopo, mettendoli vicino, faccio le percezioni complesse. Qua prendo dei concetti, delle concettualizzazioni, facciamo delle descrizioni linguistiche, ma qui le metto insieme con la memoria. Queste qua con la memoria, decido vero o falso, e poi le metto insieme con quello che è solo vero o falso. Quindi in ogni passo c'è sempre un passo di lifting, a un'orientazione più alta, e poi ad ogni livello c'è l'operazione. Quella roba lì che vi ho dato altro non è che un'operazione matematica, non è quella che avete visto cento volte. Giusto, no? L'eveness degli algoritmi è quello. L'eveness degli algoritmi sta qua. Sì, è quello qua. Infatti esiste un teorema che dice che, dato qualunque algoritmo, esiste una deduzione logica che deduce questa roba. Ok? Quindi quello che voi avete, quando voi avete fatto UML e così via, che cos'è che vi hanno dato? Vi hanno dato tutte queste formule, tutte queste rappresentazioni intermedie, non vi hanno detto che cosa descrivevano, e poi vi hanno detto "ah sì, certo, pronto l'URL, lo prendi, lo fai diventare un class type, lo fai diventare una classe, un oggetto e così via, e poi fai le deduzioni ai algoritmi. Quello è. Ok? Infatti questa la chiamano la piramide della conoscenza, che è esattamente quella di prima dove però abbiamo messo in evidenza sulla piramide, dove la piramide ha quel significato di validazione. La percezione prende i dati, ci sono i dati nel mondo, i dati nel mondo sono tantissimi, e noi cos'è che facciamo con la vista? Ne scegliamo un po', quelli che ci interessano. Li selezioniamo e ci facciamo questi dati. Questi dati selezionati li applichiamo alla vista e diventano elementi della mia memoria subconscia. Li prendo, li faccio diventare parole, da parole poi li metto insieme, li faccio diventare delle descrizioni, poi li faccio diventare memoria, oppure li puoi buttare via, normalmente. Una volta fatti memoria, posso decidere se quello che vedo è vero o falso e faccio il ragionamento. Ok? In ogni passo ci sono sempre due aspetti che noi andremo a formalizzare matematicamente, e che si possono formalizzare in algoritmi, che è astrarre dal livello inferiore, dalla rappresentazione di livello inferiore, più vicino al mondo, quello che abbiamo percepito, perché qui chiaramente c'è percezione da qua a qua, ma anche da qui a qui. In ogni passo c'è un passo di lift up della rappresentazione, e poi a un certo livello li mettiamo insieme. Ovviamente queste composizioni qui, in logica, ma anche degli algoritmi che abbiamo fatto fino adesso, sono tali per cui, se qui fai una composizione, devi essere sicuro che vale anche per qua. Ed è esattamente questo quello che stiamo facendo. Questo implicitamente lo avete fatto, quando avevamo fatto fare gli UML vi tornava tutto perché? Perché in qualche maniera il database, bene o male, non ve l'hanno detto, ma che funzionava. Adesso dimostriamo esattamente perché dimostrava, in più diamo, facciamo vedere come tutta quella roba lì è un caso particolare di algoritmi generali di ragionamento. Dove in ogni fase è come se tu osservassi il mondo esterno, è come se il livello dei concetti osservasse il livello dei percetti, o comunque facesse delle query, come esattamente i percetti fanno le query al mondo, perché tu in qualche maniera, quando guardi, fai una query a quello che vedi, e scegli cosa vedere, e poi sopra fa reasoning, che è altro che sto fare di composizione, che vuol dire date delle cose e deduco degli altri. Ok? Domande? E questa è la piramide della logica. Tutto il corso si baserà sul spiegarvi queste quattro cose qua. Chiaramente a fare models che è il più facile ci mettiamo una lezione, a fare world models ce ne mettiamo una e mezza, due, a fare world logs ce ne mettiamo una sette o otto, a fare quelle più astratte, che è dove sotto gli algoritmi ce ne mettiamo magari dieci o quindici. Perché chiaramente più ti astrai e più sei astratto, quindi più hai forza di deduzione. Ora, di fatto, l'obiettivo di questa lezione è che in qualche maniera vi sto dando l'indice di quello che stiamo facendo e anche l'indice delle logiche che ci sono in giro. Di fatto, il compitino arriverà qua, il primo compitino. Il secondo compitino sarà qua, perché chiaramente l'ultima è quella più... per darvi un'idea. Ovviamente quello che vedremo è che uno dice "ah bello, c'è un unico world model o un'unica world logic", no, non ce l'hai, perché a seconda di quello che vedi, a seconda di quello che modelli, è una logica diversa. Modellare la la la sequenza temporale, ragionare sulla sequenza temporale di azioni, la gente la chiama planning in AI, è un problema diverso da capire se due rappresentazioni sono consistenti, e così via. Quindi io non sto dicendo che ad ogni livello c'è una sola logica, no, l'unica cosa che sto dicendo è che questo è universale e vale per tutte le logiche, tutte. Esiste un meccanismo universale che lo descriveremo in dettaglio la volta domani, che è la teoria degli insiemi, che è universale, ma da qui in poi, a seconda di come noi mettiamo insieme gli insiemi, avremo diverse logiche, ma queste saranno sempre e solo strutturate su tre livelli. Ok? Cioè, dai prima diamo i nomi alle cose, l'alfabeto che abbiamo fatto vedere n volte, poi costruiamo una memoria e poi ragioniamo sulla memoria, su quello che sappiamo e quello che non sappiamo. Quindi queste a fianco sono anticipazioni che vediamo tra un minuto, spero non serve che le abbiate in testa al momento, ma era importante darvi un anticipo in modo che crearvi un prior, perché in qualche maniera vi dà un'idea. La cosa interessante è che qui abbiamo detto percetti e percezioni, dove le percezioni metto che sono composizioni di percetti, cioè come ho detto prima, e queste cose qua le facciamo entrare nelle concettualizzazioni che sono linguistiche, e qui guardate, facciamo delle assunzioni che le mettiamo insieme e diventano grafiche di conoscenza. O diventa un database. Il database sta qua. L'URL sta qua. WorldNet, che l'avete visto l'altra volta, sta qua. Poi chiaramente, quando avete fatto SQL e database 1, non ve l'hanno detto che c'è il problema del linguaggio e così via, ve l'hanno detto "mettete le variabili", l'unica cosa che ve l'hanno detto è "scegliete i nomi appropriati". No, ma in realtà va bene, perché per quello che volevamo fare va benissimo, ma se tu vuoi fare un ragionamento, o comunque vuoi ad esempio il sistema di AI, fare rendere AI in grado di fare questo ragionamento, gliela devi dare tutte e tre. Nei database ti danno, il modello non te lo dicono, in realtà ti dicono che la unique name assumption, il modello sono le stringhe, quello che metti dentro, lo vedremo più avanti nella lezione numero tre, nel database, modello e world model coincidono, e sono fatti apposta perché vanno fatti bene così, perché sono altamente efficienti, ma hanno problemi che appunto perché hanno bloccato tutta la descrizione e hanno problemi che sono talmente rigidi che non si riescono a utilizzare in applicazioni come il web o in applicazioni di intelligenza artificiale. Sono troppo rigide perché hanno precompilato troppe assunzioni, in questo metto in un mondo reale il database. Le assunzioni mettono l'hashgraph, qui diventano proposizioni. Atomic propositions and propositions, perché ho usato atomic propositions? Perché così si trova sotto i limiti di logica, quindi io l'ho scelto. Questa A qua è una proposizione atomica. Cos'è la caratteristica di una proposizione atomica? È che A. Cos'è che puoi sapere di A? Puoi sapere tre cose: che non sai niente, o che è vero o che è falso, in un caso devi sapere tre cose. Quindi una proposizione atomica è una cosa di cui o non sai niente, o sai che è vero o sai che è falso. È una sola delle due. Ok? Si chiama il principio del terzo escluso, perché in logica poi uno dice "nella realtà devi sapere uno", non certe logiche ti dicono, non ti è permesso di non sapere, però in generale sono le tre opzioni. Va bene? E poi la proposizione che è una proposizione composta cos'è? È questa. È IF A AD N B. Perché questa è composta? Perché qui ha una struttura, ha una struttura di ragionamento. Io non so niente di A, ma da questa roba qui poi farei il teorema di verità, che sarà l'intuizione, è ovvio che ti riuscirai a dire che se A è vero, allora il B è vero, e se A è falso, non lo sappiamo, quindi non lo sappiamo. E notate ovviamente che uno di... prendiamo cos'è la... la A potrebbe dire... la A uno dice "quanto è grossa la A?". La A può essere di quello che volete, può essere addirittura un intero knowledge graph. Vi faccio un esempio che si vede sui giornali oggi. Se Putin, se i russi attraversano la frontiera europea, allora facciamo la terza guerra mondiale. Se i russi e A, la terza guerra mondiale B. E questo per dire che quando arriviamo qua in cima, il ragionamento che noi facciamo, e lo voi lo fate come tutti noi arbitrariamente, noi abbiamo completamente astratto da A e da B, che può descrivere una situazione arbitrariamente complessa, e poi puoi essere più o meno d'accordo su IF A AD N B. Quello è un problema diverso, ma se sei d'accordo, la regola di deduzione ti garantisce che il tuo calcolo funziona. È chiaro? Quindi tutto il problema, se fai un sistema di A, se fai uno specifico del mio sistema, è scrivere queste robe qua. O se fai machine learning è come le impari. Secondo sei qui, sei a posto. E qui non c'è niente di nuovo se non il fatto che man mano che vai su, i concetti sopra sono generati da non dai percetti, dalle percezioni. Cioè il concetto, la parola, quando io dico casa, che è una singola parola, una casa è quattro muri, un tetto, è un oggetto complesso. Però potresti dire anche finestra. Eh sì, ma la finestra c'ha il vetro, c'ha la tendina, c'ha il frame e così via. Quindi per dire comunque sia, il livello di astrazione a cui tu descrivi il mondo è una tua scelta, che dipende da te la devi risolvere, ma comunque sia, quando sali linguisticamente e hai la... ed è la grande... quella che ti dà resilienza in quanto umani, ecco, tu hai la possibilità di scegliere il livello di dettaglio a cui descrivi il mondo. E andando su è uguale a identico, perché poi a questo punto fai le assunzioni, le vedremo, ma delle assunzioni fai un knowledge graph quanto grosso vuoi, e le metti insieme quanto vuoi e così via. In effetti, noi, come vedrete già dalla prossima lezione, che ci saranno altre quattro volte di esercitazioni, tutto quello.
E anche in noi, come vedrete già dalla prossima lezione, funzionano altre quattro volte di esercitazioni. Tutto quello cos'è che quindi fare logica vuol dire: 1) capire cosa sono queste robe qui e fare i calcoli; 2) capire se la traduzione dal mondo alla formalizzazione nella logica ti va bene o non ti va bene. È chiaro? Quindi, di fatto, noi, e lo vedremo a fine lezione, ma lo dico già adesso, in questo mondo qua dove abbiamo questo e questi sono i dati, noi abbiamo solo tre problemi. Uno solo: abbiamo preso il mondo e decidiamo come formalizzarlo; man mano andiamo su e lo formalizziamo; prendiamo un risultato qua dentro, ma questo risultato qua è del tipo A è vero o B è falso. Non è una cosa, è semplicemente così, una cosa è vero o falso. E a questo punto, da questo, dobbiamo tornare sul mondo e vedere l'implicazione sul mondo. Quindi c'è l'informal to formal, il ragionamento formale all'interno del sistema e il processo di estrarre dalla vostra testa, o perché lo dite, o perché mandate una mail. Comunicare al mondo. Comunicare al mondo cos'è che gli comunicate? Gli comunicate di nuovo delle parole, gli comunicate di nuovo delle onde elettromagnetiche. E la roba deve fare l'indietro e ricostruirsi tutto, cercando di capire quello che voi gli avete detto. E chiaramente, se vi conosce, probabilmente capisce quello che state dicendo. Bene, da qui, nella prossima mezz'oretta, vediamo, darvi un esempio intuitivo per capire come funziona la gerarchia. Cos'è il modello? Allora, se ricordate, il modello è una descrizione di una rappresentazione analogica. Allora, qui c'è il passo fondamentale che viene fatto nella semantica, che è un passo di astrazione enorme. Se voi andate a vedere, nella seconda lezione che ho fatto, ho detto che nelle descrizioni analogiche non c'è un linguaggio, sono immagini, sono suoni, sono continue, sono nel mondo dei reali. I linguaggi sono nel mondo dei naturali. Quando noi, in logica, ci diamo, e in realtà anche normalmente in ragionamento, ci diamo una semantica, un modello, noi non ci costruiamo una rappresentazione analogica, ci diamo un linguaggio, che poi vedremo da domani è il linguaggio della sette iole. E io domani arguirò che il linguaggio della sette iole, quindi i cerchietti o le cose lì, modulo la scelta di quali cerchietti e quali pallini scegli, è tutto quello che ti serve per descrivere la tua visione approssimata del mondo. Cos'è un percetto? È un qualunque cosa che distingui. È una persona, un edificio, una macchina, il mondo. Camminare, perché anche camminare lo distingui. Eh, per cui la gente fa computer vision e vede camminare. Distingue camminare dal correre. Mangiare. Essere vicino, le relazioni spaziali. Essere lontano. E ovviamente capite bene che il concetto di vicino è molto relativo, no? Se sei a piedi è un conto, se sei in aereo è un altro conto. Percezioni sono questi percetti messi insieme. Quindi una persona vede, tendenzialmente, il percetto è quel qualcosa che non solo sceglie l'oggetto, l'individuo, qualunque cosa volete vedere, il percetto, ma di esso c'è qualcosa che lo descrive. Notate bene che però non siamo nel linguaggio naturale, siamo ancora in una fase in cui stiamo modellando la rappresentazione analogica che noi percepiamo. Quindi, l'intuizione di fondo: un modello, come lo definiremo in logica e come è definito in tutti i corsi di modelli formali che farete, è una rappresentazione che ci permette di descrivere, di non di dipingere, non di rappresentare in maniera nei reali, in un umanismo, in un formalismo non ambiguo, che cos'è percepibile, senza scegliere il linguaggio. È una rappresentazione alinguistica. Se ci pensate bene, quando fate e disegnate un insieme, fate dei puntini, fate dei cerchi. Quindi, quando siamo lì, ad esempio, guardando questo lato che fa questo, che cos'è? Questo è il mondo, questo è Trento. Cos'è Trento? Come lo modelliamo Trento? È un insieme di case? E questi qua cosa sono? Sono due persone. R2? Il cigni? 6? Cammina? O guarda in aria? E qui cosa c'è? Una fontana o tante persone? Quindi, di fatto, quello che formalizzeremo e discuteremo domani nel dettaglio, cos'è un modello come terminologia? L'ho detto prima: percetti e percezioni. A, uno. A1 dov'è A? Dov'è 1? 1 è questo, quindi A probabilmente potrebbe essere, linguisticamente, che noi potremmo dargli Trento. Ricordate bene che qui ad esempio 1 appartiene ad A. Se prendiamo A1 appartiene, A1 potrebbe essere Trento e A potrebbe essere città. Quindi 1, Trento è una città. Trento è una città, non è un'automobile. 6 e 7 dove sono? 6 e 7 appartengono a E. Probabilmente 6 e 7 sarà persona 1 e persona 2, perché non sappiamo il nome. È una persona generica, perché la chiamiamo persona 1? Perché non sappiamo che è Mario, semplicemente a Mario gli diamo Mario. E E cosa vuol dire? Persona, persona, persona, persona. Queste relazioni non c'è il linguaggio, quello che noi stiamo mettendo lì. E questa roba qui? 3 e 1, R1 cosa vuol dire? Questo è un insieme di coppie. Perché sono importanti le coppie? Perché le coppie sono quelle che ti permettono di mettere insieme 3 e 1. Quindi 3 e 1 cosa sono? 3 e 1 non lo so, vediamo un po'. A1 è Trento e 3 è una piazza, quindi probabilmente la R1 vuol dire che questa roba qui è è dentro, è una relazione spaziale che collega le entità. Però qui vi ho già dato il primo gusto del fatto che io prendo una qualunque cosa, comincio a mettere delle scatole intorno, comincio a identificare le mie entità e poi a questo punto. Che le relazioni, cos'è R1? Questa noi la chiamiamo relazione perché cos'è R1? R1 è 3 e 4, 1 e 3 e 2 e 3. Quindi 3 e 4, 3 è questo e 4 è più piccolo di 3. Poi c'è 1 e 3, 1 e 3, 3 è più piccolo. Quindi R1 vuol dire probabilmente I dentro, spazialmente. Quindi la relazione binaria per qualcosa che ci permette di dire che io sono dentro questa stanza, che io sono vicino a quello che poi linguisticamente diciamo così, no? Che poi linguisticamente diciamo io sono vicino alla, sono dentro questa stanza, sono vicino a una scrivania. Altro non è che un insieme di coppie, un insieme di persone. E poi qua, in qualche maniera, lo affermiamo, diciamo 1 e 3, 1 o 3 e noi 3 è dentro 1, e spazialmente in quel luogo. Questo è un modello. Questo chiaramente, ve l'avete visto dalle elementari, è un linguaggio. È un linguaggio dove tutti i dettagli sono spariti e su cui adesso possiamo andare a fare dei ragionamenti. Ok? Quindi il primo punto è tu decidi che mondo ti va a vedere, io ho preso Trento. Dentro al mondo ti va a decidere come te lo modelli, insiemisticamente, e a questo punto poi lo cominciamo a descrivere. E questo è il world model, ricordatevi cosa sono. Cos'è un world model? Oh, che cazzo! Supponi che tu hai scelto il modello del modello, si chiama modello di riferimento. Ogni volta che noi parliamo e parliamo di qualcosa ci abbiamo sempre un modello di riferimento in testa. A volte si parla anche a vanvera, però noi mediamente abbiamo in testa quello di cui stiamo parlando. O diciamo che è una cosa che ci viene in mente, che è in mente di reazione, si chiama pragmatica. Quindi, assumendo, cos'è un world model? È un modello di riferimento, è un linguaggio che ci permette di nominarli. Quindi quelle robe lì, perché quelli 1, R1 e R2 non ci andavano bene? Perché non ci significavano niente. Adesso prendiamo quella figura, la chiamiamo Nia, la chiamiamo persona e tutto diventa immediatamente chiaro. Perché il nostro linguaggio gioca, perché la nostra mente gioca sul linguaggio. Punto fondamentale. Ora che ci siamo dati la semantica, il modello, noi in logica diciamo che non ti permettiamo di essere confuso. Se tu dai un nome a una cosa, quel nome lì corrisponde a quella cosa. Quindi, se io una cosa la chiamo Paolo qua, ad esempio, come persona, non va bene chiamarla per avere 1 qui e avere 2 qui. Ok? Una stringa, del world model, che si chiama un concetto, questo lo vediamo tra un minuto, non può denotare due concetti diversi. E voi mi dite: "Sì, ma nel mondo ci sono un sacco di Fausto". Esatto, è motivato da quello. Che il linguaggio è intrinsecamente ambiguo. Viceversa, ci dice, ci permette di dire che Fausto punta a 1 e Giulia punta a 1. Perché? Perché non c'è confusione, si chiama sinonimia o monimia, quello che volete dire. E l'altra cosa importante che vedremo è che il principio di composizionalità, che vedremo, avete visto nelle volte, il modo con cui i termini di linguaggio si compongono deve essere mappato uno a uno sulla struttura. Quindi, se io dico, se io ho due persone vicine, ad esempio delle due persone che avevamo prima, vicine. E questo devo scrivere come Nia P1 P2. Non posso fare Nia P1 P2 P5 e poi ci metto in cima a qualcosa di altro. Cioè, la struttura linguistica, se ci pensate, provate a ragionare, quando dite: "Io mangio la mela", io mangio la mela, cioè io chi? Io. Mela, mela, mangio, io che muovo. La casa è vicina alla strada. La casa, un oggetto, vicina, spazialmente, e lo dico qui con la strada, quello che è. Quindi noi abbiamo questa capacità linguistica che usiamo nel linguaggio naturale e che probabilmente usate anche in tutti i linguaggi semi-formali che avete visto, dove avete questa proprietà tale per cui il modello inteso come l'avete in testa ma non l'avete mai reso esplicito si mappa quasi uno a uno sulla vostra struttura linguistica. Ed è il motivo per cui la gente vi capisce, perché la struttura è invariata. Ok, ve lo insegnano a scuola, vi insegnano l'inglese, vi insegnano di una maniera, noi ci insegniamo un'altra maniera, poi l'inglese parla l'inglese. E la struttura ce l'ha. Quindi imparare a parlare vuol dire imparare queste strutture linguistiche che poi te le fanno vedere, corrispondono, quando ti dicono la casa è vicino alla strada, tutte le immagini che avete già viste è la struttura linguistica. Tutto questo funziona bene, in logica lo formalizziamo. Quindi cos'è il modello del mondo? Il modello del mondo ti dà un linguaggio che ti permette di descrivere non ambiguamente i concetti e le concettualizzazioni che nominano i percetti e le percezioni del modello di riferimento. I concetti e le concettualizzazioni sono oggetti linguistici che per ogni concetto c'è un solo percetto. Per un percetto ci possono essere più concetti. Questo è quello che ho detto oggi. Quindi, eccolo qua. Quindi, a questo punto, i pallini, se noi torniamo indietro e ci mettiamo Trento, Duomo, in questa roba qui, ci scrivete Trento qua, ci scrivete Duomo qua, eccetera, eccetera. Ovviamente Trento qua vale in italiano, non vale in inglese, perché ci si chiama Tieri. Quindi, notate bene che sto parlando di concetti che sono nella descrizione matematica, ma questi concetti sono i concetti che in linguistica la gente dice, quindi sono centinaia di papers, sono gli oggetti con cui si costruisce il significato del linguaggio. Ok? E questi concetti vengono attaccati. Persona è questo oggetto, viene attaccato persona 3, e questa è un'istanza, questa è una proprietà, ha un valore, Easy è una proprietà a due valori, e li attacchiamo, e infatti questo matematicamente è una funzione di interpretazione. Nel corso, tra due lezioni, faremo, definiremo matematicamente questo attachment qua. Però cosa che abbiamo fatto quando abbiamo fatto questo? È la funzione di interpretazione, è esattamente quello che non avete mai visto, è esattamente l'elemento di novità che noi portiamo qua. Una volta che noi diciamo, noi assumiamo che quando tu fai una descrizione linguistica, non solo il linguaggio è fatto bene, non solo il linguaggio si mappa correttamente sul modello inteso, il modello di riferimento, ma c'è questo mapping uno a uno. Questo è quello che ci permette di fare tutto. E chiaramente a questo punto vedete una parte di A diventa City Trento. È vero che Trento è una città? Sì. È vero che Paolo è una città? No. Questo lo faremo a livello qua. Al momento stiamo semplicemente costruendo e descrivendo le concettualizzazioni. Ok? Notate bene che voi vedete questa roba qui, se voi non siete, se avessi messo qua Clicco Palla, Levanto ho detto. Città Levanto. Sì, vabbè, mica lo so, perché non è stata... Quindi sì, è vero. Se voi non siete mai stati a Levanto non lo sapete. È una descrizione, ma non ce l'avete in memoria, non potete fare il matching. Quindi è una concettualizzazione, non è una città. Ok? Quindi qua noi in questo momento ci siamo dati un intero linguaggio. Tutti questi voi li vedete come vero, perché li avete visti, ma li vedete come vero perché avete la memoria. Chiaramente abbiamo fatto vedere il principio di composizionalità che è fondamentale, che è una cosa che il linguaggio naturale non ha. O ce l'ha più o meno. Ed è il motivo per cui il linguaggio naturale non si riesce a fare, il problema dell'allucinazione ci sarà sempre, ed è impossibile, perché tu non hai un linguaggio formale. E va bene avere un linguaggio formale, così almeno possiamo dire quello che vogliamo. Non è che va male. E come al solito è stata sempre che, ad esempio, poi dice ok, faccio l'LLM e faccio l'LLM che parla italiano. E allora va bene. Sulla sua semantica che adesso gli ha dato. E questo è il momento di iniziare. Terminologia. Una percezione è un percetto composto da più di uno o più percetti. Quindi la percezione di io vicino a un'altra persona è una percezione composta del percetto io e un'altra persona di vicino. Un atomico, un percetto atomico, ottenendo un percetto è un percetto che non è un fatto, che non è una cosa vero o falso. Questa parola la cancello perché ho dimenticato di cancellarla. Il nome di un atomico percetto è chiamato un concetto. Quindi il nome di me come percezione è Fausto, oppure uomo, oppure persona, oppure oggetto, a seconda di come oppure professore, a dicevo, che volete scegliere voi. Potete scegliere. Ma questo è l'alfabeto. Ogni volta che voi prendete i percetti, definite l'alfabeto. L'intero alfabeto, l'alfabeto non l'avete visto nelle varie corse. Quando voi scegliete l'alfabeto, non ve l'hanno mai detto, ma di fatto stai scegliendo e voi ci vedete la semantica intesa, anche se non c'è scritta. È esattamente i concetti che voi in qualche maniera avete e che voi dovete usare quando voi fate il vostro modello. Quindi i concetti è l'alfabeto. Cos'è l'alfabeto? È le cose che esistono. Perché se tu nel tuo alfabeto non hai la parola casa, non puoi parlare della casa. Se tu nell'alfabeto non hai la parola Fausto, non puoi parlare di Fausto. Il che vuol dire che nel tuo modello inteso, Fausto non c'è. Quindi quello che noi dovremmo andare a catturare formalmente è che quando noi di fatto facciamo l'alfabeto, e notate bene, il colleghe mi ha detto ognuno ha le rappresentazioni che vuole. Certo, tutti qua le stiamo dando, no? Stiamo dicendo passo passo per le varie operazioni che stiamo facendo. Prima decidiamo cosa guardare, poi decidiamo se scegliere dargli un nome. La concettualizzazione è una descrizione. Fausto è vicino al telefono, è una descrizione. Se avere è una sezione di verità. Ok. Questo è quando vi danno le cose. Passo dopo, cosa è successo? Come iniziamo insieme la sintassi. Quella che avete visto nelle volte, no? La sintassi di Java, cos'è? È altro un modo che ti dice date dei percetti che sono le vostre variabili e come tu le costruisci. Quindi poi avrai una semantica statica, una semantica data e dinamica delle tue idee Java, ma di fatto loro ti stanno dicendo le percezioni complesse che tu puoi costruire. Ti danno la grammatica perché la vogliono avere formale, perché non vogliono anche il computer che ti scrive quello che vuoi. E poi dite una, quando fate la descrizione di funzione, l'esempio classico in logica è un, come si dice, uno scapolo è un uovo non sposato. Scapolo, un nuovo concetto che definisco in termini di concetto arbitrario. Quando voi fate in qualunque linguaggio di formazione, definite una funzione, state in effetti introducendo un nuovo concetto che in realtà nasconde una realtà molto complessa. Il knowledge graph, l'insieme di tutte le affermazioni vere di POVO, le posso chiamare POVO. E qual è la scelta? Dipende se voglio parlare di POVO all'interno o se voglio parlare di POVO come andare da POVO a Trento. Nel qual caso non me ne frega niente di sapere dei dettagli di POVO. Ok, quindi cos'è che abbiamo scoperto? Abbiamo scoperto che quelle cose che voi avete già visto nelle volte con i linguaggi, le regole di formazione e così via, si possono, si può dare un meccanismo di formalizzazione del significato interno in termini di funzione di interpretazione, che ve l'ho menzionato, avevo detto che cos'è, ma in termini di modello. Ok? Quindi ora possiamo parlare delle cose. E ora però vogliamo, ora che ne possiamo parlare, dobbiamo catturare l'altra proprietà fondamentale che è il problema della memoria. No, vi ricordate nell'esempio a parte all'inizio che c'era stato questo car crash, no? Lei ha detto, c'era il, c'è stato il vetro rotto e la gente aveva detto di sì, semplicemente perché non c'era da invidia. Infatti c'è in letteratura di psicologia, c'è documentazione estesa e pervasiva che la maggioranza delle nostre memorie sono false. È interessante saperlo, è curiosità. Ma ce la mettiamo un sacco di storie, sì. Da informatici invece dobbiamo fare i modelli, poi li documentiamo, quindi in modo che poi la gente legge quello che abbiamo lasciato. Ok, cos'è una world logic? Una world logic, prima di tutto, deve avere un modello di riferimento. Quindi vuol dire, hai costruito il tuo modello, ti sei dato l'alfabeto per parlarne e poi cos'è che ti dai? Ti dai le regole di inferenza. Ovverosia dei meccanismi che, assumendo che certe cose sono vere, certe cose sono vere, ne puoi dedurre cose vere che non sono scritte nella tua memoria. Queste regole di inferenza le puoi applicare una dopo l'altra per fare una deduzione. Quindi quando voi avete fatto l'algoritmo del commesso viaggiatore, quella era una deduzione, non un algoritmo, era delle singole cose vere, dei singoli passaggi, li mettete insieme, avete fatto backtracking di qualunque cosa, che faremo anche noi, con la possibilità della scelta. Nel nostro ragionamento, come vedremo nei nostri algoritmi, è un bene o un male, perché scegliendo si sbaglia anche, qui dove sale la complessità del ragionamento. Quindi cos'è una world logic? Una world logic è un meccanismo che, dato un linguaggio che descrive quello che abbiamo deciso di vedere del mondo, ci permette di calcolare le conseguenze. E faremo, e noi dalle prossime lezioni faremo tutta una serie di world logic che sì, che ci daranno diverse capacità di ragionamento. Cos'è una sezione? Una sezione è una concettualizzazione che sappiamo che è vera. Una sezione è composta di entity types, entity and properties, nella prossima slide vi faccio vedere cosa sono. Comunque io sono un'entità, la mia proprietà è il cappello bianco, e il mio e-type sono una persona, un professore, un animale, un oggetto, e così via. Cos'è una world logic? Una world logic è un qualcosa che permette di ragionare circa quello che si conosce, riguarda il modello di riferimento, e di dire, di dedurre, usando la parola dedurre, tramite regole di inferenza, delle sezioni che non sono nella mia memoria, ma che sono implicitamente implicate da quello che mi insegnano. Ok? Quindi, la nostra definizione di world logic, noi estendiamo quello che sappiamo. Se sappiamo una cosa, possiamo dedurre altre cose. Notate bene che, da come da definizione, nella world logic noi non siamo in grado di parlarci di quella che non sappiamo. Se noi quella la sappiamo, possiamo dire che quella ne consegue, ma se non la sappiamo non diciamo niente. Non possiamo neanche dire che non la sappiamo. In effetti, se ci pensate, tutti i formalismi che avete fatto, sui world models, gli ER model, e così via, vi dicono quello che vedete c'è, ma quello che non vedete non c'è. E non c'è perché non lo sapete, o non c'è perché se l'è dimenticato, non lo sapete. Vedete solo quello che c'è. E infatti le world logics, e di fatto poi faremo i knowledge graph come probabilmente il world model più espressivo, sicuramente come molto espressivo, quando andiamo in queste logiche qui, noi possiamo, e vedremo che è molto utile. Ci permette di fare un sacco di conseguenze, che non è che non serve, ma solamente all'interno di quello che sappiamo. Eccole qua, cosa sono i concetti? Eccolo qui, la foto iniziale, ve la ricordate? C'era una città, c'era una città, c'era una chiesa, una piazza, una fontana, un'entità a Trento, e così via. Entity type, città, un entity type che è un'entità che è vera dell'entità a Trento. Church che è vera dell'entità Duomo. È dentro Nia, è vero che il Duomo è dentro Piazza Duomo, è vero che potrebbe essere nettura dentro Piazza Duomo, e così via. Queste non ce le devi mettere a formule. Ok? Ovviamente tutto questo, ve lo do, lo facciamo formalmente, però quello che mi interessava in questa lezione è farvi vedere il percorso di astrazione. Ok? Per ognuna di queste, dunque, ci sono, faremo 5 o 6 world logics, quindi, perché poi diventa il problema, tipo, nella tua world logic, ti permetti di dire un certo tipo di cose, il tuo linguaggio è abbastanza espressivo per affermare una certa cosa, perché più, come vedremo più avanti, più il linguaggio è espressivo, e più fai fatica a ragionare, perché è più scettico. Ok? Adesso stiamo semplicemente impostando l'intuizione di base. L'esempio di world logic reasoning, questa è una sintassi che abbiamo preso dalla prima world logic che faremo, dalla seconda, dove diciamo che questa qua la possiamo leggere come il Duomo è una chiesa. Poi diciamo che il Duomo è un sottinsieme degli edifici che hanno la torre con la campana, giusto? Allora, se tu mi dici che, e questa è una cosa banale, ovviamente, se tu mi dici che il Duomo è una chiesa, e se tu mi dici che tutte le chiese, per questo qualunque chiesa, è un edificio con una torre della campana, sicuramente anche il Duomo ha la campana. È chiaro? È chiaro questo ragionamento nella sua ovvietà? Allora, supponiamo che sia vero sempre, supponiamo che sia vero sempre, e questo è il passo importante che sto per fare, dove cominciamo a vedere l'utilità della logica, supponiamo che sia vero sempre che una chiesa ha una torre con la campana. Io lo dico una sola volta, giusto? Per quante chiese ci sono in Italia? Qualche milione? Quante chiese ci sono nel mondo? Qualche decina di milioni? Una sola frase, a livello di e-type, mi permette di sapere che 100 milioni di chiese hanno la campana. Quando voi ragionate e sentite la campana, inconsciamente cosa dite? Ah, c'è una chiesa da qualche parte. Da dove esce questa roba qua? Perché avete visto abbastanza chiese, e anche se la chiesa non l'avete mai vista, istantaneamente, una delle 100 milioni di istanzazioni di questo concetto, di questo fatto universale, che si chiama conoscenza, è esattamente quello che vi permette di ragionare. Quindi, noi, quando facciamo gli ER model, noi definiamo degli universali come questi, o faremo dei knowledge graph sugli e-type, che poi quando andremo nelle applicazioni potremo istanziare su tutte le istanze che noi avremo scelto. Ovviamente, è chiaro appunto, questo passo qua è fondamentale, perché non è che tu, il passo delle logiche nelle logiche del mondo, world logics, il passo è il fatto che tu con una singola stringa dici un miliardo di fatti. Ovviamente, qual è il problema? Che se tu vai in India, dove le chiese non hanno la torre della campana, lo vai a vedere che hanno una torre della campana e diventa inconsistente. Perché tu nella tua conoscenza a priori hai un certo fatto, perché non sei mai andato in India, e vai in India, però noi siamo intelligenti, e siamo bravini, e diciamo ah, cavolo, questo vale solo in Italia, magari però non in tutti i posti del mondo le chiese hanno la campana. Che è esattamente dove si piantano gli LLM. E.
Non avrò eccezioni. Perché il problema non è che, a parte le definizioni, voglio dire il fatto che un uomo, un vecchio... no, scusate, è un universale, non ci sono eccezioni, è una definizione. Ma sul fatto che non tutte le campane, sì, non tutte le chiese hanno la torre... è vero o non è vero? È vero così, o vero o no. È esattamente la diversità del mondo che troveremo. Ed è esattamente quello dove noi, come umani, siamo estremamente bravi e dove è esattamente dove la gente si pianta. Perché se tu prendi una specifica scritta in questa maniera e poi la porti in India, non funziona. Ed è il motivo per cui la gente fa i linguaggi di specifica ed è il motivo per cui poi, quando la gente fa i linguaggi di specifica su applicazioni ad alto valore, come i treni e così via, usa la logica. Perché tu non vuoi, e vuoi evitare che i tuoi treni si scontrino e così via. Perché tu, quando fai queste affermazioni universali su VE Type e le vuoi fare, non puoi non farle. Perché altrimenti sei a scrivere ogni singolo cambiamento del mondo. Non puoi non farle. Ma quando le fai, poi devi garantirti a runtime che non ti creano problemi. Perché, come al solito, funzionare il 99% delle volte va bene se è una Google query, che tanto sei anche educato e non lo sai. Se funzionare il 99% delle volte non va bene se tu stai definendo software giornaliero. Ok. Notate bene che fino a questo punto io ho fatto la mia semantica intesa. È il modello di prima. Io ho fatto sempre i tempi del mondo. Arriviamo. Perché il language logic? Perché qui non... perché word logic? Perché sono le logiche che parlano del mondo. Le word logic nel mondo non c'è più. C'è solo il linguaggio. Ce lo stiamo dimenticando. Probabilmente abbiamo qualche neurone da qualche parte che lavora, che pilota gli altri neuroni. Una logica di un logic language, una logica linguistica, non è quella logica. È una word logic. Perché chiaramente poi alla fine, anche se la nominiamo, dobbiamo sempre, abbiamo sempre modelli intesi da qualche parte. Magari non è raggiungibile, ma ce l'abbiamo. Dobbiamo... siamo in grado di fare dei calcoli esattamente come prima. Siamo in grado di fare delle deduzioni esattamente come prima. Questa è la logica dei matematici. Ora questa è la logica, quella delle tabelle di verità, quella dei circuiti, quella dei matematici, quella dei teoremi e così via. Giustamente i matematici e la gente brava hanno fatto questa perché hanno già detto che la lingua perché hanno già il mondo della aritmetica e quindi avevano già fatto un sacco di roba. Noi che facciamo AI e che facciamo computer science, ci siamo inventati i database, le word logic le abbiamo inventate noi come informatici perché noi abbiamo bisogno di modellare il mondo. Chiaro? Qui, a questo punto, quando arriviamo qui, riusiamo tutti i risultati della logica classica ed è il fatto, il motivo, non è un caso che metà del corso è su questa. Ma la cosa importante di tutta la prima fase del del corso era quella di far vedere come quei risultati, costruiti dai matematici per i matematici, li possiamo usare noi, ma lo possiamo fare nella misura in cui noi capiamo come poi andiamo a usare quei meccanismi che loro hanno inventato e ma anche affinato. Tu dov'è prima? Cos'è una proiezione atomica? È una proiezione atomica, è un valore di principalità su... su C, che è una sezione, un intero non esclasso, è vero o falso? Quindi noi facciamo il mondo, ci prendiamo tutta questa descrizione del mondo e a questo punto prendiamo tutto parte di quel mondo e diciamo quel pezzo di mondo lì, quello che dico di quel mondo lì è vero o falso? È vero che i materiali, è vero che la Terra è piatta? La Terra può volare lentamente, però poi si muove perché la Terra è piatta e dice vero o falso, poi decidi. E poi la componi, perché a questo punto dici: è vero che la Terra è piatta o non è piatta? Che questo probabilmente ci sta. A o non A, una dei due è vero. È vero che la Terra è piatta e che non è piatta? Beh, questo è A e non A, probabilmente non è vero. È vero che se se piove io esco, beh, perché per me è vero, per altri no. Notate bene che io sto dicendo che la Terra è piatta così, ma in realtà stiamo scrivendo tutte robe qui, stiamo semplicemente lavorando sulla vero o falso. Quindi qual è l'intuizione quando siamo arrivati qui? Una logica del mondo ti permette di ragionare, e farò l'esempio, su ciò che noi non sappiamo. Perché quando io dico... perché l'elemento nuovo che non c'è. Ma quando io dico: sono a casa o esco, no, è a casa, perché io non so cosa dico, o è uscito, è uscita, questo, e il signore in particolare, che è una logica descrittiva, è il modo con cui noi definiamo il cambiamento di tempo. Ci stiamo dando delle alternative. Quindi come vedremo, quando noi andremo a usare la disgiunzione, che è l'elemento di che poi porterà all'implicazione, vedremo che c'è un'equivalenza, di fatto ci stiamo dando la possibilità di ragionare. Per esempio, faccio un esempio. Sicuramente dal fatto che quella persona è a casa o è uscita, non sono in grado di dire se è a casa o è uscita. È uscita... no, è a casa, ma possiamo dire o è in ufficio. Sicuramente da quella roba lì io non so dove sei a casa o in ufficio, però so sicuramente che non vai a giocare a tennis. E c'è un'infinità di roba, mi sembra. So che non è a giocare a tennis, so che non è uscita, so che non è in treno e così via. Quindi quello che voglio dire, la conoscenza parziale è nel nostro stato normale di vita e di ragionamento, la logica e le logiche, il language logic, ci permetteranno di ragionare su questo. Ed è esattamente quello che scrivo qua. Queste proposizioni, e dovremmo imparare a scriverle, comunque non in questo corso, ma sicuramente quando fate metodo di formality, di volete fare la moda del ciechi, lo fate in maniera esaustiva. Le logiche, le proposizioni ti permettono di definire precisamente che cos'è il no, cos'è il noto e cosa non è noto del tuo modello inteso. Qui, e ovviamente, c'è un esempio dopo, c'è un esempio dopo. Chiaramente io ho il punto qui, ma noi abbiamo una sezione 30 e una città. Posso scriverlo 30 e una città, potremmo dirlo, lo chiamo così. Intanto lo chiamo. Poi lo chiamo A. Però io, nella mia semantica intesa, perché notate bene, a questo punto, la semantica intesa non è più il modello, è il fatto che city 30 è vera o è falsa. È un judgment sul fatto che è vera. E notate bene che io posso scrivere, posso dare una qualunque stringa, posso chiamarla city 30, ma solamente valore per me, per denotare questo, posso chiamarlo A e B. E infatti quando noi faremo esercitazioni saranno tutti A, B, C, D. Però quando faremo l'informal to formal, da come mettere una word logic in una language logic, il processo di decodifica sarà importantissimo. Perché se voi sbagliate la decodifica, è l'esercizio sbagliato. E sicuramente di informal to formal nel compitivo ce ne saranno tre o quattro. E una volta capito il meccanismo, devi essere smart a fare gli algoritmi di ragionamento. Ma poi tu hai la difficoltà di fare il processo di codifica e decodifica. Notare bene che c'è anche io, city 30, lo posso scrivere anche così. E in effetti ci sono delle logiche che ti permettono di mantenere questa struttura. Infatti questa logica è molto espressiva, infatti la prima logica che faremo, che si chiama LOP, scriveremo... non c'è più. No, scriveremo city 30 come Anna, a seconda ci lasceremo la possibilità di guardarla su, perché questa è una logica che è più comoda. Quindi proposizioni sono giudizi di valori delle delle delle asserzioni, errori che metti a posto. Gli specifici giudizi sono la scelta del tuo design, sei tu che lo scegli. Puoi chiamare quello che vuoi, però devi, cioè se city 30 lo chiami A in un posto, devi sempre chiamarlo A, non è che lo puoi chiamare B. C'è un problema di consistenza, è una cosa che non ho voglia di fare. Queste qua dove non sono le proposizioni sono PAC, si chiama logica delle proposizioni, o proposizione logica, le altre si chiamano logica delle proposizioni. Il punto fondamentale che ho cercato di dire, e abbiamo quasi finito, è che nelle logiche linguistiche, quando io faccio questa roba qui, la realtà non c'è più. Quello che importa è solamente la struttura linguistica dell'affermazione. Ed è chi di voi ha fatto i vari calcoli, albe e così via, sa benissimo che così è. Ok. Ma se vogliamo fare il modello, vogliamo fare i modelli informali, i nostri inquilini, le AI, questo passo è quello fondamentale per cercare di evitare che non abbiamo dei problemi di problemi. E questa è una forma di ragionamento. Qui stiamo usando sintassi del primo ordine. Quindi abbiamo una... supponiamo che noi abbiamo il nostro modello di riferimento dove c'è... che supponiamo questo nella nostra sintassi vuol dire che la persona 1 è una persona, che permetteci falso, che 30 è una città, che la persona vive in Trento. E poi ci abbiamo questo universale, che ho detto gli universali sono le cose più importanti. Perché sono esattamente quelle che ti permettono di salvare miliardi di affermazioni, che dice che qualunque x, se x vive in y, allora o studia o lavora in quella città. Ma questa affermazione qua cos'è che vuol dire? Se c'ho qualunque x, ma nel mio modello, nel mio c'ho solamente persona 1. Quindi questo modello se avesse avuto 100 persone diventava 100 affermazioni. Ma avendone una, una sola affermazione, quindi diventa live labs in persona 1 a 30, studia in persona 1 a 30. A questo punto, se io, qualcuno mi ha detto che persona 1 vive a 30, io so che o studia o lavora, ma non so quale dei due. Chiaramente, nel mondo reale, dovete pensare ad avere qualche centinaia, di qualche migliaio, decine di migliaia di questi assiomi, e qualche decina di milioni sono centinaia di milioni di questi. È chiaro? Col problema di garantirti la correttezza. Col problema che queste affermazioni evolvono, perché io vivo a 30 oggi, domani no. Chiaro? E infatti quando io faccio sta roba qui, facciamo gli algoritmi, sono tutti gli algoritmi incrementali per fare le variazioni incrementali, perché poi chi è chiaramente, come vedremo, se tu ti permetti la OR, vedremo che diventa NP completo. Quindi tu fai avere un calcolo di NP completo su 100 milioni di NOD. E allora come fai a farlo e così via. Poi diventa il nostro problema informatici. Allora magari dice, magari faccio un modello più piccolo, metto meno OR possibile che posso, e riesco a fare un vero polinomiale, e così via. Questa è tutta la ricerca che ci arriva. Ma l'importante è capire le scelte rappresentazionali che stiamo facendo. La cosa importante è che è ovvia, lo sapete, me l'ho scritta perché mi viene da programmazione 1, è chiaro che questi nomi non significano niente. E adesso arriviamo al punto, questo è il subito del corso. Com'è che noi funzioniamo? Che noi abbiamo dei dati, abbiamo dei dati, dei dati ci arrivano, poi qui, assumendo che riusciremo a fare quello che vi ho promesso, che ve lo sia formalizziamo tutto, riusciamo ad arrivare qua in cima, facciamo tutto il ragionamento, decidiamo cosa fare, diciamo cosa fare e cosa facciamo. Decidiamo a delle ruote di muoversi, parliamo e iniziamo di nuovo qua. Ok? Tu fai il ragionamento, però poi alla fine, anche se un aereo, devi comunque poi alla fine dargli l'elemento meccanico dei movimenti. Quindi tutto il nostro problema di logica diventa come dato il mondo, perché questo è il mondo, perché il nostro sistema di logica, come il nostro cervello, è dentro il mondo, quindi il mondo evolve, il sistema di logica deve continuare a prendere dati, noi gli dobbiamo andare dentro, qui facciamo tutti i calcolini, se siamo bravi qui facciamo tutto giusto, ma abbiamo i problemi che ho detto prima di efficienza computazionale, eccetera eccetera, i metodi formali, fare tutti i corsi che volete su sta roba qui, poi prendiamo la decisione e la mandiamo nel mondo. Quindi, il punto fondamentale però, che se ricordate bene, la nozione di correttezza la usate rispetto a questo, giusto? Quindi la nozione di correttezza è rispetto a questo. Ma da qui a qui non c'è correttezza. Non posso fare una nozione di correttezza con una cosa formale e una cosa informale. Io non posso fare un LLM che prende il linguaggio e lo toglie a una persona che si è garantito corretto. Non è possibile. Perché non è garantito corretto vuol dire che c'è una dimostrazione. Ma se il linguaggio non dice quello che vuole, io non ho la caratterizzazione del linguaggio. Vale per LLM, vale per computer vision, vale per qualunque, vale per gli R modules. Parlo di LLM perché altrimenti sono diventati il cavallo di battaglia che sono capiscono tutto e fanno tutto bene. Con l'applicazione non sono d'accordo. Però il punto fondamentale è che noi possiamo fare correttezza e correttezza qua dentro. Quindi non possiamo garantire tutto la correttezza in entrata e in uscita. Ed è il motivo per cui, come ho detto fa, no, non l'ho detto qua. Un sacco di gente lavora qua dentro a fare gli LLM, a fare qualunque, ma lavora anche a garantirsi, sicuramente in logica questo lavoro è stato fatto, ma c'è un sacco di lavoro ancora a cercarsi delle logiche nuove che permettono di essere più efficienti in certi campi applicativi. Ma sicuramente questo qua è il problema che rimane. E in effetti tutti i compitini saranno o fare un po' di ragionamento qua dentro o fare o fare informal to formal o formal to informal. Questi sono i tre problemi fondamentali. Chiaro? Ok. E quello che io spero e penso di potervi portare a casa con questo corso è che la prossima volta che farete una qualunque specifica o farete AI, qualunque cosa farete, sicuramente farete da essere un sacco di più sul bias, tutti i sistemi sono bias. Non perché per definizione, perché comunque quando noi formalizziamo facciamo una scelta rappresentazionale. Il punto è che la logica, oltre a segnarvi un po' di algoritmi qui e così via, nella misura in cui riuscite ad acquisire questa sensibilità, che il problema non è di essere bias o non bias, è di essere bias nel modo giusto. Giusto volevo dire che va bene a me, che va bene a me per risolvere il problema, non che non siamo in grado di formalizzare l'universo module. Non è possibile, non ci è dato. Perché non lo vediamo? Perché non abbiamo linguaggio? Perché facciamo tutti questi passi. Io spero con oggi di aver dato in maniera più quantitativa tutta quella storia che ho fatto nelle prime due lezioni di tutti i vari tipi, che le rappresentazioni sono diverse, sono ambigue, eccetera eccetera. Bene. Fatta questa roba qui, e con questa avete finito questa lezione, ma voglio farvi vedere ancora una cosa. Quello che nel corso adesso noi faremo è esattamente affrontare i tre problemi separati. Questa qua la farete essenzialmente a esercitazioni, e mentre qui faremo tutto l'aspetto del calcolo, dei vari calcoli che sono necessari, a partire dai modelli che di fatto faremo vedere la lezione prossima, che altro non sono che insieme. Quindi, questi concetti sono importanti. Sono tutti e solo i concetti di questo corso, più gli algoritmi ovviamente. La piramide fatta dai sistemi informativi, la piramide delle quattro rappresentazioni, la piramide delle quattro attività che generano le rappresentazioni, la piramide della conoscenza che dice come le attività generano le rappresentazioni, la logica che formalizza il nome della piramide, i modelli che sono percezioni e percetti, i word models che sono concetti e concezioni, le word logic che hanno asserzioni, types, entities, quindi questi null graphs, language logic che sono proiezioni da tavoli di proiezioni, e il processo tale per cui da informal andiamo a formal, da formal siamo a formal, formal to informal e informal to informal. Gli LLM sono puramente formal to informal. Non passano per i vari intermedi. E noi nel corso copriremo tutte queste robe qui e faremo 1, 2, 3, 4, 5, 6, quante sono, 3, 4, 6 logiche che copriranno i vari... faremo una lezione sui modelli, facile, comunque ripetiamo molto di questo domani, poi daremo i vari tipi di word models e poi faremo le logiche per lavorare a word logics e le due logiche di LOD e LOI per lavorare il linguistico su ciò che è vero, ciò che è falso, ciò che non è sicuro. Ci fermiamo qua e a domani, grazie. Adesso sto ancora pensando... Ma cos'è? È il mio stologro che ha i quelli, è l'emoji del cavalluccio marino. È 20 minuti che si dice sto pensando. Sta veramente pensando. Al minimo gli dava il trom di quello che stava facendo. È una certa... ha cercato su internet un errore di una macchina per radiografia orale. Ma lei si rivola... Scusa, non ti riferivi. Ma comunque dopo, dopo ci sono. No, no, no, è l'informa. È già tanto secondo il tuo zio di avere. Anche perché finché non si paga io ci sono. Dai, come non... C'hai già la roba dietro? Te la concentrazione. Cioè, non posso appoggiare sta felpa da nessuna parte che... Cioè, è un magnete, in realtà. Non la ridisco. È perché se ti fai pagare non lo so, non lo so, però a me la mia libreria la faceva una storia. Dopo, ci sono andato? Dopo ci sono andato. Consigliato quanto? Guarda bene, sì.