Programação Lógica. (Capítulo 11) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

Tamanho: px
Começar a partir da página:

Download "Programação Lógica. (Capítulo 11) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto"

Transcrição

1

2 Programação Lógica (Capítulo 11) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto

3 Estrutura 1. Programação Lógica 2. Prolog 3. Exemplos

4 Sintaxe da Programação Lógica Definição 11.1 (cláusula de programa) Uma cláusula de programa, na Lógica de Predicados, é uma cláusula do tipo C =( x 1 )... ( x n )G, onde G é uma disjunção de literais, que contém exatamente um literal positivo. 4

5 Sintaxe da Programação Lógica Notação. Uma cláusula de programa ( )(B A 1... A n ) é denotada por B A 1,...,A n. Nesse caso, B é a cabeça da cláusula e A 1,...,A n é a cauda. 5

6 Definições Uma linguagem de PROgramação em LÓGica A linguagem Prolog surgiu no início da década de 70 O Prolog é uma linguagem de declarativa que usa um fragmento da lógica de 1ª ordem (as Cláusulas de Horn) para representar o conhecimento sobre um dado problema. Um programa em Prolog é um conjunto de axiomas e de regras de inferência (definindo relações entre objetos) que descrevem um dado problema. A este conjunto chama-se normalmente base de conhecimento. 6

7 Definições A execução de um programa em Prolog consiste na dedução de conseqüências lógicas da base de conhecimento. O usuário faz consultas e o motor de inferência do Prolog pesquisa a base de conhecimento à procura de axiomas e regras que permitam (por dedução lógica) dar uma resposta. O motor de inferência faz a dedução aplicando o algoritmo de resolução de 1ª ordem. 7

8 Exemplo de um programa Prolog (um conjunto de Cláusulas de Horn). 8

9 Exemplo de um programa Prolog (um conjunto de Cláusulas de Horn). 9

10 Cláusulas de Horn são fórmulas na forma representadas em Prolog por p :- q1, q2,..., qn <cabeça da cláusula> :- <corpo da cláusula> Os fatos são cláusulas de Horn com o corpo vazio. As variáveis que aparecem nas cláusulas são quantificadas universalmente e o seu âmbito é toda a cláusula, mas podemos ver as variáveis que ocorrem apenas no corpo da cláusula (mas não na cabeça), como sendo quantificadas existencialmente dentro do corpo da cláusula. 10

11 As consultas são cláusulas de Horn com cabeça vazia. As consultas são um meio de extrair informação de um programa. As variáveis que ocorrem nas consultas são quantificadas existencialmente. Responder a uma consulta é determinar se a questão é uma conseqüência lógica do programa. As extensão usual dos arquivos em prolog é.pl O ponto final assinala o final das cláusulas. 11

12 Responder a uma consulta é determinar se ela é uma conseqüência lógica do programa. 12

13 13

14 progenitor(maria,joao). progenitor(jose,joao). progenitor(maria,ana). progenitor(jose,ana). progenitor(joao,mario). progenitor(ana,helena). progenitor(ana,joana). progenitor(helena,carlos). progenitor(mario,carlos). 14

15 sexo(ana,feminino). sexo(maria,feminino). sexo(joana,feminino). sexo(helena,feminino). sexo(mario,masculino). sexo(joao,masculino). sexo(jose,masculino). sexo(carlos,masculino). 15

16 avo(x,y):- progenitor(x,a), progenitor(a,y), sexo(x,masculino). mae(x,y):- progenitor(x,y),sexo(x,feminino). pai(x,y):- progenitor(x,y), sexo(x,masculino). tio(x,y):- irmao(x,a), progenitor(a,y). 16

17 avo(x,y):- progenitor(x,a), progenitor(a,y), sexo(x,masculino). mae(x,y):- progenitor(x,y),sexo(x,feminino). pai(x,y):- progenitor(x,y), sexo(x,masculino). tio(x,y):- irmao(x,a), progenitor(a,y). 17

18 avo(x,y):- progenitor(x,a), progenitor(a,y), sexo(x,masculino). mae(x,y):- progenitor(x,y),sexo(x,feminino). pai(x,y):- progenitor(x,y), sexo(x,masculino). tio(x,y):- irmao(x,a), progenitor(a,y). 18

19 avo(x,y):- progenitor(x,a), progenitor(a,y), sexo(x,masculino). mae(x,y):- progenitor(x,y),sexo(x,feminino). pai(x,y):-progenitor(x,y),sexo(x,masculino). tio(x,y):- irmao(x,a), progenitor(a,y). 19

20 irma(x,y):- progenitor(a,x),progenitor(a,y), X\==Y,sexo(X,feminino). irmao(x,y):- progenitor(a,x), progenitor(a,y), X\==Y, sexo(x,masculino). 20

21 irma(x,y):- progenitor(a, X),progenitor(A, Y), X\==Y, sexo(x,feminino). irmao(x,y):- progenitor(a, X), progenitor(a, Y), X\==Y, sexo(x, masculino). 21

