Testo, Tessuto e Calcolatori It is known as a fact that the Jacquard loom is capable of weaving any design which the imagination of man may conceive. It is also the constant practice for skilled artists to be employed by manufacturers in designing patterns. These patterns are then sent to a peculiar artist, who, by means of a certain machine, punches holes in a set of pasteboard cards in such a manner that when those cards are placed in a Jacquard loom, it will then weave upon its produce the exact pattern designed by the artist. … (C. Babbage, 1864)
Tessere formule algebriche Now the manufacturer may use, for the warp and weft of his work, threads which are all of the same colour; let us suppose them to be unbleached or white threads. In this case the cloth will be woven all of one colour; but there will be a damask pattern upon it such as the artist designed. But the manufacturer might use the same cards, and put into the warp threads of any other colour. Every thread might even be of a different colour, or of a different shade of colour; but in all these cases the form of the pattern will be precisely the same--the colours only will differ.
Il telaio Jacquard
Tessere formule algebriche The analogy of the Analytical Engine with this well-known process is nearly perfect. The Analytical Engine consists of two parts:-- 1. The store in which all the variables to be operated upon, as well as all those quantities which have arisen from the result of other operations, are placed. 2. The mill into which the quantities about to be operated upon are always brought. (…) Every formula which the Analytical Engine can be required to compute consists of certain algebraical operations to be performed upon given letters, and of certain other modifications depending on the numerical value assigned to those letters. (…) The Analytical Engine is therefore a machine of the most general nature. Whatever formula it is required to develop, the law of its development must be communicated to it by two sets of cards. When these have been placed, the engine is special for that particular formula.
La Macchina Analitica The Difference Engine
La Macchina Analitica (2)
Larchitettura di Von Neumann ALU Control Unit OutputInput Programma Dati
La Memoria N-1 Cella Unita atomica, bit Cella (o Parola) Valori Indirizzi
Organizzazione dei Dati Ogni informazione per poter essere elaborata necessita di una esplicita rappresentazione in memoria Tipi di dati Numerici Testuali Ibridi Multimediali Avanzati (e.g. MP3) Diverse tipologie richiedono organizzazioni e strutture diverse
Dati in un DBMS (record)
Dati in un DBMS (record) (2)
Dati in un DBMS (pagine)
Dati in un DBMS (pagine) (2)
Strutture dei dati Tipi dati primitivi (es. interi, date, …) Record (es. ) Array di records - File di records Oggetti e classi TDP record record set Oggetti - TDA
Grafi Il problema del commesso viaggiatore … I ponti di Konigsberg Soluzione di Eulero "Solutio problematis ad geometriam situs pertinentis" (1736 )
Equivalenza e Generalizzazione Es. frazioni: 1/2, 2/4, 6/12 3/5, 15/25, 30/50 Molti dati (puntuali) esprimono una informazione equivalente Relazione di Equivalenza ( ) (riflessivita) A A (simmetria) A B B A (antisimmetria)A B not (B A) (transitivita) A B e B C A C 1/2 3/5
Equivalenza e Generalizzazione Tipi di Equivalenze (vs. proprietà) Es. sostituibilita nelle lingue, categorie grammaticali, e.g. nomi/verbi/aggettivi Genere e numero (nomi) Isotopie Fonetiche (…. perche, … fuorche) Fonetiche e semantiche ( … onde, tacque, donde, acque) Le proprietà distinguono oggetti nelle stesse classi N Stessa categoria Sint. Stesso genere VA mf
Equivalenza e Generalizzazione Classi di equivalenza diverse non possono essere confrontate Isotopie di natura diversa Il genere vs. la forma verbale Classi di equivalenza in livelli diversi danno luogo ad ordinamenti parziali Es. tutti le parole x che sono f sono nomi N, x f(x) N(x) f N
Relazioni di ordine parziale {1,2,3} {1,3} {2} {1}{3} {2,3} {1,2} 2 A, A={1,2,3} 2 A = {, {1},{2},{3},{1,2},…,{1,2,3} }
Ereditarietà La nozione di sottoclasse stabilisce una relazione dordine parziale tra gli insiemi, cioe le classi, che implica un meccanismo di ereditarieta tra gli individui che appartengono a tali s.i. Ogni x in f eredita anche tutte le proprieta di N, Ogni N,V ed A possiede tutte le caratteristiche delle P P N Stessa categoria Sint. Stesso genere VA mf
Semantica della Elaborazione dei Dati Una struttura di dati anche molto complessa fornisce sempre una precisa semantica definita da Proprietà intrinseche (per es. numero di figli per ogni nodo della gerarchia) Insieme di operazioni legali su tale struttura (per es. propagazione della ereditarietà) Una struttura di dati implicitamente determina la sua interpretazione (cioè le caratteristiche richieste al suo interprete)
Verso lIA: Logica ed Inferenza Le strutture in cui sono organizzati dati piu i meccanismi di navigazione ed elaborazione che essi rendono disponibile forniscono strumenti di ragionamento automatico: Inferenza logica Ereditarietà (subsumption) Analogia Similarita Abduzione
Reti semantiche
Applicazioni (4): TAL Grammatiche
Disambiguazione
Ontologie Madre Donna Femmina PersonaGenitore figli (1,0) Donna Persona Femmina figli(ANNA,JACOPO)
Navigando tessuti elettronici …
Reti Neuronali e Memorie Associative
Memorie Associative
Modelli Markoviani di fenomeni testuali
Diagramma degli stati e Trellis
Lattice (1)
Applicazioni nel TAL POS tagging
Approccio Markoviano Stati POS tag p i (i time stamps) Transizioni p i p i+1 Emissione simbolo: z i+1
Conclusioni (?) Il calcolo sin presenta si dalle origini come tessitura cioè intreccio tra operazioni e dati, rappresentati in modo equivalente in trame, funzionale ad uno obbiettivo specifico Le strutture dei dati in informatica rappresentano informazioni di crescente complessità e si adattano alle realta (significati) che intendono modellare ma … forniscono una semantica univoca ai processi di calcolo fino ad includerne alcune caratteristiche
Conclusioni (2) In modo ricorsivo le organizzazioni dei dati complesse consentono il trattamento dei fenomeni testuali complessi … Ribaltamento dei ruoli tra le organizzazioni dei dati (testi come strutture gerarchiche) e le operazioni su di essi (es. disambiguazione come navigazione nei modelli testuali di ragionamento) Tali meccanismi di inferenza sono applicati ricorsivamente dagli elementi più semplici fino alla generazione delle strutture complesse (e.g. grafi alle dipendenze a partire dalla disambiguazione sintattica locale alle parole)
Elaborazione, Programmazione e Linguaggi Ada Byron, Lady Lovelace ( ) Rappresentazione dei dati Controllo delle sequenze e loop Il linguaggio di programmazione, ADA