Top Banner
TM accepting strings with equal number of 0’s and 1’s Thamer Al sulaiman
35

TM accepting strings with equal number of 0’s and 1’s

Feb 23, 2016

Download

Documents

Bill

TM accepting strings with equal number of 0’s and 1’s. Thamer Al sulaiman. TM accepting strings with equal number of 0’s and 1’s. The T uring machine accepts strings such as: 001110, 1011. The Turing Machine rejects strings such as: 010, 11100 and so on. . Algorithm. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: TM accepting strings with equal number of 0’s and 1’s

TM accepting strings with equal number of 0’s and 1’s

Thamer Al sulaiman

Page 2: TM accepting strings with equal number of 0’s and 1’s

TM accepting strings with equal number of 0’s and 1’s

• The Turing machine accepts strings such as: 001110, 1011.• The Turing Machine rejects strings such as: 010, 11100 and so on.

Page 3: TM accepting strings with equal number of 0’s and 1’s

AlgorithmA possible algorithm to solve this problem is:

• For each symbol: 0 (1) read from input tape, search for a matching 1 (0), and replace both symbols with another symbol (to ignore matched symbols in subsequent steps).

• If the respective symbol is not found – the end of the string reached without matching symbol (which means the string contains an unequal number of 0s and 1s), then we reject.

• If all 0s and 1s are matched, then accept.

Page 4: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R

- q is the initial state, - R is the rejection state,- F is the acceptance state.

Page 5: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001

Page 6: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001

Page 7: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01

Page 8: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1

Page 9: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x

Page 10: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x

Page 11: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x

Page 12: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x ⊢ ΔEx0x

Page 13: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x ⊢ ΔEx0x ⊢ ΔxE0x

Page 14: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x ⊢ ΔEx0x ⊢ ΔxE0x ⊢ ΔxxCx

Page 15: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x ⊢ ΔEx0x ⊢ ΔxE0x ⊢ ΔxxCx ⊢ ΔxxxCΔ

Page 16: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 001

q Δ001 ⊢ ΔA001 ⊢ ΔxC01 ⊢ Δx0C1 ⊢ ΔxD0x ⊢ ΔDx0x D⊢ Δx0x ⊢ ΔEx0x ⊢ ΔxE0x ⊢ ΔxxCx ⊢ ΔxxxCΔ ⊢ R (reject)

Page 17: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011

Page 18: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101

Page 19: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

Page 20: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01

Page 21: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01

Page 22: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01

Page 23: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01

Page 24: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01

Page 25: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1

Page 26: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx

Page 27: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx

Page 28: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx

Page 29: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx

Page 30: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx

Page 31: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx ⊢ ΔxExxx

Page 32: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx ⊢ ΔxExxx ⊢ ΔxxExx

Page 33: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx ⊢ ΔxExxx ⊢ ΔxxExx ⊢ ΔxxxEx

Page 34: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx ⊢ ΔxExxx ⊢ ΔxxExx ⊢ ΔxxxEx ⊢ ΔxxxxEΔ

Page 35: TM accepting strings with equal number of 0’s and 1’s

q

B

A

R

D

E

F

C

Δ/Δ,RΔ/Δ,R

0/x,R 1/x,R

Δ/Δ,R Δ/Δ,R

1/x,L 0/x,L

0/0,R

1/1,R

0/x,R 1/x,R

0/0,L1/1,Lx/x,L

x/x,R

Δ/Δ,R

x/x,R

Δ/Δ,R Input string: 0101q Δ0011 ⊢ ΔA0101 ⊢ ΔxC101

⊢ ΔDxx01 D⊢ Δxx01 ⊢ ΔExx01 ⊢ ΔxEx01 ⊢ ΔxxE01 ⊢ ΔxxxC1 ⊢ ΔxxDxx ⊢ ΔxDxxx ⊢ ΔDxxxx ⊢ DΔxxxx ⊢ ΔExxxx ⊢ ΔxExxx ⊢ ΔxxExx ⊢ ΔxxxEx ⊢ ΔxxxxEΔ ⊢ F (accept)