22 Querys: 1) O João é filho do José?? progenitor(jose, joao). 22

23 Querys: 2) Quem são os filhos da Maria?? mae(maria, X). ou? findall(x,mae(maria,x),l). 23

24 Querys:? primo(mario, X).? tio(_, X).? descendente(x,carlos).? irmao(helena, X).? irma(helena, X). 24

25

REDES SEMÂNTICAS UTILIZANDO PROLOG

REDES SEMÂNTICAS UTILIZANDO PROLOG Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Pós-Graduação em Ciência da Computação Disciplina: Inteligência Artificial Prof.: Joseana Macêdo Fechine Régis

Leia mais

Lógica de primeira ordem (Capítulo 8 - Russell) Inteligência Artificial

Lógica de primeira ordem (Capítulo 8 - Russell) Inteligência Artificial Lógica de primeira ordem (Capítulo 8 - Russell) Inteligência Artificial Estrutura 1- Contextualização 2- Definições 3- Lista de exercício 4- Prolog 5- Regras em Prolog - Mundo Wumpus 6- Aplicação do Mundo

Leia mais

Prof. Marcos A. Schreiner. 15 de junho de Prof. Marcos A. Schreiner (UFPR) 15 de junho de / 18

Prof. Marcos A. Schreiner. 15 de junho de Prof. Marcos A. Schreiner (UFPR) 15 de junho de / 18 Prolog - Programação Lógica Prof. Marcos A. Schreiner Disciplina de Introdução à Lógica 15 de junho de 2015 Prof. Marcos A. Schreiner (UFPR) 15 de junho de 2015 1 / 18 1 Introdução 2 Prolog Definições

Leia mais

Programação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010

Programação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010 Programação em Lógica UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010 Roteiro Introdução Conceitos Básicos Linguagens Lógicas Semântica de Modelos Semântica de Prova Programação

Leia mais

A linguagem da Lógica de Predicados. (Capítulo 8) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

A linguagem da Lógica de Predicados. (Capítulo 8) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto A linguagem da Lógica de Predicados (Capítulo 8) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Contextualização 2. Definições 3. Exemplos 4. Lista 3 O que não é

Leia mais

Inteligência Artificial. Prolog. Aula 2 Introdução (cont.)

Inteligência Artificial. Prolog. Aula 2 Introdução (cont.) Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação http://www.inf.unioeste.br/~claudia/ia2017.html Inteligência Artificial Prolog Aula 2 Introdução (cont.) Características

Leia mais

Linguagens Lógicas. Aluno: Victor Rocha

Linguagens Lógicas. Aluno: Victor Rocha Linguagens Lógicas Aluno: Victor Rocha Roteiro Introdução Cálculo de Predicados Proposições Conectores Lógicos Variáveis Tipos de Cláusulas fatos regras Banco de Dados Prolog Fatos em Prolog Questões Unificação

Leia mais

Fundamentos e prática de Prolog

Fundamentos e prática de Prolog Disciplina: Lógica Aplicada à Computação Nome: Matrícula: 1. Considere a seguinte base de conhecimentos Prolog: pai(josé,ana). % "José é pai de Ana" pai(josé,carlos). pai(felipe,fernanda). pai(jo~ao,pedro).

Leia mais

Nelma Moreira. Aula 17

Nelma Moreira. Aula 17 Lógica e Programação Nelma Moreira Aula 17 Conteúdo 1 Programação em Lógica 1 1.1 Resolução para a lógica proposicional................ 1 1.2 Cláusulas............................... 3 1.3 Conversão para

Leia mais

SCC Capítulo 5 Representação de Conhecimento através do Prolog

SCC Capítulo 5 Representação de Conhecimento através do Prolog SCC-630 - Capítulo 5 Representação de Conhecimento através do Prolog João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São

Leia mais

BUSCA DE SOLUÇÕES EM PROLOG

BUSCA DE SOLUÇÕES EM PROLOG PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ BUSCA DE SOLUÇÕES EM PROLOG Resolução em PROLOG: Unificação e substituição 1 UNIFICAÇÃO EM PROLOG HISTÓRICO 2 HISTÓRIA A PARTIR DE 1950 1958 forma clausal:

Leia mais

Introdução. Programação em Lógica. Resolução na Lógica Proposional. Resolução na Lógica Proposional. Resolução na Lógica Proposional.

Introdução. Programação em Lógica. Resolução na Lógica Proposional. Resolução na Lógica Proposional. Resolução na Lógica Proposional. Ciência da Computação Introdução Programação em Lógica Prof. Sergio Ribeiro Sistemas dedução da Lógica: Estabelecem estruturas que permitem a representação e dedução do conhecimento. Vários tipos: Sistema

Leia mais

SCC Capítulo 2 Lógica de Predicados

SCC Capítulo 2 Lógica de Predicados SCC-630 - Capítulo 2 Lógica de Predicados João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis

Leia mais

Capítulo 8 Lógica de primeira Ordem

Capítulo 8 Lógica de primeira Ordem Capítulo 8 Lógica de primeira Ordem Tópicos 1. Contextualização 2. Definições 3. Exemplos 4. Questão desafio! 2 O que não é possível expressar em Lógica Proposicional? Todo tricolor é um campeão. Roberto

Leia mais

LÓGICA PARA COMPUTAÇÃO

LÓGICA PARA COMPUTAÇÃO LÓGICA PARA COMPUTAÇÃO Engenharia de Computação Professor: Rosalvo Ferreira de Oliveira Neto Apresentação Conteúdo Programático Referência bibliográfica Avaliações Dados pessoais Rosalvo Ferreira de Oliveira

Leia mais

Fundamentos e prática de Prolog

Fundamentos e prática de Prolog Disciplina: Lógica Aplicada à Computação Nome: Matrícula: 1. Considere a seguinte base de conhecimentos Prolog: filho(paulo,pedro). % "Paulo é filho de Pedro" filho(paulo,marcela). filho(pedro,josé). filho(pedro,isabel).

Leia mais

LÓGICA PARA COMPUTAÇÃO

LÓGICA PARA COMPUTAÇÃO LÓGICA PARA COMPUTAÇÃO Engenharia de Computação Professor: Rosalvo Ferreira de Oliveira Neto Apresentação Conteúdo Programático Referência bibliográfica Avaliações Dados pessoais Rosalvo Ferreira de Oliveira

Leia mais

Linguagens de Programação Aula 15

Linguagens de Programação Aula 15 Linguagens de Programação Aula 15 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Linguagem Haskell 2 Na aula de hoje Paradigma Lógico Linguagem Prolog (PROgrammation en LOGique) 3 Introdução

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 08 Introdução ao Prolog Introdução O Prolog é uma linguagem de programação baseada em lógica de primeira ordem. Não é

Leia mais

Lógica Computacional (CC2003)

Lógica Computacional (CC2003) Lógica Computacional (CC2003) Nelma Moreira Lógica Computacional 21 Conteúdo 1 Mais Teorias (decidíveis) 1 1.1 Resolução para a lógica proposicional................ 4 1.2 Cláusulas...............................

Leia mais

Dedução Natural e Sistema Axiomático Pa(Capítulo 6)

Dedução Natural e Sistema Axiomático Pa(Capítulo 6) Dedução Natural e Sistema Axiomático Pa(Capítulo 6) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Dedução Natural 3. Sistemas axiomático Pa 4. Lista

Leia mais

Fundamentos de Lógica Matemática

Fundamentos de Lógica Matemática Webconferência 5-22/03/2012 Prova por resolução Prof. L. M. Levada http://www.dc.ufscar.br/ alexandre Departamento de Computação (DC) Universidade Federal de São Carlos (UFSCar) 2012/1 Introdução É possível

Leia mais

Lógica Computacional

Lógica Computacional Lógica Computacional Aplicações da Lógica Verificação de Programas, Bases de Dados, Sistemas inteligentes Programação em Lógica Exemplos 27 Novembro 2013 Lógica Computacional 1 - Base de Conhecimentos:

Leia mais

Lógica para computação - Linguagem da Lógica de Predicados

Lógica para computação - Linguagem da Lógica de Predicados DAINF - Departamento de Informática Lógica para computação - Linguagem da Lógica de Predicados Prof. Alex Kutzke ( http://alex.kutzke.com.br/courses ) 13 de Outubro de 2015 Razões para uma nova linguagem

Leia mais

Sistemas Inteligentes

Sistemas Inteligentes Sistemas Inteligentes Aula 22/10 Lógica de Primeira Ordem e PROLOG Agente Baseado em Conhecimento O componente central de um agente baseado em conhecimento é sua base de conhecimento. A base de conhecimento

Leia mais

A linguagem Prolog. Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos.

A linguagem Prolog. Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos. A linguagem Prolog Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos. Um termo ou é uma constante, ou uma variável ou um termo composto. As constantes incluem

Leia mais

Programação em lógica - tem suas raízes no cálculo de predicados, proposto por Frege em 1879.

Programação em lógica - tem suas raízes no cálculo de predicados, proposto por Frege em 1879. Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado

Leia mais

Inteligência Artificial IA II. LÓGICA DE PREDICADOS PARA REPRESENTAÇÃO DO CONHECIMENTO

Inteligência Artificial IA II. LÓGICA DE PREDICADOS PARA REPRESENTAÇÃO DO CONHECIMENTO Inteligência Artificial IA Prof. João Luís Garcia Rosa II. LÓGICA DE PREDICADOS PARA REPRESENTAÇÃO DO CONHECIMENTO 2004 Representação do conhecimento Para representar o conhecimento do mundo que um sistema

Leia mais

AULA TEÓRICA RESOLUÇÃO DE PROBLEMAS 4ª

AULA TEÓRICA RESOLUÇÃO DE PROBLEMAS 4ª AULA TEÓRICA RESOLUÇÃO DE PROBLEMAS 4ª Aula por Helder Coelho IIA 1 REPRESENTAÇÃO E INTELIGÊNCIA QUESTÕES PARA DISCUSSÃO: Transformação do problema compreender o problema reflectir/pensar o problema lógica,

Leia mais

Introdução. Esse programa recebeu o nome PROLOG (do francês PROgramation et LOGique ).

Introdução. Esse programa recebeu o nome PROLOG (do francês PROgramation et LOGique ). Introdução Os programas construídos utilizando a lógica diretamente como linguagem de programação receberam o nome de programas lógicos. Um programa lógico é constituído por um conjunto de axiomas/hipóteses

Leia mais

Capítulo 3 Lógica de Primeira Ordem

Capítulo 3 Lógica de Primeira Ordem Capítulo 3 Lógica de Primeira Ordem Lógica para Programação LEIC - Tagus Park 1 o Semestre, Ano Lectivo 2007/08 c Inês Lynce and Luísa Coheur Bibliografia Martins J.P., Lógica para Programação, Capítulo

Leia mais

Programação Lógica. Programação Lógica PROLOG

Programação Lógica. Programação Lógica PROLOG Programação Lógica PROLOG A programação em lógica se desenvolveu no início dos anos 70 a partir de alguns trabalhos sobre prova de teoremas. Desde então ela tem demonstrado ser um formalismo simples, mas

Leia mais

Capítulo 8 de B&A: Soluções dos Exercícios

Capítulo 8 de B&A: Soluções dos Exercícios Capítulo 8 de B&A: Soluções dos Exercícios 1. Crie uma base de dados de livros em Prolog, onde cada livro deve conter informações sobre o autor principal, título e ano de publicação. Exemplo de base de

Leia mais

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/59 1 - LÓGICA E MÉTODOS DE PROVA 1.1) Lógica Proposicional

