O documento descreve uma aula sobre lógica de primeira ordem. Apresenta os elementos básicos da lógica de primeira ordem, incluindo termos, predicados e a gramática formal para construir sentenças. Também explica como modelos e interpretações funcionam na lógica de primeira ordem, diferentemente da lógica proposicional.
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
(ACH2044) Inteligência Artificial - Aula 10
1. Inteligência Artificial – ACH2016
Aula 10 – Lógica de Primeira Ordem
Norton Trevisan Roman
(norton@usp.br)
10 de abril de 2019
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 1 / 40
2. Lógica de Primeira Ordem
Objetos e relações:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
3. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
4. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
5. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
6. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Em lógica proposicional, temos que fazer uma regra para cada bloco
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
7. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Em lógica proposicional, temos que fazer uma regra para cada bloco
Não há como fazer a afirmação geral para todos os blocos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
8. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Em lógica proposicional, temos que fazer uma regra para cada bloco
Não há como fazer a afirmação geral para todos os blocos
Ou então “acesso a esse recinto é permitido somente a
pessoas autorizadas ou conhecidas de pessoas autorizadas”
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
9. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Em lógica proposicional, temos que fazer uma regra para cada bloco
Não há como fazer a afirmação geral para todos os blocos
Ou então “acesso a esse recinto é permitido somente a
pessoas autorizadas ou conhecidas de pessoas autorizadas”
Gigantesco em lógica proposicional
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
10. Lógica de Primeira Ordem
Objetos e relações:
LPO é construı́da em torno de objetos e relações
Podemos também falar sobre “alguns” ou “todos”,
sem termos que citá-los explicitamente:
Ex: como representar “se pintamos um bloco com tinta
verde, ele fica verde”?
Em lógica proposicional, temos que fazer uma regra para cada bloco
Não há como fazer a afirmação geral para todos os blocos
Ou então “acesso a esse recinto é permitido somente a
pessoas autorizadas ou conhecidas de pessoas autorizadas”
Gigantesco em lógica proposicional
Terı́amos que listar as pessoas autorizadas e seus conhecidos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 2 / 40
11. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
12. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
13. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
14. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Corresponde a constantes, variáveis e funções
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
15. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Corresponde a constantes, variáveis e funções
No caso geral, um termo é formado por uma função seguida
de uma lista de termos como argumentos a essa função →
f (t1, . . . , tn)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
16. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Corresponde a constantes, variáveis e funções
No caso geral, um termo é formado por uma função seguida
de uma lista de termos como argumentos a essa função →
f (t1, . . . , tn)
Predicados
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
17. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Corresponde a constantes, variáveis e funções
No caso geral, um termo é formado por uma função seguida
de uma lista de termos como argumentos a essa função →
f (t1, . . . , tn)
Predicados
Representam relações entre termos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
18. Lógica de Primeira Ordem: Sintaxe
Elementos sintáticos básicos
Termos
Um termo é uma expressão lógica que se refere a um objeto
Corresponde a constantes, variáveis e funções
No caso geral, um termo é formado por uma função seguida
de uma lista de termos como argumentos a essa função →
f (t1, . . . , tn)
Predicados
Representam relações entre termos
Elementos básicos das sentenças
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 3 / 40
20. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
21. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
22. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Essa também era sua interpretação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
23. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Essa também era sua interpretação
Em LPO, modelos contém objetos e relações
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
24. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Essa também era sua interpretação
Em LPO, modelos contém objetos e relações
O domı́nio de um modelo é então o conjunto dos objetos e
relações que ele contém
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
25. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Essa também era sua interpretação
Em LPO, modelos contém objetos e relações
O domı́nio de um modelo é então o conjunto dos objetos e
relações que ele contém
Um domı́nio não pode ser vazio → todo domı́nio deve
conter pelo menos um objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
26. Lógica de Primeira Ordem: Semântica
Modelos e Interpretações
Em lógica proposicional, um modelo simplesmente
associava um valor verdade a cada sı́mbolo
Essa também era sua interpretação
Em LPO, modelos contém objetos e relações
O domı́nio de um modelo é então o conjunto dos objetos e
relações que ele contém
Um domı́nio não pode ser vazio → todo domı́nio deve
conter pelo menos um objeto
Cabe à interpretação do modelo especificar o significado de
cada termo e predicado dentro desse domı́nio
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 5 / 40
27. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 6 / 40
28. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Domı́nio:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 6 / 40
29. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Domı́nio:
Predicados:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 6 / 40
30. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Domı́nio:
Predicados:
IRMÃO = {< , >, < , >, < , >, . . . }
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 6 / 40
31. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Domı́nio:
Predicados:
IRMÃO = {< , >, < , >, < , >, . . . }
AMIGO = {< , >, < , >, < , >, < , >}
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 6 / 40
34. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Note que a ausência de uma regra do tipo
“Se A é irmão de B então B é irmão de A”
nos obriga a incluir todos os possı́veis pares no
modelo:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 7 / 40
35. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Note que a ausência de uma regra do tipo
“Se A é irmão de B então B é irmão de A”
nos obriga a incluir todos os possı́veis pares no
modelo:
IRMÃO = {< , >, < , >, . . . }
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 7 / 40
36. Lógica de Primeira Ordem: Semântica
Modelo: Exemplo
Note que a ausência de uma regra do tipo
“Se A é irmão de B então B é irmão de A”
nos obriga a incluir todos os possı́veis pares no
modelo:
IRMÃO = {< , >, < , >, . . . }
Esse tipo de regra é muito importante para reduzir
nosso trabalho de por todas as possı́veis
combinações explicitamente no modelo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 7 / 40
37. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
38. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Sı́mbolos constantes: objetos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
39. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Sı́mbolos constantes: objetos
Sı́mbolos de predicado: relações
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
40. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Sı́mbolos constantes: objetos
Sı́mbolos de predicado: relações
Sı́mbolos de função: relações funcionais
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
41. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Sı́mbolos constantes: objetos
Sı́mbolos de predicado: relações
Sı́mbolos de função: relações funcionais
Conjunto de objetos: elementos do domı́nio (ex: Pessoa,
Lápis, João)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
42. Lógica de Primeira Ordem: Semântica
Interpretação
Especifica referentes para:
Sı́mbolos constantes: objetos
Sı́mbolos de predicado: relações
Sı́mbolos de função: relações funcionais
Conjunto de objetos: elementos do domı́nio (ex: Pessoa,
Lápis, João)
Trata-se de um mapa entre os elementos do
domı́nio e esses sı́mbolos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 8 / 40
43. Lógica de Primeira Ordem: Semântica
Interpretação: Sı́mbolos
Há um paralelo com lı́ngua natural
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 9 / 40
44. Lógica de Primeira Ordem: Semântica
Interpretação: Sı́mbolos
Há um paralelo com lı́ngua natural
Por exemplo, a noção de pai é uma só, mas a
palavra usada para designá-la depende da lı́ngua em
que é pronunciada
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 9 / 40
45. Lógica de Primeira Ordem: Semântica
Interpretação: Sı́mbolos
Há um paralelo com lı́ngua natural
Por exemplo, a noção de pai é uma só, mas a
palavra usada para designá-la depende da lı́ngua em
que é pronunciada
A palavra nada mais é que um sı́mbolo para uma relação de
paternidade
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 9 / 40
46. Lógica de Primeira Ordem: Semântica
Interpretação: Sı́mbolos
Há um paralelo com lı́ngua natural
Por exemplo, a noção de pai é uma só, mas a
palavra usada para designá-la depende da lı́ngua em
que é pronunciada
A palavra nada mais é que um sı́mbolo para uma relação de
paternidade
A relação é comum a todos nós, mas o sı́mbolo varia
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 9 / 40
47. Lógica de Primeira Ordem: Semântica
Interpretação: Exemplo
Bart → Homer →
Lisa → Maggie →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 10 / 40
48. Lógica de Primeira Ordem: Semântica
Interpretação: Exemplo
Bart → Homer →
Lisa → Maggie →
Pai(x) → Objeto y no par < y, x > em PAI
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 10 / 40
49. Lógica de Primeira Ordem: Semântica
Interpretação: Exemplo
Bart → Homer →
Lisa → Maggie →
Pai(x) → Objeto y no par < y, x > em PAI
Pai(Bart) = Homer, pois PAI contém o par < , >
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 10 / 40
50. Lógica de Primeira Ordem: Semântica
Interpretação: Exemplo
Bart → Homer →
Lisa → Maggie →
Pai(x) → Objeto y no par < y, x > em PAI
Pai(Bart) = Homer, pois PAI contém o par < , >
Irmão(x,y) → Verdadeiro se IRMÃO contiver o par
< x, y >
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 10 / 40
51. Lógica de Primeira Ordem: Semântica
Interpretação: Exemplo
Bart → Homer →
Lisa → Maggie →
Pai(x) → Objeto y no par < y, x > em PAI
Pai(Bart) = Homer, pois PAI contém o par < , >
Irmão(x,y) → Verdadeiro se IRMÃO contiver o par
< x, y >
Irmão(Bart, Lisa) = Verdadeiro, pois IRMÃO contém o par
< , >
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 10 / 40
52. Lógica de Primeira Ordem: Semântica
Termos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
53. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
54. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
55. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
56. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Sı́mbolos variáveis:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
57. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Sı́mbolos variáveis:
Sintaticamente iguais às constantes, embora não se refiram
a um objeto em particular
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
58. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Sı́mbolos variáveis:
Sintaticamente iguais às constantes, embora não se refiram
a um objeto em particular
Similares às usadas em programação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
59. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Sı́mbolos variáveis:
Sintaticamente iguais às constantes, embora não se refiram
a um objeto em particular
Similares às usadas em programação
Ex: x, y, a (minúsculas)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
60. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos constantes
Dão nomes a coisas particulares
Ex: Fred, C1, A, Japão, Bactéria 39
Sı́mbolos variáveis:
Sintaticamente iguais às constantes, embora não se refiram
a um objeto em particular
Similares às usadas em programação
Ex: x, y, a (minúsculas)
Um termo sem variáveis é chamado de termo base (ground
term)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 11 / 40
61. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
62. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Usados quando, em vez de uma constante, quisermos usar
uma relação para definir um objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
63. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Usados quando, em vez de uma constante, quisermos usar
uma relação para definir um objeto
Ex: usamos BraçoEsq(Pedro), em vez de dar um nome ao braço,
como BRAÇO ESQ PEDRO
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
64. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Usados quando, em vez de uma constante, quisermos usar
uma relação para definir um objeto
Ex: usamos BraçoEsq(Pedro), em vez de dar um nome ao braço,
como BRAÇO ESQ PEDRO
Definem que um dado objeto deve se relacionar a um único
outro objeto desta maneira
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
65. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Usados quando, em vez de uma constante, quisermos usar
uma relação para definir um objeto
Ex: usamos BraçoEsq(Pedro), em vez de dar um nome ao braço,
como BRAÇO ESQ PEDRO
Definem que um dado objeto deve se relacionar a um único
outro objeto desta maneira
Ex: BraçoEsq(Pedro) relaciona Pedro a um único objeto
correspondente ao seu braço esquerdo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
66. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Usados quando, em vez de uma constante, quisermos usar
uma relação para definir um objeto
Ex: usamos BraçoEsq(Pedro), em vez de dar um nome ao braço,
como BRAÇO ESQ PEDRO
Definem que um dado objeto deve se relacionar a um único
outro objeto desta maneira
Ex: BraçoEsq(Pedro) relaciona Pedro a um único objeto
correspondente ao seu braço esquerdo
Sua vantagem está em que essa mesma função pode ser
usada para definir relações entre outros objetos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 12 / 40
67. Lógica de Primeira Ordem: Semântica
Termos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
68. Lógica de Primeira Ordem: Semântica
Termos
Uma única função
aplicada a 2
sı́mbolos distintos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
69. Lógica de Primeira Ordem: Semântica
Termos
Uma única função
aplicada a 2
sı́mbolos distintos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Semântica de um termo f (t1, . . . , tn):
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
70. Lógica de Primeira Ordem: Semântica
Termos
Uma única função
aplicada a 2
sı́mbolos distintos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Semântica de um termo f (t1, . . . , tn):
f se refere a alguma função F no modelo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
71. Lógica de Primeira Ordem: Semântica
Termos
Uma única função
aplicada a 2
sı́mbolos distintos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Semântica de um termo f (t1, . . . , tn):
f se refere a alguma função F no modelo
t1, . . . tn se referem a objetos o1, . . . , on no domı́nio
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
72. Lógica de Primeira Ordem: Semântica
Termos
Uma única função
aplicada a 2
sı́mbolos distintos
Sı́mbolos de função:
Ex:
Proposicional LPO
PAI PEDRO ↔ Pai(Pedro)
PAI JOÃO ↔ Pai(João)
Semântica de um termo f (t1, . . . , tn):
f se refere a alguma função F no modelo
t1, . . . tn se referem a objetos o1, . . . , on no domı́nio
O termo como um todo se refere ao objeto correspondente
ao valor de F aplicada a o1, . . . , on
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 13 / 40
73. Lógica de Primeira Ordem: Semântica
Predicados
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
74. Lógica de Primeira Ordem: Semântica
Predicados
Aplicados a zero ou mais termos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
75. Lógica de Primeira Ordem: Semântica
Predicados
Aplicados a zero ou mais termos
Conectam parâmetros, indicando que a conexão
existe
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
76. Lógica de Primeira Ordem: Semântica
Predicados
Aplicados a zero ou mais termos
Conectam parâmetros, indicando que a conexão
existe
Ex: Irmão(x,y), Maior(x,y)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
77. Lógica de Primeira Ordem: Semântica
Predicados
Aplicados a zero ou mais termos
Conectam parâmetros, indicando que a conexão
existe
Ex: Irmão(x,y), Maior(x,y)
Também servem para descrever algum atributo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
78. Lógica de Primeira Ordem: Semântica
Predicados
Aplicados a zero ou mais termos
Conectam parâmetros, indicando que a conexão
existe
Ex: Irmão(x,y), Maior(x,y)
Também servem para descrever algum atributo
Ex: Azul(A), Chovendo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 14 / 40
79. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – ???
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
80. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
81. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
82. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
83. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
84. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
PernaEsquerda(Pedro) – ???
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
85. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
PernaEsquerda(Pedro) – ???
Pedro → Minha centopeia de estimação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
86. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
PernaEsquerda(Pedro) – Predicado
Pedro → Minha centopeia de estimação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
87. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
PernaEsquerda(Pedro) – Predicado
Pedro → Minha centopeia de estimação
PernaEsquerda(x) deve também se aplicar a outros
elementos conhecidos que possam fazer parte da base
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
88. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Irmão(João,x) – Predicado
Pode retornar muitos valores para x, mantendo-se João
como primeiro
E num modelo em que ninguém tem mais que 1 irmão?
Função, pois x será associado a um objeto especı́fico sempre
PernaEsquerda(Pedro) – Predicado
Pedro → Minha centopeia de estimação
PernaEsquerda(x) deve também se aplicar a outros
elementos conhecidos que possam fazer parte da base
Ex: mesa, cadeira etc.
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 15 / 40
89. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
90. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
91. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados Funções
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
92. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados Funções
Função faz referência a um objeto do domı́nio
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
93. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados Funções
Função faz referência a um objeto do domı́nio
Valores também são objetos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
94. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados Funções
Função faz referência a um objeto do domı́nio
Valores também são objetos
Predicado faz referência a um atributo ou relação
em si
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
95. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Maior(Tamanho(PernaEsq(JOÃO)), Tamanho(PernaEsq(PEDRO)))
Predicados Funções
Função faz referência a um objeto do domı́nio
Valores também são objetos
Predicado faz referência a um atributo ou relação
em si
Mas o que é predicado ou função depende totalmente do
modelo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 16 / 40
96. Lógica de Primeira Ordem: Semântica
Voltemos ao nosso exemplo de modelo...
Domı́nio:
Predicados:
IRMÃO = {< , >, < , >, < , >, . . . }
AMIGO = {< , >, < , >, < , >, < , >}
Funções:
PAI = {< , >, < , >, < , >, < , >}
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 17 / 40
97. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
98. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
99. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Irmão( ,x) ⇒ x = {< , >, < , >}
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
100. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Irmão( ,x) ⇒ x = {< , >, < , >}
Pode haver vários pares com como primeiro item e um
segundo item diferente
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
101. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Irmão( ,x) ⇒ x = {< , >, < , >}
Pode haver vários pares com como primeiro item e um
segundo item diferente
Funções:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
102. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Irmão( ,x) ⇒ x = {< , >, < , >}
Pode haver vários pares com como primeiro item e um
segundo item diferente
Funções:
Pai( ) =
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
103. Lógica de Primeira Ordem: Semântica
Predicados × Funções
Dentro do domı́nio, tanto predicados quanto
funções são meras listas de pares ordenados
Predicados:
Irmão( ,x) ⇒ x = {< , >, < , >}
Pode haver vários pares com como primeiro item e um
segundo item diferente
Funções:
Pai( ) =
Aplicar a função a um termo nos leva a um único par possı́vel
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 18 / 40
104. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
105. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
106. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
107. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
108. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
A interpretação particular será a responsável por definir que
objetos correspondem a Ricardo e João
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
109. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
A interpretação particular será a responsável por definir que
objetos correspondem a Ricardo e João
Sentenças atômicas podem conter termos complexos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
110. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
A interpretação particular será a responsável por definir que
objetos correspondem a Ricardo e João
Sentenças atômicas podem conter termos complexos
Ex: Casado(Pai(Ricardo), Mãe(João))
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
111. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
A interpretação particular será a responsável por definir que
objetos correspondem a Ricardo e João
Sentenças atômicas podem conter termos complexos
Ex: Casado(Pai(Ricardo), Mãe(João))
Também possuem o operador =
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
112. Lógica de Primeira Ordem: Semântica
Sentenças
Usadas para representar fatos
Sentenças Atômicas ou Átomos
Compostas por predicado aplicado a zero ou mais termos
Ex: Irmão(Ricardo, João)
A interpretação particular será a responsável por definir que
objetos correspondem a Ricardo e João
Sentenças atômicas podem conter termos complexos
Ex: Casado(Pai(Ricardo), Mãe(João))
Também possuem o operador =
Ex: Pai(João) = Pedro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 19 / 40
113. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
114. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Produzidas a partir de sentenças menores usando-se os
conectivos lógicos:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
115. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Produzidas a partir de sentenças menores usando-se os
conectivos lógicos:
¬, ∧, ∨, ⇒ ou →, e ⇔ ou ↔
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
116. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Produzidas a partir de sentenças menores usando-se os
conectivos lógicos:
¬, ∧, ∨, ⇒ ou →, e ⇔ ou ↔
Ex:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
117. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Produzidas a partir de sentenças menores usando-se os
conectivos lógicos:
¬, ∧, ∨, ⇒ ou →, e ⇔ ou ↔
Ex:
¬Irmão(Jorge, Pedro)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
118. Lógica de Primeira Ordem: Semântica
Sentenças
Sentenças Complexas
Produzidas a partir de sentenças menores usando-se os
conectivos lógicos:
¬, ∧, ∨, ⇒ ou →, e ⇔ ou ↔
Ex:
¬Irmão(Jorge, Pedro)
Irmão(Jorge, Pedro) ⇒ Irmão(Pedro, Jorge)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 20 / 40
119. Lógica de Primeira Ordem: Semântica
Sentenças: Valor verdade
Uma sentença atômica
predicado(termo1, termo2, . . . , termon)
é verdadeira em um dado modelo se a relação
representada pelo predicado vale entre os objetos
representados por seus argumentos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 21 / 40
120. Lógica de Primeira Ordem: Semântica
Sentenças: Valor verdade
Uma sentença atômica
predicado(termo1, termo2, . . . , termon)
é verdadeira em um dado modelo se a relação
representada pelo predicado vale entre os objetos
representados por seus argumentos
Ex:
Amigo(Bart,Millhouse) ⇒ Verdadeiro, pois a relação
AMIGO vale para os objetos e
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 21 / 40
121. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
122. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
123. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
124. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Lisa →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
125. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Lisa →
Verificamos que relação o sı́mbolo Irmão denota
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
126. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Lisa →
Verificamos que relação o sı́mbolo Irmão denota
Irmão(x,y) → IRMÃO = {< , >, < , >,
< , >, < , >, . . . }
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
127. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Lisa →
Verificamos que relação o sı́mbolo Irmão denota
Irmão(x,y) → IRMÃO = {< , >, < , >,
< , >, < , >, . . . }
Buscamos pelo par < , > dentro da relação:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
128. Lógica de Primeira Ordem: Semântica
Passo-a-passo: Irmão(Bart,Lisa)?
Verificamos a interpretação de cada sı́mbolo
constante:
Bart →
Lisa →
Verificamos que relação o sı́mbolo Irmão denota
Irmão(x,y) → IRMÃO = {< , >, < , >,
< , >, < , >, . . . }
Buscamos pelo par < , > dentro da relação:
Encontramos → a sentença é verdadeira nessa
interpretação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 22 / 40
129. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
130. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Nesse caso, t1 = t2 sse o objeto denotado por t1 for o
mesmo denotado por t2 sob uma dada interpretação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
131. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Nesse caso, t1 = t2 sse o objeto denotado por t1 for o
mesmo denotado por t2 sob uma dada interpretação
Para verificar a veracidade de uma igualdade basta então
olharmos na interpretação se os referentes dos 2 termos são
o mesmo objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
132. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Nesse caso, t1 = t2 sse o objeto denotado por t1 for o
mesmo denotado por t2 sob uma dada interpretação
Para verificar a veracidade de uma igualdade basta então
olharmos na interpretação se os referentes dos 2 termos são
o mesmo objeto
Ex: Maggie = Margaret?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
133. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Nesse caso, t1 = t2 sse o objeto denotado por t1 for o
mesmo denotado por t2 sob uma dada interpretação
Para verificar a veracidade de uma igualdade basta então
olharmos na interpretação se os referentes dos 2 termos são
o mesmo objeto
Ex: Maggie = Margaret?
Interpretação: Maggie = Margaret =
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
134. Lógica de Primeira Ordem: Semântica
Igualdade
Também podemos construir uma sentença atômica
através do sı́mbolo de igualdade (=)
Nesse caso, t1 = t2 sse o objeto denotado por t1 for o
mesmo denotado por t2 sob uma dada interpretação
Para verificar a veracidade de uma igualdade basta então
olharmos na interpretação se os referentes dos 2 termos são
o mesmo objeto
Ex: Maggie = Margaret?
Interpretação: Maggie = Margaret =
Nesse caso, (Maggie = Margaret) é verdadeira
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 23 / 40
135. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
136. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
137. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Descreve fatos e propriedades que se aplicam a todo e
qualquer objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
138. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Descreve fatos e propriedades que se aplicam a todo e
qualquer objeto
∀x P será verdade em um modelo sse P for verdade com x
sendo cada objeto possı́vel no modelo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
139. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Descreve fatos e propriedades que se aplicam a todo e
qualquer objeto
∀x P será verdade em um modelo sse P for verdade com x
sendo cada objeto possı́vel no modelo
Ex: ∀x Homem(x) ⇒ Mortal(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
140. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Descreve fatos e propriedades que se aplicam a todo e
qualquer objeto
∀x P será verdade em um modelo sse P for verdade com x
sendo cada objeto possı́vel no modelo
Ex: ∀x Homem(x) ⇒ Mortal(x)
Para todo x, se x for homem, então x é mortal
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
141. Lógica de Primeira Ordem: Semântica
Quantificadores
Usados para expressar propriedades de coleções
inteiras de objetos (em vez de enumerá-los)
Quantificação Universal (∀)
Descreve fatos e propriedades que se aplicam a todo e
qualquer objeto
∀x P será verdade em um modelo sse P for verdade com x
sendo cada objeto possı́vel no modelo
Ex: ∀x Homem(x) ⇒ Mortal(x)
Para todo x, se x for homem, então x é mortal
(Todo homem é mortal)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 24 / 40
142. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
143. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
144. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Equivale à conjunção de todas as possı́veis
instâncias de x:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
145. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Equivale à conjunção de todas as possı́veis
instâncias de x:
(Estuda(Bart, IA) ⇒ Inteligente(Bart)) ∧
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
146. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Equivale à conjunção de todas as possı́veis
instâncias de x:
(Estuda(Bart, IA) ⇒ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ⇒ Inteligente(Lisa)) ∧
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
147. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Equivale à conjunção de todas as possı́veis
instâncias de x:
(Estuda(Bart, IA) ⇒ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ⇒ Inteligente(Lisa)) ∧
(Estuda(Homer, IA) ⇒ Inteligente(Homer)) ∧ . . .
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
148. Lógica de Primeira Ordem: Semântica
Quantificação Universal: Exemplo
Todo mundo que estuda IA é inteligente
∀x Estuda(x, IA) ⇒ Inteligente(x)
Equivale à conjunção de todas as possı́veis
instâncias de x:
(Estuda(Bart, IA) ⇒ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ⇒ Inteligente(Lisa)) ∧
(Estuda(Homer, IA) ⇒ Inteligente(Homer)) ∧ . . .
Note que se Estuda(Homer, IA) = Falso, ainda assim
(Estuda(Homer, IA) ⇒ Inteligente(Homer)) = Verdadeiro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 25 / 40
149. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
150. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
151. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
152. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
(Todo mundo estuda IA e é inteligente)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
153. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
(Todo mundo estuda IA e é inteligente)
Ou seja, (Estuda(Bart, IA) ∧ Inteligente(Bart)) ∧
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
154. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
(Todo mundo estuda IA e é inteligente)
Ou seja, (Estuda(Bart, IA) ∧ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ∧ Inteligente(Lisa)) ∧
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
155. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
(Todo mundo estuda IA e é inteligente)
Ou seja, (Estuda(Bart, IA) ∧ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ∧ Inteligente(Lisa)) ∧
(Estuda(Homer, IA) ∧ Inteligente(Homer)) ∧ . . .
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
156. Lógica de Primeira Ordem: Semântica
Quantificação Universal
Tipicamente, ‘∀’ vem junto ao conectivo ‘⇒’
Cuidado! Usar ‘∧’ como conectivo pode levar a :
∀x Estuda(x, IA) ∧ Inteligente(x)
(Todo mundo estuda IA e é inteligente)
Ou seja, (Estuda(Bart, IA) ∧ Inteligente(Bart)) ∧
(Estuda(Lisa, IA) ∧ Inteligente(Lisa)) ∧
(Estuda(Homer, IA) ∧ Inteligente(Homer)) ∧ . . .
Se Estuda(Homer, IA) = Falso, então a sentença toda é
falsa
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 26 / 40
157. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
158. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
159. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Ex: ∃x Chapéu(x) ∧ NaCabeça(x, Pedro)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
160. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Ex: ∃x Chapéu(x) ∧ NaCabeça(x, Pedro)
Existe um x tal que x é um chapéu e está na cabeça de
Pedro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
161. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Ex: ∃x Chapéu(x) ∧ NaCabeça(x, Pedro)
Existe um x tal que x é um chapéu e está na cabeça de
Pedro
(Pedro está com um chapéu na cabeça)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
162. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Ex: ∃x Chapéu(x) ∧ NaCabeça(x, Pedro)
Existe um x tal que x é um chapéu e está na cabeça de
Pedro
(Pedro está com um chapéu na cabeça)
≡ (Tem um chapéu na cabeça de Pedro)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
163. Lógica de Primeira Ordem: Semântica
Quantificadores
Quantificação Existencial (∃)
Descreve fatos e propriedades que se aplicam a pelo menos
um objeto
Ex: ∃x Chapéu(x) ∧ NaCabeça(x, Pedro)
Existe um x tal que x é um chapéu e está na cabeça de
Pedro
(Pedro está com um chapéu na cabeça)
≡ (Tem um chapéu na cabeça de Pedro)
≡ (. . . )
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 27 / 40
164. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
165. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
166. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Existe um x que estuda IA e é inteligente
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
167. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Existe um x que estuda IA e é inteligente
(Alguém dos que estudam IA é inteligente)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
168. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Existe um x que estuda IA e é inteligente
(Alguém dos que estudam IA é inteligente)
Equivale à disjunção de todas as possı́veis instâncias
de P
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
169. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Existe um x que estuda IA e é inteligente
(Alguém dos que estudam IA é inteligente)
Equivale à disjunção de todas as possı́veis instâncias
de P
(Estuda(Lisa, IA) ∧ Inteligente(Lisa)) ∨
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
170. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
∃x P é verdadeiro em um modelo sse existir algum
x (objeto associado a x) para o qual P é verdadeiro
Ex: ∃x Estuda(x, IA) ∧ Inteligente(x)
Existe um x que estuda IA e é inteligente
(Alguém dos que estudam IA é inteligente)
Equivale à disjunção de todas as possı́veis instâncias
de P
(Estuda(Lisa, IA) ∧ Inteligente(Lisa)) ∨
(Estuda(Bart, IA) ∧ Inteligente(Bart)) ∨ . . .
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 28 / 40
171. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
Tipicamente, ∃ vem junto ao conectivo ∧
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 29 / 40
172. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
Tipicamente, ∃ vem junto ao conectivo ∧
Cuidado! Usar ‘⇒’ como conectivo pode levar a
erro:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 29 / 40
173. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
Tipicamente, ∃ vem junto ao conectivo ∧
Cuidado! Usar ‘⇒’ como conectivo pode levar a
erro:
∃x Estuda(x, IA) ⇒ Inteligente(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 29 / 40
174. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
Tipicamente, ∃ vem junto ao conectivo ∧
Cuidado! Usar ‘⇒’ como conectivo pode levar a
erro:
∃x Estuda(x, IA) ⇒ Inteligente(x)
Existe um x para o qual a expressão é verdadeira
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 29 / 40
175. Lógica de Primeira Ordem: Semântica
Quantificação Existencial
Tipicamente, ∃ vem junto ao conectivo ∧
Cuidado! Usar ‘⇒’ como conectivo pode levar a
erro:
∃x Estuda(x, IA) ⇒ Inteligente(x)
Existe um x para o qual a expressão é verdadeira
Será verdade, mesmo que ninguém estude IA, pois F ⇒ T e
F ⇒ F
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 29 / 40
176. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
177. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
178. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
∃x (Pai(x) = Homer) ∧ Amigo(x, Milhouse)?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
179. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
∃x (Pai(x) = Homer) ∧ Amigo(x, Milhouse)?
Verifique a interpretação das constantes Homer e Milhouse
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
180. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
∃x (Pai(x) = Homer) ∧ Amigo(x, Milhouse)?
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
181. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
∃x (Pai(x) = Homer) ∧ Amigo(x, Milhouse)?
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Verifique se existe um objeto no modelo que atenda às
relações Pai e Amigo, com essas constantes
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
182. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Considere a seguinte interpretação:
Bart → Lisa → Maggie →
Homer → Millhouse →
Homer é pai de algum amigo de Milhouse?
∃x (Pai(x) = Homer) ∧ Amigo(x, Milhouse)?
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Verifique se existe um objeto no modelo que atenda às
relações Pai e Amigo, com essas constantes
x =
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 30 / 40
183. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
184. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
∀x (Pai(x) = Homer) ⇒ Amigo(x, Milhouse)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
185. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
∀x (Pai(x) = Homer) ⇒ Amigo(x, Milhouse)
Verifique a interpretação das constantes Homer e Milhouse
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
186. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
∀x (Pai(x) = Homer) ⇒ Amigo(x, Milhouse)
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
187. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
∀x (Pai(x) = Homer) ⇒ Amigo(x, Milhouse)
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Verifique se, para todo objeto no modelo que atenda às
relações Pai e Amigo, com essas constantes, a implicação é
satisfeita
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
188. Lógica de Primeira Ordem: Semântica
Quantificadores: Exemplo
Todo filho de Homer é amigo de Milhouse?
∀x (Pai(x) = Homer) ⇒ Amigo(x, Milhouse)
Verifique a interpretação das constantes Homer e Milhouse
Homer → ; Millhouse →
Verifique se, para todo objeto no modelo que atenda às
relações Pai e Amigo, com essas constantes, a implicação é
satisfeita
A implicação é falsa para x = e x =
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 31 / 40
189. Lógica de Primeira Ordem: Semântica
Quantificadores Aninhados
Podemos usar sentenças com múltiplos
quantificadores:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 32 / 40
190. Lógica de Primeira Ordem: Semântica
Quantificadores Aninhados
Podemos usar sentenças com múltiplos
quantificadores:
“A relação Irmão é simétrica”
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 32 / 40
191. Lógica de Primeira Ordem: Semântica
Quantificadores Aninhados
Podemos usar sentenças com múltiplos
quantificadores:
“A relação Irmão é simétrica”
∀x∀y Irmão(x, y) ⇔ Irmão(y, x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 32 / 40
192. Lógica de Primeira Ordem: Semântica
Quantificadores Aninhados
Podemos usar sentenças com múltiplos
quantificadores:
“A relação Irmão é simétrica”
∀x∀y Irmão(x, y) ⇔ Irmão(y, x)
Quantificadores consecutivos do mesmo tipo podem
ser escritos como um só:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 32 / 40
193. Lógica de Primeira Ordem: Semântica
Quantificadores Aninhados
Podemos usar sentenças com múltiplos
quantificadores:
“A relação Irmão é simétrica”
∀x∀y Irmão(x, y) ⇔ Irmão(y, x)
Quantificadores consecutivos do mesmo tipo podem
ser escritos como um só:
∀x∀y Irmão(x, y) ⇔ Irmão(y, x)
∀x, y Irmão(x, y) ⇔ Irmão(y, x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 32 / 40
194. Lógica de Primeira Ordem: Semântica
Quantificadores: Escopo
Assim como variáveis de programação, variáveis de
quantificadores têm escopo
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 33 / 40
195. Lógica de Primeira Ordem: Semântica
Quantificadores: Escopo
Assim como variáveis de programação, variáveis de
quantificadores têm escopo
Ex: ∀x (Chapéu(x) ∨ (∃x Irmão(Pedro, x)))
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 33 / 40
196. Lógica de Primeira Ordem: Semântica
Quantificadores: Escopo
Assim como variáveis de programação, variáveis de
quantificadores têm escopo
Ex: ∀x (Chapéu(x) ∨ (∃x Irmão(Pedro, x)))
Uma variável pertence ao quantificador mais interno que a
menciona (como se ele a declarasse)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 33 / 40
197. Lógica de Primeira Ordem: Semântica
Quantificadores: Escopo
Assim como variáveis de programação, variáveis de
quantificadores têm escopo
Ex: ∀x (Chapéu(x) ∨ (∃x Irmão(Pedro, x)))
Uma variável pertence ao quantificador mais interno que a
menciona (como se ele a declarasse)
Não será sujeita a mais nenhuma quantificação
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 33 / 40
198. Lógica de Primeira Ordem: Semântica
Quantificadores: Escopo
Assim como variáveis de programação, variáveis de
quantificadores têm escopo
Ex: ∀x (Chapéu(x) ∨ (∃x Irmão(Pedro, x)))
Uma variável pertence ao quantificador mais interno que a
menciona (como se ele a declarasse)
Não será sujeita a mais nenhuma quantificação
É sempre melhor usar variáveis distintas, para evitar
confusão:
∀x (Chapéu(x) ∨ (∃y Irmão(Pedro, y)))
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 33 / 40
199. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
200. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
201. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
202. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
∃x∀y não é o mesmo que ∀y∃x
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
203. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
∃x∀y não é o mesmo que ∀y∃x
∃x∀y Ama(x, y)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
204. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
∃x∀y não é o mesmo que ∀y∃x
∃x∀y Ama(x, y)
(Existe alguém que ama todo mundo)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
205. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
∃x∀y não é o mesmo que ∀y∃x
∃x∀y Ama(x, y)
(Existe alguém que ama todo mundo)
∀y∃x Ama(x, y)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
206. Lógica de Primeira Ordem: Semântica
Quantificadores: Propriedades
∀x∀y é o mesmo que ∀y∀x
∃x∃y é o mesmo que ∃y∃x
∃x∀y não é o mesmo que ∀y∃x
∃x∀y Ama(x, y)
(Existe alguém que ama todo mundo)
∀y∃x Ama(x, y)
(Todo mundo é amado por alguém)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 34 / 40
207. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
208. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
∀x Gosta(x, Sorvete)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
209. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
∀x Gosta(x, Sorvete)
¬∃x ¬Gosta(x, Sorvete)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
210. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
∀x Gosta(x, Sorvete)
¬∃x ¬Gosta(x, Sorvete)
∃x Gosta(x, Quiabo)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
211. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
∀x Gosta(x, Sorvete)
¬∃x ¬Gosta(x, Sorvete)
∃x Gosta(x, Quiabo)
¬∀x ¬Gosta(x, Quiabo)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
212. Lógica de Primeira Ordem: Semântica
Quantificadores: Dualidade
Cada quantificador pode ser expresso em termos do
outro
∀x Gosta(x, Sorvete)
¬∃x ¬Gosta(x, Sorvete)
∃x Gosta(x, Quiabo)
¬∀x ¬Gosta(x, Quiabo)
Regras de De Morgan:
∀x ¬P ≡ ¬∃x P ∀x P ≡ ¬∃x ¬P
¬∀x P ≡ ∃x ¬P ∃x P ≡ ¬∀x ¬P
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 35 / 40
213. Lógica de Primeira Ordem: Semântica
Exemplos
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
214. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
215. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
216. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
217. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Jogador(Paulo) ∧ Alto(Paulo)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
218. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Jogador(Paulo) ∧ Alto(Paulo)
Sobrinho é o filho do irmão:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
219. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Jogador(Paulo) ∧ Alto(Paulo)
Sobrinho é o filho do irmão:
∀x, y Sobrinho(x, y) ⇔ ∃z [Irmão(z, y) ∧ filho(x, z)]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
220. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Jogador(Paulo) ∧ Alto(Paulo)
Sobrinho é o filho do irmão:
∀x, y Sobrinho(x, y) ⇔ ∃z [Irmão(z, y) ∧ filho(x, z)]
Primo é o filho do irmão de um pai:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
221. Lógica de Primeira Ordem: Semântica
Exemplos
Gatos são mamı́feros:
∀x Gato(x) ⇒ Mamı́fero(x)
Paulo é um jogador alto:
Jogador(Paulo) ∧ Alto(Paulo)
Sobrinho é o filho do irmão:
∀x, y Sobrinho(x, y) ⇔ ∃z [Irmão(z, y) ∧ filho(x, z)]
Primo é o filho do irmão de um pai:
∀x, y Primo(x, y) ⇔
∃z, k [Irmão(z, k) ∧ Filho(x, z) ∧ Filho(y, k)]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 36 / 40
222. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
223. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
224. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
225. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
∀x∃y (Pai(x) = y)
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
226. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
∀x∃y (Pai(x) = y)
Todo mundo tem pai e mãe
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
227. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
∀x∃y (Pai(x) = y)
Todo mundo tem pai e mãe
∀x∃y, z [(Pai(x) = y) ∧ (Mãe(x) = z)]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
228. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
∀x∃y (Pai(x) = y)
Todo mundo tem pai e mãe
∀x∃y, z [(Pai(x) = y) ∧ (Mãe(x) = z)]
Quem quer que tenha um pai, tem uma mãe
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
229. Lógica de Primeira Ordem: Semântica
Exemplos
Ninguém ama Ana:
¬∃x Ama(x, Ana)
Todo mundo tem um pai
∀x∃y (Pai(x) = y)
Todo mundo tem pai e mãe
∀x∃y, z [(Pai(x) = y) ∧ (Mãe(x) = z)]
Quem quer que tenha um pai, tem uma mãe
∀x [[∃y (Pai(x) = y)] ⇒ [∃z (Mãe(x) = z)]]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 37 / 40
230. Lógica de Primeira Ordem: Semântica
Exemplos
Definição completa de irmão:
∀x, y Irmão(y, x) ⇔ [¬(x = y) ∧ ∃m, p ¬(m =
p) ∧ (Pai(x) = p) ∧ (Mãe(x) = m) ∧ (Pai(y) =
p) ∧ (Mãe(y) = m)]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 38 / 40
231. Lógica de Primeira Ordem: Semântica
Exemplos
Definição completa de irmão:
∀x, y Irmão(y, x) ⇔ [¬(x = y) ∧ ∃m, p ¬(m =
p) ∧ (Pai(x) = p) ∧ (Mãe(x) = m) ∧ (Pai(y) =
p) ∧ (Mãe(y) = m)]
Note que frisamos que não são a mesma pessoa (com ¬(x = y) e
¬(m = p))
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 38 / 40
232. Lógica de Primeira Ordem: Semântica
Exemplos
Definição completa de irmão:
∀x, y Irmão(y, x) ⇔ [¬(x = y) ∧ ∃m, p ¬(m =
p) ∧ (Pai(x) = p) ∧ (Mãe(x) = m) ∧ (Pai(y) =
p) ∧ (Mãe(y) = m)]
Note que frisamos que não são a mesma pessoa (com ¬(x = y) e
¬(m = p))
Isso porque as variáveis no quantificador universal vão casar com
cada elemento do domı́nio
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 38 / 40
233. Lógica de Primeira Ordem: Semântica
Exemplos
Definição completa de irmão:
∀x, y Irmão(y, x) ⇔ [¬(x = y) ∧ ∃m, p ¬(m =
p) ∧ (Pai(x) = p) ∧ (Mãe(x) = m) ∧ (Pai(y) =
p) ∧ (Mãe(y) = m)]
Note que frisamos que não são a mesma pessoa (com ¬(x = y) e
¬(m = p))
Isso porque as variáveis no quantificador universal vão casar com
cada elemento do domı́nio
Muito embora, se os conjuntos Mãe e Pai forem disjuntos, não
haverá como (m = p), tornando a parte ¬(m = p) redundante
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 38 / 40
234. Lógica de Primeira Ordem: Semântica
Mas piora...
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
235. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
236. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca)?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
237. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca)?
Não. Faltou dizer que Juca 6= Pedro
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
238. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca)?
Não. Faltou dizer que Juca 6= Pedro
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca) ∧ ¬(Juca =
Pedro)?
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
239. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca)?
Não. Faltou dizer que Juca 6= Pedro
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca) ∧ ¬(Juca =
Pedro)?
Ainda não... isso ainda resulta verdadeiro se ele tiver um 3o
irmão...
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
240. Lógica de Primeira Ordem: Semântica
Mas piora...
Como dizemos que Paulo tem 2 irmãos, Pedro e
Juca?
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca)?
Não. Faltou dizer que Juca 6= Pedro
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca) ∧ ¬(Juca =
Pedro)?
Ainda não... isso ainda resulta verdadeiro se ele tiver um 3o
irmão...
Irmão(Paulo, Pedro) ∧ Irmão(Paulo, Juca) ∧ ¬(Juca =
Pedro)∧[∀x Irmão(x, Paulo) ⇒ ((x = Pedro)∨(x = Juca))]
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 39 / 40
241. Referências
Russell, S.; Norvig P. (2010): Artificial Intelligence: A Modern
Approach. Prentice Hall. 3a ed.
Slides do livro:
http://aima.eecs.berkeley.edu/slides-pdf/
http://ocw.mit.edu/OcwWeb/Electrical-Engineering-
and-Computer-Science/6-034Spring-2005/
LectureNotes/index.htm
Norton Trevisan Roman(norton@usp.br) 10 de abril de 2019 40 / 40