Modello di Automa (Q, I, U, t, w)

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Capitolo 4 Logica sequenziale
1 Automazione dellalgoritmo ricorsivo di permutazione eseguita da Mariano Melchiorri.
INTRODUZIONE ALL’ INFORMATICA
Circuiti sequenziali ad impulsi
La macchina di Turing Lettore IIIIIII Se nella casella cè un simbolo allora leggi la casella successiva.
MACCHINE DI TURING Le macchine di Turing sono dispositivi astratti per la manipolazione di simboli, ideati nel 1936 dal matematico e logico britannico.
Analisi e Sintesi di circuiti sequenziali
Algoritmi Politecnico di Milano
INTRODUZIONE ALLA PROGRAMMAZIONE STRUTTURATA
Introduzione agli Automi Cellulari
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L’attività di.
Macchine sequenziali.
Macchine sequenziali.
APPUNTI SUL LINGUAGGIO C
DAL PROBLEMA ALL'ALGORITMO Problemi e Programmi Paolo Amico
Modelli simulativi per le Scienze Cognitive
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Modello dati ALBERO Albero: Albero: insieme di punti chiamati NODI e linee chiamate EDGES EDGE: linea che unisce due nodi distinti Radice (root): in una.
Esercizi su pile Scrivere una funzione che restituisca una nuova pila che contiene i valori di una pila in ingresso in ordine inverso. La pila originale.
2) Trattamento dell'informazione. Lab.Calc. I AA 2002/03 - cap.22 Esempio Supponiamo di volere calcolare X, per uno o più possibili valori di Y, in base.
Strutture di controllo in C -- Flow Chart --
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
L’AUTOMA ESECUTORE Un automa capace di ricevere dall’esterno una descrizione dello algoritmo richiesto cioè capace di interpretare un linguaggio (linguaggio.
Esempi di Automi a stati Finiti
Rete Sincrona Una rete sequenziale sincrona, è dotata di un ingresso E, di un segnale di Clock e uno di reset. Ad ogni fronte del Clock, deve essere campionato.
MACCHINE A STATI FINITI
L’inventore del calcolatore odierno
Automi LAVORO SVOLTO DA MARIO GERMAN O
PROGRAMMAZIONE: linguaggi
Antonio Cisternino La Macchina di Turing.
CHI ERA ALAN TURING? Turing fece parte del team di matematici che, a partire dalla base di Bletchley Park, decodificarono i messaggi scritti dalle macchine.
LA MACCHINA DI TURING Nel 1936 il matematico inglese A. M. Turing propose una definizione del concetto di algoritmo tramite un modello matematico di macchina.
Esempio teorema equivalenza Mealy-Moore
Complessità di un algoritmo
Modelli computazionali e macchine astratte
Informatica 3 V anno.
Display a 7 segmenti.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
In grado di effettuare molte azioni elementari indipendenti automa universale generatore di sequenze riconoscitore di sequenze circuiti sequenziali sommatore.
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
ARCHITETTURA DEI SISTEMI ELETTRONICI
Grammatiche Grammatiche libere da contesto Grammatiche regolari
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Dalla macchina alla rete: reti LLC. Dalla macchina alla rete Per realizzare una macchina sequenziale è necessario –Codificare gli insiemi I,S,O con variabili.
Architettura degli Elaboratori 1
A.S.E.24.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 24 Reti sequenziali sincronizzate complesseReti sequenziali sincronizzate complesse –Macchina.
A.S.E.18.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 18 Reti sequenzialiReti sequenziali –concetto di memoria –anelli di reazione EsempioEsempio.
Grammatiche non contestuali (1)
Reti Sequenziali Corso di Architetture degli Elaboratori Reti Sequenziali.
Macchine di Turing (1) Il modello di base ha un controllo finito, un nastro di input diviso in celle e una testa di lettura che esamina una cella alla.
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Vincenza Ferrara - Dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Espressioni regolari (1)
A.S.E.26.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 26 Reti sequenziali sincronizzate complesseReti sequenziali sincronizzate complesse EsempioEsempio.
Esercizi.
CALCOLABILITA’ AFFERMARE CHE UN PROBLEMA E’ RISOLUBILE MEDIANTE UN PROCESSO AUTOMATICO EQUIVALE A DIRE CHE E’ POSSIBILE TROVARE UN ALGORITMO RISOLUTIVO.
TIPI SEMPLICI (ATOMICI) DIREMO CHE UNA INFORMAZIONE E’ DI TIPO SEMPLICE SE NON E’ COMPOSTA DA INFORMAZIONI PIU’ SEMPLICI TIPI STRUTTURATI DIREMO CHE UNA.
- Michela Fragassi - Abilità Informatiche Storia del computer.
TEORIA DEGLI AUTOMI Una macchina sequenziale a stati finiti o AUTOMA a stati finiti è un sistema sequenziale che ha un insieme finito di stati interni,
Storia del computer.
Indecidibilità Limiti della calcolabilità Pigreco-day 14 marzo 2014 Matematica e Incertezza Prof. Antonio Iarlori Mathesis Lanciano-Ortona.
Cicli. Ci sono almeno tre modi diversi per costruire un ciclo in C e occorre utilizzare quello che meglio si adatta alle esigenze del problema che si.
Algoritmo per il calcolo del maggiore tra tre numeri qualsiasi Francesco PUCILLO matr
Linguaggi, stringhe e alfabeti. Linguaggi e grammatiche Un linguaggio è un sistema di comunicazione tra persone che permette di trasmettere informazioni.
GLI AUTOMI INGRESSIUSCITE Un Automa è un sistema con le seguenti caratteristiche: 1.Dinamico : evolve nel tempo; 2.Invariante : la risposta del sistema.
Le Macchine di Turing.
Analisi e Sintesi di circuiti sequenziali
Transcript della presentazione:

Modello di Automa (Q, I, U, t, w) Q: insieme finito di stati interni q: qÎQ I: insieme finito di ingressi i: i Î I U: insieme finito di uscite uÎU t: funzione di transizione t: QxI®Q w: funzione di uscita t: QxI®U

Esempio di Automa Ascensore Il piano in cui si trova: stato del sistema Piano verso cui si deve spostare: ingresso

Esempio di Automa Ingressi: PT, P1, P2 Stati interni: QT, Q1, Q2 Uscite: UT, U1, U2,STOP

Modello Concettuale di Automa Q T, w I U

Esempio di Automa R1 RT R2 P1/stop P1/A1 PT/stop PT/AT P2/A2 P1/A1

Automi a stati finiti come traduttori di linguaggi 0/1 0/0 Q0 Q1 1/1 1/0 Nega un numero in complemento a due

Automi a stati finiti come riconoscitori di linguaggi Lettera Q0 Q1 Lettera Cifra Identificatori del C++ primo secondo Ind1 VarMia nome_23 _temp S23l3 Inizio_File

Pattern Recognition (Riconoscimento di Sequenze) Sacrilegious abstemious facetious ... Si ASF No

Riconoscimento di Patterns i = 0, ..., 5 aeiou l-a l-e l-i i a e S0 S1 S2 i S5 S4 S3 u o l-u l-o

Riconoscimento di Patterns Si No c int findChar(char *word, int i, char c) { while( (word[i] != c) && (word[i] != '\0') ) i++; } if(A[i] == c) return 1; else return 0; Ricerca Sequenziale

Riconoscimento di Patterns int controllaPar(char *word) { i=0; /* Stato iniziale */ if( findChar(word, i, 'a') ) /* Stato 1 */ if( findChar(word, i, 'e') ) /* Stato 2 */ if( findChar(word, i, 'i') ) /* Stato 3 */ if( findChar(word, i, 'o') ) /* Stato 4 */ if( findChar(word, i, 'u') ) /* Stato 5 */ return 1; } return 0;

Contatore modulo k Mealy q0 q1 q2 q3 I U 0/0 0/0 0/0 0/0 1/0 1/0 1/0 1 1 1 1 U 1 {I, U, Q, t, w} I = {0, 1} U = {0, 1} Q = {q0, q1, q2, q3} Mealy 0/0 0/0 0/0 0/0 1/0 1/0 1/0 q0 q1 q2 q3 1/1

Moore Progettare un automa che fornisca l’uscita in corrispondenza di £ 500 I = {100, 200} U = {0, 1} La macchina non da resto Moore - Mealy a a/B S0/A S1/B S0 S1

Mealy - Moore a/A S0 S1 a/A a/B b/B b/B b/B a/B S2 S3 b/A Mealy

Mealy - Moore S0/- S1/A S3/A S0/A S1/B S2/B S3/B a b a a b b a a a a b

Mealy - Moore 200 100 100 0/0 100/0 200/0 200 100 200 100 100 300/0 400/0 500/1 200 200

Mealy - Moore a a/B b a b a a b/B a/A b/B a/C a/B b b/B b b/C Moore S0/A S1/B S0 S1 b a b a a b/B a/A b/B a/C a/B b b/B S2/B S3/ S2 S3 b b/C

Modello di Von Neumann unità controllo unità ingresso unità memoria uscita unità aritmetica

Blaise Pascal: macchina per contare Prima macchina calcolatrice (1600) ovvero… la raffinatezza degli orologi del ‘600

Macchina analitica: prima macchina programmabile Magazzino Mulino Controllo Apparato di ingresso Apparato di uscita

Hollerith Il censimento del 1880… IBM Konrad Zuse 1936 Z1 Howard Aiken 1944 Harward Mark1

Babbage P=P0*OL Controllo P0 OL P 1 1)… 2)… 3)… 4)… 2 3