Leia mais

Lógica Computacional Aula 4

Lógica Computacional Aula 4 Lógica Computacional Aula 4 DCC/FCUP 2017/18 Conteúdo 1 Lógica proposicional 1 1.1 Fórmulas de Horn.......................................... 1 1.2 Satisfazibilidade............................................

Leia mais

PROGRAMAÇÃO EM LÓGICA

PROGRAMAÇÃO EM LÓGICA PROGRAMAÇÃO EM LÓGICA CIÊNCIA DA COMPUTAÇÃO FACAPE Faculdade de Ciências Aplicadas e Sociais de Petrolina Linguagem Prolog Parte II Prof. Sergio Ribeiro Adaptado do material de: Prof José Augusto Universidade

Leia mais

Lógica para Computação

Lógica para Computação Lógica para Computação Prof. Celso Antônio Alves Kaestner, Dr. Eng. celsokaestner (at) utfpr (dot) edu (dot) br Resolução e PROLOG Passos para obter a forma clausal de uma fbf: 1. Obter a forma normal

Leia mais

2. Linguagem de Programação Prolog

2. Linguagem de Programação Prolog Inteligência Artificial - IBM1024 2. Linguagem de Programação Prolog Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 2. Linguagem de Programação Prolog 2.1.

Leia mais

Paradigmas de Linguagens de Programação

Paradigmas de Linguagens de Programação Paradigmas de Linguagens de Programação Faculdade Nova Roma Cursos de Ciências da Computação (6 Período) Prof. Adriano Avelar - Site: www.adrianoavelar.com Email: edson.avelar@yahoo.com.br PROGRAMAÇÃO

Leia mais

Sistemas de Representação e Raciocínio Parte 2

Sistemas de Representação e Raciocínio Parte 2 Sistemas de Representação e Raciocínio Parte 2 Introdução à Inteligência Artificial Profa. Josiane Baseado no material de David Poole, Alan Mackworth e Randy Goebel Abril/2007 1 Semântica A semântica está

Leia mais

Linguagens Lógicas. Alunos: Josiane Novais Cláudio Moisés

Linguagens Lógicas. Alunos: Josiane Novais Cláudio Moisés Linguagens Lógicas Alunos: Josiane Novais Cláudio Moisés Declarativos em vez de baseados em procedimentos Sintaxe diferente das linguagens imperativas e funcionais. Semântica é pouco semelhante a linguagem

Leia mais

Lógica e prova de resolução Marco Henrique Terra

Lógica e prova de resolução Marco Henrique Terra Lógica e prova de resolução Marco Henrique Terra Introdução à Inteligência Artificial Introdução n Este capítulo trata de lógica. l Inicialmente discute-se se a notação empregada em lógica. l Depois mostra-se

Leia mais

Dedução Natural LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

Dedução Natural LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto Dedução Natural LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Dedução Natural 3. Lista Um dos objetivos principais da lógica é o estudo de estruturas

Leia mais

Lógica para Computação Primeiro Semestre, Aula 10: Resolução. Prof. Ricardo Dutra da Silva

Lógica para Computação Primeiro Semestre, Aula 10: Resolução. Prof. Ricardo Dutra da Silva Lógica para Computação Primeiro Semestre, 2015 DAINF-UTFPR Aula 10: Resolução Prof. Ricardo Dutra da Silva A resolução é um método de inferência em que: as fórmulas devem estar na Forma Clausal; deduções

Leia mais

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur Capítulo 2 Lógica Proposicional Lógica para Programação LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08 c Inês Lynce c Luísa Coheur Programa Apresentação Conceitos Básicos Lógica Proposicional ou Cálculo

Leia mais

Programação Lógica. A Linguagem Prolog. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia

Programação Lógica. A Linguagem Prolog. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia Programação Lógica A Linguagem Prolog Paulo Henrique Ribeiro Gabriel phrg@ufu.br Faculdade de Computação Universidade Federal de Uberlândia 21 de agosto de 2015 Paulo H. R. Gabriel (FACOM/UFU) Programação

Leia mais

Lógica para Programação

Lógica para Programação Licenciatura Engenharia Informática e de Computadores Lógica para rogramação epescagem do rimeiro Teste 13 de Julho de 2010 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 9 páginas

Leia mais

Relações semânticas entre os conectivos da Lógica Proposicional(Capítulo 5)

Relações semânticas entre os conectivos da Lógica Proposicional(Capítulo 5) Relações semânticas entre os conectivos da Lógica Proposicional(Capítulo 5) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Conjunto de conectivos completo 2. na

Leia mais

Fundamentos de Lógica Matemática

Fundamentos de Lógica Matemática Webconferência 6-29/03/2012 Introdução à Lógica de Predicados Prof. L. M. Levada http://www.dc.ufscar.br/ alexandre Departamento de Computação (DC) Universidade Federal de São Carlos (UFSCar) 2012/1 Introdução

Leia mais

Descrição do Mundo de Wumpus. Inteligência Artificial

Descrição do Mundo de Wumpus. Inteligência Artificial Descrição do Mundo de Wumpus Mundo de Wumpus Mundo de Wumpus -1 Mundo de Wumpus - 2 Mundo de Wumpus - 3 Mundo de Wumpus - 4 Wumpus Outros Pontos Críticos Descrição Lógica do Mundo de Wumpus Identidades

Leia mais

Linguagens de Programação Programação Lógica (Prolog)

Linguagens de Programação Programação Lógica (Prolog) Linguagens de Programação Programação Lógica (Prolog) Andrei Rimsa Álvares Sumário Introdução Prolog Unificação Mais sobre Prolog Resumo INTRODUÇÃO Linguagens de Programação Programação Impera?va vs. Lógica

Leia mais

Programação Lógica PROLOG. Programação Lógica: Prolog

Programação Lógica PROLOG. Programação Lógica: Prolog Programação Lógica PROLOG PROGRAMAÇÃO LÓGICA COM PROLOG 1 Programação Lógica: Prolog Programação Lógica: um estilo diferente de programar, muito diferente das linguagens de programação convencionais como

Leia mais

Protótipo de Software de Apoio ao Aprendizado da Linguagem de Programação Lógica Prolog

Protótipo de Software de Apoio ao Aprendizado da Linguagem de Programação Lógica Prolog Protótipo de Software de Apoio ao Aprendizado da Linguagem de Programação Lógica Prolog ORIENTANDO : WAGNER M. STAHNKE ORIENTADOR : ROBERTO HEINZLE FURB - Universidade Regional de Blumenau Bacharelado

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ PROLOG PROF. CESAR A. TACLA UTFPR/CURITIBA

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ PROLOG PROF. CESAR A. TACLA UTFPR/CURITIBA PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ PROLOG 1 PROLOG: UTILIZAÇÃO A principal utilização da linguagem Prolog reside no domínio da programação simbólica, não-numérica, sendo especialmente adequada

Leia mais

Lógica de primeira ordem First Order Logic (FOL)

Lógica de primeira ordem First Order Logic (FOL) Lógica de primeira ordem First Order Logic (FOL) Prós e Contras da Lógica Proposicional É declarativa: partes da sintaxe correspondem a fatos Permite informação disjuntiva e/ou negada (a diferença da maioria

Leia mais

Elisabete Raposo Freire Departamento de Matemática Universidade dos Açores 21 Abril 2012

Elisabete Raposo Freire Departamento de Matemática Universidade dos Açores 21 Abril 2012 Elisabete Raposo Freire Departamento de Matemática Universidade dos Açores 21 Abril 2012 Problema de Einstein (adaptado) Existem 5 casas de 5 cores diferentes. Em cada casa vive uma pessoa de nacionalidade

Leia mais

Inteligência Artificial IA IV. RACIOCÍNIO BASEADO EM REGRAS

Inteligência Artificial IA IV. RACIOCÍNIO BASEADO EM REGRAS Inteligência Artificial IA Prof. João Luís Garcia Rosa IV. RACIOCÍNIO BASEADO EM REGRAS Parte 1 2004 Introdução A forma como um corpo de conhecimento sobre um certo campo é expresso por um especialista

Leia mais

Métodos de Verificação

Métodos de Verificação Método de Na construção de derivações no sistema de cálculo de sequentes: Na aplicação de cada regra, só a manipulação referente à fórmula principal é informativa. A cópia dos contextos revela-se assim

Leia mais

Programação Lógica. (Prática em Prolog) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

Programação Lógica. (Prática em Prolog) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto Programação Lógica (Prática em Prolog) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Recursão 2. Lista 3. Estudo de casos Recursividade A recursividade é um princípio

Leia mais

Fundamentos 1. Lógica de Predicados

Fundamentos 1. Lógica de Predicados Fundamentos 1 Lógica de Predicados Predicados e Quantificadores Estudamos até agora a lógica proposicional Predicados e Quantificadores Estudamos até agora a lógica proposicional A lógica proposicional

Leia mais

Lógica Computacional

Lógica Computacional Aula Teórica 13: Dedução Natural em Lógica Proposicional António Ravara Simão Melo de Sousa Departamento de Informática, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa Departamento de

Leia mais

Conteúdo. Correção de Exercício Quantificadores Rosen (pg 33) Tradução Português Lógica Rosen (pg 42)

Conteúdo. Correção de Exercício Quantificadores Rosen (pg 33) Tradução Português Lógica Rosen (pg 42) Conteúdo Correção de Exercício Quantificadores Rosen (pg 33) Tradução Português Lógica Rosen (pg 42) Correção exercicios 11) P(x) = x = x 2 P(0) P(1) P(2) 12) Q(x) = x + 1 = 2x Q(0) Q(-1) Q(1) Correção

