Programação em Lógica
Por: Juliana2017 • 3/4/2018 • 1.972 Palavras (8 Páginas) • 266 Visualizações
...
f1. período(programacãoemlógica,5,informática).
O fato descrito acima diz que a disciplina Programação em Lógica faz parte do 5º período do curso de informática. De outro modo dizemos que, a relação período associa os objetos programacãoemlógica, 5 e informática. Uma relação também é chamada de predicado. Um predicado pode ter tantos outros argumentos quanto forem necessários. Predicados de mesmo nome podem ter quantidades de argumentos diferentes.
Exemplo:
f1. período(programacãoemlógica,5,informática).
f2. período(laboratóriodeinformáticaI,1).
f3. período(10).
Os objetos quando são elementos constantes acima são chamados de átomos.
Aula 3
Rio, 07/08/2012
Continuação...
Predicados e átomos têm seus nomes começados por letra minúscula e os demais caracteres dos nomes podem ser alfanumérico, além de alguns caracteres especias.
Os átomos podem iniciar por letras maiúsculas e possuir espaços desde que estejam entre aspas.
Exemplo:
f1. período(“Programação em Lógica”, 5 informática).
f2. período(“Estrutura de Dados II”, 5 informática).
f3. período(“Redes de Computadores II”, 5 informática).
f4. período(“Sistemas Operacionais II”, 5 informática).
f5. período(“Análise e Projeto Orientada a Objeto”, 5 informática).
Trabalhando com variáveis
Um objeto que não possui valor definido é chamado de “variável”. Toda variável tem seu nome iniciado por letras maiúsculas ou pelo caractere de subscrito. Por exemplo são nomes de variáveis válidos:
· Disciplina
· X
· D12
· _abc
Os fatos podem ser combinados pelos conectivos lógicos “e” ou “ou”, representados respectivamente pela vírgula e ponto-e-vírgula.
Exemplo:
período (X,5,informática), período (X, Y, engenharia).
período (X,5,informática); período (Y, 6, informática).
REGRA
Uma regra em Prolog é uma relação que utiliza a operação de correlação “Se... então...”. A sua conclusão é verdadeira se suas condições também forem verdadeiras.
Sua estrutura teórica é:
conclusão:- condição.
Exemplo utilizando fatos e regras:
f6. créditos("Programação em Lógica", 3, 0).
f7. créditos("Laboratório de Informática II", 0, 2).
r1. teórica(Disciplina):- créditos(Disciplina, X, 0).
r2. prática(Disciplina):- créditos(Disciplina, 0, X).
META
Uma meta ou objeto é uma afirmação que se deseja verificar o valor lógico, isto é, se é verdadeiro ou não. Em um programa que possui várias metas, o sucesso dependerá da forma que elas são combinadas. As metas são precedidas por “?-”, a estrutura abaixo:
?- meta_1, meta_2, ..., meta_n.
Como pode ser visto, se forem vários objetivos basta separá-los por vírgulas. Se as metas forem satisfeitas, é exibida a mensagem “YES”. Caso contrário, a mensagem é “NO”.
Rio, 14/08/2012
período("redes de computadores II",5,informática).
período("sistemas operacionais II",5,informática).
período("análise e projeto O.O.",5,informática).
%fatos : créditos
créditos("programação em lógica",3,0).
créditos("laboratório de informática II",0,2).
créditos("lab. int. comp. em lógca",0,7).
%regras
teórica(Disciplina):-créditos(Disciplina,X,0).
prática(Disciplina):-créditos(Disciplina,0,X).
bd(Disciplina):-período(Disciplina,X,informática).
% de acordo com a estrutura do problema apresentado,
% fatos e regras representam a base do conhecimento
% processo de instanciação é quando uma variável dentro do prolog
% recebe valor de um objeto, ou argumento, ou constante.
% variável , começa em letra maiúscula ou underscore.
% meta >> ?- >> meta a buscar dentro do prolog
%?-período("programação em lógica",5,informática).
% Yes.
%?-teórica("programação em lógica").
% Yes.
?-período(X,5,informática),write(X+" Resposta").
Rio, 21/08/2012
Aula5
Manipulando Prolog
fabricante(pc, dell).
fabricante(pc, positivo).
fabricante(pc, hp).
fabricante(software,
...