Lógica e Prolog. Prolog: Alain Colmerauer e seus colaboradores por volta de 1970



Documentos relacionados
PARSER: UM ANALISADOR SINTÁTICO E SEMÂNTICO PARA SENTENÇAS DO PORTUGUÊS

o objetivo deste projeto 6 propor a analise e implementacao de urn "parser

A linguagem da Lógica Proposicional (Capítulo 1)

AULA 5 QUANTIFICADORES, PREDICADOS E VALIDADE

Olá, amigo concurseiro. Após uma certa ausência, vamos a mais um tópico importante de Raciocínio Lógico.

Exemplo: programa --> regra; fato. Muito utilizada para definir gramáticas e para processamento de linguagem natural.

Matemática Discreta - 03

Unidade 2. Lógica de Predicados. Objetivos:

Artigos. Artigo Subclasse de determinantes que se antepõem ao nome para identificar e determinar o que este exprime. Artigo. Definido.

Aula 05 Operações Lógicas sobre Proposições. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Fórmulas Bem Formadas (wff) Prioridade dos Conectivos. Prioridade dos Conectivos. Semântica do CR. Semântica do CR

Raciocínio Lógico - Parte IV

EXERCÍCIOS LÓGICA DE PRIMEIRA ORDEM - MODELOS

Lógica Binária. Princípios

Ló gica. Para Concursos Públicos. Professor Luiz Guilherme

Inteligência Artificial Taguspark

Termos integrantes da oração Objeto direto e indireto

ANPAD CURSO LÓGICA 2

SQL Linguagem de Manipulação de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Tarefa Orientada 10 Obter informação a partir de uma tabela

Quantificadores. Quantificador Universal. Quantificador Existencial. Seja um conjunto não vazio e ) uma propriedade associada aos elementos.

EXERCÍCIOS DE LÓGICA DE 1ª ORDEM

Letras. Objetivo. Aspectos das Conexões Sintáticas. Prof a. Dr a. Leda Szabo

1 Graduada em Letras pela Universidade Federal de Santa Catarina (UFSC). Mestre e Doutora em Linguística pela

Processamento de. Processamento de Linguagem Natural. Linguagem. Gramáticas. Gramáticas. Gramáticas. Gramáticas: Exemplos

MODÚLO 1. INTRODUÇÃO A LÓGICA MATEMÁTICA 1.1 SENTENÇA X PROPOSIÇÃO 1.2 NEGAÇÃO SIMPLES


Prova de Raciocínio Lógico - Edição setembro de 2007

Gabarito da Avaliação 3 de Lógica Computacional 1

Noções de Lógica - Teoria e Exercícios

A TORRE DE BABEL Lição 06

o hemofílico. Meu filho também será?

Representação de Conhecimento

INTERNET E PROGRAMAÇÃO WEB

GEOGRAFIA - 2 o ANO MÓDULO 52 A EXPANSÃO DO BLOCO EUROPEU

Lógica Formal e Booleana. Cálculo Proposicional

Linguagem Lógica Prolog

Idealismo - corrente sociológica de Max Weber, se distingui do Positivismo em razão de alguns aspectos:

Prof. Volney Ribeiro

3 Cálculo Proposicional

Parece claro que há uma, e uma só, conclusão a tirar destas proposições. Esa conclusão é:

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

Minicurso Aula 3: Técnicas de Demonstração Matemática. Anliy Natsuyo Nashimoto Sargeant Curso de Verão 2009 DEX - UFLA

1 (0,5) Dos 3% de água doce que estão na superfície terrestre, onde estão concentradas as grandes parcelas dessas águas? R:

SAMUEL, O MENINO SERVO DE DEUS

Representação de Conhecimento. Lógica Proposicional

A CURA DE UM MENINO Lição 31

A TEORIA DA CORRESPONDÊNCIA COMO MEIO DE SE CHEGAR À VERDADE (2012) 1

Sistemas de Representação e Raciocínio

SQL Comandos para Relatórios e Formulários. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Uso de não determinismo. Exemplo

Álgebra Booleana. Introdução ao Computador 2010/01 Renan Manola

SCC Capítulo 2 Lógica de Predicados

Exercícios de Lógica para Programação

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

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

Sua resposta deve conter entre 50 a 100 palavras, incluindo o exemplo.

Roteiro de Aula Prática

A linguagem matemática

Linguagem de Programação III

Algumas vantagens da Teoria das Descrições Definidas (Russel 1905)

Lógica. Everson Santos Araujo

Constituição da República Portuguesa. Artigo 65.º (Habitação e urbanismo)

Presidência da República Federativa do Brasil. Secretaria Especial de Políticas de Promoção da Igualdade Racial