Macchina di Turing Insieme di simboli, detto alfabeto, che possono occupare le varie caselle del nastro L’insieme degli stati interni della macchina L’insieme dei movimenti, o operazioni elementari, che la macchina può compiere Il modello di automa a stati finiti è generico e non precisa la natura degli ingressi e uscite E non consente di individuare un insieme di possibili azioni elaborative. La MDT è un particolare automa per la quale sono definiti l’insieme degli ingressi e delle uscite come insieme Di simboli ed è definito un apposito meccanismo di lettura e scrittura effettuati su un meccanismo ideale (testina) che opera su un speciale nastro continuo In particolare MDT è composta da: Una memoria Una testina lettrura scrittura Capacità di compiere azioni elaborative Un dispositivo di controllo che per ciascuna coppia (stato,simbolo letto) cambia stato ed esegue azioni elaborative

Macchina di Turing Testina Può muoversi verso destra (D) Può muoversi verso sinistra (S) Può leggere Può scrivere Può cancellare

Macchina di Turing Simbolo letto - stato interno Simbolo da lasciare sul nastro - nuovo stato da assumere - spostamento

Macchina di Turing Operazione 3+2

Macchina di Turing .................................... 1 0, S1  (0, S1, D) S1 .................................... 1 1, S1  (0, S2, D) S1 .................................... 1 1, S2  (1, S2, D) S2 .................................... 1 1, S2  (1, S2, D) S2 .................................... 1 0, S2  (1, S3, D) S3 .................................... 1 1, S3  stop S3 ....................................