Autómatos de Pilha em OCamlFLAT/OFLAT

Detalhes bibliográficos
Autor(a) principal: Araújo, Miguel Santos
Data de Publicação: 2022
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/10362/159642
Resumo: Com a crescente procura de cursos de Engenharia Informática, são muitos os alunos que precisam de realizar uma disciplina de Teoria da Computação e depois de usar o que aprenderam na sua vida profissional. Mas os tópicos lecionados não são simples. Para ajudar no ensino, têm vindo a ser desenvolvidas as mais diversas ferramentas pedagógicas. É esta a motivação por trás da elaboração da biblioteca OCamlFLAT e da aplicação web OFLAT. Como o nome indica, OCamlFLAT é uma implementação de alguns dos conceitos referidos usando a linguagem de programação OCaml. Quanto à ferramenta OFLAT, desenvolvida sobre a biblioteca anterior, permite a visualização e manipulação gráfica dos con-ceitos teóricos, incluindo a animação interativa de determinados processamentos. Esta dissertação visou estender as duas ferramentas com a adição de suporte para au-tómatos de pilha. Foram desenvolvidas as funcionalidades normais esperadas neste domínio, tanto na biblioteca, ao nível lógico, como na aplicação gráfica, através duma interface gráfica ambiciosa com preocupações pedagógicas. Exemplos de funcionalidades desenvolvidas: aceitação e geração de palavras; transformações diversas tais como eliminar os estados inacessíveis; predicados para testar propriedades como por exemplo o determinismo. De notar que estas funcionalidades se aplicam a autómatos de pilha deterministas e não-deterministas. Neste documento apresenta-se e discute-se criticamente o resultado deste trabalho.
id RCAP_64f5358478a36e507a7ad78fcb44a48c
oai_identifier_str oai:run.unl.pt:10362/159642
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 de Pilha em OCamlFLAT/OFLATTeoria das linguagens formais e autómatosProgramação FuncionalOCamlOCamlFLATOFLATDomínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaCom a crescente procura de cursos de Engenharia Informática, são muitos os alunos que precisam de realizar uma disciplina de Teoria da Computação e depois de usar o que aprenderam na sua vida profissional. Mas os tópicos lecionados não são simples. Para ajudar no ensino, têm vindo a ser desenvolvidas as mais diversas ferramentas pedagógicas. É esta a motivação por trás da elaboração da biblioteca OCamlFLAT e da aplicação web OFLAT. Como o nome indica, OCamlFLAT é uma implementação de alguns dos conceitos referidos usando a linguagem de programação OCaml. Quanto à ferramenta OFLAT, desenvolvida sobre a biblioteca anterior, permite a visualização e manipulação gráfica dos con-ceitos teóricos, incluindo a animação interativa de determinados processamentos. Esta dissertação visou estender as duas ferramentas com a adição de suporte para au-tómatos de pilha. Foram desenvolvidas as funcionalidades normais esperadas neste domínio, tanto na biblioteca, ao nível lógico, como na aplicação gráfica, através duma interface gráfica ambiciosa com preocupações pedagógicas. Exemplos de funcionalidades desenvolvidas: aceitação e geração de palavras; transformações diversas tais como eliminar os estados inacessíveis; predicados para testar propriedades como por exemplo o determinismo. De notar que estas funcionalidades se aplicam a autómatos de pilha deterministas e não-deterministas. Neste documento apresenta-se e discute-se criticamente o resultado deste trabalho.With the growing demand for Computer Engineering courses, more and more stu-dents are required to complete a Computer Theory course and use this knowledge in their professional life. However, the topic is not simple and for many students the lecture becomes an obstacle. In order to make the teaching of the Theory of Formal Languages and Automata more effective, several pedagogical tools focused on the topic have been developed. This is the motivation behind the development of the OCamlFLAT library and the web application OFLAT. OCamlFLAT, as the name implies, is an implementation of some of the mentioned concepts developed in the OCaml programming language. Regarding OFLAT, de-veloped on the previous library, it allows the visualization and graphic manipulation of theo-retical concepts, supporting the animation of some of the processes and providing an easy interaction on behalf of the user. Several modules have been implemented in order to enrich the system by providing support to pushdown automata in the OCamlFLAT library, as well as in the OFLAT tool. The modules contain a group of fundamental operations towards the study of these automata such as the process of acceptance of a word, transformation operations such as the cleanse of states that are not useful and the test of some properties such as checking the determinism of the automaton.Dias, ArturRUNAraújo, Miguel Santos2023-11-07T15:51:57Z2022-022022-02-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10362/159642porinfo: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-03-11T05:42:05Zoai:run.unl.pt:10362/159642Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T03:57:38.042033Repositó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 de Pilha em OCamlFLAT/OFLAT
title Autómatos de Pilha em OCamlFLAT/OFLAT
spellingShingle Autómatos de Pilha em OCamlFLAT/OFLAT
Araújo, Miguel Santos
Teoria das linguagens formais e autómatos
Programação Funcional
OCaml
OCamlFLAT
OFLAT
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Autómatos de Pilha em OCamlFLAT/OFLAT
title_full Autómatos de Pilha em OCamlFLAT/OFLAT
title_fullStr Autómatos de Pilha em OCamlFLAT/OFLAT
title_full_unstemmed Autómatos de Pilha em OCamlFLAT/OFLAT
title_sort Autómatos de Pilha em OCamlFLAT/OFLAT
author Araújo, Miguel Santos
author_facet Araújo, Miguel Santos
author_role author
dc.contributor.none.fl_str_mv Dias, Artur
RUN
dc.contributor.author.fl_str_mv Araújo, Miguel Santos
dc.subject.por.fl_str_mv Teoria das linguagens formais e autómatos
Programação Funcional
OCaml
OCamlFLAT
OFLAT
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Teoria das linguagens formais e autómatos
Programação Funcional
OCaml
OCamlFLAT
OFLAT
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Com a crescente procura de cursos de Engenharia Informática, são muitos os alunos que precisam de realizar uma disciplina de Teoria da Computação e depois de usar o que aprenderam na sua vida profissional. Mas os tópicos lecionados não são simples. Para ajudar no ensino, têm vindo a ser desenvolvidas as mais diversas ferramentas pedagógicas. É esta a motivação por trás da elaboração da biblioteca OCamlFLAT e da aplicação web OFLAT. Como o nome indica, OCamlFLAT é uma implementação de alguns dos conceitos referidos usando a linguagem de programação OCaml. Quanto à ferramenta OFLAT, desenvolvida sobre a biblioteca anterior, permite a visualização e manipulação gráfica dos con-ceitos teóricos, incluindo a animação interativa de determinados processamentos. Esta dissertação visou estender as duas ferramentas com a adição de suporte para au-tómatos de pilha. Foram desenvolvidas as funcionalidades normais esperadas neste domínio, tanto na biblioteca, ao nível lógico, como na aplicação gráfica, através duma interface gráfica ambiciosa com preocupações pedagógicas. Exemplos de funcionalidades desenvolvidas: aceitação e geração de palavras; transformações diversas tais como eliminar os estados inacessíveis; predicados para testar propriedades como por exemplo o determinismo. De notar que estas funcionalidades se aplicam a autómatos de pilha deterministas e não-deterministas. Neste documento apresenta-se e discute-se criticamente o resultado deste trabalho.
publishDate 2022
dc.date.none.fl_str_mv 2022-02
2022-02-01T00:00:00Z
2023-11-07T15:51:57Z
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/10362/159642
url http://hdl.handle.net/10362/159642
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
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_ 1799138158777991168