Prolog
PROLOG
Luiz A. M. Palazzo
Editora da Universidade Católica de Pelotas / UCPEL
Rua Félix da Cunha, 412 - Fone (0532)22-1555 - Fax (0532)25-3105
Pelotas - RS - Brasil
EDUCAT
Editora da Universidade Católica de Pelotas
Pelotas, 1997
© 1997 LUIZ A. M. PALAZZO
SUMÁRIO
1. LÓGICA E PROGRAMAÇÃO DE COMPUTADORES
1.1 AS RAÍZES
1.2 PROGRAMAÇÃO EM LÓGICA
1.3 APLICAÇÕES
1.4 A QUINTA GERAÇÃO
1.5 PORQUE ESTUDAR PROLOG
RESUMO
2. A LINGUAGEM PROLOG
2.1 FATOS
2.2 REGRAS
2.3 CONSTRUÇÕES RECURSIVAS
2.4 CONSULTAS
2.5 O SIGNIFICADO DOS PROGRAMAS PROLOG
RESUMO
EXERCÍCIOS
3. SINTAXE E SEMÂNTICA
3.1 OBJETOS
3.2 UNIFICAÇÃO
3.3 SEMÂNTICA DECLARATIVA E SEMÂNTICA PROCEDIMENTAL
3.4 SEMÂNTICA OPERACIONAL
RESUMO
EXERCÍCIOS
4. OPERADORES E ARITMÉTICA
4.1 OPERADORES
4.2 ARITMÉTICA
RESUMO
EXERCÍCIOS
5. PROCESSAMENTO DE LISTAS
5.1 REPRESENTAÇÃO DE LISTAS
5.2 OPERAÇÕES SOBRE LISTAS
5.3 OUTROS EXEMPLOS
RESUMO
EXERCÍCIOS
6. CONTROLE
6.1 BACKTRACKING
6.2 O OPERADOR "CUT"
6.3 APLICAÇÕES DO CUT
6.4 NEGAÇÃO POR FALHA
6.5 CUIDADOS COM O CUT E A NEGAÇÃO
RESUMO
EXERCÍCIOS
7. ESTRUTURAS DE DADOS
7.1 RECUPERAÇÃO DE INFORMAÇÕES
7.2 ABSTRAÇÃO DE DADOS
7.3 UM AUTÔMATO FINITO NÃO-DETERMINÍSTICO
7.4 PLANEJAMENTO DE ROTEIROS AÉREOS
RESUMO
EXERCÍCIOS
8. ENTRADA E SAÍDA
8.1 ARQUIVOS DE DADOS
8.2 PROCESSAMENTO DE ARQUIVOS DE TERMOS
8.3 PROCESSAMENTO DE CARACTERES
8.4 CONVERSÃO DE TERMOS
8.5 LEITURA DE PROGRAMAS
RESUMO
EXERCÍCIOS
9. PREDICADOS EXTRALÓGICOS
9.1 TIPOS DE TERMOS
9.2 CONSTRUÇÃO E DECOMPOSIÇÃO DE TERMOS
9.3 EQUIVALÊNCIAS E DESIGUALDADES
9.4 PROGRAMAS OU BASES DE DADOS?
9.5 RECURSOS PARA O CONTROLE DE PROGRAMAS
1
1
2
4
6
8
9
11
11
14
17
19
21
22
22
24
24
27
28
30
30
31
33
33
36
38
39
41
41
42
48
49
50
51
51
52
56
57
58
60
60
62
62
64
65
67
69
69
71
71
73
77
78
79
80
80
82
82
84
85
86
89
9.6 BAGOF, SETOF E