Aula 12: Lógica de Predicados

Documentos relacionados
Aula 2: Linguagem Proposicional

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

Lógica Proposicional Fórmulas e Precedência de Operadores

Capítulo 8 Lógica de primeira Ordem

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

Aula 13: Lógica de Predicados

Lógica Proposicional Sintaxe

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

Lógica de Predicados

Predicados e Quantificadores

Fundamentos 1. Lógica de Predicados

Aula 3: Linguagem Proposicional

0.1 Seja S o subconjunto de P(N) definido indutivamente pelas 3 regras apresentadas de seguida.

A Lógica de Primeira Ordem

Lógica para Computação

A sintaxe do cálculo de predicados (II), cap. 7 de Introdução à Lógica (Mortari 2001) Luiz Arthur Pagani

Capítulo 3 Lógica de Primeira Ordem

Lógica de Predicados

Lógica de Predicados

1 Lógica de primeira ordem

Os Fundamentos: Lógica de Predicados

Lógica de Predicados

Lógica Proposicional Semântica e Tabelas Verdade

Lógica de Predicados

Alfabeto da Lógica Proposicional

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

Lógica. Professor Mauro Cesar Scheer

Aula 7: Dedução Natural 2

Fundamentos da Computação 1. Aula 03

Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da

LÓGICA PROPOSICIONAL

Lógica de Predicados

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

Aula 4: Consequência Lógica e Equivalência Lógica

IME, UFF 7 de novembro de 2013

INF1009.3WB: Lógica para computação

Andamento da apresentação

Todos os pássaros têm pena. Nem todos os passáros voam. Todo inteiro primo maior que dois é ímpar

Lógica para Computação

Lógica de Predicados. Quantificadores

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

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

Cálculo de Predicados

SCC Capítulo 2 Lógica de Predicados

Introdução à Lógica de Predicados

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

Lógica Proposicional: Semântica Tabela Verdade

Faculdade de Informática PUCRS Lógica para Computação Lista de Exercícios Sintaxe e Semântica da Lógica de Predicados Prof.

Quantificadores, Predicados e Validade

Introdução à Lógica Proposicional Sintaxe

Lógica Computacional

Lógica dos Quantificadores: sintaxe

Lógica dos Quantificadores: sintaxe e semântica intuitiva

Introdução. História. História 18/03/2012. Lógica para Ciência da Computação. O que é Lógica?

Universidade Federal de Alfenas

Lógica Formal. Matemática Discreta. Prof Marcelo Maraschin de Souza

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

Lógica para computação

Matemática Discreta. Lógica de Predicados. Profa. Sheila Morais de Almeida. agosto DAINF-UTFPR-PG

Lógica Computacional

Aula 2, 2014/2 Sintaxe da Lógica dos Conectivos

Lógica Computacional

Lógica de Predicados

Lógica de Predicados

Fundamentos de Lógica Matemática

Cálculo de Predicados. Matemática Discreta. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. março

1. = F; Q = V; R = V.

Lógica. Cálculo Proposicional. Introdução

NOÇÕES DE LÓGICA MATEMÁTICA. O CÁLCULO DE PREDICADOS DE 1 a ORDEM

Lógica para Computação

Lógica Computacional

Matemática discreta e Lógica Matemática

Exercícios de Teoria da Computação Lógica de 1a. ordem

Aula 6: Dedução Natural

Usando as regras de Morgan, de a negação das proposições:

COMO LER NOTAÇÃO LÓGICA

Prof. Tiago Semprebom, Dr. Eng. 09 de abril de 2013

Departamento de Matemática Universidade do Minho, Braga 2009 /2010. Cálculo de Predicados de Primeira-Ordem da Lógica Clássica p.

Aula 8: Tableaux Analíticos

2 AULA. Conectivos e Quantificadores. lógicas. LIVRO. META: Introduzir os conectivos e quantificadores

