nma formālā puse

Post on 05-Jan-2016

25 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

NMA formālā puse. pāreja s funkcija:. pāreja s funkcija:. F ormāl ā definīcija. Nedeterminēts magazīnautomāts NMA. beigu stāvok ļi. stāvok ļi. ievad a alfabēts. stek a start a simbols. pārej u funkcija. sākuma stāvoklis. stek a alfabēts. Darbības brīža apraksts. Tekošais - PowerPoint PPT Presentation

TRANSCRIPT

1

NMA formālā puse

2

q1 q2

)},{(),,( 21 wqbaq pārejas funkcija:

wab

3

q1

q2

q3

)},(),,{(),,( 321 wqwqbaq

pārejas funkcija:

wab

wab

4

Formālā definīcijaNedeterminēts magazīnautomāts NMA

),,,,,,( 00 FZqQM

stāvokļi

ievadaalfabēts

stekaalfabēts

pārejufunkcija

beigustāvokļi

stekastartasimbols

sākumastāvoklis

5

Darbības brīža apraksts

),,( suq

Tekošaisstāvoklis Atlikušais

ievads

Tekošaisstekasaturs

6q0 q1 q2 q3

ievads

steks

a a a b b b aa

laika moments 4:

Piemērs: Darbības brīža apraksts

),,( 01 aaaZbbbq

a

0Z

00 ZZ

baa

a

ba

7q0 q1 q2 q3

ievads

steks

a a a b b b aa

laika moments 4:

Piemērs: Darbības brīža apraksts

),,( 02 aaZbbq

a

0Z

00 ZZ

baa

a

ba

8

Pieraksts:

),,(),,( 0201 aaZbbqaaaZbbbq

laika moments 4 laika moments 5

9

Darbību virkne:

q0 q1 q2 q3

00 ZZ

baa

a

ba

),,(),,(),,(

),,(),,(

),,(),,(

),,(),,(

030202

0201

0101

0100

ZqZqaZbq

aaZbbqaaaZbbbq

aaZabbbqaZaabbbq

ZaaabbbqZaaabbbq

10

),,(),,(),,(

),,(),,(

),,(),,(

),,(),,(

030202

0201

0101

0100

ZqZqaZbq

aaZbbqaaaZbbbq

aaZabbbqaZaabbbq

ZaaabbbqZaaabbbq

Saīsināti:

),,(),,( 03*

00 ZqZaaabbbq

11

Formālā definīcija

NMA M valoda :

)}',,(),,(:{)( *00 sqZwqwML f

sākuma stāvoklis beigu stāvoklis

Steks var nebūt tukšs!

12

Piemērs:

