Sistemi di Lindenmayer

Slides:



Advertisements
Presentazioni simili
Automi finiti deterministici (DFA) (1)
Advertisements

Automi temporizzati.
Dispensa a cura del prof. CAVAGNA GIANCARLO Luglio 2002
MATEMATICA PER L’ECONOMIA
1 A B C D … a b c d … Il concetto di insieme 1
Il linguaggio della Matematica: Insiemi e operazioni
Sintassi (prima parte)
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Linguaggi Regolari e Linguaggi Liberi
Costruzione delle tabelle di parsing LR canoniche
Matematica I: Calcolo differenziale, Algebra lineare, Probabilità e statistica Giovanni Naldi, Lorenzo Pareschi, Giacomo Aletti Copyright © The.
GLI INSIEMI.
INSIEMI INSIEME= gruppo di oggetti di tipo qualsiasi detti elementi dell’insieme. Un insieme è definito quando viene dato un criterio non ambiguo che.
Relazione tra due insiemi:
1 Linguaggi di Programmazione - elementi Corso di Laurea in Informatica (AA 2005/2006) Gabriella Pasi e Carla Simone
Definizione e caratteristiche
Il linguaggio della geometria
Il ragionamento classico
LE FUNZIONI Definizione Campo di esistenza e codominio
Elementi di Matematica
Analisi e Sintesi di circuiti sequenziali
Geometria euclidea, affine e proiettiva
A cura Prof. Salvatore MENNITI
Teoria degli INSIEMI A cura Prof. Salvatore MENNITI.
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
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)
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
Intelligenza Artificiale - AA 2001/2002 Logica formale (Parte 2) - 1 Intelligenza Artificiale Breve introduzione alla logica classica (Parte 2) Marco Piastra.
“Il Piano cartesiano e la retta” realizzato dagli studenti della 2ª B Aielli Luca Pasquini Daniele Rosato Anna.
GLI INSIEMI Presentazione a cura della Prof.ssa anNUNZIAta DI BIASE
RAPPRESENTAZIONE DELL'INFORMAZIONE
Logica Matematica Seconda lezione.
CAP. 2 ANALISI LESSICALE 2.1 Il ruolo dell'analizzatore lessicale
Dispensa a cura del prof. Vincenzo Lo Presti
Introduzione ai linguaggi formali e alle stringhe
BIOINFO3 - Lezione 281 PATTERN MATCHING E sicuramente una delle cose più utili del Perl, che lo rende un linguaggio estremamente potente. Permette di cercare.
TEORIA DEGLI INSIEMI INIZIO.
AB =x/xA  xB Unione tra insiemi o
ESTENSIONI SEMPLICI e TEOREMA DELL’ELEMENTO PRIMITIVO
Dispensa a cura del prof. CAVAGNA GIANCARLO Luglio 2002
è … lo studio delle caratteristiche di regolarità dei fenomeni casuali
Definizione e caratteristiche
Gli Insiemi ISISS “Valle Seriana”.
Insiemi.
Automi a pila (1) Un automa a pila (PDA) è M = (Q, S, G, d, q0, Z0, F) dove: Q insieme finito di stati S alfabeto finito di input 3. G alfabeto di pila.
Grammatiche Grammatiche libere da contesto Grammatiche regolari
Grammatiche non contestuali (1)
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.
Corso di Matematica Discreta 4
Espressioni regolari (1)
Automi temporizzati.
In generale, con il termine di grammatica si intende un formalismo che permette di definire un insieme di stringhe mediante l’imposizione di un particolare.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Trasformazioni geometriche
Insiemi DE VITIS GABRIELE.
Teoria degli Insiemi Concetto di Insieme Proprietà caratteristica
APPUNTI DI GEOMETRIA ANALITICA DELLA RETTA
Operazioni con gli insiemi
A B C D … Insiemi e sottoinsiemi A ESEMPIO
TEORIA ELEMENTARE DEGLI INSIEMI
LA TEORIA DEGLI INSIEMI. Il concetto di insieme è un concetto primitivo La parola insieme (o comunità, gregge, raccolta,...) la usiamo molto spesso: l’insieme.
Elementi di Topologia in R
Linguaggi e Grammatiche Alfabeto : insieme non vuoto di elementi detti simboli A = { a, b, c } Stringa : sequenza di simboli di un alfabeto ab abc abcab.
Linguaggi, stringhe e alfabeti. Linguaggi e grammatiche Un linguaggio è un sistema di comunicazione tra persone che permette di trasmettere informazioni.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
GLI INSIEMI per la classe 1ai Prof: Paolo Govoni
Luoghi di punti In geometria il termine
Cenni sull'insiemistica
Metodi di ricerca approssimata dello zero di una funzione F(z) = 0.
Transcript della presentazione:

Sistemi di Lindenmayer

Sistemi di Lindenmayer Non c’è distinzione tra terminali e non terminali. Tutte le parole derivate da una parola data sono nel linguaggio. Tutte le lettere di una parola sono riscritte simultaneamente. Motivazione - la descrizione dello sviluppo di organismi filamentosi - le parole rappresentano stadi dello sviluppo di disposizioni di cellule; ogni lettera rappresenta una cellula -le produzioni corrispondono alle istruzioni con cui gli organismi sono generati e sono applicate simultaneamente alle lettere perché lo sviluppo delle cellule è simultaneo negli organismi -non ci sono terminali perché corrisponderebbero a cellule morte; la scomparsa di una cellula è rappresentata dalla parola vuota l. Le varie parti di un organismo che si sviluppa possono comunicare tra loro oppure no. Il modello di base di sistema assume che non ci sia comunicazione.

Sistemi OL (1) Un sistema OL è OLS = (V, P0, F), dove V è un alfabeto, P0 è una parola non vuota su V (assioma o parola iniziale), F è un insieme di coppie ordinate (a,P) con a  V, P  (V+ {l} tale che per ogni a V c’è almeno una parola P in (a, P)  F (scriveremo a  P). La relazione Þ OLS è definita come segue: P Þ Q vale se e solo se P = a1 … an, Q = Q1… Qn e ai  Qi , n  i  1 Il linguaggio generato è definito come L (OLS) = {P | P0 Þ * P} Un sistema OL è deterministico (DOL) se e solo se per ogni a  V c’è esattamente una parola P tale che (a,P)  F. Un sistema OL è l -free o propagante (POL) se e solo se per ogni produzione a  P in F, P non è l. Due sistemi sono equivalenti se generano lo stesso linguaggio.

Sistemi OL (2) Esempi. OLS = ({a}, a, {a  a2 }) L(OLS) = {a2n | n  0} 2) OLS = ({a, b}, a, {a  b , b  ab}) L(OLS) = {a, b, ab, bab, abbab, bababbab, …} le cui lunghezze sono i numeri di Fibonacci OLS = ({a, b, c}, a, {a  abcc , b  bcc, c  c}) L(OLS) = {a, abcc, abccbcccc, abccbccccbcccccc, …} le cui lunghezze sono i quadrati dei numeri naturali. Nota bene.Tutti i sistemi sono DOL e generano linguaggi contestuali.

Sistemi OL (3) Esempio (alga rossa). Prendiamo il sistema DOL propagante con alfabeto e produzioni come in tabella 1 2 3 4 5 6 8 ( ) # 0 2 # 3 2 2 # 4 504 6 7 8(1) ( ) # 0 Le parole derivate dall’assioma P0= 1 sono P0= 1 P1= 2 # 3 P2= 2 # 2 # 4 P3= 2 # 2 # 504 P4= 2 # 2 # 60504 P5= 2 # 2 # 7060504 P6= 2 # 2 # *(1)07060504 Pn+6 = 2 # 2 # 8(Pn)08(Pn-1) 0 … 08 P0 07060504

Sistemi OL (4) Rappresentazione Le espressioni parentesizzate sono rami la cui posizione è indicata dagli 8. Gli 0 sono rappresentati come pareti oblique alternativamente inclinate a destra e a sinistra. I rami sono attaccati alternativamente su un lato e sull’altro del ramo dove nascono. I simboli sono rappresentati come pareti verticali. 1 2 2 8 7 6 5 4 4 2 1 2 2 2 8 8 8 7 6 5 4 2 3

