ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Szabályos nyelv - Wikipédia

Szabályos nyelv

A Wikipédiából, a szabad enciklopédiából.

Egy szabályos nyelv minden esetben egy formális nyelv (ugyanis: egy véges ábécéből létrehozható, véges hosszúságú sorozatokból álló, valószínűleg végtelen halmaz) ami kielégíti a következő ekvivalencia jellemzőket:

Tartalomjegyzék

[szerkesztés] Szabályos nyelv egy adott ábécé felett

Egy adott Σ ábécé felett létező összes szabályos nyelvet a követekező rekurzív definíciókkal adhatjuk meg:

  • Az üres nyelv, Ø szabályos nyelv.
  • Az üres string nyelv, { ε } szabályos nyelv.
  • Ha a ∈ Σ, akkor az { a } által alkotott, egyelemű halmaz szabályos nyelv.
  • Ha A és B szabályos nyelvek, akkor az A U B (union), az AB (konkatenáció), és az A* (Kleene csillag) nyelvek szintén szabályos nyelvek.
  • Az egyéb, Σ felett nem létező nyelv szabályos nyelv.

Minden véges nyelv szabályos. Például az {a, b} ábécé felett értelmezett nyelv, amely az összes páros számú a tartalmazza, vagy az a nyelv, amely tartalmazza az összes, a következő formában meghatározható stringet: különböző számú ak, amelyeket különböző számú bk követnek.

Ha egy nyelv nem szabályos, akkor a felismeréséhez legalább Ω(log log n) munkaterületre van szükség (ahol n a bemenő szimbólumsorozat hossza). A gyakorlatban a legtöbb nem szabályos probléma gépi megoldásához logaritmikus tér szükséges.

[szerkesztés] Zártsági tulajdonságok

A szabályos nyelvek zártak a következő műveletek szempontjából (abban az esetben, ha "L" és "P" szabályos nyelvek, akkor a következő nyelvek szintén szabályos nyelveke lesznek):

  • a kiegészítő \bar{L} L-re
  • a Kleene csillag L* L-re
  • a homomorfizmus φ(L) L-re
  • a konkatenáció LP, L és P között
  • a unió LP , L és P között
  • a közösrész LP,L és P között
  • a különbség L\P, L és P között

[szerkesztés] Hogyan dönthető el egy nyelvről, hogy szabályos-e

A szabályos nyelvek Chomsky féle hierarchiabeli helye szerint minden szabályos nyelv környezet független. A megállapítás visszafelé azonban nem igaz: pédául az a nyelv, amely tartalmazza az összes olyan stringet, amelyekben ugyanannyi a's van, mint b, az környezet független, de nem szabályos. Annak bizonyítására, hogy a fenti nem nem szabályos, a Myhill-Nerode tétel vagy a pumping lemma használható.

A következőkben két tisztán algebarai megközelítést mutatunk a szabályos nyelvek meghatározásra.

  • Ha Σ véges ábécé és Σ* jelöli a Σ feletti szabad monoidot, amely tartalmazza a Σ feletti összes stringet,  f : Σ* → M egy monoid homomorfizmus ahol M egy véges monoid, és S M részhalmaza, akkor az f −1(S) halmaz szabályos, reguláris. Minden szabályos nyelv létrehozható ilyen módon.
  • Ha L Σ* valamilyen részhalmaza, és definiáljuk a ~ ekvivalencia relácót Σ* ra a következők alapján:
u ~ v ami azt jelenti, hogy
uwL akkor, és csak akkor, ha vwL minden w ∈ Σ* esetén.

Az L nyelv akkor, és csak akkor szabályos, ha az ~ ekvivalencia osztályainak száma véges; ebben az esetben, ez a szám azonos az L nyelvet elfogadó minimálautomata átmeneteinek számával.

[szerkesztés] Angol nyelvű forrás

  • Michael Sipser "Introduction to the Theory of Computation", 1997, PWS Publishing, ISBN 0 534 94728 X, Chapter 1: Regular Languages, pp.31–90. Subsection "Decidable Problems Concerning Regular Languages" of section 4.1: Decidable Languages, pp.152–155.

[szerkesztés] Egyéb kapcsolat

  • Department of Computer Science at the University of Western Ontario: Grail+, http://www.csd.uwo.ca/Research/grail/. Szoftvercsomag szabályos kifejezések, véges állapotú gépek és véges nyelvek kezelésére. Nem kereskedelmi célokra szabad felhasználású.


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -