Buscar

LPLbook_-_Captulo_04_-_A_Lgica_dos_Conectivos_Booleanos (1)

Prévia do material em texto

Caṕıtulo 4
A Lógica dos Conectivos
Booleanos
Os conectivos ∧, ∨ e ¬ são conectivos verofuncionais. Lembre-se o que isso sig-
nifica: o valor verdade de uma sentença complexa constrúıda por meio de um
destes śımbolos pode ser determinado simplesmente olhando para os valores
verdade dos constituintes imediatos da sentença. Assim, para saber se P ∨ Q
é verdadeira, só precisamos saber os valores verdade de P e Q. Este compor-
tamento particularmente simples é o que nos permite capturar os significados
de conectivos verofuncionais usando tabelas verdade.
Outros conectivos que podeŕıamos estudar não são tão simples. Considere
a sentença é necessariamente o caso que S. Uma vez que algumas proposições operadores
verofuncionais vs.
operadores não
verofuncionais
verdadeiras são necessariamente verdadeiras, ou seja, não poderiam ter sido
falsas (por exemplo, a = a), enquanto outras proposições não são necessari-
amente verdadeiras (por exemplo, Cube(a)), não podemos descobrir o valor
verdade da sentença original, se nos for dito apenas o valor verdade de uma
sentença constituinte S. É necessariamente o caso, ao contrário de não é o
caso, não é verofuncional.
O fato de que os conectivos booleanos são verofuncionais torna muito fácil
explicar seus significados. Ele também nos fornece uma técnica simples, mas
poderosa, para estudar a sua lógica. A técnica é uma extensão das tabelas
verdade usadas para apresentar os significados dos conectivos. Acontece que
muitas vezes podemos calcular as propriedades lógicas de sentenças complexas
através da construção de tabelas verdade que exibem todas as atribuições
posśıveis de valores verdade para os componentes atômicos a partir dos quais
as sentenças são constrúıdas. A técnica pode, por exemplo, dizer-nos que uma
sentença em particular S é uma consequência lógica de algumas premissas
P1, . . . ,Pn. E, visto que consequência lógica é uma das nossas principais pre-
ocupações, a técnica é um passo importante a ser aprendido.
Neste caṕıtulo, vamos discutir o que tabelas verdade podem nos dizer sobre
três noções lógicas relacionadas: as noções de consequência lógica, equivalência
lógica e verdade lógica. Apesar de já termos discutido algo sobre consequência
lógica, vamos resolver isso em ordem inversa, uma vez que as técnicas de
tabelas verdade relacionadas são mais fáceis de compreender nesta ordem.
101
102 / A Lógica dos Conectivos Booleanos
Seção 4.1
Tautologias e verdade lógica
Dissemos que uma sentença S é uma consequência lógica de um conjunto de
premissas P1, . . . ,Pn se é imposśıvel que todas as premissas sejam verdadeiras
e a conclusão S seja falsa. Ou seja, a conclusão deve ser verdadeira se as
premissas são verdadeiras.
Observe que, de acordo com esta definição, existem algumas sentenças
que são consequências lógicas de qualquer conjunto de premissas, mesmo o
conjunto vazio. Isto será verdade para qualquer sentença cuja verdade é em si
uma necessidade lógica. Por exemplo, dadas as nossas suposições sobre fol,
a sentença a = a é necessariamente verdadeira. Então, é claro, não importa
o que suas premissas iniciais possam ser, será imposśıvel que essas premissas
sejam verdadeiras e que a = a seja falsa— simplesmente porque é imposśıvel
que a = a seja falsa! Chamaremos tais sentenças logicamente necessárias de
verdades lógicas.verdade lógica
As noções intuitivas de possibilidade lógica e necessidade lógica já apare-
ceram várias vezes neste livro na caracterização de argumentos válidos e
na relação de consequência . Mas esta é a primeira vez que as aplicamos
a sentenças individuais. Intuitivamente, uma sentença é logicamente posśıvelpossibilidade lógica e
necessidade lógica se pudesse ser (ou poderia ter sido) verdadeira, pelo menos por razões lógicas.
Pode haver algumas outras razões, digamos f́ısicas, porque a declaração não
poderia ser verdadeira, mas não existem razões lógicas impedindo isto. Por
exemplo, não é fisicamente posśıvel ir mais rápido do que a velocidade da luz,
embora seja logicamente posśıvel: eles fazem isso em Star Trek o tempo todo.
Por outro lado, não é nem mesmo posśıvel logicamente um objeto não ser
idêntico a si mesmo. Isso seria simplesmente violar o sentido da identidade. A
forma como geralmente se coloca é que a afirmação é logicamente posśıvel se
existe alguma circunstância logicamente posśıvel (ou situação ou mundo), em
que a afirmação é verdadeira. Da mesma forma, uma sentença é logicamente
necessária, se é verdade em qualquer circunstância logicamente posśıvel.
Essas noções são muito importantes, mas elas também são irritantemente
vagas. A medida que avançamos neste livro, vamos introduzir alguns con-
ceitos precisos que nos ajudarão a esclarecer essas noções. O primeiro destestautologia
conceitos precisos, o qual nós apresentamos nesta seção, é a noção de um
tautologia.
Como pode um conceito preciso ajudar a esclarecer uma noção imprecisa
e intuitiva? Vamos pensar por um momento sobre a linguagem de blocos e
a noção intuitiva de possibilidade lógica. Presumivelmente, uma sentença da
Caṕıtulo 4
Tautologias e verdade lógica / 103
linguagem de blocos é logicamente posśıvel se existisse um mundo de blocos
em que fosse verdadeira. Claramente, se podemos construir um mundo em que
Tarski’s World a torna verdadeira, então isto demonstra que a sentença é de
fato logicamente posśıvel. Por outro lado, há sentenças logicamente posśıveis
que não podem ser feitas verdadeiras nos mundos que você pode construir
com Tarski’s World . Por exemplo, a sentença
¬(Tet(b) ∨ Cube(b) ∨ Dodec(b))
é, sem dúvida logicamente posśıvel, digamos se b fosse uma esfera ou um
icosaedro. Você não pode construir um mundo com Tarski’s World , mas isso
não é culpa da lógica, assim como não é culpa da lógica que você não possa
viajar mais rápido do que a velocidade da luz. Tarski’s World tem suas leis
não lógicas e restrições assim como o mundo f́ısico.
O programa Tarski’s World dá origem a uma noção precisa da possibili-
dade de sentenças na linguagem de blocos. Podeŕıamos dizer que uma sentença
é tw-posśıvel, se ela é verdade em algum mundo que pode ser constrúıdo u- tw-posśıvel
sando o programa. Nossas observações no parágrafo anterior poderiam, então,
ser reformuladas, dizendo que todos as sentenças tw-posśıveis são logicamente
posśıveis, mas que o inverso, em geral, não é verdadeiro. Algumas sentenças
logicamente posśıveis não são tw-posśıveis.
Pode parecer surpreendente que podemos fazer tais proposições definitivas
envolvendo uma noção vaga como possibilidade lógica. Mas, realmente, não é
mais surpreendente do que o fato de que podemos dizer com certeza que uma
determinada maçã é vermelha, embora as fronteiras da cor vermelha sejam
vagas. Pode haver casos em que seja dif́ıcil decidir se algo é vermelho, mas
isto não significa que não há muitos casos perfeitamente claros.
Tarski’s World nos dá um método preciso para demonstrar que uma sen-
tença da linguagem de blocos é logicamente posśıvel, uma vez que tudo o
que é posśıvel em Tarski’s World é logicamente posśıvel. Nesta seção, apre-
sentaremos um outro método preciso, que pode ser usado para demonstrar
que uma sentença constrúıda usando conectivos verofuncionais é logicamente método da tabela
verdadenecessária. O método utiliza tabelas verdade para demonstrar que certas sen-
tenças não podem ser falsas, simplesmente devido aos significados dos conec-
tivos verofuncionais que elas contêm. Como o método que nos foi dado por
Tarski’s World , o método da tabela verdade só funciona em uma direção:
quando se diz que uma sentença é logicamente necessária, ela definitivamente
é. Por outro lado, algumas sentenças sãologicamente necessárias por razões
que o método da tabela verdade não pode detectar.
Suponha que tenhamos uma sentença complexa S com n sentenças atômi-
cas, A1, . . . ,An. Para construir uma tabela verdade para S, se escreve as sen-
Seção 4.1
104 / A Lógica dos Conectivos Booleanos
tenças atômicas A1,. . . , An na parte superior da página, com a sentença S
à sua direita. É costume desenhar uma linha dupla que separa as sentenças
atômicas de S. Sua tabela verdade terá uma linha para cada forma posśıvel de
atribuir true e false para as sentenças atômicas. Uma vez que existem duas
atribuições posśıveis para cada sentença atômica, existirão 2n linhas. Assim, se
n = 1 haverá duas linhas , se n = 2 haverá quatro linhas, se n = 3 haverá oitonúmero de linhas em
uma tabela verdade linhas, se n = 4 haverá dezesseis linhas, e assim por diante. Costuma-se fazer
a coluna mais à esquerda ter a metade superior das linhas marcadas true,
a segunda metade false. A coluna seguinte divide cada uma delas, sendo os
primeiro e terceiro quartos das linhas com true, os segundo e quarto quartos
com false, e assim por diante. Isto irá resultar na última coluna tendo true
e false alternados à medida que descemos a coluna.
Vamos começar olhando para um exemplo muito simples de uma tabela
verdade para a sentença Cube(a) ∨ ¬Cube(a). Uma vez que esta sentença é
constrúıda a partir de uma sentença atômica, a nossa tabela verdade conterá
duas linhas, uma para o caso onde Cube(a) é verdadeira e uma para quando
ela é falsa.
Cube(a) Cube(a) ∨ ¬Cube(a)
T
F
Em uma tabela verdade, a coluna ou as colunas abaixo das sentenças
atômicas são chamadas colunas de referência. Uma vez que as colunas decolunas de referência
referência foram preenchidas, estamos prontos para preencher o restante da
tabela. Para fazer isso, vamos construir colunas de T’s e F’s abaixo de cada
conectivo da senteça alvo S. Estas colunas são preenchidas, uma por uma,
usando as tabelas verdade para os vários conectivos. Começamos trabalhando
em conectivos que se aplicam só a sentenças atômicas. Uma vez feito isso,
nós trabalhamos com conectivos que se aplicam a sentenças cujo principal
conectivo já tenha sua coluna preenchida. Continuamos este processo até que
o conectivo principal de S teve sua coluna preenchida. Esta é a coluna que
mostra como a verdade de S depende da verdade de suas peças atômicas.
Nosso primeiro passo no preenchimento dessa tabela verdade, então, é cal-
cular os valores verdade que devem ir na coluna sob o conectivo mais interno,
que neste caso é o ¬. Fazemos isso, referindo-se aos valores verdade na coluna
de referência em Cube(a), trocando valores de acordo com o significado de ¬.
Cube(a) Cube(a) ∨ ¬Cube(a)
t F
f T
Caṕıtulo 4
Tautologias e verdade lógica / 105
Uma vez que esta coluna for preenchida, podemos determinar os valores
verdade que devem ir sob o ∨, olhando para os valores em Cube(a) e aqueles
sob o śımbolo de negação, uma vez que estes correspondam aos valores das
duas sentenças às quais o ∨ é aplicado. (Você entende isso?) Visto que existe
pelo menos um T em cada linha, a última coluna da tabela verdade se parece
com isso.
Cube(a) Cube(a) ∨ ¬Cube(a)
t T f
f T t
Não surpreendentemente, a nossa tabela nos diz que Cube(a) ∨ ¬Cube(a)
não pode ser falsa. É o que chamamos de uma tautologia, um tipo de verdade
lógica especialmente simples. Vamos dar uma definição precisa de tautologias
posteriormente. Nossa sentença é na verdade uma instância de um prinćıpio,
P ∨ ¬P, que é conhecido como a lei do meio exclúıdo (ou lei do terceiro ex- lei do meio exclúıdo
clúıdo). Cada exemplo deste prinćıpio é uma tautologia.
Vamos agora olhar uma tabela verdade mais complexa, para uma sentença
constrúıda a partir de três sentenças atômicas.
(Cube(a) ∧ Cube(b)) ∨ ¬Cube(c)
A fim de tornar nossa tabela mais fácil de ler, vamos abreviar as sentenças
atômicas para A, B e C. Visto que há três sentenças atômicas, a nossa tabela
terá oito (23) linhas. Olhe atentamente para como distribúımos T’s e F’s e se
convença que cada atribuição posśıvel é representada por uma das linhas.
A B C (A ∧ B) ∨ ¬C
T T T
T T F
T F T
T F F
F T T
F T F
F F T
F F F
Uma vez que dois dos conectivos na sentença alvo se aplicam a sentenças
atômicas cujos valores estão especificados na coluna de referência, podemos
preencher essas colunas usando as tabelas verdade para ∧ e ¬ dadas anterior-
mente.
Seção 4.1
106 / A Lógica dos Conectivos Booleanos
A B C (A ∧ B) ∨ ¬C
t t t T F
t t f T T
t f t F F
t f f F T
f t t F F
f t f F T
f f t F F
f f f F T
Isso deixa apenas um conectivo, o conectivo principal da sentença. Nós preen-
chemos a coluna sob ele, referindo-se às duas colunas que acabamos de con-
cluir, usando a tabela verdade para ∨.
A B C (A ∧ B) ∨ ¬C
t t t t T f
t t f t T t
t f t f F f
t f f f T t
f t t f F f
f t f f T t
f f t f F f
f f f f T t
Quando inspecionarmos a última coluna preenchida desta tabela, a col-
una abaixo do conectivo ∨, vemos que a sentença será falsa em qualquer
circunstância em que Cube(c) for verdadeira e uma de Cube(a) ou Cube(b) é
falsa. Esta tabela mostra que a nossa sentença não é uma tautologia. Além
disso, uma vez que claramente existem mundos de blocos em que c é um cubo e
ou a ou b não é, a alegação feita por nossa sentença original não é logicamente
necessária.
Vejamos mais um exemplo, desta vez para uma sentença da forma
¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
Esta sentença, embora tenha o mesmo número de componentes atômicos, é
consideravelmente mais complexa do que o nosso exemplo anterior. Começamos
a tabela verdade, preenchendo as colunas sob os dois conectivos que se aplicam
diretamente às sentenças atômicas.
Caṕıtulo 4
Tautologias e verdade lógica / 107
A B C ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
t t t F T
t t f F F
t f t F F
t f f F F
f t t T T
f t f T F
f f t T F
f f f T F
Podemos agora preencher a coluna sob o ∨ que liga ¬A e B ∧ C, referindo-
se apenas às colunas recém-preenchidas. Esta coluna terá um F pequeno nela
se, e somente se, ambos as sentenças constituintes são falsas.
A B C ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
t t t f T t
t t f f F f
t f t f F f
t f f f F f
f t t t T t
f t f t T f
f f t t T f
f f f t T f
Vamos agora preencher a coluna sob o ∧ restante. Para fazer isso, nós
precisamos nos referir à coluna de referência em A, e à coluna que acabamos
de preencher. A melhor maneira de fazer isso é passar dois dedos pelas colunas
relevantes e inserir um T apenas nas linhas em que ambos os seus dedos
estejam apontando para T’s.
A B C ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
t t t T f t t
t t f F f f f
t f t F f f f
t f f F f f f
f t t F t t t
f t f F t t f
f f t F t t f
f f f F t t f
Podemos agora preencher a coluna para o ¬ restante referindo-se à coluna
previamente conclúıda. O ¬ simplesmente inverte T’s e F’s.
Seção 4.1
108 / A Lógica dos Conectivos Booleanos
A B C ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
t t t F t f t t
t t f T f f f f
t f t T f f f f
t f f T f f f f
f t t T f t t t
f t f T f t t f
f f t T f t t f
f f f T f t t f
Enfim, podemos preencher a coluna sob o principal conectivo da nossa
sentença. Fazemos isso com o método dos dois dedos: passando os dedos para
baixo na coluna de referência para B e na coluna que acabamos de concluir,
inserindo T sempre que pelo menos um dedo apontar para um T.
A B C ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
t t t f t f t t T
t t f t f f f f T
t f t t f f f f T
t f f t f f f f T
f t t t f t t t T
f t f t f t t f T
f f t t f t t f T
f f f t f t t f T
Digamos que uma tautologia seja qualquer sentença cuja tabela verdade
tem apenas T ’s na coluna sob o seu principal conectivo Assim, vemos natautologia
última coluna da tabela acima que qualquer sentença da forma
¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B
é uma tautologia.
Tente você mesmo. . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
� 1. Abra o programa Boole do software que acompanha o livro. Nós usaremos
Boole para reconstruir a tabela verdade que acabamos de discutir. A
primeira coisa a fazer é inserir a sentença ¬(A ∧ (¬A ∨ (B ∧ C))) ∨ B no
topo direito da tabela. Para fazer isso, use a barra de ferramentas para
inserir os śımbolos lógicos e o teclado para digitar as letras A, B e C. (Você
também pode inserir os śımbolos lógicos a partir do teclado, digitando &,
Caṕıtulo 4
Tautologias e verdade lógica / 109
| e ∼ para ∧,∨, e ¬, respectivamente. Se você digitar os śımbolos lógicos
a partir do teclado, certifique-se de adicionar espaços antes e depois dos
conectivos binários para que as colunas sob eles estejam razoavelmente
espaçadas.) Se a sua sentença está bem formada, o “(1)” pequeno acima
da sentença ficará verde.
�2. Para construir as colunas de referência, clique na parte superior esquerda
da tabela para mover o seu ponto de inserção para o topo da primeira
coluna de referência. Digite C nesta coluna. Em seguida, escolha Add
Column Before (Adicionar Coluna Antes) no menu Table (Tabela)
e insira B. Repita este procedimento e adicione uma coluna encabeçada
pelo A. Para preencher as colunas de referência, clique em cada uma delas
por vez, e digite o padrão desejado de T’s e F’s.
�3. Clique sob os vários conectivos na sentença alvo, e observe que quadrados
verdes aparecem nas colunas de cujos valores o conectivo depende. Sele-
cione uma coluna para a qual as colunas destacadas já estejam preenchi-
dos, e preencha essa coluna com os valores verdade apropriados. Continue
esse processo até a sua tabela estar completa. Quando você terminar, use
o item Verify (Verifique) do menu Table para ver se todos os valores
estão corretos e sua tabela está completa. Você também pode verificar a
sua tabela usando o botão colorido na barra de ferramentas (à esquerda
do botão de impressão). Se você tiver preenchido a tabela corretamente,
marcas de confirmação verdes devem aparecer à esquerda de cada linha, e
ao lado da sentença alvo. Cruzes vermelhas indicam que você cometeu um
erro, e você deve corrigi-los agora.
�4. Uma vez que você tenha uma tabela verdade correta e completa, clique
no botão Assessment (Avaliação) na área rosa sob a barra de ferra-
mentas. Isso permitirá a você dizer se você acha que a sentença é uma
tautologia. Diga que é (visto que é), e verifique a sua avaliação selecio-
nando novamente Verify no menu Table (ou usando o botão da barra de
ferramentas). Agora você deve ver uma marca verde ao lado da palavra
“Tautology” (“Tautologia”) no painel de avaliação. Salve sua tabela como
Table Tautology 1.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parabéns
Há um pequeno problema com a nossa definição de uma tautologia, visto
que ela supõe que cada sentença tem um conectivo principal. Isto é quase
sempre o caso, mas não em sentenças como: conectivos principais
P ∧ Q ∧ R
Seção 4.1
110 / A Lógica dos Conectivos Booleanos
Para fins de construção de tabelas verdade, vamos supor que o conectivo prin-
cipal em conjunção com mais de duas sentenças é sempre o ∧ mais à direita.
Ou seja, vamos construir uma tabela verdade para P ∧ Q ∧ R da mesma forma
que iŕıamos construir uma tabela verdade para:
(P ∧ Q) ∧ R
De modo mais geral, constrúımos a tabela verdade para:
P1 ∧ P2 ∧ P3 ∧ . . . ∧ Pn
como se fosse “acentuado” da seguinte forma:
(((P1 ∧ P2) ∧ P3) ∧ . . .) ∧ Pn
Tratamos disjunções longas da mesma forma.
Qualquer tautologia é logicamente necessária. Afinal de contas, a sua ver-
dade é garantida simplesmente pela sua estrutura e pelos significados dostautologias e
necessidade lógica conectivos verofuncionais. Tautologias são necessidades lógicas num sentido
muito forte. Sua verdade é independente tanto da maneira que o mundo é
bem como dos significados das sentenças atômicas que as compõem.
Deve ficar claro, no entanto, que nem todas as proposições logicamente
necessárias são tautologias. O exemplo mais simples de uma proposição logi-
camente necessária que não é uma tautologia é a sentença fol a = a. Como
esta é uma sentença atômica, sua tabela verdade iria conter um T e um F.
O método da tabela verdade é muito grosseiro para reconhecer que a linha
contendo o F não representa uma possibilidade real.
Você deveria ser capaz de pensar em qualquer número de sentenças que
não são tautológicas, mas que no entanto parecem logicamente necessárias.
Por exemplo, a sentença
¬(Larger(a, b) ∧ Larger(b, a))
não pode ser falsa, mas uma tabela verdade para a sentença não demonstrará
isso. A sentença será falsa na linha da tabela verdade que atribui T tanto a
Larger(a, b) como a Larger(b, a).
Agora temos dois métodos para explorar as noções de possibilidade lógica
e necessidade lógica, pelo menos para a linguagem de blocos. Em primeiro
lugar, há os mundos de blocos que podem ser constrúıdos usando Tarski’s
World . Se a sentença é verdadeira em algum desses mundo, nós o chamamos
de tw-posśıvel. Da mesma forma, se uma sentença é verdadeira em todos os
mundos em que ela tem um valor verdade (isto é, em que todos os seus nomes
têm referências), podemos chamá-lo de tw-necessária. O segundo método é
o da tabela verdade. Se uma sentença é verdadeira em cada uma das linhas
Caṕıtulo 4
Tautologias e verdade lógica / 111
Figura 4.1: A relação entre tautologias, verdades lógicas, e necessidade tw.
de sua tabela verdade, podeŕıamos chamá-la de tt-necessária ou, mais tradi-
cionalmente, tautológica. Se a sentença é verdadeira em pelo menos uma linha
de sua tabela verdade, vamos chamá-la de tt-posśıvel. tt-posśıvel
Nenhum desses conceitos corresponde exatamente às vagas noções de pos-
sibilidade lógica e necessidade lógica. Mas existem relações claras e impor-
tantes entre as noções. Do lado da necessidade, sabemos que todas as tau-
tologias são logicamente necessárias, e que todas as necessidades lógicas são
tw-necessárias. Estas relações são representadas no “diagrama de Euler” na
Figura 4.1, onde representamos o conjunto de necessidades lógicas como o
interior de um ćırculo com uma fronteira difusa. O conjunto de tautologias é
representado por um ćırculo preciso contido dentro do ćırculo difuso, e o con-
junto de necessidades Tarski’s World é representado por um ćırculo preciso
que contém ambos estes ćırculos.
Há, de fato, um outro método para demonstrar que uma sentença é um
verdade lógica, o qual utiliza a técnica de provas. Se você pode provar uma sen- prova e verdade lógica
tença usando nenhuma premissa, então, a sentença é logicamente necessária.
Nos caṕıtulos seguintes, vamos dar-lhe alguns métodos a mais de dar provas.
Usando estes métodos, você vai ser capaz de provar que sentenças são logica-
Seção 4.1
112 / A Lógica dos Conectivos Booleanos
mente necessárias sem construir suas tabelas verdade. Quando acrescentarmos
quantificadores à nossa linguagem, a diferença entre tautologias e verdades
lógicas irá se tornar muito evidente, tornando o método da tabela verdade
menos útil. Por outro lado, os métodos de prova sobre os quais nós discutire-
mos mais tarde naturalmente se estenderão para sentenças contendo quantifi-
cadores.
Lembre-se
Seja S uma sentença de fol constrúıda a partir de sentenças atômicas
por meio apenas de conectivos verofuncionais. A tabela verdade para S
mostra como a verdade de S depende da verdade de suas partes atômicas.
1. S é uma tautologia se, e somente se, todas as linhas da tabela verdade
atribuem true para S.
2. Se S é uma tautologia, então S é uma verdade lógica (isto é, é logica-
mente necessária).
3. Algumasverdades lógicas não são tautologias.
4. S é tt-posśıvel se, e somente se, pelo menos uma linha da tabela
verdade atribuir true para S.
Exerćıcios
Neste caṕıtulo, você estará frequentemente usando Boole para construir tabelas verdade. Embora Boole
tenha a capacidade de construção e preenchimento de colunas de referência para você, não use este
recurso. Para entender tabelas verdade, você precisa ser capaz de fazer isso sozinho. Em caṕıtulos pos-
teriores, vamos deixá-lo usar o recurso, uma vez que você aprendeu como fazê-lo sozinho. O Grade
Grinder vai, aliás, ser capaz de dizer se Boole construiu as colunas de referência.
4.1
�
Se você pulou a seção Tente você mesmo, volte e faça-a agora. Submeta o arquivo Table
Tautology 1.
4.2
�
Assuma que A, B e C são sentenças atômicas. Use Boole para construir tabelas verdade para
cada uma das seguintes sentenças e, com base nas suas tabelas verdade, diga quais são tau-
tologias. Nomeie suas tabelas Table 4.2.x, onde x é o número da sentença.
1. (A ∧ B) ∨ (¬A ∨ ¬B)
2. (A ∧ B) ∨ (A ∧ ¬B)
3. ¬(A ∧ B) ∨ C
4. (A ∨ B) ∨ ¬(A ∨ (B ∧ C))
Caṕıtulo 4
Tautologias e verdade lógica / 113
4.3
��
No Exerćıcio 4.2 você deve ter descoberto que duas das quatro sentenças são tautologias e,
portanto, verdades lógicas.
1. Suponha que você foi informado que a sentença atômica A é de fato uma verdade lógica
(por exemplo, a = a). Você pode determinar se quaisquer sentenças adicionais na lista
(1) - (4) são logicamente necessária com base nessas informações?
2. Suponha que você foi informado que A é de fato logicamente uma sentença falsa (por
exemplo, a �= a). Você pode determinar se quaisquer sentenças adicionais na lista (1) -
(4) são verdades lógicas baseadas nesta informação?
Nos quatro exerćıcios seguintes, use Boole para construir tabelas verdade e indicar se a sentença é tt-
posśıvel e se é uma tautologia. Lembre-se de como você deve tratar as conjunções e disjunções longas.
4.4
�
¬(B ∧ ¬C ∧ ¬B) 4.5
�
A ∨ ¬(B ∨ ¬(C ∧ A))
4.6
�
¬[¬A ∨ ¬(B ∧ C) ∨ (A ∧ B)] 4.7
�
¬[(¬A ∨ B) ∧ ¬(C ∧ D)]
4.8
�
Faça uma cópia do diagrama de Euler na página 111 e coloque os números das seguintes
sentenças na região apropriada.
1. a = b
2. a = b ∨ b = b
3. a = b ∧ b = b
4. ¬(Large(a) ∧ Large(b) ∧ Adjoins(a, b))
5. Larger(a, b) ∨ ¬Larger(a, b)
6. Larger(a, b) ∨ Smaller(a, b)
7. ¬Tet(a) ∨ ¬Cube(b) ∨ a �= b
8. ¬(Small(a) ∧ Small(b)) ∨ Small(a)
9. SameSize(a, b) ∨ ¬(Small(a) ∧ Small(b))
10. ¬(SameCol(a, b) ∧ SameRow(a, b))
4.9
�|�
(Dependências lógicas) Use Tarski’s World para abrir Weiner’s Sentences.
1. Para cada uma das dez sentenças neste arquivo, construa uma tabela verdade Boole e
avalie se a sentença é tt-posśıvel. Nomeie suas tabelas Table 4.9.x, onde x é o número
da sentença. Use os resultados para preencher a primeira coluna da tabela a seguir:
Sentença tt-posśıvel tw-posśıvel
1
2
...
10
Seção 4.1
114 / A Lógica dos Conectivos Booleanos
2. Na segunda coluna da tabela, coloque sim se você acha que a sentença é tw-posśıvel,
isto é, se é posśıvel tornar a sentença verdadeira através da construção de um mundo em
Tarski’s World , e não caso contrário. Para cada sentença que você marcar como tw-
posśıvel, construa um mundo em que é ela é realmente verdade e nomeie-o World 4.9.x,
onde x é o número da sentença em questão. As tabelas verdade que você construiu
antes pode ajudar a construir estes mundos.
3. Algumas das sentenças são tt-posśıveis, mas não tw-posśıveis? Explique por que
isso pode acontecer. Alguma das sentenças são tw-posśıveis, mas não tt-posśıveis?
Explique por que não. Submeta os arquivos que você criou e entregue a tabela e
explicações para seu instrutor.
4.10
��
Desenhe um diagrama de Euler semelhante ao diagrama na página 111, mas desta vez
mostrando a relação entre as noções de possibilidade lógica, tw-possibilidade, e tt-
possibilidade. Para cada região no diagrama, indique uma sentença exemplo que ficaria naquela
região. Não se esqueça da região que está fora de todos os ćırculos.
Todas as verdades necessárias são, obviamente, posśıveis: uma vez que elas são verdadeiras
em todas as circunstâncias posśıveis, elas são certamente verdadeiras em algumas circunstâncias
posśıveis. Diante dessa reflexão, onde se encaixariam as sentenças de nosso diagrama anterior
da página 111 no novo diagrama?
4.11
���
Suponha que S é uma tautologia, com sentenças atômicas A, B e C. Suponha que nós subs-
titúımos todas as ocorrências de A por outra sentença P, possivelmente complexa. Explique por
que o resultando sentença ainda é uma tautologia. Isto é expresso dizendo que a substituição
preserva tautologicalidade. Explique por que a substituição de sentenças atômicas nem sempre
preservam verdade lógica, mesmo que preserve tautologias. Dê um exemplo.
Seção 4.2
Equivalência lógica e tautológica
No último caṕıtulo, nós introduzimos a noção de sentenças logicamente equiva-
lente, sentenças que têm os mesmos valores verdade em todas as circunstâncias
posśıveis. Quando duas sentenças são logicamente equivalentes, dizemos também
que têm as mesmas condições verdade, já que as condições em que elas são
verdadeiras ou falsas são idênticas.
A noção de equivalência lógica, bem como de necessidade lógica, é um
pouco vaga, mas não de uma forma que nos impeça de estudá-la com pre-equivalência lógica
cisão. Pois aqui também podemos introduzir conceitos precisos que carregam
consigo uma relação clara com a noção intuitiva que pretendemos entender
melhor. O conceito chave que vamos introduzir nesta seção é o de equivalência
Caṕıtulo 4
Equivalência lógica e tautológica / 115
tautológica. Duas sentenças são tautologicamente equivalentes se elas podem equivalência tautológica
ser vistas como equivalentes simplesmente em virtude dos significados dos
conectivos verofuncionais. Como se poderia esperar, pode-se verificar se há
equivalência tautológica usando tabelas verdade.
Suponha que temos duas sentenças, S e S′, entre as quais queremos verificar
se há equivalência tautológica. O que fazemos é construir uma tabela verdade
com uma coluna de referência para cada uma das sentenças atômicas que
aparecem em qualquer uma das duas sentenças. À direita, escrevemos tanto
S quanto S′, com uma linha vertical que as separa, e preenchemos os valores
verdade sob os conectivos, como de costume. Nós chamamos isso de tabela
verdade conjunta para as sentenças S e S′. Quando a tabela verdade conjunta tabelas verdade
conjuntasestiver conclúıda, vamos comparar a coluna sob o principal conectivo de S com
a coluna sob o principal conectivo de S′. Se estas colunas são idênticas, então
nós sabemos que as condições verdade das duas sentenças são as mesmas.
Vejamos um exemplo. Usando A e B para representar sentenças atômicas
arbitrárias, vamos testar a primeira lei de DeMorgan para equivalência tau-
tológica. Gostaŕıamos de fazer isso usando a seguinte tabela verdade conjunta.
A B ¬(A ∧ B) ¬A ∨ ¬B
t t F t f F f
t f T f f T t
f t T f t T f
f f T f t T t
Nesta tabela, as colunas em negrito correspondem aos principais conectivos
das duas sentenças. Visto que estas colunas são idênticas, sabemos que as
sentenças devem ter os mesmos valores verdade, não importa o que os valores
verdade de seus constituintes atômicos possam ser. Isto é simplesmente devido
à estrutura das duas sentenças e aos significados dos conectivos booleanos.
Assim, as duas sentenças são de fato tautologicamente equivalentes.
Vejamos um segundo exemplo, desta vez para ver se ¬((A ∨ B) ∧ ¬C) é
tautologicamente equivalente a (¬A ∧ ¬B) ∨ C. Para construir uma tabela ver-
dade para este par de sentenças, precisaremos de oito linhas, uma vez que
existem três sentenças atômicas. A tabela completa se parececom isto.
Seção 4.2
116 / A Lógica dos Conectivos Booleanos
A B C ¬((A ∨ B) ∧ ¬C) (¬A ∧ ¬B) ∨ C
t t t T t f f f f f T
t t f F t t t f f f F
t f t T t f f f f t T
t f f F t t t f f t F
f t t T t f f t f f T
f t f F t t t t f f F
f f t T f f f t t t T
f f f T f f t t t t T
Mais uma vez, examinando as colunas finais sob os dois principais conectivos
revela-se que as sentenças são tautologicamente equivalentes e, portanto, logi-
camente equivalentes.
Todas as sentenças tautologicamente equivalentes são logicamente equiva-
lentes, mas o oposto não é geralmente verdade. De fato, a relação entre estasequivalência tautológica
vs. equivalência lógica noções é a mesma que entre tautologias e verdades lógicas. Equivalência tau-
tológica é uma forma estrita de equivalência lógica, que não se aplica a alguns
pares de sentenças logicamente equivalentes. Considere o par de sentenças:
a = b ∧ Cube(a)
a = b ∧ Cube(b)
Essas sentenças são logicamente equivalentes, como é demonstrado na seguinte
prova informal.
Prova: Suponha que a sentença a = b ∧ Cube(a) é verdadeira. Então
a = b e Cube(a) são ambas verdadeiras. Usando a indiscernibilidade
dos idênticos (Eliminação de Identidade), sabemos que Cube(b) é
verdadeira, e, portanto, que a = b ∧ Cube(b) é verdadeira. Assim,
a verdade de a = b ∧ Cube(a) implica logicamente na verdade de
a = b ∧ Cube(b).
O inverso se aplica também. Suponha que a = b ∧ Cube(b) é ver-
dadeira. Então, por simetria de identidade, também sabemos que
b = a. A partir disso e Cube(b) podemos concluir Cube(a), e, por-
tanto, que a = b ∧ Cube(a) é verdadeira. Assim, a verdade de a = b ∧
Cube(a) implica na verdade de a = b ∧ Cube(a).
Portanto, a = b ∧ Cube(a) é verdadeira se, e somente se, a = b ∧ Cube(b)
é verdadeira.
Esta prova mostra que essas duas sentenças têm os mesmos valores verdade
em qualquer circunstância posśıvel. Porque, se uma delas fosse verdadeira e
a outra fosse falsa, isto estaria em contradição com a conclusão de uma das
Caṕıtulo 4
Equivalência lógica e tautológica / 117
duas partes da prova. Mas considere o que acontece quando nós constrúımos
uma tabela verdade conjunta para estas sentenças. Três sentenças atômicas número de linhas em
tabela conjuntaaparecem no par de sentenças, de modo que a tabela conjunta será parecida
com esta. (Observe que a tabela verdade comum para uma das sentenças por
si só, tem apenas quatro linhas, mas que a tabela conjunta deve ter oito. Você
entende por quê?)
a = b Cube(a) Cube(b) a = b ∧ Cube(a) a = b ∧ Cube(b)
t t t T T
t t f T F
t f t F T
t f f F F
f t t F F
f t f F F
f f t F F
f f f F F
Esta tabela mostra que as duas sentenças não são tautologicamente equiva-
lentes, uma vez que atribui às sentenças valores diferentes na segunda linha e
na terceira linha. Olhe atentamente para essas duas linhas para ver o que está
acontecendo. Note-se que nessas duas linhas é atribuido T a a = b enquanto
são atribúıdos diferentes valores verdade a Cube(a) e Cube(b). Claro, nós sabe-
mos que nenhuma destas linhas corresponde a uma circunstância logicamente
posśıvel, pois se a e b são idênticos, os valores verdade de Cube(a) e Cube(b)
devem ser os mesmos. Mas o método da tabela verdade não detecta isto, uma
vez que é senśıvel apenas aos significados dos conectivos verofucionais.
À medida que expandirmos a nossa linguagem para incluir quantificadores,
vamos encontrar muitas equivalências lógicas que não são equivalências tau-
tológicas. Mas isto não quer dizer que não haja um monte de equivalências
tautológicas importantes e interessantes. Nós já destacamos três no último
caṕıtulo: dupla negação e as duas equivalências de DeMorgan. Deixamos para
você verificar se esses prinćıpios são, de fato, equivalências tautológicas. Na
próxima seção, vamos introduzir outros prinćıpios e ver como eles podem ser
usados para simplificar sentenças de fol.
Seção 4.2
118 / A Lógica dos Conectivos Booleanos
Lembre-se
Sejam S e S′ sentenças de fol constrúıdas a partir de sentenças atômicas
por meio apenas de conectivos verofuncionais. Para testar equivalência
tautológica, constrúımos uma tabela verdade conjunta para as duas sen-
tenças.
1. S e S′ são tautologicamente equivalentes se, e somente se, cada linha
da tabela verdade conjunta atribuir os mesmos valores para S e S′.
2. Se S e S′ são tautologicamente equivalentes, então, elas são logicamente
equivalentes.
3. Algumas sentenças logicamente equivalentes não são tautologicamente
equivalentes.
Exerćıcios
Nos exerćıcios 4.12-4.18, use Boole para construir tabelas verdade conjuntas que mostram que os pares
de sentenças são logicamente (na verdade, tautologicamente) equivalentes. Para adicionar uma segunda
sentença à sua tabela verdade conjunta, escolha Add Column After (Adicionar Coluna Após) no
menu Table (Tabela). Não se esqueça de especificar suas avaliações, e lembre-se, você deve construir
e preencher suas próprias colunas referência.
4.12
�
(DeMorgan)
¬(A ∨ B) and ¬A ∧ ¬B
4.13
�
(Associatividade)
(A ∧ B) ∧ C and A ∧ (B ∧ C)
4.14
�
(Associatividade)
(A ∨ B) ∨ C and A ∨ (B ∨ C)
4.15
�
(Idempotência)
A ∧ B ∧ A and A ∧ B
4.16
�
(Idempotência)
A ∨ B ∨ A and A ∨ B
4.17
�
(Distribuição)
A ∧ (B ∨ C) and (A ∧ B) ∨ (A ∧ C)
4.18
�
(Distribuição)
A ∨ (B ∧ C) and (A ∨ B) ∧ (A ∨ C)
Caṕıtulo 4
Consequência lógica e tautológica / 119
4.19
�
(tw-equivalência) Suponha que introduzimos a noção de tw-equivalência, dizendo que duas
sentenças da linguagem de blocos são tw-equivalentes se, e somente se, elas têm o mesmo valor
verdade em todos os mundos que podem ser constrúıdos em Tarski’s World .
1. Qual é a relação entre tw-equivalência, equivalência tautológica e equivalência lógica?
2. Dê um exemplo de um par de sentenças que são tw-equivalentes, mas não são logica-
mente equivalentes.
Seção 4.3
Consequência lógica e tautológica
A nossa principal preocupação neste livro é com a relação de consequência
lógica, da qual verdade lógica e equivalência lógica podem ser pensadas como
casos muito especiais: a verdade lógica é uma sentença que é uma consequência
lógica de qualquer conjunto de premissas, e sentenças logicamente equivalentes
são sentenças que são consequências lógicas uma da outra.
Como você provavelmente já adivinhou, tabelas verdade nos permitem
definir uma noção precisa da consequência tautológica, uma forma ŕıgida de
consequência lógica, da mesma forma que nos permitiu definir tautologias
e equivalências tautológicas, formas ŕıgidas de verdade lógica e equivalência
lógica.
Vejamos o caso simples de duas sentenças, P e Q, ambas constrúıdas a
partir de sentenças atômicas por meio de conectivos verofuncionais. Suponha
que você quer saber se Q é uma consequência de P. Crie uma tabela verdade
conjunta para P e Q, assim como você faria se estivesse testando equivalência
tautológica. Depois de preencher as colunas para P e Q, verifique as colunas
sob os principais conectivos dessas sentenças. Em particular, olhe para cada
linha da tabela na qual P é verdadeira. Se cada uma dessas linhas é também
uma em que Q é verdadeira, então Q é dita ser uma consequência tautológica de consequência
tautológicaP. A tabela verdade mostra que se P é verdadeira, então Q deve ser verdadeira
também, e que isto é devido simplesmente aos significados dos conectivos
verofuncionais.
Assim como tautologias são logicamente necessárias, qualquer consequência
tautológica Q de uma sentença P também deve ser uma consequência lógica de
P. Podemos ver isso, provando que se Q não é uma consequência lógica de P,
então ela não pode passar no nosso teste da tabela verdade para consequência
tautológica.
Prova: Suponha que Q não é uma consequência lógica de P. Então,
pela nossa definiçãode consequência lógica, tem de haver uma cir-
Seção 4.3
120 / A Lógica dos Conectivos Booleanos
cunstância posśıvel em que P é verdadeira mas Q é falsa. Esta cir-
cunstância irá determinar valores verdade para as sentenças atômicas
em P e Q, e esses valores correspondem a uma linha na tabela ver-
dade conjunta para P e Q, uma vez que todas as atribuições posśıveis
de valores verdade para as sentenças atômicas são representadas na
tabela verdade. Além disso, visto que P e Q são constrúıdas a par-
tir das sentenças atômicas e conectivos verofuncionais, e uma vez
que a primeira é verdadeira na circunstância original e a última é
falsa, P receberá T nesta linha e Q receberá F. Assim, Q não é uma
consequência tautológica de P.
Vejamos um exemplo muito simples. Suponha que queremos verificar se
A ∨ B é uma consequência de A ∧ B. A tabela verdade conjunta para estas
sentenças se parece com isto.
A B A ∧ B A ∨ B
t t T T
t f F T
f t F T
f f F F
Quando você compara as colunas nestas duas sentenças, você vê que as sen-
tenças definitivamente não são tautologicamente equivalentes. Não é surpresa.
Mas estamos interessados em saber se A ∧ B implica logicamente A ∨ B, e as-
sim as únicas linhas com as quais nos preocupamos são aquelas em que a
primeira sentença é verdadeira. A ∧ B só é verdadeira na primeira linha, e
A ∨ B também é verdade nessa linha. Portanto, esta tabela mostra que A ∨ B
é uma consequência tautológica (e, portanto, uma consequência lógica) de
A ∧ B.
Observe que nossa tabela também demonstra que A ∧ B não é uma con-
sequência tautológica de A ∨ B, uma vez que existem linhas nas quais a última
sentença é verdade e a primeira falsa. Será que isso demonstra que A ∧ B não
é uma consequência lógica de A ∨ B? Bem, nós temos que ter cuidado. A ∧ B
não é, em geral, uma consequência lógica de A ∨ B, mas pode ser, em certos
casos, dependendo das sentenças A e B. Vamos pedir a você para pensar em
um exemplo nos exerćıcios.
Nem toda consequência lógica de uma sentença é uma consequência tau-
tológica dessa sentença. Por exemplo, a sentença a = c é uma consequênciaconsequência lógica vs.
consequência
tautológica
lógica da sentença (a = b ∧ b = c), mas não é uma consequência tautológica
dela. Pense sobre a linha que atribui T para as sentenças atômicas a = b e
b = c, mas F à sentença a = c. É evidente que esta linha, a qual impede a = c
de ser uma consequência tautológica de (a = b ∧ b = c), não respeita os signifi-
Caṕıtulo 4
Consequência lógica e tautológica / 121
cados das sentenças atômicas a partir das quais as sentenças são constrúıdas.
Ela não corresponde a uma circunstância verdadeira posśıvel, mas o método
da tabela verdade não detecta isso.
O método da tabela verdade de verificar consequência tautológica não
se restringe a apenas uma premissa. Você pode aplicá-lo a argumentos com
qualquer número de premissas P1, . . . ,Pn e conclusão Q. Para isso, você tem
que construir uma tabela verdade conjunta para todas as sentenças P1, . . . ,Pn
e Q. Uma vez feito isso, você precisa verificar cada linha em que todas as
premissas são verdadeiras para ver se a conclusão também é verdadeira. Se
assim for, a conclusão é uma consequência tautológica das premissas.
Vamos tentar fazer isso em alguns exemplos simples. Primeiro, suponha
que queremos verificar se B é uma consequência das duas premissas A ∨ B e
¬A. A tabela verdade conjunta para estas três sentenças fica assim. (Note-se
que como uma das nossas sentenças-alvo, a conclusão B, é atômica, simples-
mente repetimos a coluna de referência quando esta sentença aparece nova-
mente à direita.)
A B A ∨ B ¬A B
t t T F T
t f T F F
f t T T T
f f F T F
Examinando as colunas sob nossas duas premissas, A ∨ B e ¬A, vemos que
há apenas uma linha em que ambas as premissas são verdadeiras, ou seja, a
terceira. E na terceira linha, a conclusão B também fica verdadeira. Então B
é de fato uma consequência tautológica (e, portanto, lógica) destas premissas.
Em ambos os exemplos que examinamos até agora, houve apenas uma
linha em que as todas as premissas são verdadeiras. Isso faz com que seja fácil
verificar a validade dos argumentos, mas não é de maneira alguma algo com o
qual você pode contar. Por exemplo, suponha que o método da tabela verdade
foi utilizado para verificar se A ∨ C é uma consequência de A ∨ ¬B e B ∨ C. A
tabela verdade conjunta para estas três sentenças se parece com isto.
Seção 4.3
122 / A Lógica dos Conectivos Booleanos
A B C A ∨ ¬B B ∨ C A ∨ C
t t t T f T T
t t f T f T T
t f t T t T T
t f f T t F T
f t t F f T T
f t f F f T F
f f t T t T T
f f f T t F F
Aqui, há quatro linhas em que as premissas, A ∨ ¬B e B ∨ C, são ver-
dadeiras: a primeira, a segunda, a terceira e a sétima. Mas em cada uma
destas linhas a conclusão, A ∨ C, também é verdadeira. A conclusão é ver-
dadeira em outras linhas também, mas nós não nos importamos com isso.
Essa inferência, de A ∨ ¬B e B ∨ C para A ∨ C, é logicamente válida, e é uma
instância de um padrão importante conhecido na ciência da computação como
resolução.
Devemos olhar para um exemplo onde o método de tabela verdade revela
que a conclusão não é consequência tautológica das premissas. Na verdade, a
última tabela verdade vai servir a esse propósito. Esta tabela também mostra
que a sentença A ∨ ¬B não é uma consequência tautológica das duas premissas
B ∨ C e A ∨ C. Você pode encontrar a linha que mostra isto? (Dica: Tem que
ser a primeira, a segunda, a terceira, a quinta, ou a sétima, já que estas são
as linhas em que B ∨ C e A ∨ C são verdadeiras.)
Lembre-se
Sejam P1, . . . ,Pn e Q sentenças de fol constrúıdas a partir de sentenças
atômicas usando conectivos verofuncionais. Construa uma tabela verdade
conjunta para todas essas sentenças.
1. Q é uma consequência tautológica de P1, . . . ,Pn se, e somente se, toda
linha que atribui T para cada uma de P1, . . . ,Pn também atribui T a
Q.
2. Se Q é uma consequência tautológica de P1, . . . ,Pn, então Q é também
uma consequência lógica de P1, . . . ,Pn.
3. Algumas consequências lógicas não são consequências tautológicas.
Caṕıtulo 4
Consequência tautológica em Fitch / 123
Exerćıcios
Para cada um dos argumentos abaixo, use o método da tabela verdade para determinar se a conclusão
é uma consequência tautológica das premissas. Sua tabela verdade para o Exerćıcio 4.24 será bastante
grande. É bom para a alma construir uma tabela verdade grande de vez em quando. Seja grato por ter
Boole para ajudá-lo. (Mas certifique-se de construir suas próprias colunas de referência!)
4.20
�
(Tet(a) ∧ Small(a)) ∨ Small(b)
Small(a) ∨ Small(b)
4.21
�
Taller(claire,max) ∨ Taller(max, claire)
Taller(claire,max)
¬Taller(max, claire)
4.22
�
Large(a)
Cube(a) ∨ Dodec(a)
(Cube(a) ∧ Large(a)) ∨ (Dodec(a) ∧ Large(a))
4.23
��
A ∨ ¬B
B ∨ C
C ∨ D
A ∨ ¬D
4.24
��
¬A ∨ B ∨ C
¬C ∨ D
¬(B ∧ ¬E)
D ∨ ¬A ∨ E
4.25
��
Dê um exemplo de duas sentenças diferentes A e B na linguagem dos blocos tais que A ∧ B é
uma consequência lógica de A ∨ B. [Dica: Note que A ∧ A é uma consequência lógica de A ∨ A,
mas aqui insistimos que A e B sejam sentenças distintas.]
Seção 4.4
Consequência tautológica em Fitch
Nós esperamos que você tenha resolvido o Exerćıcio 4.24, porque a solução
dá a você um sentido tanto do poder como das desvantagens do método da
tabela verdade. Nós fomos tentados a pedir-lhe para construir uma tabela que
exigisse 64 linhas, mas pensamos melhor. Construir tabelas verdade grandes
podem construir caráter, mas como a maioria das coisas que formam o caráter,
é uma chatice.
Verificar para ver se Q é uma consequência tautológica de P1, . . . ,Pn é um
procedimento mecânico. Se as sentenças são longas pode exigir muitotrabalho
Seção 4.4
124 / A Lógica dos Conectivos Booleanos
tedioso, mas não é preciso qualquer originalidade. Isto é exatamente o tipo
de coisa no qual os computadores são bons. Devido a isso, nós constrúımos
um mecanismo para Fitch, chamado Taut Con, que é semelhante ao AnaMecanismo Taut Con
Con, mas verifica se a sentença é uma consequência tautológica das sentenças
citadas em apoio. Como Ana Con, Taut Con não é realmente uma regra de
inferência (vamos introduzir regras de inferência para os conectivos booleanos
no Caṕıtulo 6), mas é útil para testar rapidamente se uma sentença é tauto-
logicamente resultado das outras.
Tente você mesmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
� 1. Inicie Fitch e abra o arquivo Taut Con 1. Neste arquivo você vai encontrar
um argumento que tem a mesma forma que o argumento no Exerćıcio 4.23.
(Ignore as duas sentenças objetivo. Nós vamos chegar a elas mais tarde.)
Mova o cursor de foco para o último passo da prova. A partir do menu
Rule?, vá até o submenu Con e escolha Taut Con.
� 2. Agora cite as três premissas como suporte para esta sentença e confira
o passo. O passo não irá conferir uma vez que esta sentença não é uma
consequência tautológica das premissas, como você descobriu se você fez
Exerćıcio 4.23, que tem a mesma forma desta inferência.
� 3. Edite o passo que não conferiu para ler:
Home(max) ∨ Home(carl)
Esta sentença é uma consequência tautológica de duas premissas. Descubra
quais as duas e cite apenas elas. Se você citou as duas certas, o passo deve
conferir. Experimente.
� 4. Adicione mais um passo à prova e insira a sentença:
Home(carl) ∨ (Home(max) ∧ Home(pris))
Use Taut Con para ver se esta sentença é tautologicamente resultado das
três premissas. SelecioneVerify Proof do menu Proof. Você vai descobrir
que, embora o passo confira, o objetivo não confere. Isto é porque nós
colocamos uma restrição especial sobre o uso de Taut Con neste exerćıcio.
� 5. Selecione View Goal Constraints (Ver Restrições do Objetivo) do
menu Goal (Objetivo). Você vai descobrir que nesta prova, você está
autorizado a usar Taut Con, mas só pode citar duas sentenças ou menos
quando você usá-lo. Feche a janela do objetivo para voltar para a prova.
Caṕıtulo 4
Consequência tautológica em Fitch / 125
� 6. A sentença que você inseriu é resultado da sentença imediatamente acima
dela e de apenas uma das três premissas. Remova a citação às três pre-
missas e veja se você pode conferir o passo citando apenas duas sentenças
de apoio. Quando você tiver êxito, verifique a prova e salve-a como Proof
Taut Con 1. Não feche a prova, uma vez que ela será necessária na próxima
seção “Tente você mesmo.”
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parabéns
Você provavelmente está curioso sobre a relação entre Taut Con e Ana
Con—e por falar nisso, o que o outro item misterioso no menu de Con, FO
Con, pode fazer. Estes são, de fato três métodos cada vez mais fortes que Fitch Taut Con, FO Con, e
Ana Conusa para testar a consequência lógica. Taut Con é o mais fraco. Ele verifica se
o passo atual é resultado das sentenças citadas em virtude dos significados dos
conectivos verofuncionais. Ele ignora o significado de quaisquer predicados que
aparecem na sentença e, quando introduzirmos quantificadores à linguagem,
ele irá ignorá-los também.
Para ajudá-lo a manter o controle das informações que Taut Con con-
sidera ao verificar um passo, Fitch tem “óculos de proteção” que obscure-
cem a informação que não serão consideradas quando verificando o passo.
Como dissemos acima, as únicas coisas que importam quando verificamos um
passo justificado por um passo Taut Con são os conectivos proposicionais
nas fórmulas, e o padrão de ocorrência das fórmulas atômicas.
O que isto significa é que os significados dos śımbolos e nomes de predicados
nas fórmulas não importam, e os óculos de proteção de Fitch obscurecem essas
informações. Quando você coloca os óculos, cada fórmula atômica envolvida
no passo aparece como um bloco de cor, escondendo a fórmula atômica em
particular que está presente. Cada ocorrência da mesma fórmula atômica será
representada pela mesma cor, e diferentes fórmulas terão cores diferentes.
Tente você mesmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
�1. Volte novamente para o arquivo Taut Con 1 que você fez na seção “Tente
você mesmo” anterior, e foque no último passo da prova, que contém uma
aplicação da regra Taut Con.
�2. Clique sobre a imagem de um par de óculos que aparece à direita do nome
da regra, e observe como a conclusão e as sentenças citadas transformam-se
em blocos de cor.
�
Seção 4.4
126 / A Lógica dos Conectivos Booleanos
3. Você deverá ver uma versão mais colorida disto
Hungry(carl) ∨ Hungry(pris)
Home(max) ∨ Hungry(carl)
Hungry(carl ∨ ( Home(max) ∧ Hungry(pris) ) Taut Con
Certifique-se de entender como as fórmulas atômicas se relacionam com
suas cores correspondentes.
� 4. Não há nada para salvar.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parabéns
FO Con, que significa “consequência de primeira ordem” (First Order
Consequence em Inglês), presta atenção aos conectivos verofuncionais, aos
quantificadores e ao predicado de identidade quando verifica consequência.
FO Con, por exemplo, identificaria a = c como consequência de a = b ∧ b = c.
Ela é mais forte do que Taut Con no sentido de que qualquer consequência
que Taut Con reconhecida como válida também será reconhecida por FO
Con. Mas pode levar mais tempo, uma vez que tem que aplicar um proce-
dimento mais complexo, graças à identidade e aos quantificadores. Depois de
chegarmos aos quantificadores, vamos falar mais sobre o procedimento que ela
está aplicando.
A regra mais forte das três é Ana Con, a qual tenta reconhecer as con-
sequências devido aos conectivos verofuncionais, quantificadores, identidade,
e a maior parte dos predicados da linguagem de blocos. (Ana Con ignora
Between e Adjoins, simplesmente por razões práticas.) Qualquer inferência
que confere usando ou Taut Con ou FO Con deve, em prinćıpio, conferir
com Ana Con também. Na prática, porém, o procedimento que Ana Con
usa pode “atolar” ou ficar sem memória em casos onde os dois primeiros não
têm problemas.
Como dissemos antes, você só deve usar um procedimento a partir do
menu Con quando o exerćıcio deixa claro que o procedimento é permitido
na solução. Além disso, se um exerćıcio pede para você usar Taut Con, não
use FO Con ou Ana Con, mesmo que essas regras mais poderosas pareçam
funcionar tão bem quanto a primeira. Se você estiver em dúvida sobre quais
regras você tem permissão de usar, escolhaView Goal Constraints no menu
Goal.
Caṕıtulo 4
Consequência tautológica em Fitch / 127
Tente você mesmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
� 1. Abra o arquivo Taut Con 2. Você vai encontrar uma prova contendo dez
passos cujas regras não foram especificadas.
�2. Foque em cada um destes passos. Você vai descobrir que as premissas de
apoio já foram citados. Convença-se que o passo é um resultado das sen-
tenças citadas. Ela é uma consequência tautológica das sentenças citadas?
Se for, altere a regra para Taut Con e veja se você estava certo. Se não,
mude para Ana Con e veja se ele confere. (Se Taut Con funcionar,
certifique-se de usá-la em vez da mais forte Ana Con.)
�3. Quando todos os seus passos conferirem usando Taut Con ou Ana Con,volte e encontre o passo cuja regra pode ser alterada de Ana Con para a
mais fraca FO Con.
�4. Quando cada passo verificar usando a regra Con mais fraca posśıvel, salve
a sua prova Proof Taut Con 2.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parabéns
Exerćıcios
4.26
�
Se você pulou as seções Tente você mesmo, volte e faça-as agora. Submeta os arquivos Proof
Taut Con 1 e Proof Taut Con 2.
Para cada um dos seguintes argumentos, decida se a conclusão é uma consequência tautológica das
premissas. Se for, submeta uma prova que estabelece a conclusão utilizando uma ou mais aplicações de
Taut Con. Não cite mais de duas sentenças de cada vez para qualquer uma das suas aplicações de
Taut Con. Se a conclusão não é uma consequência das premissas, submeta um mundo contraexemplo
mostrando que o argumento não é válido.
4.27
�
Cube(a) ∨ Cube(b)
Dodec(c) ∨ Dodec(d)
¬Cube(a) ∨ ¬Dodec(c)
Cube(b) ∨ Dodec(d)
4.28
�
Large(a) ∨ Large(b)
Large(a) ∨ Large(c)
Large(a) ∧ (Large(b) ∨ Large(c))
Seção 4.4
128 / A Lógica dos Conectivos Booleanos
4.29
�
Small(a) ∨ Small(b)
Small(b) ∨ Small(c)
Small(c) ∨ Small(d)
Small(d) ∨ Small(e)
¬Small(c)
Small(a) ∨ Small(e)
4.30
�
Tet(a) ∨ ¬(Tet(b) ∧ Tet(c))
¬(¬Tet(b) ∨ ¬Tet(d))
(Tet(e) ∧ Tet(c)) ∨ (Tet(c) ∧ Tet(d))
Tet(a)
Seção 4.5
Trabalhando com a negação
Quando duas sentenças são logicamente equivalentes, cada uma é uma con-
sequência lógica da outra. Como resultado, ao dar uma prova informal, você
sempre pode ir de uma sentença estabelecida para aquela que é logicamente
equivalente a ela. Este fato faz observações como as leis de DeMorgan e dupla
negação bastante útil ao darmos provas informais.
O que faz essas equivalências ainda mais úteis é o fato de que, sentenças
logicamente equivalentes podem ser substitúıdas uma pela outra, no contextosubstituição de
equivalentes lógicos de uma sentença maior e as sentenças resultantes também serão logicamente
equivalentes. Um exemplo ajudará a ilustrar o que queremos dizer. Suponha
que começamos com a sentença:
¬(Cube(a) ∧ ¬¬Small(a))
Pelo prinćıpio da dupla negação, sabemos que Small(a) é logicamente equiva-
lente a ¬¬Small(a). Uma vez que estas têm exatamente as mesmas condições
verdade, podemos substituir ¬¬Small(a) por Small(a), no contexto da sentença
acima, e o resultado,
¬(Cube(a) ∧ Small(a))
será logicamente equivalente à sentença original, um fato que você pode con-
ferir através da construção de uma tabela verdade conjunta para as duas
sentenças.
Podemos afirmar este fato importante da seguinte maneira. Vamos escrever
S(P) para uma sentença fol que contém a sentença (possivelmente complexa)
P como uma parte componente, e S(Q) para o resultado de substituir P por
Q em S(P). Então, se P e Q são logicamente equivalentes:
P ⇔ Q
Caṕıtulo 4
Trabalhando com a negação / 129
temos que S(P) e S(Q) também são logicamente equivalentes:
S(P) ⇔ S(Q)
Isto é conhecido como o prinćıpio da substituição de equivalentes lógicos.
Não vamos provar este prinćıpio no momento, porque exige uma prova por
indução, um estilo de prova ao qual chegaremos em um caṕıtulo posterior.
Mas a observação nos permite usar algumas equivalências simples para fazer
algumas coisas bem surpreendentes. Por exemplo, usando apenas as duas leis
de DeMorgan e dupla negação, podemos tomar qualquer sentença constrúıda
com ∧, ∨, e ¬, e transformá-la em uma onde ¬ aplica-se apenas às sentenças
atômicas. Outra forma de expressar isso é que qualquer sentença constrúıda
a partir de sentenças atômicas utilizando os três conectivos ∧, ∨, e ¬ é logi-
camente equivalente a uma constrúıda a partir de literais usando apenas ∧ e
∨.
Para obter tal sentença, basta mover o ¬ para dentro, trocando ∧ por ∨,
∨ por ∧, e cancelar qualquer par de ¬’s que estão ao lado uns dos outros, e forma normal da
negação(FNN)não separados por quaisquer parênteses. Tal sentença é dita estar em forma
normal da negação ou FNN. Aqui está um exemplo de uma derivação da
forma normal da negação de uma sentença. Usamos A, B, e C para representar
qualquer sentença atômica da linguagem.
¬((A ∨ B) ∧ ¬C) ⇔ ¬(A ∨ B) ∨ ¬¬C
⇔ ¬(A ∨ B) ∨ C
⇔ (¬A ∧ ¬B) ∨ C
Em leituras e derivações desse tipo, lembre-se que o śımbolo ⇔ não é em
si um śımbolo da linguagem de primeira ordem, mas uma forma abreviada
de dizer que duas sentenças são logicamente equivalentes. Neste derivação,
o primeiro passo é uma aplicação da primeira lei de DeMorgan à sentença
inteira. O segundo passo aplica dupla negação ao componente ¬¬C. O passo
final é uma aplicação da segunda lei de DeMorgan ao componente de ¬(A ∨ B).
A sentença com a qual terminamos está na forma normal da negação, uma
vez que os śımbolos de negação aplicam-se apenas às sentenças atômicas.
Terminamos esta seção com uma lista de algumas equivalências lógicas
adicionais que nos permitem simplificar sentenças de maneiras úteis. Você já
construiu tabelas verdade para a maioria dessas equivalências nos Exerćıcios
4.13-4.16 no final da Seção 4.2.
1. (Associatividade do ∧) Uma sentença fol P ∧ (Q ∧ R) é logicamente associatividade
equivalente a (P ∧ Q) ∧ R, a qual é por sua vez equivalente a P ∧ Q ∧ R.
Isto é,
P ∧ (Q ∧ R) ⇔ (P ∧ Q) ∧ R ⇔ P ∧ Q ∧ R
Seção 4.5
130 / A Lógica dos Conectivos Booleanos
2. (Associatividade do ∨) Uma sentença fol P ∨ (Q ∨ R) é logicamente
equivalente a (P ∨ Q) ∨ R, a qual é por sua vez equivalente a P ∨ Q ∨ R.
Isto é,
P ∨ (Q ∨ R) ⇔ (P ∨ Q) ∨ R ⇔ P ∨ Q ∨ R
3. (Comutatividade do ∧) Uma conjunção P ∧ Q é logicamente equivalentecomutatividade
a Q ∧ P. Isto é,
P ∧ Q ⇔ Q ∧ P
Como resultado, qualquer rearranjo dos componentes de uma conjunção
de uma sentença fol é logicamente equivalente à sentença original. Por
exemplo, P ∧ Q ∧ R é equivalente a R ∧ Q ∧ P.
4. (Comutatividade do ∨) Uma disjunção P ∨ Q é logicamente equivalente
a Q ∨ P. Isto é,
P ∨ Q ⇔ Q ∨ P
Como resultado, qualquer rearranjo dos componentes de uma disjunção
de uma sentença fol é logicamente equivalente à sentença original. Por
exemplo, P ∨ Q ∨ R é equivalente a R ∨ Q ∨ P.
5. (Idempotência do ∧)) Uma conjunção P ∧ P é equivalente a P. Isto é,idempotência
P ∧ P ⇔ P
De modo mais geral (dada a comutatividade), qualquer conjunção com
um componente repetido é equivalente ao resultado da remoção de to-
dos, menos uma ocorrência desse componente. Por exemplo, P ∧ Q ∧ P
é equivalente a P ∧ Q.
6. (Idempotência do ∨) Uma disjunção P ∨ P é equivalente a P. Isto é,
P ∨ P ⇔ P
De modo mais geral (dada a comutatividade), qualquer disjunção com
um componente repetido é equivalente ao resultado da remoção de to-
dos, menos uma ocorrência desse componente. Por exemplo, P ∨ Q ∨ P
é equivalente a P ∨ Q.
Aqui está um exemplo onde usamos algumas dessas leis para demonstrar
que a primeira sentença na lista a seguir é logicamente equivalente à última.
Mais uma vez (como no que se segue), usamos A, B, e C para representar sen-
tenças atômicas arbitrárias de fol. Assim, o resultado está na forma normal
da negação.
Caṕıtulo 4
Trabalhando com a negação / 131
(A ∨ B) ∧ C ∧ (¬(¬B ∧ ¬A) ∨ B) ⇔ (A ∨ B) ∧ C ∧ ((¬¬B ∨ ¬¬A) ∨ B)
⇔ (A ∨ B) ∧ C ∧ ((B ∨ A) ∨ B)
⇔ (A ∨ B) ∧ C ∧ (B ∨ A ∨ B)
⇔ (A ∨ B) ∧ C ∧ (B ∨ A)
⇔ (A ∨ B) ∧ C ∧ (A ∨ B)
⇔ (A ∨ B) ∧ C
Chamamos uma demonstração deste tipo de cadeia de equivalências. O cadeia de equivalências
primeiro passo nessa cadeia é justificada por uma das leis de DeMorgan. O
segundo passo envolve duas aplicações de dupla negação. No próximo passo,
usamos associatividade para remover os parênteses desnecessários. No quarto
passo, nós usamos idempotência do ∨. O penúltimo passo usa comutatividade
do ∨, enquanto o passo final usa idempotência do ∧.
Lembre-se
1. Substituição de equivalentes:Se P e Q são logicamente equivalentes:
P ⇔ Q
então os resultados da substituição de uma pela outra no contexto de
uma sentença maior também são logicamente equivalentes:
S(P) ⇔ S(Q)
2. A sentença está na formal normal da negação (FNN) se todas as
ocorrências de ¬ aplicam-se diretamente a sentenças atômicas.
3. Qualquer sentença constrúıda a partir de sentenças atômicas usando
apenas ∧, ∨ e ¬ pode ser colocada na forma normal da negação através
de aplicações repetidas das leis de DeMorgan e dupla negação.
4. Sentenças muitas vezes podem ser simplificadas ainda mais utilizando
os prinćıpios da associatividade, comutatividade e idempotência.
Seção 4.5
132 / A Lógica dos Conectivos Booleanos
Exerćıcios
4.31
�
(Forma normal da negação) Use Tarski’s World para abrir Turing’s Sentences. Você encontrará
as seguintes cinco sentenças, cada uma seguida por uma posição de sentença vazia.
1. ¬(Cube(a) ∧ Larger(a, b))
3. ¬(Cube(a) ∨ ¬Larger(b, a))
5. ¬(¬Cube(a) ∨ ¬Larger(a, b) ∨ a �= b)
7. ¬(Tet(b) ∨ (Large(c) ∧ ¬Smaller(d, e)))
9. Dodec(f) ∨ ¬(Tet(b) ∨ ¬Tet(f) ∨ ¬Dodec(f))
Nas posições vazias, escreva a forma normal da negação da sentença acima dela. Em seguida,
construa qualquer mundo onde todos os nomes estejam em uso. Se você chegar às formas
normais da negação corretas, cada sentença numerada par terá o mesmo valor verdade em seu
mundo que a sentença numerada ı́mpar acima dela. Verifique que isto acontece em seu mundo.
Submeta o arquivo de sentenças modificado como Sentences 4.31.
4.32
�
(Forma normal da negação) Use Tarski’s World para abrir o arquivo Sextus’ Sentences. Nos
espaços numerados ı́mpares, você encontrará as seguintes sentenças.
1. ¬(Home(carl) ∧ ¬Home(claire))
3. ¬[Happy(max) ∧ (¬Likes(carl, claire) ∨ ¬Likes(claire, carl))]
5. ¬¬¬[(Home(max) ∨ Home(carl)) ∧ (Happy(max) ∨ Happy(carl))]
Use as leis de Dupla Negação e de DeMorgan para colocar cada sentença na forma normal da
negação no espaço abaixo. Submeta o arquivo modificado como Sentences 4.32.
Em cada um dos seguintes exerćıcios, use associatividade, comutatividade e idempotência para simplificar
a sentença, o tanto quanto você pode, usando apenas estas regras. Sua resposta deve consistir de uma
cadeia de equivalências lógicas, como a cadeia dada na página 131. Em cada passo da cadeia, indique
qual prinćıpio você está usando.
4.33
�
(A ∧ B) ∧ A 4.34
�
(B ∧ (A ∧ B ∧ C))
4.35
�
(A ∨ B) ∨ (C ∧ D) ∨ A 4.36
�
(¬A ∨ B) ∨ (B ∨ C)
4.37
�
(A ∧ B) ∨ C ∨ (B ∧ A) ∨ A
Caṕıtulo 4
Formas normais conjuntiva e disjuntiva / 133
Seção 4.6
Formas normais conjuntiva e disjuntiva
Vimos que com alguns prinćıpios simples da lógica booleana, podemos começar
com uma sentença e transformá-la em uma sentença logicamente equiva-
lente na forma normal da negação, aquela em que todas as negações ocor-
rem na frente de sentenças atômicas. Podemos melhorar isso, introduzindo
as chamadas leis distributivas. Estas equivalências adicionais nos permitirão
transformar sentenças para o que se conhece como forma normal conjuntiva
(FNC) e forma normal disjuntiva (FND). Estas formas normais são muito im-
portantes em certas aplicações da lógica em ciência da computação, como dis-
cutiremos no Caṕıtulo 17. Também usaremos a forma normal disjuntiva para
demonstrar um fato importante sobre os conectivos booleanos no Caṕıtulo 7.
Lembre-se que em álgebra você aprendeu que multiplicação distribui so-
bre adição: a × (b + c) = (a × b) + (a × c). As leis distributivas da lógica distribuição
formalmente parecem a mesma coisa. Uma versão nos diz que P ∧ (Q ∨ R) é
logicamente equivalente a (P ∧ Q) ∨ (P ∧ R). Isto é, ∧ distribui sobre ∨. Para
ver que isto é assim, perceba que a primeira sentença é verdadeira se, e so-
mente se, P mais pelo menos uma de Q ou R é verdadeira. Mas um momento
de reflexão mostra que a segunda sentença é verdadeira exatamente nas mes-
mas circunstâncias. Isto também pode ser confirmado através da construção
de uma tabela verdade conjunta para as duas sentenças, o que você já fez se
fez o Exerćıcio 4.17.
Na aritmética, + não distribui sobre ×. No entanto, ∨ distribui sobre ∧.
Ou seja, P ∨ (Q ∧ R) é logicamente equivalente a (P ∨ Q) ∧ (P ∨ R), como você
também descobriu no Exerćıcio 4.18.
Lembre-se
(As leis distributivas) Para quaisquer sentenças P, Q, e R:
1. Distribuição de ∧ sobre ∨: P ∧ (Q ∨ R) ⇔ (P ∧ Q) ∨ (P ∧ R)
2. Distribution de ∨ sobre ∧: P ∨ (Q ∧ R) ⇔ (P ∨ Q) ∧ (P ∨ R)
Como você pode recordar da álgebra, a lei distributiva para × sobre + é
incrivelmente útil. Ela nos permite transformar qualquer expressão algébrica
envolvendo + e ×, não importa quão complexa, em uma que é apenas uma
soma de produtos. Por exemplo, a seguinte transformação usa distribuição
Seção 4.6
134 / A Lógica dos Conectivos Booleanos
três vezes.
(a+ b)(c+ d) = (a+ b)c+ (a+ b)d
= ac+ bc+ (a+ b)d
= ac+ bc+ ad+ bd
Exatamente da mesma maneira, a distribuição de ∧ sobre ∨ permite-nos
transformar qualquer sentença constrúıda a partir de literais usando ∧ e ∨
em uma sentença logicamente equivalente, que é uma disjunção de (uma ou
mais) conjunções de (um ou mais) literais. Isto é, utilizando esta primeira
lei distributiva, podemos transformar qualquer sentença na forma normal da
negação em uma sentença que é uma disjunção de conjunções de literais. Uma
sentença dessa forma é dita estar na forma formal disjuntiva.forma normal
disjuntiva (FND) Aqui está um exemplo que se assemelha ao nosso exemplo algébrico. Ob-
serve que, como no exemplo algébrico, estamos distribuindo tanto da direita
quanto da esquerda, apesar de nossa apresentação da regra só ilustrar dis-
tribuição da esquerda.
(A ∨ B) ∧ (C ∨ D) ⇔ [(A ∨ B) ∧ C] ∨ [(A ∨ B) ∧ D]
⇔ (A ∧ C) ∨ (B ∧ C) ∨ [(A ∨ B) ∧ D]
⇔ (A ∧ C) ∨ (B ∧ C) ∨ (A ∧ D) ∨ (B ∧ D)
Como você pode ver, a distribuição de ∧ sobre ∨ permite-nos levar śımbolos
de conjunção cada vez mais para dentro, assim como as leis de DeMorgan nos
permitem mover negações mais para dentro. Assim, se tomarmos qualquer
sentença e usarmos primeiro DeMorgan (e dupla negação) para obtermos uma
sentença na forma normal da negação, podemos então usar esta primeira lei
de distribuição para obter uma sentença na forma normal disjuntiva, na qual
todos os śımbolos de conjunção aplicam-se a literais.
Da mesma forma, usando a distribuição do ∨ sobre ∧, podemos trans-
formar qualquer sentença na forma normal da negação em uma que é uma
conjunção de uma ou mais sentenças, cada um das quais é uma disjunção de
um ou mais literais. A sentença nesta forma é dita estar na forma normal
conjuntiva (FNC). Aqui está um exemplo, paralelo ao dado acima, mas comforma normal
conjuntiva (FNC) ∧ e ∨ trocados:
(A ∧ B) ∨ (C ∧ D) ⇔ [(A ∧ B) ∨ C] ∧ [(A ∧ B) ∨ D]
⇔ (A ∨ C) ∧ (B ∨ C) ∧ [(A ∧ B) ∨ D]
⇔ (A ∨ C) ∧ (B ∨ C) ∧ (A ∨ D) ∧ (B ∨ D)
Na página 129, mostramos como transformar a sentença ¬((A ∨ B) ∧ ¬C)
em uma na forma normal da negação. O resultado foi (¬A ∧ ¬B) ∨ C. Esta sen-
tença está na forma normal disjuntiva. Vamos repetir a nossa transformação,
mas continuar até chegarmos a uma sentença na forma normal conjuntiva.
Caṕıtulo 4
Formas normais conjuntiva e disjuntiva / 135
¬((A ∨ B) ∧ ¬C) ⇔ ¬(A ∨ B) ∨ ¬¬C
⇔ ¬(A ∨ B) ∨ C
⇔ (¬A ∧ ¬B) ∨ C
⇔ (¬A ∨ C) ∧ (¬B ∨ C)
É importante lembrar que uma sentença pode se contar como estando
tanto na forma normal conjuntiva como na forma normal disjuntiva, ao mesmo
tempo. Por exemplo, a sentença
Home(claire) ∧ ¬Home(max)
está em ambas FND and FNC. Por um lado, ela está na forma normal dis-
juntiva uma vez que é uma disjunção de uma sentença (única) que é uma
conjunção de dois literais. Por outro lado, está na forma normal conjuntiva,
uma vez que é uma conjunção de duas sentenças, cada uma das quais é uma
disjunção de um literal.No caso de você encontrar esta última observação confusa, aqui estão testes
simples para verificar se sentenças estão na forma normal disjuntiva e forma
normal conjuntiva. Os testes assumem que a sentença não tem parênteses
desnecessários e contém somente os conectivos ∧, ∨ e ¬.
Para verificar se uma sentença está na FND, se pergunte se todos os teste para FND
śımbolos de negação se aplicam diretamente a sentenças atômicas e
se todos os śımbolos de conjunção se aplicam diretamente a literais.
Se ambas as respostas são sim, então a sentença está na forma normal
disjuntiva.
Para verificar se uma sentença está na FNC, se pergunte se todos os teste para FNC
śımbolos de negação se aplicam diretamente a sentenças atômicas e
se todos os śımbolos de disjunção se aplicam diretamente a literais.
Se ambas as respostas são sim, então a sentença está na forma normal
conjuntiva.
Agora olhe para a sentença acima e observe que ela passa em ambos os
testes (no caso FNC porque não tem śımbolos de disjunção).
Seção 4.6
136 / A Lógica dos Conectivos Booleanos
Lembre-se
1. Uma sentença está na forma normal disjuntiva (FND), se for uma
disjunção de uma ou mais conjunções de um ou mais literais.
2. Uma sentença está na forma normal conjuntiva (FNC), se for uma
conjunção de uma ou mais disjunções de um ou mais literais.
3. Distribuição do ∧ sobre ∨ permite que você transforme qualquer sen-
tença na forma normal da negação para a forma normal disjuntiva.
4. Distribuição do ∨ sobre ∧ permite que você transforme qualquer sen-
tença na forma normal da negação para a forma normal conjuntiva.
5. Algumas sentenças estão em ambas FNC and FND.
Tente você mesmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
� 1. Use Tarski’s World para abrir o arquivo DNF Example. Você vai encontrar
duas sentenças neste arquivo. A segunda sentença é o resultado de colo-
car a primeira na forma normal disjuntiva, então as duas sentenças são
logicamente equivalentes.
� 2. Construa um mundo em que as sentenças são verdadeiras. Uma vez que
são equivalentes, você poderia tentar fazer com que qualquer uma das duas
seja verdadeira, mas você vai achar a segunda mais fácil de trabalhar.
� 3. Jogue o jogo para cada sentença, comprometido corretamente com a ver-
dade da sentença. Você deve ser capaz de vencer duas vezes. Conte o
número de passos que você leva para ganhar.
� 4. Em geral, é mais fácil avaliar o valor verdade de uma sentença na forma
normal disjuntiva. Isto surge no jogo, o qual leva, no máximo, três passos
para uma sentença na FND, um para cada ∨, ∧, e ¬, nessa ordem. Não há
limite para o número de passos que uma sentença em outras formas pode
levar.
� 5. Salve o mundo que você criou como World DNF 1.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parabéns
Caṕıtulo 4
Formas normais conjuntiva e disjuntiva / 137
Exerćıcios
4.38
�
Se você pulou a seção Tente você mesmo, volte e faça-a agora. Submeta o arquivo World
DNF 1.
4.39
�
Abra CNF Sentences. Neste arquivo, você encontrará as seguintes sentenças na forma normal
conjuntiva nas posições numeradas ı́mpares, mas você vai ver que as posições numeradas pares
estão em branco.
1. (LeftOf(a, b) ∨ BackOf(a, b)) ∧ Cube(a)
3. Larger(a, b) ∧ (Cube(a) ∨ Tet(a) ∨ a = b)
5. (Between(a, b, c) ∨ Tet(a) ∨ ¬Tet(b)) ∧ Dodec(c)
7. Cube(a) ∧ Cube(b) ∧ (¬Small(a) ∨ ¬Small(b))
9. (Small(a) ∨Medium(a)) ∧ (Cube(a) ∨ ¬Dodec(a))
Nas posições numeradas pares você deve preencher com uma sentença na FND logicamente
equivalente à sentença acima dela. Confira o seu trabalho, abrindo vários mundos e verificando
que cada uma de suas sentenças tem o mesmo valor verdade da que está acima dela. Envie o
arquivo modificado como Sentences 4.39.
4.40
�
Abra More CNF Sentences. Neste arquivo você vai encontrar as seguintes sentenças a cada três
posições.
1. ¬[(Cube(a) ∧ ¬Small(a)) ∨ (¬Cube(a) ∧ Small(a))]
4. ¬[(Cube(a) ∨ ¬Small(a)) ∧ (¬Cube(a) ∨ Small(a))]
7. ¬(Cube(a) ∧ Larger(a, b)) ∧ Dodec(b)
10. ¬(¬Cube(a) ∧ Tet(b))
13. ¬¬Cube(a) ∨ Tet(b)
Os dois espaços em branco que seguem cada sentença é para você transformar a primeira
sentença em forma normal da negação, e, em seguida, colocar essa sentença na FNC. Mais uma
vez, confira o seu trabalho, abrindo vários mundos para ver que cada uma de suas sentenças
tem o mesmo valor verdade que a original. Quando terminar, submeta o arquivo modificado
como Sentences 4.40.
Nos Exerćıcios 4.41-4.43, use uma cadeia de equivalências para converter cada sentença em uma sen-
tença equivalente na forma normal disjuntiva. Simplifique a sua resposta o tanto quanto posśıvel usando
as leis da associatividade, comutatividade e idempotência. A cada passo na sua cadeia, indique qual o
prinćıpio que você está aplicando. Suponha que A,B,C, e D sejam literais.
4.41
�
C ∧ (A ∨ (B ∧ C)) 4.42
�
B ∧ (A ∧ B ∧ (A ∨ B ∨ (B ∧ C)))
4.43
�
A ∧ (A ∧ (B ∨ (A ∧ C)))
Seção 4.6

Continue navegando