NMA M :

)(MLaaabbb

q0 q1 q2 q3

00 ZZ

baa

a

ba

),,(),,( 03*

00 ZqZaaabbbq

13

),,(),,( 03*

00 ZqZbaq nn

NMA M :

)(MLba nn

q0 q1 q2 q3

00 ZZ

baa

a

ba

14

NMA M :

}0:{)( nbaML nnTādējādi:

q0 q1 q2 q3

00 ZZ

baa

a

ba

15

NMA akceptē bezkonteksta valodas

Teorēma:

16

Pierādījums – 1.solis:

Pārveidot katru bezkontekstagramatiku G uz NMA M ar L(G)=L(M).

Pierādījums – 2.solis:

Pārveidot katru NMA M uz bezkontekstagramatiku G ar L(G)=L(M).

17

Bezkontekstas gramatikas pārveidošana uz NMA

18

Gramatikas piemērs :

T

TaT

bS

aSTbS

Kas ir ekvivalents NMA?

19q0 q1 2q

Gramatika:

NMA:

T

TaT

bS

aSTbS

00 ZZ

S

bb

aaT

TaTbSaSTbS

20

NMA simulē bezkonteksta gramatikas atvasinājumus sākot nokreisās puses

L(bezkonteksta gramatika) = L(NMA)

21

Gramatika:

Atvasinājums sākot no kreisās puses:

abababTababTbaSTbS

T

TaT

bS

aSTbS

22

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 0

b

tekošaisstāvoklis

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

23

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 1

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

S

24

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 2

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

a

b

ST

25

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 3

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

a

b

ST

26

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 4

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

b

bT

27

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 5

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

b

bT

28

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 6

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

baT

29

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 7

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

baT

30

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 8

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

ba

31

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 9

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

b

32

NMA izpilde:

ievads

steks

0Z

a ab

laika moments 10

b

q0 q1 2q00 ZZ

S

bb

aaT

TaTbSaSTbS

33

Vispārīgi:

katrai dotai gramatikai Gvar konstruēt tādu NMA M, ka L(G)=L(M).

34

NMA M konstruēšana no gramatikas G:

Katrai produkcijai

wAKatram terminālim

a

q0 q1 2q00 ZZ

S

a

awA

35

Gramatika G ģenerē virkni w

tad un tikai tad, ja NMA M akceptē w

)()( MLGL

36

Tādējādi:

Katrai bezkontekstai valodaiir NMA, kas akceptē šo pašu valodu

37

NMA pārveidošana uz bezkonteksta gramatiku

38

Katram NMA M konstruēsim bezkontekstagramatiku G, kurai L(M)=L(G).

39

Gramatikas G atvasinājums:

Intuīcija: gramatika simulēs mašīnu

abcABCabcS

Tekoša NMA M konfigurācija

40

Gramatikas G atvasinājums

NMA M

abcABCabcS

apstrādātais ievads steka saturs

termināļi netermināļi

41

Dažas nepieciešamās modifikācijas

Pirmkārt, modificēsim NMA tā, ka• tam ir viens pats beigu stāvoklis• tas iztukšo steku kad ievads tiek akceptēts

Oriģinālais NMA steka iztukšošana

fq

fq

42

Otrkārt, modificējam NMA pārejas:

visas pārejas būs formā

iq jq

vai

iq jq CD

aB

aB

B,C,D : steka simboli

430q fq

}:{)( ba nnwML

NMA piemērs pareizā formā:

0Z - sākotnējais steka simbols

0Z

bb

ZbZ

aaZ

aZ

0 111 1

1 000 0

00

00

44

Gramatikas konstruēšana

)( jiBqq

Gramatika G :

termināļi: NMA ievada simboli

stāvokļi

steka simbols

netermināļi:

45

Saturīgi nozīmē sekojošo:lai tiktu no stāvokļa uz stāvokli ja steka augšā atrodas , tad ievadā būs nepieciešama virkne .

wAqq ji )(

iq jqAw

46

iq jqKatrai pārejai

pievienojam produkciju aBqq ji )(

aB

Ievadā satiekot a, B tiks izņemts un notiks pāreja uz qj un B ietekme ar to beidzas

47

Katrai pārejai

pievienojam produkciju

))(()( klljki DqqCqqaBqq

iq jq

Visiem stāvokļiem lk qq ,

CDaB

Ievadā satiekot a, B tiks izņemts, bet tā vietā tiks ielikts kas cits un notiks pāreja caur q j uz kaut kādu stāvokli qk, par kuru šobrīd nekas nav zināms

48

Starta neterminālis: )( 0 fo qZq

steka beigu(apakšas) simbols

starta stāvoklis beigu stāvoklis

49

Piemērs:

aqq )1( 00Gramatikas produkcija:

0q fq

0Z

bb

ZbZ

aaZ

aZ

0 111 1

1 000 0

00

00

50

Piemērs:

0q fq

0Z

bb

ZbZ

aaZ

aZ

0 111 1

1 000 0

00

00

))(1(

|))(1()(

))(1(

|))(1()(

00

000000

000

00000000

fff

ff

ff

qZqqqb

qZqqqbqZq

qZqqqb

qZqqqbqZq

51

Piemērs:

0q fq

0Z

bb

ZbZ

aaZ

aZ

0 111 1

1 000 0

00

00

)( 00 fqZq

52

))(1(|))(1()(

))(1(|))(1()(

00000000

00000000000

fffff

ff

qZqqqbqZqqqbqZq

qZqqqbqZqqqbqZq

)1)(1(|)1)(1()1(

)1)(1(|)1)(1()1(

00000

00000000

fffff

ff

qqqqbqqqqbqq

qqqqbqqqqbqq

))(0(|))(0()(

))(0(|))(0()(

00000000

00000000000

fffff

ff

qZqqqaqZqqqaqZq

qZqqqaqZqqqaqZq

Rezultējošā gramatika:)( 00 fqZq - starta

neterminālis

53

)0)(0(|)0)(0()0(

)0)(0(|)0)(0()0(

00000

00000000

fffff

ff

qqqqaqqqqaqq

qqqqaqqqqaqq

bqq

aqq

)0(

)1(

00

00

)( 00 fqZq

54

virknes abba atvasinājums

)( 00 fqZq ))(0( 0000 fqZqqqa

)( 00 fqZqab

))(1( 0000 fqZqqqabb

)( 00 fqZqabba abba

55

Vispārīgi, gramatika

wqZq f*

00 )(

tad un tikai tad, ja

NMA akceptē w

56

Izskaidrojums:

Pēc gramatikas konstrukcijas:

wAqq ji*)(

tad un tikai tad, ja

NMA pārejot no uz steks neizmainās zemāk parun tiek izņemts no steka

iq jq

AA

top related