Autómatos recursivos
Autor(a) principal: | |
---|---|
Data de Publicação: | 2009 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10174/21356 |
Resumo: | Sumário: as sociedades humanas são complexas. Essa complexidade tende a aumentar, sendo a tecnologia um dos motores desse percurso. Não só promotora de certo progresso, a tecnologia requer a construção e gestão de sistemas cada vez mais sofisticados. Numa perspectiva histórica, só recentemente é que se deram avanços significativos no enquadramento teórico da tecnologia, com a Cibernética (em inglês cybernetics, «Ciência que estuda os mecanismos de comunicação e de controlo nas máquinas e nos seres vivos.» [PRI]) e a Teoria dos Autómatos (RM01). Na vertente aplicada destes progressos teóricos, encontramos uma variedade de sistemas implementados com vista a: • geração de código; • análise sintáctica e lexical; • construção e validação de sistemas digitais; • demonstração automática de teoremas; • pesquisa de soluções-caminhos nos espaços de estados de problemas. Desta variedade resulta que cada implementação particular tende a especializar-se numa determinada tarefa/objectivo. Resulta então que uma aplicação que use uma biblioteca especializada (digamos, de análise sintáctica) fica limitada à especialidade dessa biblioteca. Também acontece que certas aplicações acabam por implementar as suas próprias ferramentas. Neste trabalho foi definido um certo tipo de autómato (AR, autómato recursivo) que acreditamos ter a mesma capacidade computacional dos autómatos de pilha (AP, em inglês push-down automata, PDA) mas mais simples e intuitivo. Além dessa definição, associam-se metadados/acções a símbolos terminais e palavras aceites. Com essa base teórica implementou-se uma biblioteca que procura facilitar o desenvolvimento de aplicações onde seja necessário ou útil a construção e execução de autómatos. A título demonstrativo foi construída uma aplicação, um gerador de analisadores sintácticos e lexicais, através de especificações FBNA (Forma Backus-Naur Aumentada, em inglês Augmented Backus-Naur Form) [Net08]. / ABSTRACT: Human societies are complex. This complexity tends to increase, technology being one of the drivers of this progress. Technology not only promotes a certain progress but requires the construction and management of highly sophisticated systems. ln a historical perspective, it was only recently that significant advances were made in the theoretical framework of technology, with Cybernetics (the science of the mechanisms of communication and control in machines and living things.) and Automata Theory [RM01]. ln the applied aspects of these theoretical progress, we find a variety of systems implemented with the objective of: • Generation of a code; • Making syntactic and lexical analysis; • Construction and validation of digital systems; • Automatically proving theorems; • Searching solutions-paths in problem's state-space. From this variety follows that each particular implementation tends to specialize in a particular task/objective. It follows then that an application that uses a specialized library (say, parsing) is limited to that library expertise. It also happens that some applications ultimately implement their own tools. ln this work is defined a certain type of automaton (RA, recursive automaton) with the computing power of pushdown automata but simpler and more intuitive. Besides this definition, we associate meta-data/ actions to the terminal symbols and the accepted words. With this theoretical basis, a library was implemented that seeks to facilitate the development of applications where it is necessary or useful the construction and implementation of automata. Based on the definition a library is implemented that allows applications to develop based on the construction and implementation of automata. For demonstration purposes, an example application was built, through ABNF (Augmented Backus-Naur Form) grammars specifications [Net08], a syntax/lexical parser generator. |
id |
RCAP_ac41f354ac737e999bb06d65dad5d51e |
---|---|
oai_identifier_str |
oai:dspace.uevora.pt:10174/21356 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Autómatos recursivosSumário: as sociedades humanas são complexas. Essa complexidade tende a aumentar, sendo a tecnologia um dos motores desse percurso. Não só promotora de certo progresso, a tecnologia requer a construção e gestão de sistemas cada vez mais sofisticados. Numa perspectiva histórica, só recentemente é que se deram avanços significativos no enquadramento teórico da tecnologia, com a Cibernética (em inglês cybernetics, «Ciência que estuda os mecanismos de comunicação e de controlo nas máquinas e nos seres vivos.» [PRI]) e a Teoria dos Autómatos (RM01). Na vertente aplicada destes progressos teóricos, encontramos uma variedade de sistemas implementados com vista a: • geração de código; • análise sintáctica e lexical; • construção e validação de sistemas digitais; • demonstração automática de teoremas; • pesquisa de soluções-caminhos nos espaços de estados de problemas. Desta variedade resulta que cada implementação particular tende a especializar-se numa determinada tarefa/objectivo. Resulta então que uma aplicação que use uma biblioteca especializada (digamos, de análise sintáctica) fica limitada à especialidade dessa biblioteca. Também acontece que certas aplicações acabam por implementar as suas próprias ferramentas. Neste trabalho foi definido um certo tipo de autómato (AR, autómato recursivo) que acreditamos ter a mesma capacidade computacional dos autómatos de pilha (AP, em inglês push-down automata, PDA) mas mais simples e intuitivo. Além dessa definição, associam-se metadados/acções a símbolos terminais e palavras aceites. Com essa base teórica implementou-se uma biblioteca que procura facilitar o desenvolvimento de aplicações onde seja necessário ou útil a construção e execução de autómatos. A título demonstrativo foi construída uma aplicação, um gerador de analisadores sintácticos e lexicais, através de especificações FBNA (Forma Backus-Naur Aumentada, em inglês Augmented Backus-Naur Form) [Net08]. / ABSTRACT: Human societies are complex. This complexity tends to increase, technology being one of the drivers of this progress. Technology not only promotes a certain progress but requires the construction and management of highly sophisticated systems. ln a historical perspective, it was only recently that significant advances were made in the theoretical framework of technology, with Cybernetics (the science of the mechanisms of communication and control in machines and living things.) and Automata Theory [RM01]. ln the applied aspects of these theoretical progress, we find a variety of systems implemented with the objective of: • Generation of a code; • Making syntactic and lexical analysis; • Construction and validation of digital systems; • Automatically proving theorems; • Searching solutions-paths in problem's state-space. From this variety follows that each particular implementation tends to specialize in a particular task/objective. It follows then that an application that uses a specialized library (say, parsing) is limited to that library expertise. It also happens that some applications ultimately implement their own tools. ln this work is defined a certain type of automaton (RA, recursive automaton) with the computing power of pushdown automata but simpler and more intuitive. Besides this definition, we associate meta-data/ actions to the terminal symbols and the accepted words. With this theoretical basis, a library was implemented that seeks to facilitate the development of applications where it is necessary or useful the construction and implementation of automata. Based on the definition a library is implemented that allows applications to develop based on the construction and implementation of automata. For demonstration purposes, an example application was built, through ABNF (Augmented Backus-Naur Form) grammars specifications [Net08], a syntax/lexical parser generator.Universidade de Évora2017-10-03T10:47:45Z2017-10-032009-10-26T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10174/21356http://hdl.handle.net/10174/21356porEsc. C. Tecn.teses@bib.uevora.pt283Vieira, Filipe dos Santosinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-01-03T19:11:57Zoai:dspace.uevora.pt:10174/21356Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T01:12:40.459726Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Autómatos recursivos |
title |
Autómatos recursivos |
spellingShingle |
Autómatos recursivos Vieira, Filipe dos Santos |
title_short |
Autómatos recursivos |
title_full |
Autómatos recursivos |
title_fullStr |
Autómatos recursivos |
title_full_unstemmed |
Autómatos recursivos |
title_sort |
Autómatos recursivos |
author |
Vieira, Filipe dos Santos |
author_facet |
Vieira, Filipe dos Santos |
author_role |
author |
dc.contributor.author.fl_str_mv |
Vieira, Filipe dos Santos |
description |
Sumário: as sociedades humanas são complexas. Essa complexidade tende a aumentar, sendo a tecnologia um dos motores desse percurso. Não só promotora de certo progresso, a tecnologia requer a construção e gestão de sistemas cada vez mais sofisticados. Numa perspectiva histórica, só recentemente é que se deram avanços significativos no enquadramento teórico da tecnologia, com a Cibernética (em inglês cybernetics, «Ciência que estuda os mecanismos de comunicação e de controlo nas máquinas e nos seres vivos.» [PRI]) e a Teoria dos Autómatos (RM01). Na vertente aplicada destes progressos teóricos, encontramos uma variedade de sistemas implementados com vista a: • geração de código; • análise sintáctica e lexical; • construção e validação de sistemas digitais; • demonstração automática de teoremas; • pesquisa de soluções-caminhos nos espaços de estados de problemas. Desta variedade resulta que cada implementação particular tende a especializar-se numa determinada tarefa/objectivo. Resulta então que uma aplicação que use uma biblioteca especializada (digamos, de análise sintáctica) fica limitada à especialidade dessa biblioteca. Também acontece que certas aplicações acabam por implementar as suas próprias ferramentas. Neste trabalho foi definido um certo tipo de autómato (AR, autómato recursivo) que acreditamos ter a mesma capacidade computacional dos autómatos de pilha (AP, em inglês push-down automata, PDA) mas mais simples e intuitivo. Além dessa definição, associam-se metadados/acções a símbolos terminais e palavras aceites. Com essa base teórica implementou-se uma biblioteca que procura facilitar o desenvolvimento de aplicações onde seja necessário ou útil a construção e execução de autómatos. A título demonstrativo foi construída uma aplicação, um gerador de analisadores sintácticos e lexicais, através de especificações FBNA (Forma Backus-Naur Aumentada, em inglês Augmented Backus-Naur Form) [Net08]. / ABSTRACT: Human societies are complex. This complexity tends to increase, technology being one of the drivers of this progress. Technology not only promotes a certain progress but requires the construction and management of highly sophisticated systems. ln a historical perspective, it was only recently that significant advances were made in the theoretical framework of technology, with Cybernetics (the science of the mechanisms of communication and control in machines and living things.) and Automata Theory [RM01]. ln the applied aspects of these theoretical progress, we find a variety of systems implemented with the objective of: • Generation of a code; • Making syntactic and lexical analysis; • Construction and validation of digital systems; • Automatically proving theorems; • Searching solutions-paths in problem's state-space. From this variety follows that each particular implementation tends to specialize in a particular task/objective. It follows then that an application that uses a specialized library (say, parsing) is limited to that library expertise. It also happens that some applications ultimately implement their own tools. ln this work is defined a certain type of automaton (RA, recursive automaton) with the computing power of pushdown automata but simpler and more intuitive. Besides this definition, we associate meta-data/ actions to the terminal symbols and the accepted words. With this theoretical basis, a library was implemented that seeks to facilitate the development of applications where it is necessary or useful the construction and implementation of automata. Based on the definition a library is implemented that allows applications to develop based on the construction and implementation of automata. For demonstration purposes, an example application was built, through ABNF (Augmented Backus-Naur Form) grammars specifications [Net08], a syntax/lexical parser generator. |
publishDate |
2009 |
dc.date.none.fl_str_mv |
2009-10-26T00:00:00Z 2017-10-03T10:47:45Z 2017-10-03 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10174/21356 http://hdl.handle.net/10174/21356 |
url |
http://hdl.handle.net/10174/21356 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.none.fl_str_mv |
Esc. C. Tecn. teses@bib.uevora.pt 283 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade de Évora |
publisher.none.fl_str_mv |
Universidade de Évora |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799136607924649984 |