Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Noes de Lgica
3 edio
Fortaleza - Cear
2015
Qumica
Informatica_Nocoes de Logica-2013.indd 1
Cincias
Biolgicas
Artes
Plsticas
Informtica
Fsica
Matemtica
Pedagogia
30/04/15 17:58
Copyright 2015. Todos os direitos reservados desta edio UAB/CE. Nenhuma parte
deste material poder ser reproduzida, transmitida e gravada, por qualquer meio eletrnico, por fotocpia e outros, sem a prvia autorizao, por escrito, dos autores.
Presidenta da Repblica
Dilma Vana Rousseff
Ministro da Educao
Renato Janine Ribeiro
Presidente da CAPES
Jorge Almeida Guimares
Diretor de Educao a Distncia da CAPES
Jean Marc Georges Mutzig
Governador do Estado do Cear
Camilo Sobreira de Santana
Reitor da Universidade Estadual do Cear
Jos Jackson Coelho Sampaio
Vice-Reitor
Hidelbrando dos Santos Soares
Pr-Reitora de Graduao
Marclia Chagas Barreto
Coordenador da SATE e UAB/UECE
Francisco Fbio Castelo Branco
Coordenadora Adjunta UAB/UECE
Elosa Maia Vidal
Diretor do CCT/UECE
Luciano Moura Cavalcante
Coordenadora da Licenciatura em Informtica
Francisco Assis Amaral Bastos
Coordenadora de Tutoria e Docncia em Informtica
Maria Wilda Fernandes
Editor da UECE
Erasmo Miessa Ruiz
Coordenadora Editorial
Rocylnia Isidio de Oliveira
Conselho Editorial
Antnio Luciano Pontes
Eduardo Diatahy Bezerra de Menezes
Emanuel ngelo da Rocha Fragoso
Francisco Horcio da Silva Frota
Francisco Josnio Camelo Parente
Gisafran Nazareno Mota Juc
Jos Ferreira Nunes
Liduina Farias Almeida da Costa
Lucili Grangeiro Cortez
Luiz Cruz Lima
Manfredo Ramos
Marcelo Gurgel Carlos da Silva
Marcony Silva Cunha
Maria do Socorro Ferreira Osterne
Maria Salete Bessa Jorge
Silvia Maria Nbrega-Therrien
Conselho Consultivo
Antnio Torres Montenegro (UFPE)
Eliane P. Zamith Brito (FGV)
Homero Santiago (USP)
Ieda Maria Alves (USP)
Manuel Domingos Neto (UFF)
Maria do Socorro Silva Arago (UFC)
Maria Lrida Callou de Arajo e Mendona (UNIFOR)
Pierre Salama (Universidade de Paris VIII)
Romeu Gomes (FIOCRUZ)
Tlio Batista Franco (UFF)
Informatica_Nocoes de Logica-2013.indd 2
30/04/15 17:58
Sumrio
Apresentao.................................................................................................5
Parte 1 - Lgica Proposicional................................................................7
Captulo 1 - Introduo Lgica............................................................9
Introduo..................................................................................................9
Captulo 4 - Quantificadores..................................................................51
Introduo................................................................................................51
1. Quantificando a funo proposicional p...............................................51
2. Negao de funes proposicionais quantificadas..............................53
2.1. Funes proposicionais quantificadas em linguagem natural......53
2.2. Negao de funes proposicionais quantificadas
em portugus........................................................................................54
3. Sentenas declarativas que envolvem mais de um quantificador.......55
4. Equivalncias lgicas...........................................................................55
5. Implicaes lgicas..............................................................................56
Informatica_Nocoes de Logica-2013.indd 3
30/04/15 17:58
Parte 3 - Resoluo...................................................................................71
Captulo 7 - Converso para Forma Clausal...................................73
Introduo................................................................................................73
1. Algoritmo Converso para forma Clausal............................................74
2. Converter a frmula abaixo para Forma Clausal.................................75
3. Aplicao do algoritmo ao programa que nos fala sobre o mundo
de Marcos e Csar...................................................................................76
4. Novo programa.....................................................................................77
Sobre os autores........................................................................................98
Informatica_Nocoes de Logica-2013.indd 4
30/04/15 17:58
Apresentao
Este livro destaca algumas das principais noes presentes no estudo da cincia do Raciocnio Lgico. Primeiramente, o livro enfatiza o
uso da linguagem Lgica na representao do conhecimento e os princpios que so empregados na demonstrao da validade de argumentos. Posteriormente, enfatiza a automao dos processos envolvidos na
demonstrao de validade e sua utilizao no contexto da programao em lgica. O contedo do livro foi divido em trs unidades: Lgica
Proposicional, Lgica de Predicados e Resoluo.
A Parte 1 apresenta informalmente os conceitos de proposies e proposi- es compostas, de teoria e raciocnio, e de sistemas formais. Em
seguida, apresenta o sistema formal Lgica Proposicional em duas partes.
A primeira parte apresenta a linguagem formal lgica proposicional, a semntica dos conectivos lgicos e as tabelas verdade, as noes de equivalncia lgica e implicao lgica, de tautologia e contradio. A segunda
parte apresenta a noo de argumento e o processo de demonstrao de
validade de um argumento.
A Parte 2 apresenta a linguagem Lgica de Predicados, a gerao de
frmulas bem formadas na linguagem e a semntica de proposies envolvendo quantificadores. Essa Unidade enfatiza a representao de proposies em Lgica de Predicados e identifica a analogia entre o processo de
demonstrao de validade de argumentos e a noo de programao em
lgica, onde o conceito de computao se confunde com o conceito de deduo, que, na Unidade, exemplificada com o mtodo do raciocnio para trs a
partir do objetivo a ser demonstrado, ou seja, de uma consulta a ser respondida por um programa em lgica.
A Parte 3 apresenta idias e algoritmos associados prova automtica de argumentos empregando o mtodo da Resoluo para a Lgica de
Predicados. So detalhados o algoritmo da Resoluo e os algoritmos de
Converso para a Forma Clausal, que o tipo de frmula bem formada manipulada pela Resoluo, e o algoritmo da Unificao, que necessrio durante
o processo de resoluo e para a obteno de respostas para consultas envolvendo variveis.
Os autores
Informatica_Nocoes de Logica-2013.indd 5
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 6
30/04/15 17:58
Parte
Lgica Proposicional
Informatica_Nocoes de Logica-2013.indd 7
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 8
30/04/15 17:58
Captulo
Introduo Lgica
Objetivos
Conhecer a linguagem formal Lgica Proposicional; assim como gerar
frmulas bem formadas nessa linguagem e atribuir valor verdade s frmulas, envolvendo conectivos lgicos, regras de inferncia que so empregadas no raciocnio correto e a forma geral em que os argumentos so
estabelecidos.
Aplicar o conhecimento adquirido nos processos de representao de
teorias e argumentos em Lgica Proposicional e de demonstrao de validade de argumentos.
Introduo
O objetivo deste captulo consiste em introduzir, informalmente, a idia do que
a Lgica e alguns outros conceitos bsicos, que acreditamos que facilitaro
a compreenso dos objetivos da disciplina e dos assuntos abordados nos prximos captulos e nas prximas unidades.
De uma maneira geral, as apologias abaixo definem, informalmente, o
que Lgica:
Lgica a cincia do raciocnio. (Malba Tahan)
Lgica a cincia das leis do pensamento e a arte de aplic-las
corretamente na pesquisa e na demonstrao da verdade. (R. Solivete)
A Lgica a cincia que dirige, por meio de leis, as operaes de nossa
razo, para que ordenada, facilmente alcance a verdade. (Sinibaldi)
Informatica_Nocoes de Logica-2013.indd 9
30/04/15 17:58
10
Informatica_Nocoes de Logica-2013.indd 10
30/04/15 17:58
Noes de Lgica
11
para provar quando certas proposies so consequncias lgicas de proposies que compem teorias.
A Lgica Proposicional um sistema formal apropriado para a representao de teorias simples, ou seja, aquelas compostas de proposies elementares (proposies que no envolvem quantificadores e variveis). Veja
como a teoria que fala a respeito do estado de esprito de Scrates e de Plato
poderia ser representada utilizando-se uma Linguagem Lgica Proposicional.
p q
q p
q p
Representando a Teoria sobre o mundo de Scrates e Plato atravs da
linguagem formal acima, podemos fazer uso de vrios mecanismos disponveis para a obteno de consequncias lgicas de proposies conhecidas.
Por exemplo, utilizando uma tabela verdade, podemos concluir que Scrates
est disposto a visitar Plato, ou seja:
p
F
F
V
V
q p q p q q p
F V
V
V
V
V V
F
V
V
F F
V
F
V
V F
F
V
F
q p
F
V
V
V
Nos prximos captulos e nas prximas unidades, apresentaremos as linguagens formais Lgica Proposicional e Lgica de Predicados, e os diversos mecanismos de inferncia disponveis para a obteno de consequncias lgicas.
Informatica_Nocoes de Logica-2013.indd 11
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 12
30/04/15 17:58
Captulo
Lgica Proposicional
, , ;
parnteses: ( , ) .
Os smbolos proposicionais so empregados na representao das
subproposies, ou seja, das proposies simples estabelecidas em linguagem natural (Portugus, Ingls, etc.). Os conectivos lgicos representam,
respectivamente, as partculas e, ou, no, se-ento e se e somente se. Os
parnteses servem para denotar pontuao. A nvel de exemplo, tente perceber a conveno geralmente adotada quando utiliza-se de parnteses na
representao de proposies escritas em linguagem natural:
3+1 = 5 ou 1=1, implica 3 = 3
representada por
representada por
Informatica_Nocoes de Logica-2013.indd 13
30/04/15 17:58
14
so fbfs;
so fbfs.
2.1. Conectivo E
Se p e q so duas proposies ento p e q , tambm, uma proposio.
Podemos dizer que.
p e q denominada conjuno de p e q;
p e q representada por p q.
De acordo com o esquema de representao adotado acima, dizemos que:
se ambas as proposies, p e q, so verdadeiras,
ento p q verdadeira
seno p q falsa.
Informatica_Nocoes de Logica-2013.indd 14
30/04/15 17:58
Noes de Lgica
F
F
V
V
F
V
F
V
15
pq
F
F
F
V
3+1=6 e 2+2=5
2=5 e 2=2
2=2 e 2=3
2=2 e 3+4=7
2.2. Conectivo Ou
Se p e q so duas proposies ento p ou q , tambm, uma proposio.
Podemos dizer que.
p ou q denominada disjuno de p e q;
p ou q representada por
ento
verdadeira
seno
falsa.
F
F
V
V
F
V
F
V
pq
F
V
V
V
2 = 3 ou 2 + 2 = 5
2 = 3 ou 3 = 3
2 = 2 ou 2 = 3
2 = 2 ou 3 + 4 = 7
Informatica_Nocoes de Logica-2013.indd 15
30/04/15 17:58
16
Essa disjuno tambm denominada ou inclusivo, ou seja, corresponde ao e/ou algumas vezes encontrada em documentos. Nesse caso, conforme voc pode observar na tabela verdade que a define, a proposio composta verdadeira, inclusive, quando ambas as subproposies envolvidas
so verdadeiras. Na conversao ordinria, frequentemente usamos ou no
sentido exclusivo, por exemplo:
Quando voc telefonou eu estava tomando banho ou estava pas-seando
Neste caso, a verdade da proposio acima no inclui as duas subproposies, ou seja, ela verdadeira quando exatamente uma das subproposies verdadeira.
Considerando a observao acima, podemos utilizar a seguinte tabela
verdade para definir o ou-excluivo:
p
F
F
V
V
F
V
F
V
pq
F
V
V
F
2.3. Conectivo No
Se p uma proposio, no p tambm uma proposio. Podemos dizer
que:
no p denominada negao de p;
no p representada por p.
De acordo com o esquema de representao adotado acima, dizemos que:
se uma proposio, p, verdadeira
ento p falsa
seno p verdadeira.
Alm do mais, o significado de p pode ser expresso atravs da seguinte tabela verdade:
Informatica_Nocoes de Logica-2013.indd 16
30/04/15 17:58
Noes de Lgica
p
F
V
17
p
V
F
Observe que existem vrias maneiras de negar uma proposio escrita
em linguagem natural. Considere, por exemplo, as proposies abaixo:
1. 2 + 2 = 5
2. No o caso que 2 + 2 = 5
3. 2 + 2 5
4. 2 + 2 > 5
5. 2 + 2 5
6. x2 + 5x - 1 no uma equao quadrtica
7. No verdade que x2 + 5x - 1 no uma equao quadrtica
8. x2 + 5x - 1 uma equao quadrtica
Note que
a segunda e a terceira proposies so negaes da primeira;
a quinta proposio a negao da quarta;
a stima e oitava proposies so negaes da sexta.
Neste curso de Noes de Lgica, ser considerado que o smbolo se
aplica somente ao prximo smbolo proposicional, ou seja:
p
q significa (p)
q no significa (p
q
q)
Alm disso, considerando a representao de proposies em linguagem natural, adotaremos a seguinte conveno:
p
(p
Informatica_Nocoes de Logica-2013.indd 17
30/04/15 17:58
18
F
F
V
V
F
V
F
V
(pq)
F
F
V
F
V
F
V
F
F
q
F
V
F
V
q
q
V
F
V
F
q
F
V
F
V
(pq)
q
V
F
V
F
(pq)
V
F
V
V
(pq)
(pq)
V
F
V
V
(pq)
F
V
F
F
q)
Aps um perodo de experincia, alguns dos passos escritos acima podem ser eliminados. Observe que, se uma proposio composta envolve n
subproposies, sua tabela verdade tem 2n linhas. Por exemplo: uma proposio composta por 3 subproposies tem 23 (oito) linhas.
Para refletir
1. Atribua valores verdade para as seguintes proposies:
a) 3 7 e 4 um inteiro mpar.
b) 3 7 ou 4 um inteiro mpar.
c) 2 + 1 = 3 mas 4 < 4.
d) 5 mpar ou divisvel por 4.
Informatica_Nocoes de Logica-2013.indd 18
30/04/15 17:58
Noes de Lgica
19
q.
ii) (r
q).
iii) r
q.
q.
b) p
p.
c) (p
q)
d) (p
q).
e) p
q.
f) p
q.
r.
g) p p.
h) (p).
4. Apresente negaes adequadas para:
a) 3 - 4 < 7.
b) 3 + 1 = 5 e 2 4.
c) 8 divisvel por 3, mas 4 no .
5. Suponha que definamos o conectivo da seguinte maneira: se p falsa, e q verdadeira,
ento p q verdadeira, seno p q falsa.
a) Escreva a tabela verdade para p q.
b) Escreva a tabela verdade para q p.
c) Escreva a tabela verdade para (p p) q.
6. Denotemos o ou exclusivo, algumas vezes utilizado em nossas conversaes ordinrias,
por . Na definio de p q, se exatamente uma das formas p, q verdadeira ento
p q verdadeira, seno p q falsa.
a) Escreva a tabela verdade para p
b) Escreva as tabelas verdade para p
Informatica_Nocoes de Logica-2013.indd 19
q.
p e (p
q)
q.
30/04/15 17:58
20
c) Mostre que e/ou realmente significa e ou ou, isto , que a tabela verdade para p
a mesma que (p q) ( p q).
q)
(p
q), (p
q)
(p
q) possuem o
d) Mostre que as formas (p
mesmo significado, ou seja, e ou ou pode ser representado tanto por
(p q) (p q) quanto por (p q) (p q).
3. Implicao e o Bi condicional
Uma das mais importantes formas matemticas a implicao. A maioria dos
teoremas matemticos descrita neste formato, ou seja, como uma proposio do tipo se hiptese, ento concluso. O bi condicional uma forma
matemtica que pode ser composta a partir de duas implicaes e uma conjuno. Podemos demonstrar esta afirmao a partir do momento que apresentarmos uma definio para o conceito de equivalncia lgica. Dividimos
esta seo em trs subsees principais:
1. Equivalncia Lgica
2. Implicao
3. Bi-condicional
q
F
V
F
V
p
V
V
F
F
q
V
F
V
F
(p q )
F
F
F
V
(p q )
V
V
V
F
p q
V
V
V
F
Observe que, independentemente de sabermos o que p e q representam, podemos afirmar que a fbf (p q) logicamente equivalente a fbf
p q. importante ressaltar que a forma de uma proposio que deter-
Informatica_Nocoes de Logica-2013.indd 20
30/04/15 17:58
Noes de Lgica
21
(p q) p q
3.2. Implicao
Se p, q so proposies, ento se p ento q tambm uma proposio.
Podemos dizer que:
se p ento q denominada condicional entre p e q;
se p ento q representada por p q.
Nessa proposio, p denominada premissa (ou hiptese ou antecedente), e q denominada concluso (ou consequncia ou consequente).
De acordo com o esquema de representao adotado acima, dizemos que:
se p uma proposio verdadeira, e q uma proposio falsa,
ento p q falsa
seno p q verdadeira.
Alm disso, o significado de p q pode ser expresso atravs da seguinte tabela verdade:
Informatica_Nocoes de Logica-2013.indd 21
30/04/15 17:58
22
p
F
F
V
V
q
F
V
F
V
pq
V
V
F
V
Podemos compreender melhor a tabela verdade da implicao, buscando um esclarecimento para o significado de uma proposio do tipo "se p ento
q". Uma proposio desse tipo nos diz exatamente que se p, o antecedente,
ocorrer (verdadeiro), ento q, o consequente, tambm deve ocorrer. Nesse
caso, dizemos que a ocorrncia de p suficiente para garantir a ocorrncia de
q, e, tambm, que, quando p ocorrer, q deve necessariamente ocorrer.
Considerando esse significado, podemos justificar a quarta linha da tabela verdade do condicional, ou seja, na situao em que o antecedente e o
consequente so V, o condicional , tambm, V, j que o significado da proposio "se antecedente ento consequente" est sendo respeitado.
Seguindo essa linha de raciocnio, somente a terceira linha da tabela parece violar o significado deste tipo de proposio, j que, nessa linha, o antecedente ocorre e o consequente no ocorre (falso), ou seja, quando o antecedente
V e o consequente F, o condicional das subproposies falso.
Alm do mais, observe que a proposio se "antecedente ento consequente" no nos diz nada a respeito de qual deve ser o estado do conseqente
(V ou F?) quando o antecedente F. Isso significa, que, tanto a primeira linha
da tabela (antecedente F e consequente F), quanto a segunda (antecedente
F e conseqente V) no violam o significado da proposio se-ento, ou seja,
o condicional de subproposies cujos valores verdade so semelhantes aos
dessas linhas V.
Uma melhor compreenso do significado de uma proposio no formato
de um condicional, tambm, d origem s seguintes equivalncia lgicas:
q p
p q (p q)
p q
Informatica_Nocoes de Logica-2013.indd 22
30/04/15 17:58
Noes de Lgica
23
Ou seja; quando p q verdadeira, ento q p verdadeira e vice-versa; e quando p q verdadeira ento porque (p q) verdadeira (isto , p q falsa) e vice-versa. A proposio q p denominada
contrapositiva de p q.
Alm do formato "se p ento q", existem outras maneiras de se estabelecer o condicional em Portugus:
Se p ento q
p implica q
p mais forte que q
q mais fraca que q
p somente se q
q se p
p suficiente para q
q necessria para p
Uma condio necessria para p q
Uma condio suficiente para q p
3.3. Bi-condicional
Se p e q so proposies, ento p se e somente se q (algumas vezes abreviado sss) tambm uma proposio. Podemos dizer que
p se e somente se q denominada bi condicional entre p e q;
p se e somente se q representada por pq.
De acordo com o esquema de representao adotado acima, dizemos que
se p e q tm o mesmo valor verdade
ento p q verdadeira
seno p q falsa.
q
F
V
F
V
pq
V
F
F
V
Por exemplo, a primeira e a quarta proposies a seguir so verdadeiras, e a segunda e a terceira so falsas:
Informatica_Nocoes de Logica-2013.indd 23
30/04/15 17:58
24
p q (q p)
( q p).
p q (p q)
(q p).
Para refletir
1. Quais das formas abaixo so logicamente equivalentes?
a) p q.
e) p q.
b) p q.
f) (p q).
c) ( p q).
g) p q.
d) q p.
h) p q.
2. Mostre que os seguintes pares (formas) so logicamente equivalentes:
a) p (q r); (p q) ( p r).
b) p (q r); (p q) ( p r).
c) p q; (p q) ( q p).
d) p q; q p.
3. Mostre que os seguintes pares (formas) no so logicamente equivalentes:
a) (p q); p q.
b) (p q); p q.
c) p q; q p.
d) (p q); p q.
4. Indique quais proposies so verdadeiras:
a) Se 2 + 1 = 4 ento 3 + 2 =5.
b) Vermelho branco se e somente se verde azul.
Informatica_Nocoes de Logica-2013.indd 24
30/04/15 17:58
Noes de Lgica
25
c) 2 + 1 = 3 e 3 + 1 = 5 implica 4 impar.
d) Se 4 impar ento 5 impar.
e) Se 4 impar ento 5 par.
f) Se 5 impar ento 4 impar.
5. D exemplos de proposies ou mostre porque o exemplo no existe.
a) Uma implicao verdadeira com uma concluso falsa.
b) Uma implicao verdadeira com uma concluso verdadeira.
c) Uma implicao falsa com uma concluso verdadeira.
d) Uma implicao falsa com uma concluso falsa.
e) Uma implicao falsa com uma hiptese falsa.
f) Uma implicao falsa com uma hiptese verdadeira.
g) Uma implicao verdadeira com uma hiptese verdadeira.
h) Uma implicao verdadeira com uma hiptese falsa.
6. Transforme em smbolos:
a) p sempre que q.
b) p a menos que q.
7. D uma negao para p q em uma forma que no envolva o bi condicional.
8. Suponha que p,
deiras?
a) p q.
b) q p.
c) p (q r).
d) p q.
4. Tautologias
As tautologias formam uma classe de proposies muito importante. So proposies compostas sempre verdadeiras, isto , suas tabelas verdade contm somente valores verdadeiros (Vs) na coluna final. O fato de uma proposio ser uma
tautologia depende do formato da proposio, ou seja, da ordem em que os smbolos proposicionais so combinados com os conectivos e com os parnteses
Informatica_Nocoes de Logica-2013.indd 25
30/04/15 17:58
26
q
F
V
F
V
(p q)
F
V
V
V
p (p q)
V
V
V
V
Observe, na tabela verdade anterior, o fato de p (p q) ser uma tautologia independe dos significados atribudos s subproposies envolvidas (dos significados de p e q), ou seja, toda proposio composta possvel de ser representada por esta fbf configura uma tautologia. Por exemplo: considerando que p e q
representem, respectivamente, bananas so laranjas e bananas so bananas
(ou que p e q representem quaisquer outras duas proposies), o valor verdade
de p (p q) V, ou seja, se bananas so laranjas, ento bananas so laranjas
ou bananas so bananas uma proposio verdadeira (assim como, se 2 = 2
ento 2 = 2 ou 3 + 1 = 5 , tambm, uma proposio verdadeira).
importante que faamos a distino entre proposies verdadeiras e
tautologias. Nem sempre uma proposio verdadeira uma tautologia. Por
exemplo: 2 + 2 = 4 uma proposio verdadeira, mas no uma tautologia
pois, considerando sua representao por meio do smbolo proposicional p, a
tabela verdade desta fbf nem sempre verdadeira:
p
F
V
Por outro lado, para reforar a ideia de uma tautologia, podemos dizer
que a proposio 5 a raiz primitiva de 17 ou 5 no a raiz primitiva de 17
uma tautologia, independentemente do que venha a ser a definio de raiz
primitiva. Por exemplo: representando 5 a raiz primitiva de 17 pelo smbolo
proposicional p, observe que a tabela verdade da fbf p p contm somente
valores verdadeiros:
p
F
F
V
V
Informatica_Nocoes de Logica-2013.indd 26
q
F
V
F
V
p
V
V
F
F
p p
V
V
V
V
30/04/15 17:58
Noes de Lgica
27
A negao de uma tautologia, isto , uma proposio cuja tabela verdade contm somente valores falsos, denominada contradio. Por exemplo:
a fbf (p q) (p q) configura uma contradio:
p
F
F
V
V
q
F
V
F
V
q
V
F
V
F
(p q)
V
V
F
V
(p q)
F
F
V
F
(p q) (p q)
F
F
F
F
q
V
F
qq
F
F
(p q) (pq verdadeira).
Informatica_Nocoes de Logica-2013.indd 27
30/04/15 17:58
28
(p q)
( q p)
(p q) ( q p)
F
F
V
V
F
V
F
V
V
V
F
F
V
F
V
F
V
V
F
V
V
V
F
V
V
V
V
V
Alm disso, utilizando a ideia de tautologia, podemos apresentar a definio de implicao lgica:
p q uma implicao lgica se p q for uma tautologia.
Nesse caso, dizemos que p implica logicamente q ou que q uma
consequncia lgica de p.
Uma implicao lgica desse tipo ser denotada por:
p
q.
q) (p q verdadeira).
q
F
V
F
V
(p q)
F
F
F
V
(p q) p
V
V
V
V
p (p q)
V
V
F
V
Informatica_Nocoes de Logica-2013.indd 28
30/04/15 17:58
Noes de Lgica
29
( p p)
pp
a) p (p p)
b) p (p
5.
p)
pp
Informatica_Nocoes de Logica-2013.indd 29
idempotent laws
double negation
30/04/15 17:58
30
6.
a) (p q) (q p)
commutative laws
b) (p q) (q p)
c) (p q) (q p)
7.
a) (p (q r) ((p q) r)
8.
q) r)
a) (p
(q r) ((p q) (p r))
b) (p (q r) ((p q) (p r))
distributive laws
9.
a) (p c) p
identity laws
b) (p
b) (p
(q
associative laws
r) ((p
c) c
d) (p t) t
d) (p
t) p
(p q) ( p q)
b) (p q) ( p q)
10.
a)
11.
a) (p q) ((p q)
b) (p q) ((p
(q p))
q) ( p
c) (p q) ( p
12.
q)
14.
15.
a) (p r)
equivalence
q))
a) (p q) ( p q)
(p q) (p q)
(p q) ( q p)
(p q) ((p q) c)
DeMorgans laws
implication
b)
13.
reductio ad absurdum
16.
(q r) ((p q) r)
b) ((p q) (p r)) (p (q r))
((p q) r) (p (q r))
exportation law
17.
p (p q)
addition
18.
(p
19.
(p
20.
((p q)
q) p
simplification
(p q)) q
modus ponens
modus tollens
22.
q) p
((p q) (q r)) (p r)
((p q) p) q
23.
(p c)
absurdity
24.
((p q)
25.
(p q) ((p r) (q r))
21.
Informatica_Nocoes de Logica-2013.indd 30
contrapositive
hypothetical syllogism
disjunctive syllogism
30/04/15 17:58
Noes de Lgica
31
Para refletir
1. Determine quais das seguintes formas abaixo tm a forma de uma das tautologias apresentadas na lista em anexo (por exemplo, ( q p) q tem a forma de 18).
q ( q p).
b) q (q p).
c) (r p) ( r p).
d) (p q) ( p q).
a)
e) ( r q) ( q r).
f) (p ( r q)) ((r
(q r).
h) (( q p) q) p.
q) p).
g) r
q)) p.
d) ((p q) p) q.
c) (p (p
4. Quais das seguintes formas so tautologias, contradies ou nem uma e nem outra
coisa?
a) (p
q) (q p).
p p.
c) p p.
d) (p p) p.
b)
p) q.
f) (p q) (p q).
e) (p
g) [(p q) r] [p (q r)].
Informatica_Nocoes de Logica-2013.indd 31
30/04/15 17:58
32
b) 3 + 1 = 4 e 5 + 3 = 8 implica 3 + 1 = 4.
c) 3 + 1 = 4 e 5 + 3 = 8 implica 3 + 2 = 5.
d) Vermelho amarelo ou vermelho no amarelo.
e) Vermelho amarelo ou vermelho vermelho.
f) 4 mpar ou 2 par e 2 mpar implica que 4 mpar.
g) 4 mpar ou 2 par e 2 mpar implica que 4 par.
9.Quais das seguintes concluses so consequncias lgicas do conjunto de proposies p
q, r q, p?
a) q
b) r.
c)
p s
r
e) ( q r)
d)
f) q r
5. Argumentos
Argumentos so proposies descritas no formato de implicaes. Em geral,
o antecedente de um argumento uma conjuno de subproposies simples ou compostas, e o consequente uma subproposio do mesmo tipo
do antecedente. Sendo assim, podemos representar os argumentos de uma
pessoa atravs da seguinte forma geral:
(p1
p2 ... pn) q;
Informatica_Nocoes de Logica-2013.indd 32
30/04/15 17:58
Noes de Lgica
33
pr
q - p.
Na forma geral: ((r p)
(p r) ( p r)) p
Vale ressaltar que os teoremas matemticos podem ser representados no formato dos argumentos. Observe a definio de Programa em
Lgica e Consulta a um Programa. Um Programa em Lgica (programa
= teoria) um conjunto de proposies a respeito de um mundo particular, e
uma Consulta a um Programa (consulta = consequncia lgica, ou no, da
teoria) em lgica uma proposio a respeito desse mundo.
Isso nos sugere uma analogia entre argumentos, e programas e consultas. Na realidade, essa analogia e o entendimento do processo de demonstrao da validade de argumentos so teis para a assimilao da idia de se
programar em Lgica. De acordo com essa analogia, um programa em Lgica
pode ser representado pelo conjunto de fbfs que compem o antecedente da
forma geral de um argumento correspondente, ou seja,
pr
Consulta em Linguagem Lgica Proposicional
q -p?
Informatica_Nocoes de Logica-2013.indd 33
30/04/15 17:58
34
Na realidade, a ideia de Programao em Lgica fundamenta-se na analogia entre os argumentos, os programas e as consultas. Nesta disciplina, exploramos essa analogia programando em Linguagem Formal Lgica. Mas, antes
disso, ainda precisamos considerar o processo de demonstrao de validade de
argumentos e os meios que podem ser empregados para essa finalidade.
Informatica_Nocoes de Logica-2013.indd 34
30/04/15 17:58
Noes de Lgica
35
Tabela Verdade
p
rp
p r
p r
(r p) (p r) (p r)
(r p) (p r) (p r) p
Informatica_Nocoes de Logica-2013.indd 35
30/04/15 17:58
36
Hipteses do Argumento
Se 2 + 2 = 4 ento 3 + 5 = 7
2 + 2 4
Concluso Argumento
3 + 5 7 ?
Hipteses do Argumento
Considerando:
p - 2 + 2 4 e
q - 3 + 5 = 7,
temos:
p1 - p q
p2 - p
Concluso do Argumento
q - q.
Assim, argumento na forma geral: ((p q) p) q
Mtodo de Demonstrao da Validade do Argumento
p
p q
(p q) p
((p q) p) q
F
F
F
V
V
V
V
F
F
V
F
F
V
V
Como nem sempre que (p q) p V, q V (ver quarta linha da tabela verdade), ento ((p q) p) q no uma tautologia, consequentemente, um
argumento no vlido, ou seja, q no consequncia lgica de (p q)p.
Nesse caso, consideraremos que a resposta 3 + 5 7 no consequncia lgica do programa.
Observe que, se o nmero de subproposies diferentes envolvidas em
um argumento/programa-consulta for muito grande, pode ser inconveniente
checar a validade de argumentos/responder a uma consulta utilizando uma
tabela verdade, pois essa tabela pode conter muitas linhas. Essa restrio impossibilita a utilizao generalizada de Tabelas Verdade na demonstrao da
validade de argumentos e/ou na Programao em Lgica Proposicional.
Informatica_Nocoes de Logica-2013.indd 36
30/04/15 17:58
Noes de Lgica
37
Para refletir
1. Onde for possvel, d exemplos; se no for possvel diga o motivo:
a) Um argumento no vlido com uma concluso falsa.
b) Um argumento vlido com uma concluso verdadeira.
c) Um argumento no vlido com uma concluso verdadeira.
d) Um argumento vlido com uma concluso falsa.
e) Um argumento vlido com uma hiptese verdadeira e uma concluso falsa.
f) Um argumento no vlido com uma hiptese verdadeira e uma concluso falsa.
g) Um argumento vlido com uma hiptese falsa e uma concluso verdadeira.
2. Determine a validade dos argumentos descritos em Linguagem Lgica Proposicional,
usando tabelas verdade:
a) p q
b) p q
c) p q
p q
rq
p
qp
q
q
r
d) q p
q
p
e) p
pq
f) (p q) (r s)
r
p q
g) p q
q r
s (p r)
s
q
h) p q
q r
r p
(p q)
i) p q
r q
r p
p
j) p p
p
k) p q
pr
r
q
l) p
q p
q (r s)
r
s
3. A seguir, apresentamos alguns argumentos. Determine a validade dos argumentos/responda s consultas descritas em Portugus, utilizando tabelas verdade:
a) Hipteses do Argumento 1
Se o dia est bonito, ento vou praia
No vou praia
Concluso do Argumento 1
O dia no est bonito ?
b) Hipteses do Argumento 2
Se Nazar Coelho est na Universidade, ento Pedro est no hospital e Jos mudou de
emprego
Jos mudou de emprego
Pedro est no hospital
Informatica_Nocoes de Logica-2013.indd 37
30/04/15 17:58
38
Concluso do Argumento 2
Nazar Coelho est na Universidade ?
c) Hipteses do Argumento 3
Se Joo descobre a conspirao e der valor a sua vida, ento abandonar o pas
Joo d valor a sua vida
Concluso do Argumento 3
Se Joo descobre a conspirao ento abandonar o pas ?
d) Hipteses do Argumento 4
Se Talita conseguir arranjar um carro emprestado e for pela auto estrada, ento chegar antes de terminar o prazo
Talita chegar antes de terminar o prazo
Concluso do Argumento 4
Se Talita consegue arranjar um carro emprestado ento vai pela auto estrada ?
e) Hipteses do Argumento 5
Se Gerson no est em condies, ento Bira ser zagueiro de rea ou Miguel ser o
zagueiro de rea
Bira no o zagueiro de rea
Concluso do Argumento 5
Se Miguel no o zagueiro de rea, ento Gerson est em condies ?
f) Hipteses do Argumento 6
Se Almir apoia o presidente, ento Jader apoia o novo candidato
Se Jader apoia o novo candidato, ento Hlio abandonar o partido
Se Hlio abandona o partido, ento Almir no apoia o presidente
Concluso do Argumento 6
Almir no apoia o presidente ?
g) Hipteses do Argumento 7
Se Paulo se retira da reunio, ento Baslio ser nomeado ou Clara ficar desapontada
Baslio no ser nomeado
Concluso do Argumento 7
Se Paulo se retira da reunio, ento Clara ficar desapontada ?
Informatica_Nocoes de Logica-2013.indd 38
30/04/15 17:58
Noes de Lgica
39
s2 = p r
s3 = (r p) (p r)
s5 = (r r)
s6 = Tautologia 12.a) - (p q) (p q)
s7 = r r
s8 = (r r) r
s10 = p r
s9 = r
utilizando Tautologia 20
((p q) q) p
s11 = (p)
s12 = Tautologia 5 - p p
s13 = p
Para refletir
1. Para cada um dos argumentos que voc considerou como vlidos na Atividade de
Avaliao 3 (Seo Validade e as Tabelas Verdade), utilize a Adaptao do Princpio da
Demonstrao para a Programao em Lgica e mostre que cada uma das respostas correspondentes sim.
Informatica_Nocoes de Logica-2013.indd 39
30/04/15 17:58
40
p2 - q p
p3 - p q
p4 - q
Nova Concluso do Argumento
q - contradio.
Informatica_Nocoes de Logica-2013.indd 40
30/04/15 17:58
Noes de Lgica
41
s2 = p q
utilizando Tautologia 22
(p q) p) q
s4 = p q
s3 = p
utilizando Tautologia 19
(p (p q)) q
s5 = q
s6 = q
s7 = q q
s8 = (q q) contradio
s9 = contradio
Informatica_Nocoes de Logica-2013.indd 41
30/04/15 17:58
42
Atividades de avaliao
1. Para cada um dos argumentos que voc considerou como vlidos na
Atividade de Avaliao 3 na Seo Validade e as Tabelas Verdade, utilize a Extenso do Princpio da Demonstrao e mostre que cada uma
das respostas correspondentes sim.
2. Para cada um dos argumentos que voc considerou como no vlidos
na Atividade de Avaliao 3 na Seo Validade e as Tabelas Verdade,
encontre um contra exemplo.
Informatica_Nocoes de Logica-2013.indd 42
30/04/15 17:58
Noes de Lgica
43
Leituras
PAIXO, Walter. Aprendendo a raciocinar: lgica para iniciantes. So Paulo:
Humanitas, 2007.
ABE, Jair Minoro; SCALZITTI, Alexandre e SILVA FILHO, Joo Incio. Introduo lgica para a cincia da computao. So Paulo: Arte & Cincia, 2002.
SOUZA, Joo Nunes de. Lgica para cincia da computao: uma introduo concisa. 2 ed. Rio de Janeiro: Elsevier, 2008.
Filmes/Vdeos
Raciocnio Lgico - lgebra das Proposies, Lgica Proposicional.
Durao: 43min 53s. Video aula que aborda: Raciocnio Lgico - lgebra
das Proposies, Lgica Proposicional - Tabela Verdade. Aula bastante didtica com o Prof. Pedro Evaristo. Acesso em: https://www.youtube.com/
watch?v=H8DiPEokCsg
Raciocnio Lgico - Conectivos Lgicos - Estudo das Negaes e Argumentao. Durao: 35min 44s. Video aula que aborda: Raciocnio Lgico Conectivos Lgicos - Estudo da Negao. Aula bastante didtica com o Prof.
Pedro Evaristo. Acesso em: https://www.youtube.com/watch?v=e2sXcHuLTjk
Eletrnica Digital - Tabela Verdade. Durao: 24min 38s. Vdeo aula de eletrnica digital sobre a definio, formao e metodologia de montagem da
Tabela Verdade. Neste vdeo apresentada principalmente uma metodologia
para a montagem geral de qualquer Tabela Verdade. Acesso em: https://www.
youtube.com/watch?v=w0X7mM-_0Vo
Sites
http://www.infoescola.com/matematica/logica-proposicional/
http://www.pucsp.br/~logica/Proposicional.htm
http://www.pucrs.br/famat/demat/facin/exerc.htm
Informatica_Nocoes de Logica-2013.indd 43
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 44
30/04/15 17:58
Parte
Lgica de Predicados
Informatica_Nocoes de Logica-2013.indd 45
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 46
30/04/15 17:58
Captulo
Linguagem Lgica de
Predicados
Objetivos
Conhecer a linguagem formal Lgica de Predicados, assim como gerar frmulas bem formadas nessa linguagem, a atribuio de valor verdade s
frmulas envolvendo quantificadores, algumas implicaes e equivalncias
lgicas que podem ser empregadas durante o processo de raciocnio.
Aplicar o conhecimento adquirido nos processos de representao de programas em Lgica de Predicados e de raciocnio automtico na obteno
de respostas para consultas realizadas aos programas.
Introduo
Uma teoria consiste de um conjunto de proposies acerca de um universo
de discurso (U). Considere o exemplo abaixo:
Catlogo:
p1. Soma.for um programa FORTRAN
p2. Soma.pas um programa PASCAL
p3. Soma.pro um programa PROLOG
p4. Todo programa FORTRAN um programa procedimental
p5. Todo programa PASCAL um programa procedimental
p6. Todo programa PROLOG um programa declarativo
U = {Soma.for. Soma.pas, Soma.pro, FORTRAN, PASCAL, PROLOG}
Um sistema formal consiste de uma linguagem formal e de uma abstrao adequada para os princpios usados para decidir quando uma proposio consequncia lgica de outras.
Informatica_Nocoes de Logica-2013.indd 47
30/04/15 17:58
48
Lgica Proposicional
Lgica de Predicados
homem(Scrates)
homem(Plato)
x:(homem(x) mortal(x))
Informatica_Nocoes de Logica-2013.indd 48
30/04/15 17:58
Noes de Lgica
49
Smbolos No-lgicos
constantes: FORTRAN, PASCAL, PROLOG, ...
smbolos predicativos: programa, procedimental, declarativo, ...
smbolo funcionais: sen, cos, ...
Informatica_Nocoes de Logica-2013.indd 49
30/04/15 17:58
50
Termos
varivel: x, y, ...
constantes: 0, 1, Soma.for ...
Frmulas
frmula atmica: programa(Soma.for, FORTRAN), procedimental(x), ...
Alfabeto
A = {maior, x, y, ... } U
Significado
maior(x, y) = V sss (x, y) {(m,n) UxU
| m > n}
maior(2, 1) = V
maior(1, 1) = F
Informatica_Nocoes de Logica-2013.indd 50
30/04/15 17:58
Captulo
Quantificadores
Introduo
Uma Proposio uma sentena declarativa que verdadeira ou falsa.
Exemplo:
Proposio
Valor Verdade
2 < 3
Verdadeira
x D1 = {1,2,3}
y D2 = {2,4}
Proposio
Representao
V. Verdade
x < 3
1 < 3
p(1)
verdadeira
x < 3
2 < 3
p(3)
falsa
x < y
2 < 4
q(2, 4)
verdadeira
x < y
3 < 2
q(3, 2)
falsa
Informatica_Nocoes de Logica-2013.indd 51
30/04/15 17:58
52
Veja o exemplo:
F. Prop.
Representao
Proposio
Representao
x < 3
p(x)
x:p(x)
x < 3
p(x)
x:p(x)
x < y
q(x, y)
x:y:q(x, y)
x < y
q(x, y)
x:y:q(x, y)
Para refletir
1. Seja x D = {1, 2, 3, 4}, y S = {-1, 0, 1, 2}, p(x) x < 3 e q(y) y < 3. Verifique o valor
verdade das seguintes proposies: x : p(x), y : q(y), x : p(x), y : q(y).
2. Seja x D o conjunto de matemticos acima de trs metros de altura, p(x) x gosta
de chocolate. Verifique o valor verdade das seguintes proposies: x : p(x), x : p(x).
Informatica_Nocoes de Logica-2013.indd 52
30/04/15 17:58
Noes de Lgica
53
Informatica_Nocoes de Logica-2013.indd 53
30/04/15 17:58
54
Observaes:
Todo p um q representado por x : (p(x) q(x))
Algum p um q representado por x : (p(x) q(x))
x : (p(x) q(x))
x : ( p(x) q(x))
Negao da representao
Significado da representao em Portugus
Para refleir
1. Encontre uma negao para cada uma das proposies a seguir.
a) Existe um inteiro x tal que 4 = x + 2.
b) Para todo inteiro x, 4 = x + 2.
c) Todo estudante gosta de lgica.
d) Alguns estudantes no gostam de lgica.
e) Nenhum homem uma ilha.
f) Todo mundo que estuda lgica gosta.
g) Toda pessoa tem uma me.
2. Seja D o conjunto dos nmeros naturais (isto , D = {1, 2, 3, 4, ...}), p(x) x par, q(x) x
divisvel por 3 e r(x) x divisvel por 4. Expresse em Portugus, determine valores
verdade e d uma negao para cada uma das proposies.
a) x : p(x).
f) x : r(x).
b) x : (p(x) q(x)).
g) x : (p(x) q(x)).
c) : (p(x) q(x)).
d) : (p(x) r(x)).
e) x : (p(x) q(x)).
Informatica_Nocoes de Logica-2013.indd 54
30/04/15 17:58
Noes de Lgica
55
Para refletir
1. Seja S = T = conjunto de todas as pessoas e p(x,y) y me de x. Qual o valor
verdade de x:(y:p(x,y)) e y:(x:p(x,y))?
2. Seja a proposio: Para todo cachorro preto no sof existe uma pulga no carpete
tal que se o cachorro preto ento a pulga pica o cachorro.
a) Qual a representao da proposio em Linguagem Lgica de Predicados?
b) Qual a negao da proposio em Linguagem Lgica de Predicados?
c) Qual a negao da proposio em Portugus?
4. Equivalncias lgicas
Alm da equivalncia lgica dada pela negao entre os quantificadores para
todo e existe, outras equivalncias existem, como apresentado abaixo:
x : (y : p(x,y)) y : (x : p(x,y))
x : (y : p(x,y)) y : (x : p(x,y))
((x : p(x)) (x : q(x))) x : (p(x) q(x))
((x : p(x)) (x : q(x))) x : (p(x) q(x))
Informatica_Nocoes de Logica-2013.indd 55
30/04/15 17:58
56
5. Implicaes lgicas
Alm dessas equivalncias lgicas, algumas implicaes lgicas podem ser
desenhadas.
y : (x : p(x,y)) x : (y : p(x,y))
((x : p(x)) (x : q(x))) x : (p(x) q(x))
x : (p(x) q(x)) ((x : p(x)) (x : q(x)))
x : (p(x) q(x)) ((x : p(x)) (x : q(x)))
As ideias e mtodos de anlise utilizados para declaraes envolvendo
dois quantificadores podem ser estendidos para trs (ou mais) quantificadores.
Atividades de avaliao
1. Seja S = conjunto de inteiros, p(x) x par e q(x) x mpar.
3. Traduzir as seguintes sentenas em formas simblicas, indicando escolhas apropriadas para os domnios:
a) Para todo inteiro par n existe um inteiro k tal que n = 2k.
b) Para toda linha l e todo ponto p no em l existe uma linha l que passa por
p que paralela a l.
c) Para todo y em B existe um x em A tal que f(x) = y.
d) Para todo x em G existe um x em G tal que xx = e.
e) Se todo inteiro mpar, ento todo inteiro par.
f) Todo mundo ama algum alguma vez.
g) Para todo inteiro n existe outro inteiro maior que 2n.
h) A soma de dois inteiros pares par.
4. Ache uma negao em Portugus para todas as proposies no exerccio acima.
5. Considere que p(x,y) representa x + 2 > y e D o conjunto dos nmeros naturais (D= {1, 2, 3,...}). Escreva em palavras e atribua valores verdade para
Informatica_Nocoes de Logica-2013.indd 56
30/04/15 17:58
Noes de Lgica
57
a) x : (y : p(x,y)). d) x : (y : p(x,y)).
b) x : (y : p(x,y)).
e) y : (x : p(x,y)).
c) x : (y : p(x,y)). f) y : (x : p(x,y)).
6. Considere a seguinte proposio: Para toda galinha no galinheiro e para
toda cadeira na cozinha existe uma frigideira no armrio tal que se o ovo
da galinha est na frigideira ento a galinha est a dois metros da cadeira.
a) Traduza em forma simblica.
b) Expresse sua negao em smbolos e em Portugus.
Informatica_Nocoes de Logica-2013.indd 57
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 58
30/04/15 17:58
Captulo
Representao do
conhecimento e
programao em lgica
Introduo
A Programao em Lgica de Predicados composta pelos seguintes elementos:
Um programa, que uma teoria formalizada em Linguagem Lgica de
Predicados, isto , uma coleo finita de frmulas em Linguagem Lgica
de Predicados;
Uma consulta, que qualquer frmula em Linguagem Lgica de Predicados exprimindo as condies a serem satisfeitas por uma resposta correta;
Uma resposta correta, que um indivduo do universo de discurso U; e
Um mtodo de busca que pode ser utilizado para obteno de respostas
a Resoluo para Lgica de Predicados.
Exemplo:
Informatica_Nocoes de Logica-2013.indd 59
30/04/15 17:58
60
Informatica_Nocoes de Logica-2013.indd 60
30/04/15 17:58
Noes de Lgica
61
(1)
Informatica_Nocoes de Logica-2013.indd 61
30/04/15 17:58
62
Atividades de avaliao
1. Represente as seguintes sentenas por fbf em Lgica de Predicados:
a) Um sistema de computador inteligente se pode realizar uma tarefa que,
se realizada por um humano, requer inteligncia.
b) Uma frmula cujo conectivo principal uma equivalente a alguma
frmula cujo principal conectivo um .
c) Se a entrada para o algoritmo da unificao um conjunto de expresses unificveis, a sada o mgu (unificador mais geral); se a entrada
um conjunto de expresses no unificveis, a sada fracasso.
d) Se no se pode dizer um fato a um programa, ento o programa no
pode aprender o fato.
2. Traduza as seguintes fbf em Lgica de Predicados para o Portugus.
a) x : (duvida(x) perde(x)).
b) x : (homem_negcios(x) gosta(x,vida_noturna)).
c) x : (brilhante(x) ouro(x)).
d) x : (y : (z : (mais_rpido(x,y) mais_rpido(y,z)) mais_rpido (x,z))).
Informatica_Nocoes de Logica-2013.indd 62
30/04/15 17:58
Noes de Lgica
63
Informatica_Nocoes de Logica-2013.indd 63
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 64
30/04/15 17:58
Captulo
Funes e Predicados
Computveis e a
Noo de Igualdade
Introduo
Considerando que estamos interessados nos aspectos de construo de programas provadores automticos, capazes de encontrar respostas para consultas, as funes computveis so necessrias quando o programa precisar
avaliar a verdade de predicados que possuam expresses funcionais, como
termos. Por exemplo:
2 + 3 maior que 1
maq(+(2, 3), 1))
Nesse caso, o programa provador deve chamar uma funo computvel capaz de computar o valor da expresso 2+3 e, em seguida, avaliar o
predicado maq(5, 1).
No programa em lgica apresentado anteriormente, utilizamos predicados isolados (para diferenciar de predicados computveis) para a representao de fatos simples e uma combinao desses predicados para a representao de relaes entre fatos. Por exemplo:
6. Marcos tentou assassinar Csar
tentou_assassinar(Marcos,Csar)
9. Todos os homens so pessoas
x : (homem(x) pessoa(x))
A representao por meio de predicados isolados deve ser empregada
quando o nmero de fatos no for muito grande. Se, por exemplo, desejarmos
representar fatos que expressem relaes do tipo maior que em um conjunto
composto por um nmero grande de elementos numricos,
um maior que zero
maq(1, 0)
dois maior que um
Informatica_Nocoes de Logica-2013.indd 65
30/04/15 17:58
66
maq(2, 1)
trs maior que 2
maq(3, 2)
...
deveremos empregar um predicado computvel. Assim, em vez do
programa provador automtico procurar pelo predicado explcito no conjunto
de frmulas disponveis (ou tentar deduzir o predicado atravs de mais raciocnio) para a obteno de respostas, ele deve invocar um procedimento, e
este avaliar o predicado.
A noo de igualdade permite que indivduos iguais do universo de
discurso sejam substitudos uns pelos outros sempre que esse procedimento
parecer til durante o processo de busca respostas. Por exemplo: a representao da sentena abaixo, utilizando a noo de igualdade,
Estamos agora em 1998
agora = 1998
indica que, sempre que a constante agora aparecer como termo de
algum predicado, ela poder ser substituda pela constante 1998.
Informatica_Nocoes de Logica-2013.indd 66
30/04/15 17:58
Noes de Lgica
67
Informatica_Nocoes de Logica-2013.indd 67
30/04/15 17:58
68
Resposta 2: Marcos no est vivo (seno estaria com mais de 150 anos).
vivo(Marcos, agora)
(8, substituio)
morto(Marcos, agora)
(6, substituio)
mortal(Marcos)
nasceu(Marcos, t1)
maq(-(agora, t1), 150)
(4, substituio)
homem(Marcos)
nasceu(Marcos, t1)
maq(-(agora, t1), 150)
(1)
nasceu(Marcos, t1)
maq(-(agora, t1), 150)
(3, substituio)
maq(-(agora, 40), 150)
(7, substituio)
maq(-(1998, 40), 150)
(computar -)
maq(1958, 150)
(computar maq)
nil
Observaes:
A representao de fatos que adquirem gradualmente com a experincia
pode diminuir o nmero de etapas para a consulta ser respondida.
Um bom mtodo de busca de respostas deve ser capaz de:
Determinar que existe um casamento entre dois predicados;
Ex: morto (Marcos, agora) casa com morto(x, t2),
Garantir substituies uniformes em toda a prova r;
Aplicar modus ponens;
Do ponto de vista computacional, precisamos de um mtodo de busca de
respostas capaz de executar, em uma nica operao, a srie de processos envolvidos no raciocnio com declaraes em Lgica de Predicados.
Informatica_Nocoes de Logica-2013.indd 68
30/04/15 17:58
Noes de Lgica
69
Atividades de avaliao
1. Usando o primeiro programa em lgica desta seo responda consulta:
Marcos odiava Csar?
2. Considere as seguintes sentenas:
"Joo gosta de todo tipo de comida.
Mas so comidas.
Frango comida
Qualquer coisa que algum coma e que no cause sua morte comida.
Paulo come amendoim e est vivo.
Susana come tudo o que Paulo come
Traduza as sentenas em fbf em Lgica de Predicados e responda
consulta abaixo, usando o raciocnio a partir do objeto para trs:
Joo gosta de amendoim?
Leituras
HEGENBERG, Lenidas. Lgica: o clculo de predicados. Barcelona: Herder, 2008.
REZENDE, Solange Oliveira. (Org.). Sistemas inteligentes: fundamentos e
aplicaes. Barueri, SP: Manole, 2005
MORTARI, Cezart A. Introduo lgica. So Paulo: Editora UNESP, 2001.
Filmes/Vdeos
Lgica de predicados. Durao: 13min 23s. Video aula que aborda: Conceitos base para Lgica de Predicados. Acesso em: https://www.youtube.com/
watch?v=oShq4Ho3vfU
Quantificadores. Durao: 07min 15s. Video aula que aborda o assunto:
quantificadores. Acesso em: https://www.youtube.com/watch?v=OiCDIcPFIR0
Processamento de linguagem natural. Durao: 55min 14s. Vdeo aula com
apresentao feita no meetup nodebr em maro de 2014. Acesso em: https://
www.youtube.com/watch?v=BoUz4xoqRbY
Informatica_Nocoes de Logica-2013.indd 69
30/04/15 17:58
70
Sites
http://www.ime.usp.br/~slago/IA-logicaDePredicados.pdf
http://www.ime.usp.br/~slago/pl-3.pdf
https://rarefecundo.wordpress.com/category/sistemas-de-informacao/logica-de-predicados/
http://www.academia.edu/3331978/L%C3%B3gica_dos_predicados_
sintaxe_e_sem%C3%A2ntica
Informatica_Nocoes de Logica-2013.indd 70
30/04/15 17:58
Parte
Resoluo
Informatica_Nocoes de Logica-2013.indd 71
30/04/15 17:58
Informatica_Nocoes de Logica-2013.indd 72
30/04/15 17:58
Captulo
Introduo
A Resoluo um mtodo de deciso que, em uma nica operao, executa
a srie de rocessos envolvidos com declaraes em Linguagem Lgica de
Predicados.
Esse mtodo opera em declaraes que foram convertidas em uma
forma padro conveniente; a Forma Clausal.
As respostas so obtidas por meio de um processo de prova
por refutao.
Definies:
(a) Uma frmula P uma Conjuno se e somente se, omitindo-se os parnteses, for da forma P1 P2 ... Pn.
(b) Uma frmula P uma Disjuno se e somente se, omitindo-se os parnteses, for da forma P1 P2 ... Pn.
(c) Uma frmula P est em Forma Normal Prenex se e somente se P for da
forma Q(M) onde Q, o prefixo de P, uma cadeia de quantificadores e M,
a matriz de P, uma frmula sem ocorrncia de quantificadores.
Informatica_Nocoes de Logica-2013.indd 73
30/04/15 17:58
74
(d) Uma frmula P est em Forma Normal Conjuntiva se e somente se estiver em Forma Normal Prenex, e sua matriz for uma conjuno de disjunes de frmulas atmicas, negadas ou no.
(e) Uma frmula P est em Forma Clausal se e somente se estiver em
Forma Normal Conjuntiva, mas sem nenhuma instncia do conectivo .
Exemplo:
Frmula em Forma Normal Prenex: x : (y : (p(x, y) (q(x) q(y))))
Prefixo: x : y:
Tautologia 12.a).
p p, -
(p q) (p q) e -
(p q) (p q).
Tautologia 5,
Tautologia 10.a),
-
Tautologia 10.b);
(x : p(x)) x : p(x) e
(x : p(x)) x : p(x).
Informatica_Nocoes de Logica-2013.indd 74
30/04/15 17:58
Noes de Lgica
75
(x : p(x)) (y : q(y)).
4. Coloque a frmula na Forma Normal Prenex.
5. Elimine os quantificadores existenciais, ou seja
y : presidente(y)
x : y : pai_de(y,x)
onde:
S1 uma funo sem argumentos, que, de algum modo, produz um valor
que satisfaz presidente;
S2 uma funo com um argumento x que, de algum modo, produz para
cada x (em D) um valor que satisfaz pai_de.
6. Elimine o prefixo.
7. Converta a matriz em uma conjuno de disjunes, usando
(p (q r)) ((p q) (p r)).
Tautologia 8.b)
Informatica_Nocoes de Logica-2013.indd 75
30/04/15 17:58
76
Informatica_Nocoes de Logica-2013.indd 76
30/04/15 17:58
Noes de Lgica
77
6. tentou_assassinar(Marcos, Csar)
tentou_assassinar(Marcos, Csar)
7. x : (y : ((pessoa(x) soberano(y) tentou_assassinar(x, y))
leal_a(x, Csar)))
7.1 x : (y : ((pessoa(x) soberano(y) tentou_assassinar(x, y))
leal_a(x, Csar)))
7.2 x : ( y : (pessoa(x) soberano(y) tentou_assassinar(x, y)
leal_a(x, Csar)))
7.6 pessoa(x) soberano(y) tentou_assassinar(x, y) leal_a(x, Csar)
7.9 pessoa(x3) soberano(y) tentou_assassinar(x3, y) leal_a(x3, Csar)
8. x : (y : leal_a(x, y))
8.5 x : (leal_a(x, S1(x)))
8.6 leal_a(x, S1(x))
8.9 leal_a(x4, S1(x4))
9. x : (homem(x) pessoa(x))
9.1 x : (homem(x) pessoa(x))
9.6 homem(x) pessoa(x)
9.9 homem(x5) pessoa(x5)
4. Novo programa
Clusula1: homem(Marcos)
Clusula2: Pompeano(Marcos)
Clusula3: Pompeano(x1) Romano(x1)
Clusula4: soberano(Csar)
Clusula5: Romano(x2) leal_a(x2, Csar) odeia(x2, Csar)
Clusula6: tentou_assassinar(Marcos, Csar)
Clusula7: pessoa(x3) soberano(y) tentou_assassinar(x3, y)
leal_a(x3, Csar)
Clusula8: leal_a(x4,S1(x4))
Clusula9: homem(x5) pessoa(x5)
Informatica_Nocoes de Logica-2013.indd 77
30/04/15 17:58
78
Atividades de avaliao
1. Colocar em forma normal conjuntiva a seguinte frmula:
Informatica_Nocoes de Logica-2013.indd 78
30/04/15 17:58
Captulo
Algoritmo da Unificao
Introduo
Na Resoluo para Lgica Proposicional fcil para um programa provador
automtico obter uma clusula-resolvente a partir de duas clusulas-pais,
contendo smbolos proposicionais complementares causadores de uma contradio. Por exemplo:
p q r
ps
q r s.
No exemplo, o programa procurou uma contradio, obteve a clusula-resolvente como uma disjuno das clusulas-pais e, em seguida, eliminou a
contradio, eliminando os smbolos complementares p e p. Essa facilidade
decorre de um processo de casamento simples proporcionado pela presena
de simples smbolos proposicionais.
Na Resoluo para a Lgica de Predicados, o processo de casamento
entre frmulas atmicas torna-se mais complicado, pois os argumentos dos
predicados que compem estas frmulas tambm devem ser comparados.
Nesse caso, podem ocorrer diversos tipos de situaes. Por exemplo:
Situao em que se configura uma contradio sem substituio de
variveis:
homem(Joo) mulher(Maria)
homem(Joo) mortal(x)
{ }
mulher(Maria) mortal(x)
Informatica_Nocoes de Logica-2013.indd 79
30/04/15 17:58
80
homem(x) mortal(x)
{ (Joo/x) }
mulher(Maria) mortal(Joo)
Situao em que no se configura uma contradio:
homem(Joo) mulher(Maria)
homem(Pedro) mortal(x)
FALHA
Para auxiliar o programa provador automtico na busca de contradies, podemos implementar certo algoritmo denominado Algoritmo da
Unificao. Esse algoritmo descreve uma funo recursiva que compara
duas frmulas atmicas e retorna, se existir, um conjunto de substituies que
tornem as frmulas idnticas.
O Algoritmo
Unificar(L1, L2)
1. Se L1 ou L2 varivel ou constante
ento se L1 e L2 so idnticos
ento retorne { }.
ento se L1 ocorre em L2
4. Faa SUBST := { }.
Informatica_Nocoes de Logica-2013.indd 80
30/04/15 17:58
Noes de Lgica
81
(b) Se S = FALHA
gumento de
6. Retorne SUBST..
S := { }.
6. Retornar { }.
Informatica_Nocoes de Logica-2013.indd 81
30/04/15 17:58
82
Unificar(homem(Joo), homem(x))
L1 := homem(Joo)
L2 := homem(x)
4. SUBST := { }.
5. i := 1
(a) Unificar(Joo, x)
S := { ( Joo/x) }.
(c) L1 := homem(Joo)
L2 := homem(x)
SUBST := { (Joo/x) }.
6. Retornar { (Joo/x) }.
Unificar(homem(Joo), homem(Pedro))
L1 := homem(Joo)
L2 := homem(Pedro)
4. SUBST := { }.
5. i := 1
(a) Unificar(Joo, Pedro)
S := FALHA.
(b) retornar FALHA.
Unificar(odeia(Marcos,z), odeia(x,y))
L1 := odeia(Marcos, z)
L2 := odeia(x,y)
4. SUBST := { }.
5. i := 1
(a) Unificar(Marcos, x)
S := { ( Marcos/x)}
(c) L1 := odeia(Marcos,z)
L2 := odeia(x,y)
SUBST := { (Marcos/x) }
i := 2
(a) Unificar(z, y)
S := { ( y/z) }.
Informatica_Nocoes de Logica-2013.indd 82
30/04/15 17:58
Noes de Lgica
83
(c) L1 := odeia(Marcos,z)
L2 = odeia(x,y)
SUBST := { (Marcos/x), (y/z) }.
6. Retornar { (y/z), (Marcos/x) }.
Unificar(f(x,x), f(g(x),x))
L1 := f(x,x)
L2 := f(g(x),x)
4. SUBST := { }.
5. i := 1
(a) Unificar(x, g(x))
S := FALHA.
(b) retornar FALHA.
Observao
Esse ltimo exemplo descreve um tipo de situao em que o Algoritmo da Unificao
tenta unificar uma expresso funcional g(x), envolvendo a varivel x, com a prpria
varivel x. Conforme se pode observar, nesse caso, o Algoritmo retorna FALHA, pois,
se ele aceitasse g(x) como substituio para x, S := { (g(x)/x) }, ento quando ele fosse
substituir x por g(x) no restante da frmula atmica L1 (Passo 5.(c)), ele estaria causando uma recurso infinita, ou seja:
L1 := f(x,g(g(g(g... ;
j que no seria possvel eliminar x de L1.
Informatica_Nocoes de Logica-2013.indd 83
30/04/15 17:58
84
Atividades de avaliao
1. Utilize o Algoritmo da Unificao para produzir substituies apropriadas
para os pares de frmulas atmicas abaixo. Caso possvel, ou seja,
caso as frmulas sejam unificveis, expresse o retorno do Algoritmo.
Caso no possvel, ou seja, caso as frmulas no sejam unificveis,
explique porque.
Informatica_Nocoes de Logica-2013.indd 84
a) cor(lolo,amarelo)
cor(x,y)
b) cor(lolo,amarelo)
cor(x,x)
c) cor(chapu(carteiro),azul)
cor(chapu(y),x)
d) R(F(x),bbb)
R(y,z)
e) R(F(y),x)
R(x,F(bbb))
f) R(F(y),y,x)
R(x,F(z),F(w))
g) ama(x,y)
ama(y,x)
30/04/15 17:58
Captulo
Algoritmo da Resoluo
Introduo
Basicamente, os passos que compem o Algoritmo da Resoluo para a
Lgica de Predicados so os mesmos realizados para a Lgica Proposicional.
As diferenas esto nos algoritmos de Converso para Forma Clausal e, no caso
da Lgica de Predicados, a necessidade de se ter em mos um procedimento de
unificao que possibilite verificar o casamento de duas frmulas atmicas.
Seja: P = Programa = { Frmulas em Lgica de Predicados } e
C = Consulta a ser respondida pelo Algoritmo da Resoluo =
Frmu la em Lgica de Predicados
1. Converter Frmulas de P para Forma Clausal.
2. Negar C. Converter C para Forma Clausal e acrescentar resultado ao novo P, obtido no
Passo 1.
3. Repetir {
a) Selecionar duas clusulas-pais, C1 e C2, tal que:
C1 contm frmula atmica f,
C2 contm frmula f, e
f unifica com f;
b) Obter:
resolvente = disjuno de todos as frmulas atmicas
de C1 e C2 com a eliminao de f e f, realizando-se
as substituies apropriadas na disjuno resultante;
c) Se resolvente nil
ento acrescentar resolvente a P.
seno Resposta foi encontrada.
} at uma Resposta ser encontrada, ou at no ser possvel
nem um progresso, ou at uma quantidade pr-determinada
de repeties terem sido realizadas.
4. Responder.
Informatica_Nocoes de Logica-2013.indd 85
30/04/15 17:58
86
1.
P = { C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. Pompeano(x1) Romano(x1) ,
C4. soberano(Csar) ,
C5. Romano(x2) leal_a(x2,Csar) odeia(x2,Csar) ,
C6. tentou_assassinar(Marcos,Csar) ,
C7. pessoa(x3) soberano(y) tentou_assassinar(x3,y)
leal_a(x3,y),
C8. leal_a(x4,S1(x4)) ,
Informatica_Nocoes de Logica-2013.indd 86
30/04/15 17:58
Noes de Lgica
87
2.
C = odeia(Marcos,Csar).
P = { C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. Pompeano(x1) Romano(x1) ,
C4. soberano(Csar) ,
C5. Romano(x2) leal_a(x2, Csar) odeia(x2, Csar) ,
C6. tentou_assassinar(Marcos, Csar) ,
C7. pessoa(x3) soberano(y) tentou_assassinar(x3, y)
leal_a(x3, y),
C8. leal_a(x4, S1(x4)) ,
C9. homem(x5) pessoa(x5) ,
C10. odeia(Marcos, Csar)
}.
Informatica_Nocoes de Logica-2013.indd 87
30/04/15 17:58
88
3.
C5. odeia(Marcos, Csar)
{ (Marcos/x2) }
Romano(Marcos) leal_a(Marcos,Csar)
C2.
C3.
{ (Marcos/x1) }
Pompeano(Marcos) leal_a(Marcos, Csar)
leal_a(Marcos, Csar)
C7.
{(Marcos/x3), (Csar/y) }
pessoa(Marcos) soberano(Csar) tentou_as aassinar(Marcos, Csar) C9.
{ (Marcos/x5) }
C1. homem(Marcos) soberano(Csar) tentou_assassinar(Marcos, Csar)
soberano(Csar) tentou_assassinar(Marcos, Csar)
C6.
C4.
tentou_assassinar(Marcos, Csar)
nil
4. Resposta = sim.
Heursticas que podem ser utilizadas para acelerar o processo de busca de uma resposta:
a) Selecionar clusulas-pais que contenham frmulas atmicas complementares.
b) Eliminar resolventes que sejam:
tautologias,
subordinados a outras clusulas existentes (p q est subordinado a p).
c) Iniciar processo de resoluo resolvendo a clusula que se deseja refutar
(consulta negada em forma clausal) e, sempre que possvel, continuar resolvendo os resolventes gerados a partir desta.
d) Sempre que possvel, resolver clusulas-pais que contenham uma nica
frmula atmica.
Informatica_Nocoes de Logica-2013.indd 88
30/04/15 17:58
Noes de Lgica
89
P = { C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. Pompeano(x1) Romano(x1) ,
C4. soberano(Csar) ,
C5. Romano(x2) leal_a(x2, Csar) odeia(x2, Csar) ,
C6. tentou_assassinar(Marcos, Csar) ,
C7.pessoa(x3) soberano(y) tentou_assassinar(x3, y) leal_a(x3, y),
C8. leal_a(x4,S1(x4)) ,
C9. homem(x5) pessoa(x5)
}.
C = odeia(Marcos, Csar).
C3.
{ (Marcos/x1) }
C2.
odeia(Marcos, Csar)
Informatica_Nocoes de Logica-2013.indd 89
30/04/15 17:58
90
1.
P={
}.
C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. nasceu(Marcos, 40) ,
C4. homem(x1) mortal(x1) ,
C5. Pompeano(x2) morreu(x, 79) ,
C6. entrou_em_erupo(vulco, 79) ,
C7. mortal(x) nasceu(x, t1) maq(-( t2, t1), 150) morto(x, t2)
C8. agora = 1998 ,
C9. morto(x, t) vivo(x, t),
C10. morto(x, t) vivo(x, t) ,
C11. morreu(x, t1) maq(t2, t1) morto(x, t2)
2.
C = vivo(Marcos,agora).
P = { C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. nasceu(Marcos, 40) ,
C4. homem(x1) mortal(x1) ,
C5. Pompeano(x2) morreu(x2, 79) ,
C6. entrou_em_erupo(vulco, 79) ,
C7. mortal(x3) nasceu(x3, t1) maq(-( t2, t1), 150) morto(x3, t2),
C8. agora = 1998 ,
C9. morto(x4, t3) vivo(x4, t3) ,
C10. morto(x5, t4) vivo(x5, t4) ,
C11. morreu(x6, t5) maq( t6, t5) morto(x6, t6)
C12. vivo(Marcos, agora)
}
Informatica_Nocoes de Logica-2013.indd 90
30/04/15 17:58
Noes de Lgica
3.
C9.
91
vivo(Marcos, agora)
{ (Marcos/x4), (agora/t3) }
morto(Marcos, agora)
C11.
{ (Marcos/x6), (agora/t6) }
C5.
{ (Marcos/x2), (79/t5) }
Pompeano(Marcos) maq( agora, 79)
C8.
substituir iguais
C2.
Pompeano(Marcos)
nil
4. Resposta = sim.
Informatica_Nocoes de Logica-2013.indd 91
30/04/15 17:58
92
C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. nasceu(Marcos, 40) ,
C4. homem(x1) mortal(x1) ,
C5. Pompeano(x2) morreu(x, 79) ,
C6. entrou_em_erupo(vulco,79) ,
C7. mortal(x) nasceu(x, t1) maq(-( t2, t1), 150) morto(x, t2),
C8. agora = 1998,
C9. morto(x, t) vivo(x, t) ,
C10. morto(x, t) vivo(x,t) ,
C11. morreu(x, t1) maq( t2, t1)) morto(x, t2)
2.
C = t:morreu(Marcos, t).
Convertendo-se a consulta negada para forma clausal obtemos:
C12. = morreu(Marcos, t).
P={
Informatica_Nocoes de Logica-2013.indd 92
C1. homem(Marcos) ,
C2. Pompeano(Marcos) ,
C3. nasceu(Marcos, 40) ,
C4. homem(x1) mortal(x1) ,
C5. Pompeano(x2) morreu(x2, 79) ,
C6. entrou_em_erupo(vulco, 79) ,
C7. mortal(x3) nasceu(x3, t1) maq(-( t2, t1), 150) morto(x3, t2),
C8. agora = 1998 ,
C9. morto(x4, t3) vivo(x4, t3) ,
C10. morto(x5, t4) vivo(x5, t4) ,
C11. morreu(x6, t5) maq( t6, t5) morto(x6, t6)
C12. morreu(Marcos, t) }.
30/04/15 17:58
Noes de Lgica
3.
C5.
93
morreu(Marcos, t)
Pompeano(Marcos)
{ (Marcos/x2), (79/t) }
C2.
nil
4. Resposta = 79.
Observaes
A resposta pode ser derivada da cadeia de unificaes que leva de volta
clusula inicial.
A resposta pode ser derivada acrescentando uma frmula fictcia no processo de resoluo. Essa frmula consiste da consulta negada em forma
clausal com um marcador especial. Por exemplo:
C5.
morreu(Marcos,t) morreu(Marcos, t)
{ (Marcos/x2), (79/t) }
Pompeano(Marcos) morreu(Marcos, 79)
C2.
morreu(Marcos, 79).
Atividades de avaliao
1. Considerando o par de clusulas-pais abaixo:
C1 = P(z1,a) P(z1,x) P(x,z1) e
C2 = P(z2,f(z2)) P(z2,a),
onde o smbolo a denota uma constante, encontre uma substituio
adequada para os dois conjuntos de frmulas atmicas componentes
(omitindo-se a negao em C1) e, logo aps, encontre o resolvente correspondente.
2. Em relao ao mtodo de resoluo, explique sucintamente porque importante dispor de um processo de converso de uma frmula qualquer
para uma frmula equivalente expressa em forma normal conjuntiva.
Informatica_Nocoes de Logica-2013.indd 93
30/04/15 17:58
94
y : (G(y) D(y)) ,
Informatica_Nocoes de Logica-2013.indd 94
30/04/15 17:58
Noes de Lgica
95
12. Se um curso fcil, alguns estudantes no curso so felizes. Se um curso tem exame, nenhum estudante no curso feliz. Use resoluo para
mostrar que, se um curso tem exame, o curso no fcil.
13. Qualquer coisa que pode ler alfabetizada. Alguns golfinhos so inteligentes, mas nenhum golfinho alfabetizado. Use resoluo para mostrar
que algumas coisas inteligentes no sabem ler.
Informatica_Nocoes de Logica-2013.indd 95
30/04/15 17:58
96
Leituras
NORVIG, Peter ; RUSSELL, Stuart. Inteligncia Artificial. 3 ed. Rio de Janeiro: Elsevier, 2014.
Nunes, Daltro J. Introduo a Abstrao de Dados: Srie Livros Didticos
Informtica UFRGS. Porto Alegre:Bookman, 2012.
JOYANES AGUILAR, Luis. Fundamentos de programao: algortmos, estruturas de dados e objetos. 3.ed. Porto Alegre: AMGH, 2011.
Informatica_Nocoes de Logica-2013.indd 96
30/04/15 17:58
Noes de Lgica
97
Filmes/Vdeos
Algoritmos e Lgica | E-Learning - Aula 1 11. Durao: 01h 35min 24s.
Video aula que aborda: Algoritmo e Lgica de programao + Pascal + Java +
C/C++ (e todos os fontes) . Interessante assistir as onze video aulas. Acesso
em: https://www.youtube.com/watch?v=-0au8eT16XA
Sites
http://www.dcc.fc.up.pt/~nam/aulas/9798/ia/def.html
http://www.ppgsc.ufrn.br/~rogerio/material_auxiliar/FMC20121T2_repres_
clausal_form.pdf
http://www.sawp.com.br/blog/?p=795
http://pt.wikipedia.org/wiki/Princ%C3%ADpio_da_resolu%C3%A7%C3%A3o
Informatica_Nocoes de Logica-2013.indd 97
30/04/15 17:58
98
Sobre os autores
GustavoAugusto Lima de Campos: Cursou graduao em Engenharia Eltrica
na Universidade Federal do Par (1987), mestrado em Engenharia Eltrica na
Universidade Federal de Uberlndia (1990) e doutorado em Engenharia Eltrica
na Universidade Estadual de Campinas (2003). Atualmente professor adjunto
da Universidade Estadual do Cear. Tem experincia na rea de Cincia da
Computao, com nfase em Inteligncia Artificial, atuando principalmente nos
seguintes temas: agentes inteligentes, lgica, redes neurais artificiais, sistemas
fuzzy, busca e problemas de tomada de deciso.
Jerffeson Teixeira de Souza: Recebeu o ttulo de Ph.D. em Cincia da
Computao, em 2004, pela School of Information Technology and Engineering
(SITE) da University of Ottawa, Canad. Bacharel (1998) e Mestre (2000)
em Cincia da Computao pela Universidade Federal do Cear (UFC) e
atualmente, professor adjunto da Universidade Estadual do Cear (UECE).
Seus interesses de pesquisa so: Otimizao em Engenharia de Software,
Documentao e Aplicao de Padres de Software e Estudo de Tcnicas e
Aplicao de Algoritmos de Minerao de Dados.
Informatica_Nocoes de Logica-2013.indd 98
30/04/15 17:58