• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Dissertação de Mestrado
DOI
10.11606/D.55.2018.tde-27112018-090334
Documento
Autor
Nome completo
João Luiz Franco
Unidade da USP
Área do Conhecimento
Data de Defesa
Imprenta
São Carlos, 1991
Orientador
Banca examinadora
Monard, Maria Carolina (Presidente)
Carvalho, Ariadne Maria Brito Rizzoni
Nunes, Maria das Graças Volpe
Título em português
SOBRE AVALIAÇÃO PARCIAL DE META-INTERPRETADORES E GERAÇÃO DE NÚCLEOS ESPECÍFICOS DE SISTEMAS ESPECIALISTA
Palavras-chave em português
Não disponível
Resumo em português
Para facilitar a tarefa de implementação de sistemas, as linguagens de programação devem ter uma maior expressividade. no entanto, o aumento do poder de expressão das linguagens frequentemente diminui a eficiência dos programas desenvolvidos a partir delas. A linguagem Prolog tem um poder de expressão considerável. Além disso, essa expressividade pode ser facilmente aumentada. Porém, esse aumento de expressividade diminui consideravelmente a eficiência de execução. Neste trabalho, são abordados dois métodos para aumentar a eficiência de programas Prolog sem diminuir a expressividade da linguagem. A facilidade de meta-programação é uma característica muito poderosa da linguagem Prolog. No entanto, introduz um nível extra de interpretação durante a execução do programa. Um dos métodos apresentados - a Avaliação Parcial - pode ser utilizada para remover o nível extra de interpretação, viabilizando a utilização de meta-programação - principalmente na implementação de Sistemas Especialistas. Neste trabalho, é discutidoi e implementado um avaliador parcial de meta-interpretadores, além de mostrar como ele pode ser utilizado com diferentes tipos de meta-interpretadores. O outro método abordado - Especialização de Programas - é utilizado para construir programas específicos a partir de um programa geral. Isto é feito retirando-se do programa geral as cláusulas desnecessárias para uma aplicação específica. Neste trabalho, apresenta-se uma implementação onde a Especialização de Programas é utilizada para gerar Núcleos de Sistemas Especialistas específicos a partir de um Núcleo de Sistemas Especialistas geral.
Título em inglês
Not available
Palavras-chave em inglês
Not available
Resumo em inglês
One of the aims of the Fifth Generation Computer Project is to enable the efficient development of complex, large-scale knowledge processing programs, by augmenting the expressive power of programming languages as well as the execution efficiency of programs written in those languages. The logic programming language Prolog - adopted for use in this project - has considerable expressive power itself although does not always provide satisfactory execution efficiency. Meta-programming is a strong paradigm for software development due to its conceptual clatity. A meta program is one which uses another program - the object program - as data. Meta-programming in Prolog is particularly attrative because the object language and the meta language are identical. However, meta programs are inefficient because of layers of interpretation. In this work we present two methods to improve the efficiency of Prolog programs. The first one solves the problem o flayers of interpretation by partial evaluation of metaprograms with respect to object programs. We describe the basic ideas underlying partial, the Prolog implementation of a partial evaluator for Prolog programs and its application to metaprogramming. The difficulties in implementing a general partial evaluator systems for Prolog are also discussed. The second method proposed and implemented in this work to improve the efficiency of Prolog programs, is related to the construction of a more specific program from an existing, general Prolog program. This is a achieved by with drawing clauses that are in the general program but which will never be executed by the more specific program being constructed.
 
AVISO - A consulta a este documento fica condicionada na aceitação das seguintes condições de uso:
Este trabalho é somente para uso privado de atividades de pesquisa e ensino. Não é autorizada sua reprodução para quaisquer fins lucrativos. Esta reserva de direitos abrange a todos os dados do documento bem como seu conteúdo. Na utilização ou citação de partes do documento é obrigatório mencionar nome da pessoa autora do trabalho.
JoaoLuizFranco.pdf (3.80 Mbytes)
Data de Publicação
2018-11-27
 
AVISO: Saiba o que são os trabalhos decorrentes clicando aqui.
Todos os direitos da tese/dissertação são de seus autores
CeTI-SC/STI
Biblioteca Digital de Teses e Dissertações da USP. Copyright © 2001-2019. Todos os direitos reservados.