A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PrologProlog Prof. Luthiano Venecian Elaborado pelo Prof. Luiz A. M. Palazzo Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação.

Apresentações semelhantes


Apresentação em tema: "PrologProlog Prof. Luthiano Venecian Elaborado pelo Prof. Luiz A. M. Palazzo Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação."— Transcrição da apresentação:

1 PrologProlog Prof. Luthiano Venecian Elaborado pelo Prof. Luiz A. M. Palazzo Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação III Modelos de Linguagens de programação Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação III Modelos de Linguagens de programação

2 Introdução à Programação Prolog 2 Programa da Disciplina 1.Lógica e Programação de Computadores 2.A Linguagem Prolog 3.Sintaxe e Semântica 4.Operadores e Aritmética 5.Processamento de Listas 6.Controle 7.Estruturas de Dados 8.Entrada e Saída 9.Predicados Extralógicos 10.Programação Simbólica

3 1. Lógica e Programação de Computadores

4 Introdução à Programação Prolog 4 O que é PROLOG? PROgrammation en LOGique Alain Colmerauer Univ. Aix-Marseille, 1972 Robert Kowalski Univ. Edimburgo, 1974

5 Introdução à Programação Prolog 5 Principais características: Lógica como linguagem de programação. Raciocínio dedutivo sobre fatos e regras. Processamento simbólico, Semântica declarativa, procedimental e operacional. Programas = Lógica + Controle. Programas = Especificações Formais. Programas = Protótipos. Programas = Bases de dados. Programas = Programas...

6 Introdução à Programação Prolog 6 Programação em Lógica Sócrates é homem. Todo homem é mortal. Quem é mortal? Sócrates é mortal. homem(sócrates). mortal(X)  homem(X). ?- mortal(Z). Z = sócrates. 

7 Introdução à Programação Prolog 7 Fatos, Regras e Consultas Cláusulas de Horn, A programação em lógica baseia-se em estruturas lógicas denominadas Cláusulas de Horn, que se apresentam em quatro formas distintas: Fatos: a  Regras:a  b Consultas:  b Vazia: 

8 Introdução à Programação Prolog 8 Fatos, Regras e Consultas Fatos Fatos: São verdades incondicionais : pai(josé, joão). pai(joão, júlio). pai(júlio, jorge).

9 Introdução à Programação Prolog 9 Fatos, Regras e Consultas Fatos Fatos: São verdades incondicionais : pai(josé, joão). pai(joão, júlio). pai(júlio, jorge). Regras Regras: Podem ser verdadeiras ou não : filho(X, Y)  pai(Y, X). avô(X, Y)  pai(X, Z), pai(Z, Y).

10 Introdução à Programação Prolog 10 Fatos, Regras e Consultas Fatos Fatos: São verdades incondicionais : pai(josé, joão). pai(joão, júlio). pai(júlio, jorge). Regras Regras: Podem ser verdadeiras ou não : filho(X, Y)  pai(Y, X). avô(X, Y)  pai(X, Z), pai(Z, Y). Consultas Consultas: Provocam a execução do programa : ?- filho(júlio, X).X=joão ?- avô(X, jorge).X=joão

11 Introdução à Programação Prolog 11 Processamento Simbólico deriv(x, 1). deriv(N, 0)  number(N). deriv(U+V, U1+V1)  deriv(U, U1), deriv(V, V1). deriv(U-V, U1-V1)  deriv(U, U1), deriv(V, V1). deriv(U*V, U1*V+U*V1)  deriv(U, U1), deriv(V, V1).

12 Introdução à Programação Prolog 12 Semântica Declarativa, Procedimental e Operacional três Os programas Prolog permitem três possíveis interpretações intercambiáveis: Declarativa (1) Declarativa, ao nível do cálculo de predicados de primeira ordem, Procedimental (2) Procedimental, ao nível da chamada de procedimentos, e Operacional, (3) Operacional, ao nível do controle da execução

13 Introdução à Programação Prolog 13 Programas = Lógica + Controle O programador codifica somente a lógica. O ambiente de programação executa o controle.

14 Introdução à Programação Prolog 14 Programas = Especificações Formais a  b. b  c, d....

15 Introdução à Programação Prolog 15 Programas = Especificações Formais a  b. b  c, d....

16 Introdução à Programação Prolog 16 Programas = Especificações Formais a  b. b  c, d.... ok

17 Introdução à Programação Prolog 17 Programas = Protótipos Projetos grandes e caros...... podem ser prototipados rapidamente.

18 Introdução à Programação Prolog 18 Programas = Bases de Dados prologbd

19 Introdução à Programação Prolog 19 Programas = Programas...  Prolog C/C++ Java Delphi Lisp... etc

20 Aplicações Avançadas Sistemas Especialistas, Engenharia de Software, Simulação, Educação, Suporte à Decisão, Programação Científica Bases de Dados Dedutivas, Programação da Web.

21 Introdução à Programação Prolog 21 Sistemas Especialistas Diagnóstico médico, Controle Ambiental, Cultura Animal, Controle de Tráfego Aéreo, Indústria Aeroespacial.

22 Introdução à Programação Prolog 22 Engenharia de Software Especificações Formais, Prototipação, Modelagem de Processos, Engenharia Reversa, Manutenção de Software.

23 Introdução à Programação Prolog 23 Simulação e Educação Modelagem Ambiental, Modelagem Organizacional, Sistemas Tutoriais Inteligentes, Ensino de Lógica a Adolescentes.

24 Introdução à Programação Prolog 24 Suporte à Decisão Mercados de estoques, ações e capital, Apoio à decisões judiciais, Análise de Investimentos, etc.

25 Introdução à Programação Prolog 25 Bases de Dados Dedutivas O cálculo de predicados de primeira ordem possui expressividade equivalente à da álgebra relacional.

26 Introdução à Programação Prolog 26 Programação da Web Extensões html e http Web Semântica PiLLoW Amzi! SWI-Prolog

27 Introdução à Programação Prolog 27 PonteirosPonteiros Prolog na Wikipedia Prolog na Wikipedia http://pt.wikipedia.org/wiki/Prolog http://pt.wikipedia.org/wiki/Prolog Programação em Lógica Programação em Lógica http://vl.fmnet.info/logic-prog/ http://vl.fmnet.info/logic-prog/ SWI Prolog SWI Prolog http://www.swi-prolog.org http://www.swi-prolog.org


Carregar ppt "PrologProlog Prof. Luthiano Venecian Elaborado pelo Prof. Luiz A. M. Palazzo Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação."

Apresentações semelhantes


Anúncios Google