/* Capitulo 1, pp. 57 e 58.Programa fsm05.pl, adaptado do programa recognize1.pl,de autoria de Patrick Blackburn e Kristina Striegnitz,disponivel na seguinte URL:http://cs.union.edu/~striegnk/courses/nlp-with-prolog/html/recognize1.pl */:- multifile network/1.:- multifile arc/4.:- multifile final/2.:- multifile initial/2.:- discontiguous network/1.:- discontiguous arc/4.:- discontiguous final/2.:- discontiguous initial/2.recognize1(Network,Node,[]) :- final(Network,Node).recognize1(Network,Node1,String) :- arc(Network,Node1,Node2,Label1), atom_codes(Label2,Label1), traverse1(Network,Label2,String,NewString), recognize1(Network,Node2,NewString).traverse1(Network,Label,[Label|Symbols],Symbols):- network(Network).test1(Network,Symbols) :- initial(Network,Node), recognize1(Network,Node,Symbols).generate1(Network,X) :- test1(Network,X).testa(Rede,Palavra):- atom_chars(Palavra,Lista),test1(Rede,Lista).gera(Rede,Palavra) :- generate1(Rede,Lista),atom_chars(Palavra,Lista).gera2(N):- gera(N,Palavra),write(Palavra),nl,fail. O programa em Prolog recognize2.pl, de Blackburn e Striegnitz, esta disponivel no seguinte endereco:http://cs.union.edu/~striegnk/courses/nlp-with-prolog/html/recognize2.pl Depois do lancamento do livro no Instituto de Letras da UFRGS, no dia 14 de junho, ele sera lancado em Fortaleza, tambem com a participacao dos dois organizadores, no dia 20 de setembro. Mais informacoes aqui:http://www.gramaticaufc.blogspot.com.br/p/lancamento-de-livros.html ALENCAR, L. F. de . Linguas formais,gramaticas e automatos no processamento automatico das palavras. In: ALENCAR,L. F. de; OTHERO, G. A.. (Org.). Abordagens computacionais da teoria da gramatica. 1 ed. Campinas: Mercado de Letras, 2012, p. 13-75.Exercicioscomplementares sobre o capitulo 1 de Alencar e Othero (2012)Exercicio I(c) 2012 Leonel Figueiredode Alencar Nosexercicios de 1 a 3, marque verdadeiro (V) ou falso (F) para as alternativas.Questao 1: Que tipo de objetomatematico e uma lingua formal?a. Equacao.b. Vetor.c. Matriz.d. Conjunto.e. Arvore. Questao 2: Sobre a lingua formal L1 (p. 20)e correto afirmar:a.Trata-se de lingua finita.b.A palavra romapertence a L1.c.A palavra mamaopertence a L1.d.O numero de elementos de L1 e 7.e.O numero de elementos de L1 e 10.Questao 3: Sobre a lingua formal L3 (p. 20) ecorreto afirmar:a.Esta definida enumerativamente.b.Se A={x | x e um sintagma nominal do portugues}, entao L3=A.c.Se A={u,m,o,s}, entao A e um subconjunto do alfabeto de L3.d.A cardinalidade doalfabeto de L3 e 9.e.Se B={aquele jogador de xadrez}, entao B esta contido em L3.f.Se B={aquela jogadora}, entao B pertence a L3.Questao 4: Seja aversao corrigida de L2=an bm, com n 0 e m 0 (v. errata).Construa uma gramatica dessa lingua nos moldes do exemplo (5), p. 26.Questao 5: Nosmoldes do exemplo (4), p. 25, utilizando a gramatica da Questao 4, faca a derivacao da cadeia abb.Questao 6: Apresente a arvore do exemplo da Questao 5.Questao 7: Seja L5=an bn, com n 0. Construa uma gramatica dessa lingua nosmoldes do exemplo (5), p. 26. Com base nessa gramatica, elabore a arvore dacadeia aabb.Questao 8: Seja a gramatica G=( {A,C,S}, {a,b,c}, {S -> A S A, S -> b C, A -> a, C -> b C, C -> c}, S ), extraida do livro Generative Syntax, de Ursula Klenk (Tubingen: Narr,2003, p. 38). Pressupondo que a lingua L gerada por G e tal que L=axby cz aw, estabeleca os valores que podem serassumidos por x, y, z e w. Exercicios sobre o capitulo 1 de Alencar e Othero (2012) by Leonel F. de Alencar is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.Based on a work at http://teoria-da-gramatica.blogspot.com.br/2012/08/exercicio-complementar-i-do-capitulo-1.html. /* Capitulo 1, exemplo (35), pp. 48-49.Programa fsm03.pl, adaptado do programa recognize1.pl,de autoria de Patrick Blackburn e Kristina Striegnitz,disponivel na seguinte URL:http://cs.union.edu/~striegnk/courses/nlp-with-prolog/html/recognize1.pl */:- multifile network/1.:- multifile arc/4.:- multifile final/2.:- multifile initial/1.:- discontiguous network/1.:- discontiguous arc/4.:- discontiguous final/2.:- discontiguous initial/1.initial(0).recognize1(Network,Node,[]) :- final(Network,Node).recognize1(Network,Node1,String) :- arc(Network,Node1,Node2,Label1), atom_codes(Label2,Label1), traverse1(Network,Label2,String,NewString), recognize1(Network,Node2,NewString).traverse1(Network,Label,[Label|Symbols],Symbols):- network(Network).test1(Network,Symbols) :- initial(Node), recognize1(Network,Node,Symbols).generate1(Network,X) :- test1(Network,X).testa(Rede,Palavra):- atom_chars(Palavra,Lista),test1(Rede,Lista).gera(Rede,Palavra) :- generate1(Rede,Lista),atom_chars(Palavra,Lista).gera2(N):- gera(N,Palavra),write(Palavra),nl,fail. Gente, lembram