Fundamentos da Computação 1. Carmen Cecilia Centeno

Matemática discreta e Lógica Matemática

Lógica para Computação Segundo Semestre, Aula 10: SAT. Prof. Ricardo Dutra da Silva. ( p (q ( q r))) ( p r) ( p q) ( p q r) p r.

Cálculo proposicional

Cálculo de Predicados. Matemática Discreta. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. março

Lógica de Predicados. Correção dos Exercícios Regras de Inferência

Introdução à Lógica Matemática

3 AULA. Valorações e Tabelas de Verdade LIVRO. META: Apresentar tabelas de verdade para classificar proposições lógicas.

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Prof. Cesar Augusto Tacla

Aula 8: Gramáticas Livres de Contexto

Lógica Computacional

RACIOCÍNIO LÓGICO. Quantificadores. Prof. Renato Oliveira

IME, UFF 3 de junho de 2014

Lógica Proposicional

MD Lógica de Proposições Quantificadas Cálculo de Predicados 1

Campos Sales (CE),

Introdução ao Curso. Área de Teoria DCC/UFMG 2019/01. Introdução à Lógica Computacional Introdução ao Curso Área de Teoria DCC/UFMG /01 1 / 22

Expressões e enunciados

Transcrição:

Lógica para Computação Primeiro Semestre, 2015 Aula 12: Lógica de Predicados DAINF-UTFPR Prof. Ricardo Dutra da Silva Vamos estender a lógica proposicional para torná-la mais expressiva. Na lógica proposicional, as fórmulas não dependiam da estrutura das proposições, apenas do modo como estas eram combinadas. Considere, por exemplo, a sentença declarativa: Todo estudante é mais novo do que algum professor.. Na lógica proposicional, a sentença seria um átomo. No entanto, a abordagem não captura estruturas mais finas da sentença, como ser estudante, ser professor ou ser mais jovem do que alguém. Para capturar essa maior expressividade usamos predicados. O predicado E(Carlos) pode ser usado para denotar que Carlos é um estudante; o predicado P (Ricardo) para denotar que Ricardo é um professor e o predicado J(Carlos, Ricardo) para denotar que Carlos é mais jovem que Ricardo. Os predicados acima estão modificando indivíduos específicos. Isso não ajuda muito na tarefa de descrever a frase que consideramos inicialmente, que fala de alunos e estudantes de uma forma mais geral. Os alunos e professores poderiam ser listados mas isso também não é prático. Então, usamos o conceito de variável que pode ser substituída por um indivíduo ou objeto qualquer. Usando as variáveis x e y, poderíamos escrever: E(x) : x é um estudante P (y) : y é um professor J(x, y) : x é mais jovem do que y. Ainda não temos uma formalização para os quantificadores todo e algum. Serão usados os símbolos, que lemos para todo ; e, que lemos existe ou para algum. Os quantificadores sempre modificam uma variável. Tendo os predicado, os quantificadores e os conectivos já conhecidos da lógica proposicional, a sentença inicial de exemplo poderia ser escrita como: x(e(x) ( y(p (y) J(x, y)))). Para avaliar se a fórmula é verdadeira é necessário definir os alunos e professores sobre os quais estamos falando. Considerando a UTFPR, possivelmente a sentença é verdadeira. 1

