Témata nápovědy

Ovládání programu

Stav

Přechod

Simulace

Konečný automat

O aplikaci

Přechod

Co je to přechod

Přechody v automatu reprezentují pravidla, která jsou určena znaky. Pokud automat přijímá řetězec, posouvá se ze stavu do stavu po přechodech a to po takových, kterým je přiřazen následující znak řetězce. U některých automatů existuje taková hrana jen jedna, někde jich může být více, někde neexistuje žádná. Více o vlastnostech automatů.

Jak vytvořit a ovládat přechod v tomto programu

Přechod se vytvoří stisknutím klávesy "Ctrl", následuje (za stálého držení klávesy "Ctrl") kliknutí levým tlačítkem na stav, ze kterého má přechod vést, a kliknutí levým tlačítkem na stav, do kterého má přechod vést. U vytvořeného přechodu je automaticky vygenerována šipka, která určuje cílový stav. Dále je přechodu automaticky vybráno jedno písmeno abecedy jako přirazený znak pro přechod z počátečního do cílového stavu. Smazání hrany se provádí označením hrany (kliknutím levého tlačítka myši na znak přechodu) a následným stiskem klávesy "Delete" na klávesnici.

Příklad hrany s přechodovým znakem "A"

Pokud je to nutné, je možné vytvořit pomocné body, aby se hrany nemusely příliš křížit. V tomto případě po kliknutí na počáteční stav následuje kliknutí do místa, kam chcete pomocný bod umístit a potom na stav, do kterého má přechod vést. Pomocných bodů lze vytvořit i více než jeden. Tyto pomocné body lze dvojklikem levým tlačítkem na daný bod zrušit, držením levého tlačítka a táhnutím lze bod přemístit. Pomocné body lze k přechodu dodat, a to dvojklikem na čáru přechodu.

Příklad hrany s pomocnými body

Znak přiřazený hraně lze libovolně posunout a to táhnutím myší za držení levého tlačítka. Tento znak lze editovat dvojklikem, nebo kliknutím levým tlačítkem myši a následním stisknutím tlačítka "Přechod" na panelu nástrojů. Tímto se otevře okno, ve kterém lze buď ručně zadat znak/množinu znaků, nebo lze odškrtnout epsilon, čímž se vytvoří tzv. epsilon pravidlo, také lze nastavit aktivitu hrany. Malé okno lze zavřít buď tlačítkem "OK", při tomto zavření se uloží provedené změny, nebo stisknutím tlačítka "Storno", tímto se změny vrátí zpět.

Ukázka okna pro nastavení přechodu

Nastavitelné vlastnosti přechodu

  • znaky - do tohoto pole se nastavuje množina symbolů, při kterých přejde automat po daném přechodu. Při zaškrtnutí epsilon pravidla je toto ignorováno. Lze zadat typicky jeden znak, ale také množinu znaků a to buď výčtem (př.: A,B,Z) nebo intervalem (př.: A-Z). Tyto dvě možnosti lze také kombinovat (př.: A-D,Q) Lze zadávat i jiné znaky, třeba mezera, v grafu se objeví hexadecimálně podle ASCII tabulky

Možné znaky u přechodů

  • epsilon - při zaškrtnutí je vytvořeno tzv. epsilonové pravidlo, v grafickém vyjádření se projeví slovem "epsilon" v místě znaku pro přechod
  • aktivní - využívá se při simulaci, v obrázku se objeví jako červená hrana, pokud ovšem není zeleně označena. Pokud je zeleně označena, aktivitu zjistíte kliknutím levým tlačítkem myši jinam, popřípadě stisknutím "Přechod" v panelu nástrojů, kde v případě aktivity bude zaškrtnuto aktivní.

Epsilonové pravidlo

Epsilonové pravidlo je takové pravidlo, kde znakem pro přechod z jednoho stavu do druhého je znak epsilon (symbolizující prázdný řetězec). Toto pravidlo funguje tak, že může a nemusí proběhnout. Pokud jsme se použitím nějakého pravidla dostali do stavu, ze kterého vede epsilon pravidlo, dostali jsme se vlastně také do stavu, do kterého toto epsilon pravidlo vede.
Je-li toto pravidlo použito v automatu, pak je tento automat nedeterministický (nedeterminističnost spočívá v tom, že nelze rozhodnout, zda se epsilon pravidlo provede nebo ne)
Epsilon pravidlo poznáte podle řetězce "epsilon" u přechodu. Nastavit jej lze v okně pro nastavení přechodu zaškrtnutím políčka "epsilon"
Pokud chcete vytvořit ekvivalentní automat bez epsilon pravidel, stiskněte tlačítko "e-pravidla" v panelu nástrojů nebo v menu: automat, ostranit epsilonová pravidla.

Ukázka epsilonového pravidla