1. Usando Linguagem Natural, descreva o algoritmo que resolve o seguinte problema:

LÓGICA PROPOSICIONAL

CENTRO EDUCACIONAL CHARLES DARWIN EDUCAÇÃO INFANTIL DIRETRIZES CURRICULARES INFANTIL IV

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

Resolução da lista de exercícios de casos de uso

Portfólio Easy to Learn ADMINISTRAÇÃO

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

PLANEJAMENTO ANUAL DE ESPANHOL ENSINO MÉDIO

LIDERANÇA, ÉTICA, RESPEITO, CONFIANÇA

Construção de tabelas verdades

JESUS ACALMA A TEMPESTADE

Equilíbrio Col 3: 8-4: 6

Uma proposição condicional sempre pode ser escrita da forma se p, então q, e é denotada por p q. Se amanhã é domingo, então hoje é sábado.

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

COMO LER NOTAÇÃO LÓGICA

Lógica predicados. Lógica predicados (continuação)

ESCOLA ESTADUAL DESEMBARGADOR FLORIANO CAVALCANTI. Atividade 1

Divulgação do novo telefone da Central de Atendimento da Cemig: Análise da divulgação da Campanha

Programação Elementar de Computadores Jurandy Soares

Modelagem de Casos de Uso (Parte 1)

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

Sistemas Distribuídos: Princípios e Algoritmos Introdução à Análise de Complexidade de Algoritmos

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

Grice, o que é dito e o que é comunicado

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

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

A Cura de Naamã - O Comandante do Exército da Síria

Renata de Freitas e Petrucio Viana. IME, UFF 12 de março de 2015

PROVA 358. (Dec.- Lei n.º 139/2012, de 5 de julho) 2014/ ª e 2.ª Fases

Agentes Inteligentes segundo o Chimera

Inteligência Artificial

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

Quais os Tipos de Intercâmbio Cultural?

TRÁFICO DE PESSOAS. Ana Paula BREDA 1 Monique Barbosa MATHIUZZI 2 Poliana de Jesus PRADO 3 Tiago Grazziotti da SILVA 4 Vinicius Manara SILVA 5

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

Transcrição:

Lógica e Prolog Prolog: Alain Colmerauer e seus colaboradores por volta de 1970 Primeira linguagem a possibilitar que o programador especifique sua tarefa em lógica, ao invés de em termos de programação convencional

Cálculo de Predicado Lógica: maneira de representar a forma dos argumentos, para verificar de maneira formal se eles são válidos ou não Podemos expressar proposições, a relação entre proposições e como podemos inferir algumas proposições a partir de outras Cálculo de predicados: forma de lógica Objetos são representados por termos

Termos Constante: um único indivíduo ou conceito, nomes próprios). Exemplo: grego, paz, ágata, frança, vinho, estados unidos, etc. Váriável: diferentes indívíduos em tempos diferentes. Exemplo: X, Homem, Grego. Termo composto: função, com um conjunto ordenado de termos como seus argumentos. Exemplo: esposa(pedro), distancia(point1,x), humana(maria), gosta(homem,vinho).

Conectores Conectores : not, and, or, implica e é equivalente à. Negação: α não α Conjunção: α & β α e β Disjunção: α # β α ou β Implicatura: α β α implica β Equivalência: α β α é equivalente a β Exemplo: homem(fred) # mulher(fred) homem(fred) humano(fred)

Quantificadores Quantificadores: permitem falar sobre conjuntos de indivíduos e o que é verdade sobre eles. Dois tipos: universal e existencial. Se v representa qualquer variável e P qualquer proposição, então: paratodo(v,p) P é verdadeiro para todo v existe(v,p) existe algum v tal que P é verdadeiro Exemplos: paratodo(x, homem(x) humano(x)) existe(z, pai(joao,z) & feminino(z)) paratodo(x, animal(x) existe(y, mae(x,y))).

Exercícios 1. A França exporta vinho para a Inglaterra. 2. A França é um país. 3. Paris é a capital da França. 4. A França é européia. 5. Paris é uma cidade européia. 6. A França é um país que faz fronteira com a Espanha. 7. Zambia exporta minerais. 8. Alguns pássaros migram. 9. A população do Brasil excede 180 milhões. 10. Não existem rios na Antártida. 11. Homens habitam todos os continentes.

12. Todo menino caiu. 13. Todos os meninos caíram. 14. Cada menino caiu. 15. Um menino caiu. 16. Todos os meninos que viram Maria caíram. 17. Todo homem ama uma mulher.

