Static Wikipedia February 2008 (no images)

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

Web Analytics
Cookie Policy Terms and Conditions Determinisztikus véges állapotú gép - Wikipédia

Determinisztikus véges állapotú gép

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

A számítógép-tudományban a determinisztikus véges állapotú gép, vagy determinisztikus véges állapotú automata (angolul deterministic finite state machine vagy deterministic finite automaton, általánosan használt rövidítéssel: DFA) egy véges állapotú gép ahol minden állapot - bejövő szimbólum párhoz egy, és csakis egy másik állapotba való átmenet tartozik.

A DFA a szabályos nyelvek halmazába tartozó nyelvek felismerésénél használható, más nyelveknél nem alkalmazható.

A DFA egy bejövő szimbólumokból álló stringgel dolgozik. Minden egyes bejövő szimbólum hatására a gép állapota az adott átmeneti függvény alapján megváltozik (vagy ugyanaz marad). Amikor az utolsó bejövő szimbólum beérkezik, az a gép állapotától függöen vagy elfogadásra vagy visszautasításra kerül.

A DFA-t tekinthetjük egy speciális Turing-gépnek, amely nem tudja az olvasófejet mozgatni, és csak előre képes az mozgatni a szalagját.

Tartalomjegyzék

[szerkesztés] Formális meghatározás

Egy DFA a következő 5-össel írható le: (S, Σ, T, s, A), ahol

  • (S) az állapotok véges halmaza
  • (Σ) az ábécé-nek nevezett véges halmaz
  • (T : S × Σ → S) az átmeneti függvény
  • (sS) a kezdő állapot
  • (AS) az elfogadó állapotok halmaza.

Legyen M egy DFA amelynél M = (S, Σ, T, s, A), és X = x0x1 ... xn a Σ ábécéből alkotott string. M elfogadja az X stringet, ha létezik S-ben a átmenetek r0,r1, ..., rn sorrendje a követekező feltételekkel:

  1. r0 = s
  2. ri+1 = T(ri, xi), minden i = 0, ..., n-1
  3. rnA.

Amint azt az első feltétel mutatja, a gép az s állapotból indul. A következő feltétel szerint az egyes állapotok változása a T átmeneti szabályok szerint következik be. Az utolsó feltétel szerint ha X utolsó szimbólumának beolvasása után a gép A állapotban van, akkor X elfogadott, ellenkező esetben visszautasított.

Az automata által elfogadott stringek halmaza egy nyelvi forma, az a nyelv, amelyet a DFA felismer.

[szerkesztés] Példa

A következő példa azt mutatja, hogyan tudja az M automata, amely egy bináris ábécé-vel dolgozik, felismerni azt, hogy a bemeneti stringben páros számú 0 karakter van-e.

M = (S, Σ, T, s, A) ahol

  • Σ = {0, 1},
  • S = {S1, S2},
  • s = S1,
  • A = {S1}, and
  • A T átmeneti függvényt a következő állapot átmeneti tábla határozza meg:
0
1
S1 S2 S1
S2 S1 S2

M állapot diagrammja :

kép:DFA.png

Jól látható, hogy az S1 állapot felel meg annak a helyzetnek, amikor páros számú 0 érkezett eddig a bemeneten, míg S2 jelzi a páratlan számú 0-át. Egy 1-es érkezése az bemenetre nem változtatja meg az automata aktuális állapotát, és amikor a bemenet elfogyott, az automata állapota mutatja, hogy a bejövő string páros számú 0-át tartalmazott, vagy nem.

M nyelve egy szabályos nyelvvel írható le, egy adott szabályos kifejezés segítségével:

1^*(01^*01^*)^* \,\!

[szerkesztés] Előnyei és hátrányai

A DFA az egyik leggyakorlatiasabb modell a a számítógép-tudományban, mert végrehajtási ideje lineárisan függ a bemenő string hosszától, álladó a helyigénye, ha egy online algoritussal szimulálják a DFA-t. Adott két DFA-ra létezik olyan hatékony algoritmus, amely képes az álatala felismert nyelvben felismerni az unió, a komplemens és a különbségképzés műveleteket. Léteznek hatékony algoritmusok annak meghatározására, hogy egy DFA felismer egy stringet, egy DFA felismer minden stringet vagy mindkét DFA felismeri ugyanazt a nyelvet, és lehet olyan DFA-t találni, amely egy adott nyelvet minimális számú állapottal ismert fel. Ez az úgynevezett minimálautomata.

Más oldalról, a DFA-k erősen korlátozott teljesítmény nyújtanak az általuk felismert nyelvekben, valamint nem alkalmasak olyan problémák megoldására, amelyekhez emlékezetre van szükség.

[szerkesztés] Források

  • Michael Sipser. Introduction to the Theory of Computation. PWS, Boston. 1997. ISBN 053494728X. Section 1.1: Finite Automata, pp.31–47. Subsection "Decidable Problems Concerning Regular Languages" of section 4.1: Decidable Languages, pp.152–155.
  • Bach Iván. Formális Nyelvek. Egyetemi tankönyv, második kiadás, Typotex Kiadó, 2001. 2.2. Fejezet: Determinisztikus és nemdeterminisztikus véges automaták

[szerkesztés] Lásd még

Static Wikipedia 2008 (no images)

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 -

Static Wikipedia 2007 (no images)

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 -

Static Wikipedia 2006 (no images)

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 - 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