2 Aula 12: Lógica de Predicados No entanto, o resultado pode ser diferente em um curso de alfabetização para adultos. Na Lógica de Predicados também trabalhamos com o conceito de função. Considerando a sentença: Toda criança é mais jovem do que sua mãe, podemos formalizá-la como x y(c(x) M(y, x) J(x, y)), usando os predicados C(x) : x é uma criança M(y, x) : y é mãe de x J(x, y) : x é mais jovem do que y. As funções muitas vezes simplificam o que está sendo dito. Sabemos que uma criança possui apenas uma mãe, logo, poderíamos usar uma função m(x) que representa a mãe de x e evitaríamos escrever algo mais complicado como o predicado M(y, x). A fórmula seria simplificada como x(c(x) J(x, m(x))). Funções podem ser usadas quando o objeto sobre o qual falamos é definido unicamente. Não seria possível uma função b(x) que representa de forma não ambígua o irmão de x, pois um irmão pode não ser unicamente definido. Como fizemos com a lógica proposicional, vamos definir formalmente a sintaxe da Lógica de Predicados e em seguida a sua semântica. Definição 12.1. O alfabeto da lógica de predicados é formado por símbolos de pontuação ( e ). Um conjunto V = {x 1, x 2,...} de variáveis. Um conjunto C = {c 1, c 2,...} de constantes. Um conjunto P = {P 1, P 2,...} de predicados. Um conjunto F = {f 1, f 2,...} de funções. Conectivos,,,,,. Cada um dos predicados e funções contém uma aridade, ou seja, um número específico de argumentos.

Aula 12: Lógica de Predicados 3 Os símbolos para funções falam sobre objetos. As funções recebem objetos e retornam objetos. A função m(carlos) = Maria recebe o objeto Carlos e informa o objeto Maria. Os símbolos para predicados são usados para representar propriedades e relações entre objetos. Ao dizer Carlos é estudante, ser estudante é uma propriedade de Carlos. Podemos representar a propriedade pelo predicado E(x) que será verdadeira se x é estudante. No caso de x = Carlos o resultado é verdadeiro. A relação mais jovem dada pelo predicado J(x, y) é verdadeira somente se x for mais jovem que y. Predicados e funções podem ter aridade zero. Funções de aridade zero são constantes. Os predicados com aridade zero são as variáveis proposicionais ou átomos da Lógica Proposicional. A escolha dos conjuntos P e F depende do que pretendemos descrever. Caso queiramos representar relações entre familiares, poderíamos ter P = {H, F, S, D} para representar os predicados ser do sexo masculino, ser do sexo feminino, ser filho de e ser filha de, respectivamente. As funções F = {m, p} poderiam ser usadas para representar a mãe e o pai de alguém. Na linguagem de predicados teremos sentenças cuja valoração representará um objeto e sentenças cuja valoração representará um valor verdade. As primeiras sentenças são chamadas termos e as segundas são chamadas fórmulas. Definição 12.2. O conjunto de termos T é definido como: Base 1: se x i V, então x i T ; Base 2: se c i C, então c i T ; Passo recursivo: se t 1, t 2,..., t n são termos e f (F ) é uma função n-ária, n > 0, então f(t 1, t 2,..., t n ) T ; Os termos da linguagem são formados por variáveis, constantes e funções. Exemplo 12.1 Seja o alfabeto: ( e ) ; V = {x, y};

4 Aula 12: Lógica de Predicados C = {a, b}; P = {E, P, J}; F = {m};,,,,,. A seguir são formados alguns termos usando a Definição 12.6. x termo regra x (base 1) a termo regra a (base 2) m(x) termo regra x (base 1) m(x) (passo) Definição 12.3. Sejam t 1, t 2,..., t n termos e seja P um predicado n-ário, então P (t 1, t 2,..., t n ) é um átomo. Exemplo 12.2 Seja o alfabeto: ( e ) ; V = {x, y}; C = {a, b};