Respostas 1. exporta(frança,vinho,inglaterra). 2. pais(frança). 3. capital(franca,paris). 4. europeia(franca). 5. europeia(paris) & cidade(paris). 6. pais(franca) & faz fronteira(franca,espanha). 7. existe(x, mineral(x), exporta(zambia,x)). 8. (existe (X), rio(x) & em(x, antartida)).

9. existe(x, passaro(x) & migra(x)). 10. paratodo(x, menino(x) & caiu(x)). 11. paratodo (X, menino(x) & caiu(x)). 12. paratodo (X, menino(x) & caiu(x)). 13. paratodo (X, homem (X) existe (Y, (mulher (Y) & ama(x,y))))

Continuação do Projeto A) Estender a gramática de cláusulas definidas do primeiro projeto para gerar as fórmulas lógicas correspondentes ao significado das seguintes sentenças: (a) Todo menino caiu. (b) Todos os meninos caíram. (c) Cada menino caiu. (d) Um menino caiu. (e) Todos os meninos que viram Maria caíram. Para efeito de geração de fórmulas lógicas, as sentenças (a), (b) e (c) são equivalentes.

B) Nesta segunda etapa, o artigo definido a deve ser tratado como existencial, de maior escopo. Assim, para a sentença (f) Todo homem que ama a mulher que caiu viu um menino. deve ser gerada a seguinte fórmula lógica: existe (Y, mulher(y) & caiu(y) & paratodo(x (homem(x) & ama(x,y) existe(z, (menino(z) & viu(x,z))))) Opcional (Opcional) Gerar para a sentença (f), todas as combinações aceitáveis de escopo para os quantificadores.

Como gerar fórmulas lógicas em Prolog?- op(1200,xfy,&). s(p) sn(x,p1,p), sv(x,p1). sn(x,p1,p) art(x,p2,p1,p), subst(x,p2). art(x,p1,p2,existe(x,(p1 & P2))) [um]. subst(x,menino(x)) [menino]. sv(x,p) iverbo(x,p). iverbo(x,caiu(x)) [caiu].

[trace]?- s(x,[um,menino,caiu],[]). Call: (7) s(_g321, [um, menino, caiu], [])? Call: (8) sn(_l193, _L194, _G321, [um, menino, caiu], _L195)? Call: (9) art(_l193, _L216, _L194, _G321, [um, menino, caiu], _L217)? Exit: (9) art(_g397, _G400, _G401, existe(_g397, (_G400&_G401)),[um, menino, caiu], [menino, caiu])? Call: (9) subst(_g397, _G400, [menino, caiu], _L195)? Exit: (9) subst(_g397, menino(_g397), [menino, caiu], [caiu])? Exit: (8) sn(_g397, _G401, existe(_g397, (menino(_g397)&_g401)),[um, menino, caiu], [caiu])?

Call: (8) sv(_g397, _G401, [caiu], [])? Call: (9) iverbo(_g397, _G401, [caiu], [])? Exit: (9) iverbo(_g397, caiu(_g397), [caiu], [])? Exit: (8) sv(_g397, caiu(_g397), [caiu], [])? Exit: (7) s(existe(_g397, (menino(_g397)&caiu(_g397))), [um, menino, caiu], [])? X = existe(_g397, (menino(_g397)&caiu(_g397)))

?- op(1200,xfy,&). Agora com verbos transitivos s(p) sn(x,p1,p), sv(x,p1). sn(x,p1,p) art(x,p2,p1,p), subst(x,p2). art(x,p1,p2,existe(x,(p1 & P2))) [um]. art(x,p1,p2,existe(x,(p1 & P2))) [uma]. subst(x,menino(x)) [menino]. subst(x,menina(x)) [menina]. sv(x,p) verbo(x,p). sv(x,p) verbot(x,y,p1), sn(y,p1,p) verboi(x,caiu(x)) [caiu]. verbot(x,y,viu(x,y)) [viu].

Agora com quantificadores todo(x, menino(x) existe(y,(menina(y)&ama(x,y))))) Todo menino ama uma menina

?- op(1150,xfy,&).?- op(1200,xfy, ). s(p) sn(x,p1,p), sv(x,p1). sn(x,p1,p) art(x,p2,p1,p), subst(x,p2). art(x,p1,p2,existe(x,(p1 & P2))) [uma]. art(x,p1,p2,paratodo(x,(p1 P2))) [todo]. subst(x,menino(x)) [menino]. subst(x,menina(x)) [menina]. sv(x,p) verbo(x,p). sv(x,p) verbot(x,y,p1), sn(y,p1,p) verboi(x,caiu(x)) [caiu]. verbot(x,y,viu(x,y)) [viu]. verbot(x,y,ama(x,y)) [ama].