A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 Lógica de Predicados BCC101 Matemática Discreta I.

Apresentações semelhantes


Apresentação em tema: "1 Lógica de Predicados BCC101 Matemática Discreta I."— Transcrição da apresentação:

1 1 Lógica de Predicados BCC101 Matemática Discreta I

2 2 O que é um Predicado?  Predicado  Coleção parametrizada de proposições  Exemplos: P(x): x é par D(x,y): x é divisível por y  Tipicamente uma proposição diferente para cada x P(2) é True P(5) é False D(10,5) é True D(20,3) é False  Domínio (ou universo de discurso) Conjunto de valores que as variáveis podem assumir Deve ser especificado explicitamente

3 3 Conjunto verdade de um Predicado Seja P(x) um predicado e suponha que P(x) tem domínio D O conjunto verdade de P(x) é o conjunto dos x  D tais que P(x) é True { x  D | P(x) }  Exemplo  P(x): 5<x<9 e D=Z { x  D | P(x)} = {6,7,8}

4 4  — Quantificador Universal, (para todo)   x p(x)  É uma fórmula se p(x) é uma fórmula  True se p(x) é True para cada valor de x no Domínio  False se existe algum valor de x no Domínio tal que p(x) é False  Exemplo – P(x): x é primo  D = {2,5,11} -  x P(x) é True  x P(x) significa P(2)  P(5)  P(11)  D = {3,6,9} -  x P(x) é False Contra-exemplos: P(6) e P(9)  D = N = {0, 1, 2, … } -  x P(x) é False  x P(x) significa P(0)  P(1)  P(2)  … “  ” provê uma maneira de escrever fórmulas que teriam um número infinito de símbolos na Lógica Proposicional

5 5  — Quantificador Existencial, (existe)   x p(x)  É uma fórmula se p(x) é uma fórmula  True se p(x) é True para algum valor de x no Domínio  False p(x) é False para todo valor de x no Domínio  Exemplo – P(x): x é primo  D = {3,6,9} -  x P(x) é True  x P(x) significa P(3)  P(6)  P(9)  D = {6,9,15,28} -  x P(x) é False  x P(x) significa P(6)  P(9)  P(15)  P(28)  D = N = {0, 1, 2, … } -  x P(x) é True  x P(x) significa P(0)  P(1)  P(2)  … “  ” provê uma maneira de escrever fórmulas que teriam um número infinito de símbolos na Lógica Proposicional

6 6 Universo Vazio  Qual o significado de  x p(x) se o universo de discurso é vazio?   x p(x) é True  Isso é compatível com o fato de que o  é uma generalização do ∧ e a identidade do ∧ é true.  Qual o significado de ∃ x p(x) se o universo de discurso é vazio?  ∃ x p(x) é False  Isso é compatível com o fato de que o ∃ é uma generalização do ∨ e a identidade do ∨ é false.

7 Exercício  P(0)  P(1)  P(2)  P(-1)  P(y)   x P(x)   x P(x)   x  P(x)   x  P(x)   x  P(x) 7  Seja P(x): x == x 2 e suponha que o universo é o conjunto dos números inteiros. Qual é o valor verdade de cada uma das afirmações a seguir:

8 PROLOG  PROLOG é uma linguagem de programação baseada em lógica. Um programa em PROLOG é uma sequência de declarações de fatos e regras.  Declarações de fatos definem os objetos do Domínio e quais desses objetos satifazem determinados predicados.  Regras definem novos predicados, por meio de asserções condicionais. Vejamos um exemplo 8

9 9 O seguinte programa PROLOG descreve o mundo da figura: color(g,gray) isabove(g,b1) color(b1,blue)isabove(b1,w1) color(b3,blue)isabove(w2,b2) color(b2,blue) isabove(b2,b3) color(b1,white) isabove(X,Z) :- isbove(X,Y), isabove(Y,Z) color(w2,white) Yes As seguintes perguntas podem ser feitas ?color(b1,blue) ?isabove(X,w1) PROLOG adota a hipótese de mundo fechado. b1, g

