1
LUCRAREA PRACTICA NR. 1 LIMBAJE FORMALE SI AUTOMATE 134 Aceasta lucrare practica trebuie predata atat prin e-mail la adresa <[email protected]> cat si pe serverul MOODLE pana in data de 22 martie 2015 ora 20:00 urmand ca in cadrul laboratorului din 25 martie sa fie prezentata. Dupa data de 22 martie, lucrarea practica se mai poate trimite prin email pentru o perioada de gratie de 2 zile (48 de ore). Pentru fiecare zi partiala de intarziere se vor scadea 2 puncte din nota atribuita pe lucrare. Dupa expirarea termenului de gratie, lucrarea nu va mai fi acceptata si va fi notata cu 1. AUTOMATE FINITE Definitii In cele ce urmeaza λ reprezinta cuvantul vid. 1. AFD: A =(Q, V, d, q 0 ,F ), unde: Q,V,F sunt multimi finite nevide (stari, alfabet, respectiv stari finale), q 0 Q (starea initiala), F Q, d : Q × V Q functie partiala (functia de tranzitie). Extindem d la d 0 : Q × V * Q definita prin: d 0 (q,λ)= q,d 0 (q, xa)= d(d 0 (q,x),a)(qQ, xV * , aV ) Limbajul acceptat de A este urmatoarea submultime a lui V * : L(A)= {xV * |d 0 (q 0 ,x)F }. 2. AFN: A =(Q, V, d, q 0 ,F ), unde: Q,V,q 0 ,F ca mai sus, d : Q × V →P (Q) functie (functia de tranzitie). Extindem d la d 0 : Q × V * →P (Q) definita prin: d 0 (q,λ)= {q},d 0 (q, xa)= {pQ|∃rd 0 (q,x) a.i. pd(r, a)} (adica rd 0 (q,x) d(r, a)) (qQ, xV * , aV ). Limbajul acceptat de A este urmatoarea submultime a lui V * : L(A)= {xV * |d 0 (q 0 ,x) F 6 }. 3. AFNL: A =(Q, V, d, q 0 ,F ), unde: Q,V,q 0 ,F ca mai sus, d : Q × (VU {λ}) P (Q) functie (functia de tranzitie). Pentru qQ definim submultimea lui Q: <q>= {pQ|∃s 0 , ..., s k Q(k 0) a.i. s 0 = q,s k = p, s i+1 d(s i ) pentru 0 i< k}. Pentru P Q definim urmatoarea submultime a lui Q :<P>= {}, daca P ,<P>= qP <q> , daca P 6. Extindem d la d 0 : Q × V * →P (Q) definita prin: d 0 (q,λ)=<q>,d 0 (q, ax)= {pQ|∃r < q > si s < d(r, a) > a.i. pd 0 (s, x)} (qQ, xV * , aV ). Limbajul acceptat de A este urmatoarea sub- multime a lui V * : L(A)= {xV * |d 0 (q 0 ,x) F 6 }. Tema Scrieti cate un program demonstrativ pentru fiecare tip de automat; in fiecare caz programul va citi un automat, il va afisa, apoi intr-un ciclu va citi cuvinte si va spune daca automatul le recunoaste; din ciclu se va iesi la citirea cuvantului vid (in cazul AFN, AFNL cuvantul vid se va procesa inainte de iesire). 1

LP1 - 134

Embed Size (px)

DESCRIPTION

kgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgj

Citation preview

  • LUCRAREA PRACTICA NR. 1

    LIMBAJE FORMALE SI AUTOMATE 134

    Aceasta lucrare practica trebuie predata atat prin e-mail la adresa cat si pe serverul MOODLE pana in data de 22 martie 2015 ora 20:00 urmand ca in cadrul laboratorului din 25 martie sa fie prezentata. Dupa data de 22 martie, lucrarea practica se mai poate trimite prin email pentruo perioada de gratie de 2 zile (48 de ore). Pentru fiecare zi partiala de intarziere sevor scadea 2 puncte din nota atribuita pe lucrare. Dupa expirarea termenului degratie, lucrarea nu va mai fi acceptata si va fi notata cu 1.

    AUTOMATE FINITE

    DefinitiiIn cele ce urmeaza reprezinta cuvantul vid.1. AFD: A = (Q,V, d, q0, F ), unde: Q,V, F sunt multimi finite nevide (stari,

    alfabet, respectiv stari finale), q0Q (starea initiala), F Q, d : Q V Qfunctie partiala (functia de tranzitie). Extindem d la d : Q V Q definitaprin: d(q, ) = q, d(q, xa) = d(d(q, x), a)(qQ, xV , aV ) Limbajul acceptat de Aeste urmatoarea submultime a lui V : L(A) = {xV |d(q0, x)F}.

    2. AFN: A = (Q,V, d, q0, F ), unde: Q,V, q0, F ca mai sus, d : Q V P(Q)functie (functia de tranzitie). Extindem d la d : Q V P(Q) definita prin:d(q, ) = {q}, d(q, xa) = {pQ|rd(q, x) a.i. pd(r, a)} (adica

    rd(q,x)d(r, a))

    (qQ, xV , aV ). Limbajul acceptat de A este urmatoarea submultime a lui V :L(A) = {xV |d(q0, x) F 6= }.

    3. AFNL: A = (Q,V, d, q0, F ), unde: Q,V, q0, F ca mai sus, d : Q (V U{})P (Q) functie (functia de tranzitie). Pentru qQ definim submultimea lui Q:< q >= {pQ|s0, ..., skQ(k 0) a.i. s0 = q, sk = p, si+1d(si, ) pentru 0 i = {},daca P = , < P >=

    qP< q > , daca P 6= . Extindem d la d : Q V P(Q)

    definita prin: d(q, ) =< q >, d(q, ax) = {pQ|r < q > si s < d(r, a) >a.i. pd(s, x)} (qQ, xV , aV ). Limbajul acceptat de A este urmatoarea sub-multime a lui V : L(A) = {xV |d(q0, x) F 6= }.

    TemaScrieti cate un program demonstrativ pentru fiecare tip de automat; in fiecare

    caz programul va citi un automat, il va afisa, apoi intr-un ciclu va citi cuvinte si vaspune daca automatul le recunoaste; din ciclu se va iesi la citirea cuvantului vid (incazul AFN, AFNL cuvantul vid se va procesa inainte de iesire).

    1