2
Universidade Federal de Juiz de Fora Departamento de Ciência da Computação Disciplina: TEORIA DA COMPUTAÇÃO Turma: A Professor: LORENZA MORENO Ano/Semestre: 2012/1 LISTA DE EXERCÍCIOS 1) Construa uma máquina de Turing que, dada uma entrada da forma x$y onde x e y são números binários, modifique o conteúdo da fita para que ao final do processamento esta contenha: a) x$$$y, ou seja, desloque y duas casas para a esquerda preenchendo os espaços entre x e y com $. b) z$y, onde z=x-1 se x>0. c) z, onde z = x-y (pode assumir que x > y e x > 0) d) z, onde z=x, se x e y forem números pares, e z=y, caso contrário. e) z, onde z=x, se x maior que y, e z=y, caso contrário. 2) Construa uma máquina de Turing que, dada uma entrada da forma a n b m (n a’s seguidos por m b’s), modifique o conteúdo da fita para que ao final do processamento essa contenha: a) b n a m b) a m b n c) a n b n+m d) a n b m c nm 3) Para cada linguagem abaixo, construa uma máquina de Turing que a reconheça: a) L A ={a n b m , n = m+2} b) L B = complemento de L A c) união de L A e L B d) intercessão de L A e L B 4) Para cada máquina abaixo: a) descreva informalmente, mas de forma clara, o funcionamento e/ou a linguagem reconhecida. b) dê as descrições instantâneas para cada possível avaliação da entrada “abbba” M A = ({q 0 ,q 1 ,q 2 ,q 3 }, {a,b}, {a,b,B}, δ A , q 0 , B, { q 0 }) onde δ A é definido por: δ A a b B q 0 {q 2 aR} {q 1 bR} q 1 {q 3 aR} {q 0 bR} {q 0 bR} q 2 {q 0 aR} {q 3 bR} {q 0 aR} q 3 {q 1 aR} {q 2 bR} {q 1 aR, q 2 bR } M B = ({q 0 ,q 1 ,q 2 ,q 3 }, {a,b}, {a,b,c,B}, δ B , q 0 , B, { q 3 }) onde δ B é definido por: δ B a b B q 0 {q 0 aR, q 1 aR,q 2 aR } {q 0 bR} {q 3 aR} q 1 {q 2 cR} {q 2 cR} {q 2 cR} q 2 {q 0 cR} {q 0 cR} {q 0 cR}

TC MaqTuring ListaExercicio

Embed Size (px)

DESCRIPTION

Maquina de Turing

Citation preview

  • Universidade Federal de Juiz de Fora

    Departamento de Cincia da Computao

    Disciplina: TEORIA DA COMPUTAO Turma: A

    Professor: LORENZA MORENO Ano/Semestre: 2012/1

    LISTA DE EXERCCIOS

    1) Construa uma mquina de Turing que, dada uma entrada da forma x$y onde x e y so nmeros binrios,

    modifique o contedo da fita para que ao final do processamento esta contenha:

    a) x$$$y, ou seja, desloque y duas casas para a esquerda preenchendo os espaos entre x e y com $. b) z$y, onde z=x-1 se x>0.

    c) z, onde z = x-y (pode assumir que x > y e x > 0)

    d) z, onde z=x, se x e y forem nmeros pares, e z=y, caso contrrio.

    e) z, onde z=x, se x maior que y, e z=y, caso contrrio.

    2) Construa uma mquina de Turing que, dada uma entrada da forma anbm (n as seguidos por m bs),

    modifique o contedo da fita para que ao final do processamento essa contenha:

    a) bnam b) ambn

    c) anbn+m

    d) anbmcnm

    3) Para cada linguagem abaixo, construa uma mquina de Turing que a reconhea:

    a) LA={anbm, n = m+2}

    b) LB = complemento de LA

    c) unio de LA e LB d) intercesso de LA e LB

    4) Para cada mquina abaixo:

    a) descreva informalmente, mas de forma clara, o funcionamento e/ou a linguagem reconhecida. b) d as descries instantneas para cada possvel avaliao da entrada abbba

    MA= ({q0,q1,q2,q3}, {a,b}, {a,b,B}, A, q0, B, { q0 }) onde A definido por:

    A a b B

    q0 {q2aR} {q1bR}

    q1 {q3aR} {q0bR} {q0bR}

    q2 {q0aR} {q3bR} {q0aR}

    q3 {q1aR} {q2bR} {q1aR, q2bR }

    MB= ({q0,q1,q2,q3}, {a,b}, {a,b,c,B}, B, q0, B, { q3 }) onde B definido por:

    B a b B

    q0 {q0aR, q1aR,q2aR } {q0bR} {q3aR}

    q1 {q2cR} {q2cR} {q2cR}

    q2 {q0cR} {q0cR} {q0cR}

  • MC= ({q0,q1,q2,q3,q4,q5}, {a,b}, {a,b,c,X,Y,B}, C, q0, B, { q5 }) onde C definido por:

    C a b c X Y B

    q0 q3XR q1YR

    q1 q1aR q2bR q4BL

    q2 q2aR q3cR q4BL

    q3 q3aR q1bR

    q4 q4cL q4bL q4cL q5cL q5bL

    MD= ({[q0,B],[q1,B],[q2,k],[q3,B],[q4,B],[q5,B] | k {a,b,B}}, {a,b}, {a,b,B,X}, D, [q0,B], B, {[q4,B]}) onde D definido por:

    D [a,B] [b,B] [B,B] [b,X]

    [q0,B] {[q1,B],[a,B],R} {[q1,B],[b,B],R} {[q4,B],[B,B],R} {[q5,B],[B,B],R}

    [q1,B] {[q1,B],[a,B],R} {[q2,b],[b,X],R} {[q4,B],[B,B],R} {[q5,B],[B,B],R}

    [q2,k] {[q2,a],[a,B],R} {[q2,b],[b,B],R} {[q3,B],[k,B],L} {[q2,b],[b,X],R}

    [q3,B] {[q2,B],[B,B],L} {[q2,B],[B,B],L} {[q5,B],[B,B],R} {[q0,B],[B,B],R}

    ME= ({[q0,B],[q1,k],[q2,k],[q3,k],[q4,k],[q5,B],[q6,B] | k {a,b}}, {a,b}, {a,b,B}, E, [q0,B], B, {[q6,B]}) onde E

    definido por:

    E a b B

    [q0,B] [q1,a],a,R [q1,b],b,R [q5,B],B,R

    [q1,k] [q1,k],a,R [q1,k],b,R [q2,k],B,L

    [q2,a] [q3,b],a,L [q4,b],a,L

    [q2,b] [q4,a],b,L [q3,a],b,L

    [q3,a] [q6,B],a,L [q6,B],a,L [q6,B],a,L

    [q3,b] [q6,B],b,L [q6,B],b,L [q6,B],b,L

    [q4,a] [q6,B],a,L [q5,B],a,L [q5,B],a,L

    [q4,b] [q5,B],b,L [q6,B],b,L [q5,B],b,L

    5) Como voc faria para criar uma MT para aceitar a unio das linguagens reconhecidas por duas MTs

    distintas? Tente apontar o que seria necessrio fazer para criar MTs para cada possvel par de mquinas do

    exerccio acima (desconsidere as alteraes feitas na entrada concentrando-se na linguagem reconhecida

    por cada MT).

    6) Refaa o exerccio acima para a intercesso.