Leia mais

JOÃO NUNES de SOUZA. LÓGICA para CIÊNCIA da COMPUTAÇÃO. Uma introdução concisa

JOÃO NUNES de SOUZA. LÓGICA para CIÊNCIA da COMPUTAÇÃO. Uma introdução concisa JOÃO NUNES de SOUZA LÓGICA para CIÊNCIA da COMPUTAÇÃO Uma introdução concisa 21 de maio de 2008 1 A linguagem da Lógica Proposicional Introdução Alfabeto da Lógica Proposicional Definição 1.1 (alfabeto)

Leia mais

Lógica de Predicados. Quantificadores

Lógica de Predicados. Quantificadores Lógica de Predicados Quantificadores Conteúdo Correção de Exercícios Operações Lógicas Quantificadores Rosen (pg 33) Tradução Português Lógica Rosen (pg 42) Exercícios Determinar o conjunto verdade em

Leia mais

Lógica, Regras e Inferência

Lógica, Regras e Inferência Lógica, Regras e Inferência André Desessards Jardim Universidade Católica de Pelotas Centro Politécnico Mini Curso Web Semântica Representação de conhecimento A lógica é a base para a maioria dos formalismos

Leia mais

Lógica. Professor Mauro Cesar Scheer

Lógica. Professor Mauro Cesar Scheer Lógica Professor Mauro Cesar Scheer Objetivos Reconhecer e manipular com os símbolos formais que são usados no Cálculo Proposicional (CPC) e Cálculo de Predicados (CP). Determinar o valor de verdade de

Leia mais

Mecanismos de Controle

Mecanismos de Controle Mecanismos de Controle Prof. Dr. Silvio do Lago Pereira Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo Introdução Embora o Prolog seja uma linguagem de programação declarativa,

Leia mais

01/09/2014. Capítulo 1. A linguagem da Lógica Proposicional

01/09/2014. Capítulo 1. A linguagem da Lógica Proposicional Capítulo 1 A linguagem da Lógica Proposicional 1 Introdução O estudo da Lógica é fundamentado em: Especificação de uma linguagem Estudo de métodos que produzam ou verifiquem as fórmulas ou argumentos válidos.

Leia mais

Paradigmas de Linguagens de Programação. Linguagens de Programação Lógicas

Paradigmas de Linguagens de Programação. Linguagens de Programação Lógicas Linguagens de Programação Lógicas Cristiano Lehrer Introdução Uma metodologia de programação diferente. Expressar programas na forma de lógica simbólica e a utilização de inferência lógica para produzir

Leia mais

Programação Orientada a Objetos. Programação Lógica

Programação Orientada a Objetos. Programação Lógica Programação Orientada a Objetos Programação Lógica Cristiano Lehrer, M.Sc. Introdução Uma metodologia de programação diferente. Expressar programas na forma de lógica simbólica e a utilização de inferência

Leia mais

4 AULA. Regras de Inferência e Regras de Equivalência LIVRO. META: Introduzir algumas regras de inferência e algumas regras de equivalência.

4 AULA. Regras de Inferência e Regras de Equivalência LIVRO. META: Introduzir algumas regras de inferência e algumas regras de equivalência. 1 LIVRO Regras de Inferência e Regras de Equivalência 4 AULA META: Introduzir algumas regras de inferência e algumas regras de equivalência. OBJETIVOS: Ao fim da aula os alunos deverão ser capazes de:

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 09 Introdução ao Prolog Edirlei Soares de Lima Introdução O Prolog é uma linguagem de programação baseada em lógica de primeira ordem. Não é

Leia mais

UMA INTRODUÇÃO A PROLOG