Aula 12: Lógica de Predicados 5 P = {E, P, J}; F = {m};,,,,,. Pela Definição 12.6, x e m(x) são termos. Pela Definição 12.3, J(x, m(x)) é um átomo formado pelo predicado J, de aridade dois. A Definição 12.3 indica que predicados n-ários assumem o papel dos átomos, como tínhamos na linguagem proposicional. Também, da mesma forma que a linguagem proposicional, a construção de fórmulas é feita pela concatenação de átomos e conectivos. Definição 12.4. O conjunto de fórmulas da Lógica de Predicados é definido como: Base: um átomo é uma fórmula. Passo recursivo 1: se A é uma fórmula então ( A) também é uma fórmula. Passo recursivo 2: se A e B são fórmulas então (A B), (A B) e (A B) são fórmulas. Passo recursivo 3: se A é uma fórmula e x é uma variável, então x(a) e x(a) são fórmulas. Exemplo 12.3 Considere a sentença Todo filho do meu pai é meu irmão. e os predicados F (x, y) : x é filho de y P (x, y) : x é pai de y I(x, y) : x é irmão de y. Se fizermos a contante e ser o objeto eu, a fórmula x y(p (x, e) F (y, x) I(y, e)) formaliza a sentença Todo filho do meu pai é meu irmão..

6 Aula 12: Lógica de Predicados Alternativamente, usando a função p(x) para pai de x, a mesma sentença pode ser formalizada como x(f (x, p(e)) I(x, e)). Exemplo 12.4 As fórmulas do Exemplo 12.3 são bem formadas conforme a Definição 12.4. A fórmula x y(p (x, e) F (y, x) I(y, e)) pode ser construída da seguinte maneira: fórmula regra P (x, e) (base) F (y, x) (base) I(y, e) (base) (P (x, e) F (y, x)) (passo 2) ((P (x, e) F (y, x)) I(y, e)) (passo 2) y(((p (x, e) F (y, x)) I(y, e))) (passo 3) x( y(((p (x, e) F (y, x)) I(y, e)))) (passo 3) Definição 12.5. A ordem de precedência na Lógica de Predicados é dada pela listagem dos conectivos na seguinte ordem, da maior precedência para a menor,,,,,,. Definição 12.6. O conjunto de subtermos de um termo E, Subt(E), é definido como: Base 1: se E = x V, então Subt(E) = Subt(x) = {x}; Base 2: se E = c C, então Subt(E) = Subt(c) = {c}; Passo recursivo: se E = f(t 1, t 2,..., t n ), então Subt(E) = Subt(f(t 1, t 2,..., t n )) = {f(t 1, t 2,..., t n )} Subt(t 1 ) Subt(t 2 )... Subt(t n ). Definição 12.7. O conjunto de subfórmulas de uma fórmula A, Subf(A), é definido como: Base: se A é um átomo, Subf(A) = {A}. Passo recursivo 1: se A = B, então Subf(A) = Subf( B) = { B} Subf(B);

Aula 12: Lógica de Predicados 7 Passo recursivo 2: se A = B C, então Subf(A) = Subf(B C) = {B C} Subf(B) Subf(C); Passo recursivo 3: se A = B C, então Subf(A) = Subf(B C) = {B C} Subf(B) Subf(C); Passo recursivo 4: se A = B C, então Subf(A) = Subf(B C) = {B C} Subf(B) Subf(C); Passo recursivo 5: se A = x(b), então Subf(A) = Subf( x(b)) = { x(b)} Subf(B); Passo recursivo 6: se A = x(b), então Subf(A) = Subf( x(b)) = { x(b)} Subf(B). Exercício 12.1. Definição 12.8. Compute as subfórmulas de H = x(p (x)) (P (x) y(r(y)). Seja E uma fórmula: se x(h) é uma subfórmula de E, então o escopo de x em E é H. se x(h) é uma subfórmula de E, então o escopo de x em E é H. Exercício 12.2. Quais as subfórmulas da fórmula E = x( y( zp (x, y, w, z) yq(z, y, x, f(z 1 )))) formam o escopo para os quantificadores presentes em E. Definição 12.9. Seja x uma variável e E uma fórmula, se x ocorre em E dentro do escopo de um quantificador, x ou x, então x é uma variável ligada; caso contrário, x é uma variável livre. Exercício 12.3. Classifique como ligada ou livre cada uma das variáveis da fórmula E = x( y( zp (x, y, w, z) yq(z, y, x, f(z 1 )))).