10 Exercício (ENADE 2014)  Considere o seguinte programa PROLOG: superior(jorge). superior(ana). selecionados(P,Q) :- superior(P), superior(Q). desconsiderados(P,Q) :- not(superior(P)); not(superior(Q)). descartado(P) :- not(superior(P)).  Marque as afirmações verdadeiras: 10 Para todos os possíveis valores de P e Q, selecionados(P,Q) é falso Falso

11 Exercício (ENADE 2014)  Considere o seguinte programa PROLOG: superior(jorge). superior(ana). selecionados(P,Q) :- superior(P), superior(Q). desconsiderados(P,Q) :- not(superior(P)); not(superior(Q)). descartado(P) :- not(superior(P)).  Marque as afirmações verdadeiras: 11 Para todos os possíveis valores de P e Q, selecionados(P,Q) tem valor lógico diferente de desconsiderados(P,Q) Verdadeiro

12 Exercício (ENADE 2014)  Considere o seguinte programa PROLOG: superior(jorge). superior(ana). selecionados(P,Q) :- superior(P), superior(Q). desconsiderados(P,Q) :- not(superior(P)); not(superior(Q)). descartado(P) :- not(superior(P)).  Marque as afirmações verdadeiras: 12 A conjunção de selecionados(P,Q) e desconsiderados(P,Q), para quaisquer valores de P e Q, tem valor lógico verdadeiro Falso

13 Exercício (ENADE 2014)  Considere o seguinte programa PROLOG: superior(jorge). superior(ana). selecionados(P,Q) :- superior(P), superior(Q). desconsiderados(P,Q) :- not(superior(P)); not(superior(Q)). descartado(P) :- not(superior(P)).  Marque as afirmações verdadeiras: 13 Para qualquer valor de P, descartado(P) tem valor lógico verdadeiro Falso

14 Exercício (ENADE 2014)  Considere o seguinte programa PROLOG: superior(jorge). superior(ana). selecionados(P,Q) :- superior(P), superior(Q). desconsiderados(P,Q) :- not(superior(P)); not(superior(Q)). descartado(P) :- not(superior(P)).  Marque as afirmações verdadeiras: 14 Verdadeiro A disjunção de selecionados(P,Q) e desconsiderados(P,Q), para quaisquer valores de P e Q, tem valor lógico verdadeiro

15 Fórmulas com vários quantificadores  Seja N o domínio de discurso N = {0, 1, 2, 3, … } e se R (x,y ) = “ x < y ”. Q1: O que significa  x  y R (x,y ) ?  Todo número x admite um número maior y  Verdadeiro ou falso? Q2: O que significa  y  x R (x,y ) ?  Algum número y é maior que todo x  Verdadeiro ou falso? 15 Inverter a ordem dos quantificadores  e  em uma fórmula pode alterar seu sifnificado

16 Fórmulas com vários quantificadores   x.  y. p(x,y) é True se p(x,y) é True para todo par (x,y) em DxD  Exemplo (D = N):  x  y y=x+1 -> x < y é True   x.  y. p(x,y) é True se, para cada x ∈ D, é possível escolher um y ∈ D tal que p(x,y) é True  Exemplos (D = N):  x  y y > x é True   y.  x. p(x,y) é True se existe um determinado y ∈ D, tal que p(x,y) é True, para todo x ∈ D  Exemplo (D = N):  y  x y > x é False   y.  x. p(x,y) é True se existe um par (x,y) ∈ DxD tal que p(x,y) é True  Exemplo(D = N):  y  x y. x é True 16

17 Exercícios  Q(1,1)  Q(2,0)   y Q(1,y)   x Q(x,2)   y Q(2,y)   x Q(x,y)   x  y Q(x,y)   x  y Q(x,y)   x  y Q(x,y)   y  x Q(x,y)   y  x Q(x,y) 17  Seja Q(x,y): x+y == x-y e suponha que o universo é o conjunto dos números inteiros. Qual é o valor verdade de cada uma das afirmações a seguir:

18 Lógica de Predicados – sintaxe formal 18 formula ::= true | false |pred (termo 1, …, termo n ) n ≥ 0 |(¬ formula) |(formula ∧ formula) |(formula ∨ formula) |(formula -> formula) |(formula formula) |(  var. formula) |(  var. formula) Termos denotam objetos do Domínio Fórmulas denotam valores lógicos (T ou F) termo ::= var | func (termo 1, …, termo n ) n ≥ 0 Precedência dos operadores

19  Termos denotam objetos do domínio 19 Termos funções aplicadas a termos x+2 (y+1) 2 constantes 2 5 variáveisx y Domínio = N 2 5 3 6 4 49 Lógica de Predicados - semântica

20  Fórmulas denotam valores lógicos 20 Fórmulas x > y (x > y) -> (y+1 = 3)  x x=3 Bool T F Lógica de Predicados - semântica  x x+3=2y A interpretação depende dos valores de x e y -- x e y são variáveis livres x=3, y=6 T ou F? A interpretação não depende do valor de x! -- x é uma variável ligada A interpretação não depende do valor de x, mas depende do valor de y! -- x é uma variável ligada e y é livre

21 Variáveis livres e ligadas 21 variável ligadavariável livre escopo de ocorrência ligadaocorrência livre

22 Modelo  Dizemos que uma interpretação é um modelo para uma fórmula se a fórmula é verdadeira nessa interpretação.  Exemplo: ∀ x(P(x) ∨ Q(x)) → ∀ xP(x) ∨∀ xQ(x)  É modelo para essa fórmula: D={a,e,i,o,u} P(x):x é minúscula Q(x): x é vogal  Não é um modelo para essa fórmula: D=Z P(x): x>=0 Q(x): x<0 22

23 Tautologia  Uma fórmula é uma tautologia se toda interpretação é um modelo para essa fórmula.  Exemplos:  ∀ x (P(x) ∨ ¬P(x))  ¬ ∀ x P(x) ∃ x ¬P(x)  ∀ x(P(x) ∧ Q(x)) ∀ xP(x) ∧∀ xQ(x) 23

24 Exercício  Quais das seguintes fórmulas são tautologias:  ∀ x (P(x) ∧ ¬P(x))  ∀ x ∃ y (P(x) ∧ ¬P(y))  ¬ ∃ x P(x) ∀ x ¬P(x)  ∃ x(P(x) ∨ Q(x)) ∃ xP(x) ∨∃ xQ(x)  ∃ x(P(x) ∧ Q(x)) ∃ xP(x) ∧∃ xQ(x) 24

25 Traduzindo para Lógica de Predicados G(x,y): x gosta de y 1.João gosta de Maria 2.João gosta de todo mundo 3.Todo mundo gosta de João 4.Maria gosta de alguém 5.Maria não gosta de ninguém 6.Todo mundo gosta de alguém 7.Ninguém gosta de todo mundo 8.João gosta de todo mundo de quem Maria não gosta 25 G(João,Maria)  y G(João,y)  x G(x,João)  y G(Maria,y) ¬  y G(Maria,y)  y ¬ G(Maria,y) → G(João,y)  x  y G(x,y)  x  y ¬ G(x,y)

26 Exercícios  Traduza as seguintes sentenças para a Lógica de Predicados: 1.Todo número par maior que 2 é a soma de 2 primos 1.Em toda cidade existe uma rua que tem pelo menos 1 buraco 26 ∀ x (par(x) ∧ x>2 → ∃ y ∃ z (primo(y) ∧ primo(z) ∧ x=y+z)) ∀ x (Cidade(x) → ∃ y ∃ b (Rua(y) ∧ Inr(R,b) ∧ Buraco(b) ∧ Inb(R,b)))


Carregar ppt "1 Lógica de Predicados BCC101 Matemática Discreta I."

Apresentações semelhantes


Anúncios Google