Proprietà dei linguaggi OL (1) Chiamiamo anti-AFL una famiglia di linguaggi che non è chiusa per unione, concatenazione l-free, omomorfismi l-free, omomorfismo inverso, intersezione con i linguaggi regolari. Teorema. La famiglia dei linguaggi OL è anti-AFL. Teorema. La famiglia dei linguaggi OL è chiusa sotto immagine speculare. Prova. Se un linguaggio è generato dal sistema (V, P0, F), la sua immagine speculare è generata dal sistema (V, mi(P0), mi(F)) dove mi(F) è ottenuto da F sostituendo le parti destre delle loro produzioni con le loro immagini speculari.

Proprietà dei linguaggi OL (2) Teorema. Ogni linguaggio OL è contestuale. Prova. Sia L generato dal sistema OL H = (V, P0, F). Prendiamo la grammatica G = ({X0, X1, X2, X3}, V, X0, F1) dove F1 consiste delle produzioni X0  X1 P0 X1 X1  l X1a  X1 X2 a per ogni a  V X2 X1  X3 X1 a X3 X3 a per ogni a  V X1 X3  X1 X2a  P X2 per ogni produzione a  P in F Si dimostra che L(G) = L(H).

Proprietà dei linguaggi OL (3) Esempio. Prendiamo il sistema OLS = ({a,b}, a, {a  b, b  ab La grammatica contestuale che lo genera è G = ({X0, X1, X2, X3}, {a,b}, X0, F1) dove F1 consiste delle produzioni X0  X1 a X1 X1  l X1a  X1 X2 a X1b  X1 X2 b X2a  b X2 X2b  ab X2 X2 X1  X3 X1 a X3 X3 a b X3 X3 b X1 X3  X1

Sistemi TOL (1) Un sistema TOL è H = (V, P0, T) dove V e P0 sono come nei sistemi OL e T è una collezione di sottoinsiemi di V  (V+ {l}. Ogni t  T soddisfa la condizione: per ogni a  V c’è P  (V+ {l}) tale che t contiene la coppia (a, P) P Þ Q se e solo se esiste k  1, lettere a1 , … , ak, parole Q1 , … , Qk e t contiene la coppia (ai, Qi) per k  i  1. Il linguaggio generato è L (H) = {P | P0 Þ * P} Motivazione. A ogni passo si usano solo le produzioni appartenenti a una stessa tabella. La motivazione biologica è che a stadi differenti di sviluppo dell’organismo possono servire insiemi di regole differenti.

Sistemi TOL (2) Esempio. Prendiamo il sistema H = ({a}, a, {{a  a2}, {a  a3}}). Si ha L(H) = {ai | i = 2m3n, m,n  0. L(H) non è un linguaggio OL. Teorema. I linguaggi OL sono contenuti propriamente nei linguaggi TOL.

Sistemi 1L e 2L (1) Un sistema 2L è H = (V, P0, a0, F) dove: V e P0 sono come nei sistemi OL a0  V è l’input dall’ambiente F è un sottoinsieme di V  V  V  (V+  {l}tale che per tutte le lettere a, b, c  V (non necessariamente distinte) c’è una parola P  V+  {l} tale che F contiene la quadrupla (a,b,c,P). P Þ Q se e solo se esiste n  1, lettere a1 , … , an, parole Q1 , … , Qn tali che F contiene le quadruple (a0, a1, a2, Q1), …, (ai-1, ai, ai+1, Qi), …, (an-1, an, a0, Qn) per n-1 i  2 P = a1…an e Q = Q1…Qn. Per n= 1 F contiene la quadrupla (a0, a1, a0, Q1). Il linguaggio generato da H è L(H) = {P | P0 Þ* P}.

Sistemi 1L e 2L (2) Un sistema 2L è un sistema 1L se e solo se vale una delle condizioni seguenti: per ogni a, b, c, P F contiene la quadrupla (a,b,c,P) se e solo se contiene la quadrupla (a,b,d,P) oppure - per ogni a, b, c, P F contiene la quadrupla (a,b,c,P) se e solo se contiene la quadrupla (d,b,c,P).

Sistemi 1L e 2L (3) Teorema. C’è un linguaggio 1L che non è OL e c’è un linguaggio 2L che non è 1L.