UMA INTRODUÇÃO A PROLOG Introdução UMA INTRODUÇÃO A PROLOG Newton José Vieira 18 de novembro de 2011 Programação em lógica: O ideal: especificação executável. O problema: explosão combinatória. Prolog impõe dois tipos de restrições:

Leia mais

Prolog. MATA56 - Paradigmas de Linguagens de Programação, UFBA, Prof. Rodrigo Rocha Prolog. Iniciando.

Prolog. MATA56 - Paradigmas de Linguagens de Programação, UFBA, Prof. Rodrigo Rocha Prolog. Iniciando. Prolog MATA56 - Paradigmas de Linguagens de Programação, UFBA, 2016.1. Prof. Rodrigo Rocha (rodrigo@dcc.ufba.br) Baseada na lógica de primeira ordem (lógica de predicados) Concebida na década de 1970

Leia mais

Conhecimento e Raciocínio Lógica Proposicional

Conhecimento e Raciocínio Lógica Proposicional Conhecimento e Raciocínio Lógica Proposicional Agente Baseado em Conhecimento ou Sistema Baseado em Conhecimento Representa conhecimento sobre o mundo em uma linguagem formal (KB) Raciocina sobre o mundo

Leia mais

2284-ELE/5, 3316-IE/3

2284-ELE/5, 3316-IE/3 INTELIGÊNCIA ARTIFICIAL 2284-ELE/5, 3316-IE/3 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2007/2008 Inteligência Artificial Objectivo de Longo Prazo Criar programas

Leia mais

Lógica Computacional

Lógica Computacional Lógica Computacional DCC/FCUP 2018/19 Conteúdo 1 Introdução à Programação em Lógica 1 1.1 Fórmulas de Horn.......................................... 1 1.2 Satisfazibilidade de Cláusulas....................................

Leia mais

Basicamente, um programa PROLOG é constituído por fatos acerca do domínio e regras que são sentenças ou fórmulas.

Basicamente, um programa PROLOG é constituído por fatos acerca do domínio e regras que são sentenças ou fórmulas. 1 EXERCÍCIOS PROLOG Lógica Prof. Tacla (UTFPR/Curitiba) arquivo: ExProlog01.docx 1. Introdução Basicamente, um programa PROLOG é constituído por fatos acerca do domínio e regras que são sentenças ou fórmulas.

Leia mais

Semântica Operacional

Semântica Operacional Semântica Conceitos Semântica é o estudo do significado. Incide sobre a relação entre significantes, tais como palavras, frases, sinais e símbolos, e o que eles representam, a sua denotação. Semântica

Leia mais

UNIDADE ACADÊMICA: Faculdade de

UNIDADE ACADÊMICA: Faculdade de UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM SISTEMAS DE INFORMAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Programação Lógica ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GSI010 PERÍODO: 2

Leia mais

Análise e Projeto de Algoritmos

Análise e Projeto de Algoritmos Análise e Projeto de Algoritmos 2018.2 Classes P e NP P São os problemas que podem ser resolvidos em tempo polinomial por uma Máquina de Turing Determinística. NP São os problemas que podem ser decididos

Leia mais

Propriedades Semânticas da Lógica Proposicional(Capítulo 3)

Propriedades Semânticas da Lógica Proposicional(Capítulo 3) Propriedades Semânticas da Lógica Proposicional(Capítulo 3) LÓGICA APLICADA A COMPUTAÇÃO Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Tautologia 2. Satisfatível 3. Contingência 4. Contraditória

Leia mais

Recursão PROGRAMAÇÃO EM LÓGICA. Recursão. Sonho Recursivo. Recursão. Recursão. Linguagem Prolog Parte IV

Recursão PROGRAMAÇÃO EM LÓGICA. Recursão. Sonho Recursivo. Recursão. Recursão. Linguagem Prolog Parte IV PROGRAMAÇÃO EM LÓGICA Recursão CIÊNCIA DA COMPUTAÇÃO FACAPE Faculdade de Ciências Aplicadas e Sociais de Petrolina Linguagem Prolog Parte IV Usado desde a arte (em figuras, telas, etc) como também em Matemática

Leia mais

Eunice Palmeira da Silva Orientador: Fred Freitas

Eunice Palmeira da Silva Orientador: Fred Freitas e Eunice Palmeira da Silva Orientador: Fred Freitas Universidade Federal de Pernambuco 4 de fevereiro de 2014 Roteiro 1 Overview do Trabalho do Doutorado 2 para ALC 3 Tipos de Linguagens Visual Model Outlines

Leia mais

Compiladores Análise de Tipos

Compiladores Análise de Tipos Compiladores Análise de Tipos Fabio Mascarenhas - 2013.2 http://www.dcc.ufrj.br/~fabiom/comp Tipos Um tipo é: Um conjunto de valores Um conjunto de operações sobre esses valores Os tipos de uma linguagem

Leia mais

Raciocínio Automatizado

Raciocínio Automatizado Raciocínio Automatizado Prof. Dr. Silvio do Lago Pereira Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo Introdução Raciocínio automatizado simula raciocínio lógico por meio

