lecture 3uofh - cosc 3340 - dr. verma 1 cosc 3340: introduction to theory of computation university...

Post on 19-Dec-2015

221 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Lecture 3 UofH - COSC 3340 - Dr. Verma1

COSC 3340: Introduction to Theory of Computation

University of Houston

Dr. Verma

Lecture 3

Lecture 3 UofH - COSC 3340 - Dr. Verma2

Closure properties of Regular Languages

Regular languages are closed under:– Union

Notation: – Intersection

Notation:

L1 L2 is regular if L1 and L2 are regular.

L1 L2 is regular if L1 and L2 are regular.

Lecture 3 UofH - COSC 3340 - Dr. Verma3

Examples

Let = {a,b}.

Let L1 = { w in * | w has even number of a's}. – Is L1 regular?

L2 = { w in * | w has odd number of b's}. – Is L2 regular?

L1 L2 = ? – Ans: {w in * | w has even a's or odd b's}.

L1 L2 = ?– Ans: {w in * | w has even a's and odd b's}.

By closure properties, both these are regular.

Lecture 3 UofH - COSC 3340 - Dr. Verma4

DFA of L1 = {w in {a,b}* | w has even number of a's}.

Lecture 3 UofH - COSC 3340 - Dr. Verma5

DFA of L2 = { w in {a,b}* | w has odd number of b's}.

Lecture 3 UofH - COSC 3340 - Dr. Verma6

DFA of L1 L2 = {w in {a,b}* | w has even a's or odd b's}.

Lecture 3 UofH - COSC 3340 - Dr. Verma7

DFA of L1 L2 = {w in {a,b}* | w has even a's and odd b's}.

Lecture 3 UofH - COSC 3340 - Dr. Verma8

DFA of L1 L2 = {w in {a,b}* | w has even a's or odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma9

DFA of L1 L2 = {w in {a,b}* | w has even a's or odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma10

DFA of L1 L2 = {w in {a,b}* | w has even a's or odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma11

DFA of L1 L2 = {w in {a,b}* | w has even a's or odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma12

DFA of L1 L2 = {w in {a,b}* | w has even a's and odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma13

DFA of L1 L2 = {w in {a,b}* | w has even a's and odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma14

DFA of L1 L2 = {w in {a,b}* | w has even a's and odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma15

DFA of L1 L2 = {w in {a,b}* | w has even a's and odd b's}.

aba

Lecture 3 UofH - COSC 3340 - Dr. Verma16

DFA of A = {w | w contains at least one 1 and an even number of 0s follow the last 1}

Lecture 3 UofH - COSC 3340 - Dr. Verma17

General Construction for and

Idea: Simulate two DFA's in parallel.Let M1 = (Q1, , 1, s1, F1) and

M2 = (Q2, , 2, s2, F2) M = (Q, , , s, F) where:Q = Q1 X Q2

s = (s1, s2)((q1, q2), ) = (1(q1, ), 2(q2, ))

For Union, F = ? – Ans: (Q1 X F2) U (F1 X Q2)

For Intersection, F = ?– Ans: F1 X F2

Lecture 3 UofH - COSC 3340 - Dr. Verma18

Nondeterministic Finite Automaton (NFA)

Generalization of DFA. Allows:– 0 or more next states for the same (q, ).

Guessing

– Transitions labeled by the empty string. Changing state without reading input

Motivation: Flexibility. – Easier to prove many closure properties.

Lecture 3 UofH - COSC 3340 - Dr. Verma19

How does an NFA work?

w is accepted by an NFA provided there is a sequence of guesses that leads to a final state.

Language accepted by NFA is the set of all strings accepted by it.

Lecture 3 UofH - COSC 3340 - Dr. Verma20

Example: {w in {0,1}* | the second last symbol of w is a 1}

Lecture 3 UofH - COSC 3340 - Dr. Verma21

NFA A = {w in {0,1}* | the second last symbol of w is a 1}

110

Lecture 3 UofH - COSC 3340 - Dr. Verma22

NFA A = {w in {0,1}* | the second last symbol of w is a 1}

110

Lecture 3 UofH - COSC 3340 - Dr. Verma23

NFA A = {w in {0,1}* | the second last symbol of w is a 1}

110

Lecture 3 UofH - COSC 3340 - Dr. Verma24

NFA A = {w in {0,1}* | the second last symbol of w is a 1}

110

Lecture 3 UofH - COSC 3340 - Dr. Verma25

Formal definition of NFA

Notation: e = U {e}. NFA M = (Q, , , s, F) where:

– Q - finite set of states - input alphabet– s - initial state– F Q - set of final states is a subset of Q X e X Q.

If (p, u, q) in , then NFA in state p can read u and go to q.

top related