logo

Примери за DFA

Пример 1:

Проектирайте FA с ∑ = {0, 1} приема онези низове, които започват с 1 и завършват с 0.

Решение:

FA ще има начално състояние q0, от което само ръбът с вход 1 ще премине към следващото състояние.

Примери за детерминистични крайни автомати

В състояние q1, ако прочетем 1, ще бъдем в състояние q1, но ако прочетем 0 в състояние q1, ще достигнем до състояние q2, което е крайното състояние. В състояние q2, ако прочетем 0 или 1, ще преминем съответно в състояние q2 или състояние q1. Имайте предвид, че ако входът завършва с 0, той ще бъде в крайно състояние.

Пример 2:

Проектирайте FA с ∑ = {0, 1} приема единствения вход 101.

Решение:

Примери за детерминистични крайни автомати

В даденото решение можем да видим, че ще бъде приет само вход 101. Следователно за вход 101 няма друг показан път за друг вход.

Пример 3:

Дизайн FA с ∑ = {0, 1} приема четен брой 0 и четен брой 1.

Решение:

Този FA ще разгледа четири различни етапа за вход 0 и вход 1. Етапите могат да бъдат:

Примери за детерминистични крайни автомати

Тук q0 е начално състояние, а също и крайно състояние. Обърнете внимание внимателно, че се поддържа симетрия на 0 и 1. Можем да свържем значения с всяко състояние като:

q0: състояние на четен брой 0 и четен брой 1.
q1: състояние на нечетен брой нули и четен брой единици.
q2: състояние на нечетен брой 0 и нечетен брой 1.
q3: състояние на четен брой 0 и нечетен брой 1.

Пример 4:

Дизайн FA с ∑ = {0, 1} приема набора от всички низове с три последователни нули.

Решение:

Низовете, които ще бъдат генерирани за тези конкретни езици, са 000, 0001, 1000, 10001, .... в които 0 винаги се появява в група от 3. Графиката на прехода е както следва:

Примери за детерминистични крайни автомати

Обърнете внимание, че последователността от тройни нули се поддържа, за да се достигне крайното състояние.

Пример 5:

Проектирайте DFA L(M) = {w | w ε {0, 1}*} и W е низ, който не съдържа последователни 1.

Решение:

Когато възникнат три последователни 1, DFA ще бъде:

Примери за детерминистични крайни автомати

Следователно две последователни 1 или една 1 са приемливи

Примери за детерминистични крайни автомати

Етапите q0, q1, q2 са крайните състояния. DFA ще генерира низове, които не съдържат последователни 1 като 10, 110, 101,..... и т.н.

Пример 6:

Проектирането на FA с ∑ = {0, 1} приема низове с четен брой 0, последвани от единична 1.

Решение:

DFA може да се покаже чрез диаграма на преход като:

Примери за детерминистични крайни автомати