Leia mais

Conferência Árvores de resolução SLD

Conferência Árvores de resolução SLD Inteligência Artificial Conferência Árvores de resolução SLD O Docente: MSc. Angel Alberto Vazquez Sánchez Objetivo Construir uma árvore de resolução SLD a partir de um objetivo do PROLOG, aplicando o

Leia mais

Compiladores Análise de Tipos

Compiladores Análise de Tipos Compiladores Análise de Tipos Fabio Mascarenhas 2015.1 http://www.dcc.ufrj.br/~fabiom/comp Tipos Um tipo é: Um conjunto de valores Um conjunto de operações sobre esses valores Os tipos de uma linguagem

Leia mais

3 Cálculo Proposicional

3 Cálculo Proposicional 3 Cálculo Proposicional O Cálculo Proposicional é um dos tópicos fundamentais da Lógica e consiste essencialmente da formalização das relações entre sentenças (ou proposições), de nidas como sendo frases

Leia mais

Introdução à linguagem Prolog

Introdução à linguagem Prolog Introdução à linguagem Prolog Lógica Computacional 2 o ano LCC 2011/2012 1 Preâmbulo Ao longo do semestre iremos na disciplina de Lógica Computacional fazer uso da linguagem Prolog. O interpretador adoptado

Leia mais

Inteligência Artificial. Sistemas Baseados em Conhecimento. Representação de Conhecimento (continuação)

Inteligência Artificial. Sistemas Baseados em Conhecimento. Representação de Conhecimento (continuação) Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação http://www.inf.unioeste.br/~claudia/ia2018.html Inteligência Artificial Sistemas Baseados em Conhecimento Representação

Leia mais

Compiladores Análise de Tipos

Compiladores Análise de Tipos Compiladores Análise de Tipos Fabio Mascarenhas - 2013.1 http://www.dcc.ufrj.br/~fabiom/comp Tipos Um tipo é: Um conjunto de valores Um conjunto de operações sobre esses valores Os tipos de uma linguagem

Leia mais

Linguagens de Programação e Programação Funcional

Linguagens de Programação e Programação Funcional Linguagens de Programação e Programação Funcional GSI004 Aula 01* Faculdade de Computação UFU *baseada nos slides do Professor Paulo Henrique Ribeiro Gabriel 30 de setembro de 2014 GSI004 Aula 01 30 de

Leia mais

Introdução à Programação em Prolog

Introdução à Programação em Prolog Introdução à Programação em Prolog Thiago A. S. Pardo Solange Rezende Exercício em duplas Introdução (1 de 4) Escrever um programa completo em C que armazene quem gosta de quem e que responda sim ou não

Leia mais

Objetivo PROGRAMAÇÃO EM LÓGICA. Conteúdo. Referências Bibliográficas. Introdução. Introdução. Linguagem Prolog Parte I

Objetivo PROGRAMAÇÃO EM LÓGICA. Conteúdo. Referências Bibliográficas. Introdução. Introdução. Linguagem Prolog Parte I PROGRAMAÇÃO EM LÓGICA Objetivo CIÊNCIA DA COMPUTAÇÃO FACAPE Faculdade de Ciências Aplicadas e Sociais de Petrolina Linguagem Prolog Parte I Prof. Sergio Ribeiro Adaptado do material de: Profª Elaine Ribeiro

Leia mais

01. [Sebesta, 2000] Quais são os três principais usos da lógica simbólica na lógica formal?

01. [Sebesta, 2000] Quais são os três principais usos da lógica simbólica na lógica formal? 01. [Sebesta, 2000] Quais são os três principais usos da lógica simbólica na lógica formal? 02. [Sebesta, 2000] Quais são as duas partes de um termo composto? 03. [Sebesta, 2000] Qual é a forma geral de

Leia mais

Inteligência Artificial 2016/2017. Grupo 1 Perguntas obrigatórias (15 Minutos)

Inteligência Artificial 2016/2017. Grupo 1 Perguntas obrigatórias (15 Minutos) EI (diurno e PL) ETI (diurno e PL) IGE (diurno e PL) Inteligência Artificial 2016/2017 Teste Tipo de Sistemas Baseados em Conhecimento Lê cuidadosamente as instruções desta prova feita em moldes não habituais.

Leia mais

Lógica para Programação

Lógica para Programação Licenciatura Engenharia Informática e de Computadores Lógica para rogramação rimeiro Teste 8 de Maio de 2010 11:00 12:30 Nome: Número: 1. (2.0) Escolha a única resposta correcta para as seguintes questões.

Leia mais

2 Lógica Fuzzy. 2 Lógica Fuzzy. Sintaxe da linguagem

2 Lógica Fuzzy. 2 Lógica Fuzzy. Sintaxe da linguagem 2 Lógica Fuzzy 2.1 Cálculo proposicional (lógica proposicional) 2.2 Lógica de Predicados 2.3 Lógica de múltiplos valores 2.4 Lógica Fuzzy Proposições fuzzy Inferência a partir de proposições fuzzy condicionais

Leia mais