/
Prolog Prolog

Prolog - PowerPoint Presentation

liane-varnes
liane-varnes . @liane-varnes
Follow
399 views
Uploaded On 2016-03-17

Prolog - PPT Presentation

pro grammation en log ique programmation en logique UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE Daniel Augusto da Costa Ambrósio Eduardo Agostinho Oliveira dos Santos Fernando Chaves Dantas ID: 259272

ões prolog uma para prolog ões para uma solu

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Prolog" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Prolog

pro

grammation en

log

iqueSlide2

programmation en logique

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE

Daniel Augusto da Costa Ambrósio

Eduardo Agostinho Oliveira dos Santos

Fernando Chaves Dantas

Ítalo Tobias de Souza Dantas

José Maria de Oliveira Cavalcante

Thiago Medeiros de MenezesSlide3

apresentação

Características

Como Programar em Prolog?

Aplicações

Prolog versus Linguagens Imperativas

APRESENTAÇÃO À LINGUAGEM PROLOG

Aspectos Gerais

Considerações Finais

Por que estudar Prolog?Slide4

introdução

O nome

Prolog

é um acrônimo para

pro

grammation

en logique;

Linguagem enquadrada nos paradigmas lógico e declarativo da programação;

Projetada, em 1972, por Alain Colmerauer e Philippe Roussel na França;

Sua semântica foi formalizada por Robert Kowalski baseada no conceito das cláusulas de Horn;

Desenvolvida para criar programas de tradução de linguagens naturais como português, francês e inglês;

ASPECTOS GERAISSlide5

introdução

Tem na lógica um formalismo conveniente para representar e processar o conhecimento de maneira natural;

Linguagem não-numérica, orientada a símbolos;

É adequada à solução de problemas envolvendo objetos e suas relações;

Tem sido aplicada em inteligência artificial, redes de computadores, educação, base de dados e sistemas paralelos.

ASPECTOS GERAISSlide6

introdução

Há uma preferência por serviços de especificação no mercado de trabalho;

Pode ser vista como uma linguagem de programação e de especificação;

Eficaz na elaboração de ambientes e interfaces computacionais para seres humanos;

Permite definir e estender sistemas reflexivos, utilizados em robótica;

É adequado para a descrição do mundo real com todos os seus aspectos e sutilezas.

POR QUE ESTUDAR PROLOG?Slide7

características

A programação limita-se a fornecer uma descrição do problema que se pretende computar;

A execução de um programa em Prolog é efetivamente a prova de um dado teorema;

Obtém respostas alternativas através de

backtracking

;

Suporta código recursivo e iterativo, dispensando o uso de mecanismos como

while

, for e

repeat;Apesar do longo tempo de desenvolvimento, ainda não é uma linguagem portável.

CARACTERÍSTICASSlide8

características

CLÁUSULAS DE HORNSlide9

características

A evolução da busca por soluções assume a do padrão da busca em profundidade em árvores;

Quando a pesquisa falha ou é encontrado um nó terminal, o sistema retorna pelo mesmo caminho percorrido com a finalidade de encontrar soluções alternativas;

O

backtracking

pode se tornar em uma fonte de ineficiência, uma vez que o programa pode executar passos tentando satisfazer objetivos que não contribuirão para a solução do problema.

BACKTRACKINGSlide10

características

TIPOS DE DADOSSlide11

como programar em

prolog

?

CONCEITOS BÁSICOSSlide12

como programar em

prolog

?

OPERADORES BÁSICOS

pré-definidos

_

:-

?-

!

não, e, ou lógicos

not

,

;

aritmética

+

-

*

/

//

mod

^

is

relacional

=

==

=:=

\==

=\=

<

=<

>

>=

outros

member

(elemento, [ ])

\+Slide13

aplicações

APLICAÇÕESSlide14

p

aradigmas

PROLOG VERSUS

LINGUAGENS IMPERATIVASSlide15

p

aradigmas

Imperativo

Processo de Mudanças de Estados

Variável, Valor e Atribuição

Execução de passos algorítmicos

Declarativo

Especificações sobre a Tarefa a Ser Realizada

Predicados

Dedução AutomáticaDifícil Implementação computacionalPARADIGMASSlide16

comparativo

PROLOG VERSUS

LINGUAGENS IMPERATIVAS

Imperativas

prolog

processamento numérico

processamento simbólico

soluções algorítmicas

soluções heurísticasmodificação difícil

fácil modificaçãomelhor solução possíveltodas as soluções possíveis

fácil re-usabilidade difícil re-usabilidade

iteratividade integrada

iteratividade separada

apenas

respostas corretas

incluem respostas parcialmente corretas

conexão a base de dados

não conecta a base de dados

alta

produtividade

baixa

produtividadeSlide17

i

ntegrando

Prolog

INTEGRANDO PROLOG

Para que!???

Possibilidade de buscas mais complexas não definidas através de SQL.

Prolog interpreta um scripts.

Passos para integração

Definição de conjuntos e regras em script

prolog .pl;Utilização de programação Imperativa para selecionar situações;

Verificar veracidade das situações com execução de um script prolog;Organizar resultados;

Torna o

prolog

mais reutilizável;Slide18

considerações finais

CONSIDERAÇÕES FINAIS

Para resolução de problemas lógicos, podemos utilizar o Prolog como uma forma de facilitar o encontro de uma solução;

Pelo fato de ser uma linguagem interpretada, pode ser facilmente incorporada a uma linguagem de programação que faça chamadas de execução de programas;

Prolog é uma linguagem muito utilizada na área da pesquisa, desenvolvimento de projetos científico, vem tentando ser utilizada no mercado.Slide19

menções

BEBREGAL,

Benjamín

Callejas

; ACIOLY, Benedito Melo.

Introdução à Lógica Clássica para a Ciência da Computação, versão preliminar 2007

.DANTAS, Luciano Assis. Descobrindo o Prolog. Disponível em http://www.linhadecodigo.com. br/Artigo.aspx

?id=1697. Acesso em 25 jul. 2009.MITSUO, Marcelo Niside. Prolog. Disponível em http://www.din.uem.br/ia/ferramen/prolog/. Acesso em 25 jul. 2009

.PALLAZZO, Luiz A. M.. Introdução à Programação Prolog. Disponível em http://www.dsc.upe.br/~mlc/ Prolog/introducaoProgramacaoProlog_Palazzo.pdf. Acesso em 25 jul. 2009

.Prolog. Disponível em http://pt.wikipedia.org/wiki/ Prolog#Extens.C3.B5es. Acesso em 25 jul. 2009.

REFERÊNCIAS