No exercício 01, eu acho que o autômato está errado porquê na expressão regular diz que "n, k >= 0", ou seja, a pilha pode ser vazia, mas não tem como chegar ao estado final porquê precisa receber pelo menos um "c".
Conseguiram resolver? não estou conseguindo prosseguir
Рік тому+3
Ola pessoal, infelizmente não posso passar a resposta aqui senão perde a graça para os alunos do curso presencial do IFET onde trabalho... Mas uma dica a sempre pode dar. Pense da seguinte forma: para cada 'a' que chegar você empilha A. Em seguida, para cada 'b' que chegar eu desempilho um A. Ai agora vem o pulo do gato: faça um teste de pilha vazia (quando a pilha estiver vazia, para cada 'b' que chegar, você empilha um A. Pegaram a ideia? A partir dai, para cada 'c' que chegar voce desempilha um A. Faca ai no papel de vocês e confira se essa estrategia não vai funcionar. Legal demais não é?
Boa noite professor, como é faça um autómataque faça: 1-) definição de string 2-) Descrição das regras da linguagem gerada pelo gerado. 3-) Expansão regular correspondente
Professor, no caso do exercício 2, a palavra aacc seria aceita, já que |a| = 2 e |b| = 0 e |c| = 2 (|a| - |b| = 2 - 0 = 2). Logo, o autômato deveria ter a transição (c, A : ɛ) de q0 pra q1, certo?
Рік тому+2
Ola Cassiano Junior, sim você está correto. Eu descuidei ali e acabei considerando o K fosse apenas maior que zero :( sendo que, o exercício pede que K seja maior e IGUAL a zero. Portanto, para satisfazer o exercício como um todo, deveríamos acrescentar a transição (c, A : ɛ) de q0 pra q1, conforme você observou. Obrigado!
Ola Marcos, eu não tenho gabarito, normalmente eu resolvo os exercícios em sala de aula no IFSudesteMG. Mas acredito que você consiga fazer sem maiores problemas seguindo a metodologia apresentada. Bons estudos!
Professor, acredito que o automato do Ex 1 esteja incorreto. Pela definição, a linguagem aceita é: L={ a^n b^k c^(n+k) | n, k ≥ 0 }. Portanto, utilizando o exemplo apresentado no minuto 17:56 (aabccc), essa palavra realmente pertence à linguagem. No entanto, se inserirmos as palavras 'bbaccc' ou 'ababcccc', o autômato indicaria que essas palavras também pertencem à linguagem. Isso me parece um erro, já que pela definição, deveria ser estritamente uma sequência de 'a' seguida por uma sequência de 'b' e, por fim, uma sequência de 'c' que contém a mesma quantidade de 'a's e 'b's. Se a minha interpretação estiver incorreta, peço que me corrija, por favor.
Рік тому
Ola Matheus, realmente sua observação está totalmente correta. Eu acabei fazendo um autômato mais abrangente que o desejado pelo exercício. Pois como você bem disse, a questão pediu que eu fizesse um AP que aceitasse palavras que comecam com a , depois vem as ocorrências de b e finalmente as ocorrencias de c. Para corrigir, basta criar um novo estado q2 entre q0 e q1, retirar o loop (b,λ,A) de q0 e colocá-lo na transicao de q0 para q2 e colocá-lo também como loop em q2. Mais uma vez, obrigado pela observação!
Professor desculpe por incomodar; o professor poderia ajudar-me na solução desta exercícios
Рік тому+1
Olá Leandro, Vc está se referindo ao exercício 03 que deixei para vocês fazerem? Você conseguiu entender como desenvolvi os dois primeiros exercícios? Lembre-se que o automato com pilha segue a mesma ideia dos anteriores porém agora podemos "anotar" informações na pilha que nos auxiliem. Sugiro que vc veja novamente os dois exemplos que eu fiz e tente fazer em seguida sem olhar o vídeo, assim você vai entender melhor e conseguir fazer o último
@ a verdade aque estou a trabalhar nele! Eu sou estudante do 3ano no Curso de Engenharia e tenho muita dificuldade a LFA mas estou a me esforçar Professor!
@ Quais são os próximos assuntos abordados pra eu ir me preparando pra disciplina?
10 місяців тому+2
@@harllemalves1590 , os próximos passos da disciplina de Linguagens Formais e Autômatos são relacionados as linguagens Tipo 1. E neste momento a máquina de turing é o formalismo capaz de processar tais linguagens. A partir dai, normalmente partimos para a disciplina de Compiladores (onde temos uma playlist completinha no canal). Bons estudos. Não esqueça de curtir e compartilhar!
Uma dúvida, se alguém puder me esclarecer: no q0 ele teria 2 possibilidades de transição, lendo a ou b. No caso, o exercício ele pede que seja uma quantidade de a, seguido de uma quantidade de b, e as quantidades precisam ser as mesmas. Nesse caso, ao inves de q0 ler a recursivamente, não seria mais correto fazer isso como transição para outro estado, para obrigar a palavra a começar lendo os a's. Pq nesse primeiro exemplo ele poderia começar lendo b, já que q0 tem duas possibilidades de leitura: a ou b (3 na vdd, mas não to contando com o ?, ?, E, pq esse seria referente a quantidade de a e b ser 0. Só uma dúvida mesmo, não sei se interpretei errado.
O que me pega muito é se k > n, 2 - 3 = -1, e aí? como procede?
4 місяці тому
Não sei entendi muito bem sua pergunta. Se quiser explicar melhor fique a vontade. Mas vamos lá, quando a primeira parcela é menor que a segunda e queremos a diferença. Eu sempre empilho os primeiros termos, em seguida retiro a mesma quantidade da segunda parcela. Faço teste de pilha vazia, a partir daí terei a diferença. Mas como eu disse, não sei entendi muito bem sua pergunta. Eu considerei que vc estava dizendo por exemplo n2 e k3
O autômato feito no exercício 1, aceita a palavra vazia? pois lá diz que o N e K pode ser maior ou igual a 0
Рік тому
Olá Lima Brax, realmente se formos observar o que o exercício diz temos que aceitar n e k iguais a zero também. Mas passou despercebido por mim e resolvi como se n e k fosse apenas maiores que zero. Para corrigir seria necessário criar uma nova transição com movimento vazio, ou senão adaptar o q0 para ser final.
O resultado do ex3 seria: (b, A, ε) (b, ε, A) (q0) ----------> (q1) ----------> ((q2)) ^ ^ ^ | | | (a, ε, A) (b, A, ε) (c, A, ε) Adoraria saber se é isso mesmo, grato!
Material completo do curso Linguagens Formais e Autômatos
profjoserui.my.canva.site/
Otimo video, muitos parabéns. Finalmennte consegui perceber o autómato de pilha
Que bom @vitorfrango3583, nosso canal tem muito conteúdo que pode te ajudar.
Boa tarde! O senhor planeja continuar os proximos capitulos da matéria? Queria muito uma aula sobre maquinas de turing, sua didática é ótima
Boa tarde @Ed-xy2jf!
Esse conteúdo de máquina de Turing será dado mais pro final da nossa disciplina aqui IFET, e mais pra frente teremos sim!
ótimo video, não tinha entendido nada agora entendi
Que bom Sabrina, pois este conteúdo é fundamental na disciplina de Linguagens Formais e Autômatos!
No exercício 01, eu acho que o autômato está errado porquê na expressão regular diz que "n, k >= 0", ou seja, a pilha pode ser vazia, mas não tem como chegar ao estado final porquê precisa receber pelo menos um "c".
Faltou uma aula sobre máquina de Turing
Fala professor, bom dia! Como ficaria a resolução do Exercício 3? estou com dificuldade nessa pois não to entendo como poderia achar a quantidade de c
Também estou com a mesma duvida
Conseguiram resolver? não estou conseguindo prosseguir
Ola pessoal, infelizmente não posso passar a resposta aqui senão perde a graça para os alunos do curso presencial do IFET onde trabalho... Mas uma dica a sempre pode dar. Pense da seguinte forma: para cada 'a' que chegar você empilha A. Em seguida, para cada 'b' que chegar eu desempilho um A. Ai agora vem o pulo do gato: faça um teste de pilha vazia (quando a pilha estiver vazia, para cada 'b' que chegar, você empilha um A. Pegaram a ideia? A partir dai, para cada 'c' que chegar voce desempilha um A. Faca ai no papel de vocês e confira se essa estrategia não vai funcionar. Legal demais não é?
@@gabrielmenino9206 , respondido! Bons estudos!
@@pedrokszzz, respondido. Bons estudos!
Boa noite professor, como é faça um autómataque faça:
1-) definição de string
2-) Descrição das regras da linguagem gerada pelo gerado.
3-) Expansão regular correspondente
Fala professor, no último exercício, k não deveria ser >= a n? Para que c não fique negativo??
Sim Eduardo, ou ainda apenas garantir que n ou k sejam maiores que zero. Obrigado.
Professor, no caso do exercício 2, a palavra aacc seria aceita, já que |a| = 2 e |b| = 0 e |c| = 2 (|a| - |b| = 2 - 0 = 2). Logo, o autômato deveria ter a transição (c, A : ɛ) de q0 pra q1, certo?
Ola Cassiano Junior, sim você está correto. Eu descuidei ali e acabei considerando o K fosse apenas maior que zero :( sendo que, o exercício pede que K seja maior e IGUAL a zero. Portanto, para satisfazer o exercício como um todo, deveríamos acrescentar a transição (c, A : ɛ) de q0 pra q1, conforme você observou. Obrigado!
Professor, poderia disponibilizar o gabarito?
Ola Marcos, eu não tenho gabarito, normalmente eu resolvo os exercícios em sala de aula no IFSudesteMG. Mas acredito que você consiga fazer sem maiores problemas seguindo a metodologia apresentada. Bons estudos!
Professor, acredito que o automato do Ex 1 esteja incorreto.
Pela definição, a linguagem aceita é: L={ a^n b^k c^(n+k) | n, k ≥ 0 }.
Portanto, utilizando o exemplo apresentado no minuto 17:56 (aabccc), essa palavra realmente pertence à linguagem. No entanto, se inserirmos as palavras 'bbaccc' ou 'ababcccc', o autômato indicaria que essas palavras também pertencem à linguagem. Isso me parece um erro, já que pela definição, deveria ser estritamente uma sequência de 'a' seguida por uma sequência de 'b' e, por fim, uma sequência de 'c' que contém a mesma quantidade de 'a's e 'b's.
Se a minha interpretação estiver incorreta, peço que me corrija, por favor.
Ola Matheus, realmente sua observação está totalmente correta. Eu acabei fazendo um autômato mais abrangente que o desejado pelo exercício. Pois como você bem disse, a questão pediu que eu fizesse um AP que aceitasse palavras que comecam com a , depois vem as ocorrências de b e finalmente as ocorrencias de c.
Para corrigir, basta criar um novo estado q2 entre q0 e q1, retirar o loop (b,λ,A) de q0 e colocá-lo na transicao de q0 para q2 e colocá-lo também como loop em q2. Mais uma vez, obrigado pela observação!
Professor desculpe por incomodar; o professor poderia ajudar-me na solução desta exercícios
Olá Leandro,
Vc está se referindo ao exercício 03 que deixei para vocês fazerem?
Você conseguiu entender como desenvolvi os dois primeiros exercícios? Lembre-se que o automato com pilha segue a mesma ideia dos anteriores porém agora podemos "anotar" informações na pilha que nos auxiliem.
Sugiro que vc veja novamente os dois exemplos que eu fiz e tente fazer em seguida sem olhar o vídeo, assim você vai entender melhor e conseguir fazer o último
@ a verdade aque estou a trabalhar nele!
Eu sou estudante do 3ano no Curso de Engenharia e tenho muita dificuldade a LFA mas estou a me esforçar Professor!
Ele ensina como se o aluno fosse um primata analfabeto. Gostei muito, funcionou
Ai voce me quebra Matheus!!! kkkkk
Mas vou tomar isso como um elogio a minha didatica... Valeu, tmj!!!
Boa noite professor, existem mais aulas fora essas postadas na playlist?
No UA-cam por enquanto são apenas essas. As demais são presenciais no IFET.
@ Quais são os próximos assuntos abordados pra eu ir me preparando pra disciplina?
@@harllemalves1590 , os próximos passos da disciplina de Linguagens Formais e Autômatos são relacionados as linguagens Tipo 1. E neste momento a máquina de turing é o formalismo capaz de processar tais linguagens. A partir dai, normalmente partimos para a disciplina de Compiladores (onde temos uma playlist completinha no canal). Bons estudos. Não esqueça de curtir e compartilhar!
Professor, os exercícios não estão considerando que tanto o n quanto o k podem ser zero.
Uma dúvida, se alguém puder me esclarecer:
no q0 ele teria 2 possibilidades de transição, lendo a ou b. No caso, o exercício ele pede que seja uma quantidade de a, seguido de uma quantidade de b, e as quantidades precisam ser as mesmas. Nesse caso, ao inves de q0 ler a recursivamente, não seria mais correto fazer isso como transição para outro estado, para obrigar a palavra a começar lendo os a's. Pq nesse primeiro exemplo ele poderia começar lendo b, já que q0 tem duas possibilidades de leitura: a ou b (3 na vdd, mas não to contando com o ?, ?, E, pq esse seria referente a quantidade de a e b ser 0.
Só uma dúvida mesmo, não sei se interpretei errado.
Eu também achei que faltou isso, seria uma transição vazia pro ultimo ao meu ver
O que me pega muito é se k > n, 2 - 3 = -1, e aí? como procede?
Não sei entendi muito bem sua pergunta. Se quiser explicar melhor fique a vontade. Mas vamos lá, quando a primeira parcela é menor que a segunda e queremos a diferença. Eu sempre empilho os primeiros termos, em seguida retiro a mesma quantidade da segunda parcela. Faço teste de pilha vazia, a partir daí terei a diferença.
Mas como eu disse, não sei entendi muito bem sua pergunta. Eu considerei que vc estava dizendo por exemplo n2 e k3
O autômato feito no exercício 1, aceita a palavra vazia?
pois lá diz que o N e K pode ser maior ou igual a 0
Olá Lima Brax, realmente se formos observar o que o exercício diz temos que aceitar n e k iguais a zero também. Mas passou despercebido por mim e resolvi como se n e k fosse apenas maiores que zero.
Para corrigir seria necessário criar uma nova transição com movimento vazio, ou senão adaptar o q0 para ser final.
O resultado do ex3 seria:
(b, A, ε) (b, ε, A)
(q0) ----------> (q1) ----------> ((q2))
^ ^ ^
| | |
(a, ε, A) (b, A, ε) (c, A, ε)
Adoraria saber se é isso mesmo, grato!