0% acharam este documento útil (0 voto)
30 visualizações144 páginas

L Gica Matem Tica 1743373553

A apostila 'Introdução à Lógica Matemática' oferece uma base acessível sobre lógica proposicional e lógica de predicados, essencial para o desenvolvimento do pensamento rigoroso em diversas áreas do conhecimento. O texto é voltado tanto para iniciantes quanto para leitores com conhecimento prévio, apresentando teoria e prática por meio de exemplos e exercícios. A lógica matemática é destacada como uma ferramenta crucial para a análise crítica e o desenvolvimento de algoritmos na computação.

Enviado por

Marcelo Melo
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
30 visualizações144 páginas

L Gica Matem Tica 1743373553

A apostila 'Introdução à Lógica Matemática' oferece uma base acessível sobre lógica proposicional e lógica de predicados, essencial para o desenvolvimento do pensamento rigoroso em diversas áreas do conhecimento. O texto é voltado tanto para iniciantes quanto para leitores com conhecimento prévio, apresentando teoria e prática por meio de exemplos e exercícios. A lógica matemática é destacada como uma ferramenta crucial para a análise crítica e o desenvolvimento de algoritmos na computação.

Enviado por

Marcelo Melo
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 144

Introdução à Lógica Matemática

Apostila sobre fundamentos de lógica proposicional e lógica de predicados

Prof. Alexandre L. M. Levada


Departamento de Computação - UFSCar

14 de março de 2025
Prefácio

A lógica matemática, enquanto área essencial da matemática e da computação, desempenha um pa-


pel fundamental na formação do pensamento rigoroso e na construção de teorias que estruturam não
apenas a matemática, mas também outras áreas do conhecimento, como a filosofia, a própria compu-
tação e a linguística. Esta apostila, intitulada "Introdução à Lógica Matemática", tem como objetivo
proporcionar uma base sólida e acessível para aqueles que desejam entender e aplicar os conceitos de
lógica proposicional e lógica de predicados.
A lógica proposicional, com seu foco em proposições simples e suas combinações, oferece uma
introdução ao raciocínio formal. Por outro lado, a lógica de predicados amplia essa compreensão, per-
mitindo a análise de sentenças mais complexas, envolvendo quantificadores e relações, aproximando-
nos ainda mais de como as estruturas matemáticas podem ser modeladas e estudadas com precisão.
Este texto busca atender tanto a iniciantes quanto a leitores que já possuem algum conhecimento
prévio da área, guiando-os por meio de exemplos práticos e abordagens claras. O intuito é não apenas
apresentar os fundamentos teóricos, mas também despertar a curiosidade pela beleza e aplicabilidade
da lógica em diferentes campos, com a apresentação de exemplos e a resolução de exercícios. A
importância da lógica matemática vai muito além dos limites da matemática pura, influenciando o
desenvolvimento de algoritmos, a inteligência artificial, a programação e a análise crítica de argu-
mentos.
Ao longo da apostila, procuramos manter um equilíbrio entre teoria e prática, sempre reforçando
os conceitos com exemplos que permitem ao leitor aplicar as ferramentas lógicas de forma eficaz.
Acreditamos que a compreensão profunda da lógica é crucial para o desenvolvimento do pensamento
analítico e crítico, habilidades indispensáveis no mundo atual.
Esperamos que esta apostila seja uma fonte de aprendizado enriquecedora, proporcionando aos
leitores as ferramentas necessárias para explorar o fascinante universo da lógica matemática e suas
aplicações em diversos campos do saber.

1
Sumário
1 Introdução e contexto 5
1.1 O paradoxo de Zenão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 O paradoxo do mentiroso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 O paradoxo da escolha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 O paradoxo do hotel de Hilbert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 A linguagem da lógica proposicional 9


2.1 Princípios fundamentais da lógica clássica . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 A sintaxe da lógica proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 A semântica da lógica proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1 Negação (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.2 Conjunção (AND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.3 Disjunção (OR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.4 Condicional (IF-THEN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.5 Bicondicional (SE E SOMENTE SE) . . . . . . . . . . . . . . . . . . . . . 13
2.3.6 Precedência de operadores lógicos . . . . . . . . . . . . . . . . . . . . . . . 14
2.4 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Tautologias, contradições e contingências 16


3.1 Tautologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 Contradições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Contingências . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4 Consequência e equivalência lógicas 19


4.1 Proposições associadas a condicionais . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.2 Equivalências notáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.3 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5 Álgebra proposicional 27
5.1 Porpriedades da conjunção e disjunção . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2 Propriedades da condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.3 Equivalências notáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.4 Formas normais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.5 Obtenção da FNC via tabela verdade . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.6 Obtenção da FND via tabela verdade . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.7 Obtenção algébrica das formas normais . . . . . . . . . . . . . . . . . . . . . . . . 34
5.8 Metodologia para obtenção algébrica das formas normais . . . . . . . . . . . . . . . 34

2
5.9 O operador NAND e sua importância na computação . . . . . . . . . . . . . . . . . 37
5.10 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6 Inferência lógica 39
6.1 Regras de inferência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.1.1 Modus Ponens (MP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.1.2 Modus Tollens (MT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.1.3 Silogismo Hipotético (SH) . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.1.4 Silogismo Disjuntivo (SD) . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.1.5 Silogismo de Alternância (SA) . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Outras regras de inferência lógica . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3 Exemplos e exercícios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.4 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

7 Técnicas dedutivas 55
7.1 Prova direta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.2 Inconsistência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.3 Prova condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.4 Prova por redução ao absurdo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

8 O método do tableaux analítico 65


8.1 Regras semânticas do operador negação . . . . . . . . . . . . . . . . . . . . . . . . 65
8.2 Regras semâncias do operador conjunção . . . . . . . . . . . . . . . . . . . . . . . 65
8.3 Regras semâncias do operador disjunção . . . . . . . . . . . . . . . . . . . . . . . . 65
8.4 Regras semâncias do operador condicional . . . . . . . . . . . . . . . . . . . . . . . 66
8.5 Regras semâncias do operador bicondicional . . . . . . . . . . . . . . . . . . . . . . 66
8.6 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

9 Prova por resolução 74


9.1 Fundamentação teórica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9.2 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

10 Lógica de predicados: sintaxe, semântica e linguagem natural 84


10.1 Sintaxe da lógica de predicados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.2 Escopo de quantificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
10.3 Enunciados categóricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.4 Mapeamento para linguagem natural . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.5 Semântica da lógica de predicados . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.6 Equivalência entre quantificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
10.7 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

3
11 Técnicas dedutivas na lógica de predicados 99
11.1 Prova condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
11.2 Prova por redução ao absurdo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
11.3 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

12 O método do tableaux analítico na lógica de predicados 111


12.1 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

13 Formas normais em lógica de predicados 117


13.1 Forma normal prenex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
13.2 Forma Normal Clausal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
13.2.1 Método de conversão para FNC . . . . . . . . . . . . . . . . . . . . . . . . 119
13.3 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

14 Prova por resolução na lógica de predicados 124


14.1 Substituição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
14.2 Unificação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
14.3 Resolução na lógica de predicados . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
14.4 Cláusulas de Horn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
14.5 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

15 Teorias axiomáticas e incompletude 136


15.1 Conceitos e fundamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
15.2 A máquina de Gödel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
15.3 O problema da parada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
15.3.1 Enunciado do problema e um esboço de prova . . . . . . . . . . . . . . . . . 140
15.4 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

4
1 Introdução e contexto
Antes de inicarmos nossos estudos, a primeira pergunta que surge é: o que exatamente é lógica?
Não há uma resposta simples para essa questão, mas podemos entender a lógica como uma ferramenta
matemática para formalização do estudo de formas de raciocínio. Em outras palavras, a lógica está
diretamente relacionada com a corretude do pensamento.
Mas afinal para que serve a lógica? Ela define a base para diversas áreas da ciência, como a
filosofia, a linguística, a matemática e a computação. Em especial, na ciência da computação, a
lógica desempenha um papel fundamental em diversas subáreas, como o projeto e desenvolvimento
de circuitos digitais, a construção e análise de algoritmos via lógica de programação e a inteligência
artificial.
As origens da lógica datam de 350 A.C na Grécia antiga com Aristóteles, discípulo de Platão.
Ele é considerado o pai da lógica, pois estabeleceu os alicerces do pensamento lógico e formal. Foi
também o primeiro a sistematizar a arte de argumentar e raciocinar de maneira estruturada, através
de seu trabalho no campo da lógica formal, especialmente no desenvolvimento do silogismo. Seus
estudos, compilados na obra Órganon, introduziram as primeiras formas de raciocínio dedutivo, que se
tornaram a base para a lógica matemática moderna. Aristóteles enfatizou a importância da validade
dos argumentos e a relação entre premissas e conclusões, conceitos que continuam a ser centrais
no estudo da lógica até os dias de hoje. Assim, a lógica aristotélica não só moldou o pensamento
filosófico da época, como também estabeleceu um padrão para as investigações posteriores nas áreas
de filosofia, matemática e ciência da computação.
Ao estabelecer as bases da lógica formal, Aristóteles não só possibilitou o estudo rigoroso dos
argumentos válidos, mas também lançou as bases para a análise crítica de falácias e paradoxos, ele-
mentos essenciais no desenvolvimento da filosofia e da lógica ao longo da história. Falácias são erros
de raciocínio que, embora possam parecer convincentes, não são logicamente válidos, ao passo que
paradoxos são situações em que a lógica leva a conclusões contraditórias ou aparentemente irracio-
nais, mas que de alguma forma, são válidas.
A seguir, discutiremos alguns paradoxos interessantes que permanecem relevantes até os dias de
hoje.

1.1 O paradoxo de Zenão


Os paradoxos de Zenão são uma série de argumentos formulados pelo filósofo grego Zenão de
Eleia (c. 490–430 a.C.) para desafiar a noção de movimento e continuidade. Eles questionam a possi-
bilidade de que algo possa realmente se mover de um ponto a outro, gerando debates na matemática,
filosofia e física.
Este paradoxo argumenta que, para que um objeto chegue a um destino, primeiro ele deve per-
correr metade da distância. Depois, deve percorrer metade da metade restante, depois metade do que
sobra, e assim por diante. Como sempre haverá uma nova distância a percorrer, o movimento nunca
poderá ser concluído.

5
Em uma explicação moderna, a soma infinita das frações de distância percorrem um valor finito.
O conceito de série convergente, formalizado no cálculo, resolve essa aparente contradição ao mostrar
que a soma dessas distâncias tem um limite.

1.2 O paradoxo do mentiroso


O paradoxo do mentiroso é um problema lógico clássico que surge quando uma declaração faz
referência a si mesma de maneira a criar uma contradição. A versão mais simples do paradoxo é a
seguinte frase: "Esta sentença é falsa". Se essa sentença for verdadeira, então o que ela afirma deve
ser o caso, ou seja, ela é falsa. Se essa sentença for falsa, então o que ela afirma não pode ser o caso,
ou seja, ela é verdadeira. Isso gera uma contradição, pois não há uma resposta coerente para se essa
afirmação é verdadeira ou falsa.
O paradoxo do mentiroso tem sido um desafio para a lógica e a teoria da verdade, levando a várias
interpretações e tentativas de solução:

• Teorias de hierarquia da linguagem (Tarski): Alfred Tarski propôs que enunciados autorrefe-
rentes sobre a verdade são problemáticos porque misturam diferentes níveis de linguagem. Ele
sugeriu que a verdade deveria ser definida apenas em um nível superior, evitando contradições.

• Lógica paraconsistente: Algumas abordagens modernas aceitam que certas proposições podem
ser verdadeiras e falsas ao mesmo tempo, permitindo lidar com paradoxos sem contradições
explosivas.

• Abordagem dialeteísta (Priest): Graham Priest argumenta que a melhor solução é aceitar que
algumas afirmações podem ser simultaneamente verdadeiras e falsas, desafiando a lógica clás-
sica.

O paradoxo do mentiroso continua sendo um dos problemas mais intrigantes da filosofia da lógica,
influenciando o desenvolvimento da matemática, computação e teoria da linguagem.

1.3 O paradoxo da escolha


O paradoxo da escolha é um conceito da psicologia e economia comportamental que sugere que,
embora ter opções seja geralmente visto como algo positivo, um excesso de escolhas pode levar a
indecisão, insatisfação e ansiedade.
O conceito foi popularizado pelo psicólogo Barry Schwartz em seu livro The Paradox of Choice:
Why More Is Less de 2004. Ele argumenta que, ao invés de aumentar a felicidade, uma grande
quantidade de opções pode:

1. Gerar sobrecarga cognitiva – O indivíduo precisa analisar muitas alternativas, o que pode ser
exaustivo.

6
2. Criar arrependimento – Após a escolha, pode-se pensar nas opções rejeitadas e se arrepender.

3. Aumentar expectativas irreais – Com muitas opções, há a sensação de que sempre existe uma
escolha "perfeita", gerando frustração quando a realidade não corresponde.

O paradoxo da escolha tem aplicações em diversas áreas, como:

• Marketing e consumo: Empresas reduzem a quantidade de opções para facilitar decisões dos
clientes.

• Psicologia e bem-estar: Simplificar escolhas diárias pode aumentar a satisfação.

• Design e tecnologia: Interfaces mais intuitivas evitam sobrecarga de decisão (exemplo: Netflix
sugere filmes ao invés de listar todos).

Uma solução sugerida por Schwartz é encontrar um equilíbrio: ter opções suficientes para garantir
liberdade, mas não tantas a ponto de gerar estresse ou paralisia decisória.

1.4 O paradoxo do hotel de Hilbert


O paradoxo do Hotel de Hilbert foi formulado pelo matemático David Hilbert para ilustrar as
propriedades contraintuitivas dos conjuntos infinitos, especialmente o infinito enumerável (ou seja,
conjuntos com a mesma cardinalidade dos números naturais N).
Imagine um hotel com infinitos quartos numerados 1, 2, 3, 4, . . . , e todos estão ocupados. Agora,
aparecem novos hóspedes e precisamos acomodá-los. Como o hotel tem infinitos quartos, podemos
realocar os hóspedes de maneiras surpreendentes:

1. Acomodando um novo hóspede


Mesmo com todos os quartos ocupados, podemos realocar os hóspedes da seguinte forma:
O hóspede no quarto 1 se move para o quarto 2.
O hóspede no quarto 2 se move para o quarto 3.
O hóspede no quarto n se move para o quarto n+1.
Isso libera o quarto 1, permitindo que o novo hóspede seja acomodado.

2. Acomodando infinitos novos hóspedes


Agora, imagine que chega um ônibus com infinitos passageiros. Como podemos acomodá-los?
Basta mover cada hóspede do quarto 𝑛 para o quarto 2𝑛 (ou seja, dobramos o número do quarto
de cada hóspede). Isso deixa livres os quartos ímpares 1, 3, 5, 7, ..., nos quais podemos colocar
os novos hóspedes.

O Hotel de Hilbert nos traz lições importantes que ilustram as propriedades estranhas do infinito:

• Infinitos conjuntos podem ter o mesmo tamanho, mesmo que um contenha o outro (exemplo:
os números pares têm a mesma cardinalidade dos números naturais).

7
• Adicionando elementos a um conjunto infinito, ele continua tendo a mesma cardinalidade.

A manipulação do infinito desafia nossa intuição sobre espaço e limite. Esse paradoxo é funda-
mental para entender os conceitos de infinito enumerável e infinito maior da teoria de conjuntos de
Georg Cantor.

1.5 Considerações finais


Neste capítulo, introduzimos os conceitos fundamentais da lógica matemática, destacando sua
importância como base para o pensamento rigoroso e a formalização do raciocínio. Exploramos a
lógica desde sua origem na filosofia clássica, passando pelo seu desenvolvimento na matemática e na
computação, até sua aplicação em áreas modernas como inteligência artificial e teoria da prova.
Além disso, discutimos a relevância dos paradoxos lógicos, que desafiam nossas intuições e im-
pulsionam o avanço da matemática e da filosofia. Paradoxos como o de Russell, do Mentiroso e do
Hotel de Hilbert ilustram os limites e desafios do raciocínio formal, mostrando como a lógica não é
apenas um conjunto de regras fixas, mas uma área dinâmica e em constante evolução.
A lógica matemática, portanto, não se limita a um estudo teórico, mas desempenha um papel
essencial no desenvolvimento da ciência e da tecnologia. Nos capítulos seguintes, aprofundaremos os
diferentes sistemas lógicos, suas estruturas e aplicações, fornecendo as ferramentas necessárias para
uma compreensão mais profunda e rigorosa desse fascinante campo do conhecimento.

8
2 A linguagem da lógica proposicional
A lógica proposicional é uma linguagem formal para o cálculo de proposições. Sendo assim, é
preciso definir suas componentes principais. Os objetivos deste capítulo são:

• definir o alfabeto da lógica proposicional (conjunto de símbolos e operadores);

• definir como construir fórmulas bem formadas na lógica proposicional (sintaxe);

• definir o significado de cada um dos operadores lógicos (semântica);

Definição 1 (Alfabeto da lógica proposicional) O alfabeto da lógica proposicional é definido pelo


conjunto de símbolos a seguir:

1. símbolos de valores verdade: 𝑇 (true), 𝐹 (false);

2. símbolos proposicionais atômicos: 𝑝, 𝑞, 𝑟, ... (letras minúsculas);

3. operadores ou conectivos lógicos: ¬, ∧, ∨, →, ⇐⇒ ;

4. símbolos de pontuação: ( e );

Definição 2 (Proposição) Uma proposição é uma sentença que exprime um pensamento de sentido
completo. Proposições afirmam fatos sobre entidades.

1. 𝑝 : 𝜋 > 3.

2. 𝑞 : O Brasil situa-se na América do sul.

3. 𝑟 : A Argentina é um país maior que o Brasil.

4. 𝑠 : Um quadrado é uma forma que possui 3 lados.

Toda proposição 𝑝 possui um valo lógico 𝑉𝐿 (𝑝) que pode ser 𝑇 (verdadeiro) ou 𝐹 (falso). Por
exemplo, para as proposições anteriores, temos 𝑉𝐿 (𝑝) = 𝑇 , 𝑉𝐿 (𝑞) = 𝑇 , 𝑉𝐿 (𝑟) = 𝐹 e 𝑉𝐿 (𝑠) = 𝐹 . As
proposições anteriores são simples (átomos), mas podemos ter proposições compostas (geralmente
denotadas por letras maiúsculas).

• 𝑃 : Carlos é médico e Paula é estudante.

• 𝑄 : Rafael dirige carros ou motos.

• 𝑅 : Se um jogador de futebol recebe 2 cartões amarelos no mesmo jogo, então ele deve ser
expulso.

9
2.1 Princípios fundamentais da lógica clássica
A lógica matemática é baseada em princípios fundamentais que garantem a coerência e a validade
do raciocínio formal. Esses princípios são essenciais porque estabelecem as regras básicas para a
construção de argumentos corretos e para a fundamentação da matemática e da computação. A seguir,
listamos os princípios básicos da lógica matemática:

1. Princípio da identidade: uma proposição 𝑝 sempre é idêntica a si mesma (este princípio ga-
rante consistência no raciocínio lógico, pois sem ele não poderíamos reconhecer que uma afir-
mação dita em momentos diferentes continua tendo o mesmo significado.)

2. Princípio da não contradição: uma proposição 𝑝 não pode ser verdadeira e falsa ao mesmo
tempo.

3. Princípio do terceiro excluído: uma proposição 𝑝 ou é verdadeira ou é falsa, mas nunca um


terceiro valor (este princípio garante que o valor verdade de uma proposição seja sempre binário
(verdadeiro ou falso), no entanto, algumas lógicas não clássicas, como a lógica fuzzy e a lógica
intuicionista, questionam esse princípio, permitindo graus de verdade ou afirmando que nem
todas as proposições podem ser decididas).

Em resumo, esses princípios são fundamentais porque:

• Garantem a coerência do pensamento lógico.

• Permitem a construção de sistemas matemáticos e computacionais consistentes.

• Evitam paradoxos e contradições que tornariam a lógica ineficaz.

• Servem como base para provas matemáticas, algoritmos e inteligências artificiais.

Sem esses princípios, a lógica perderia sua função como ferramenta confiável para a dedução e a
tomada de decisões.

2.2 A sintaxe da lógica proposicional


Na lógica proposicional, uma fórmula bem formada (FBF) é uma expressão sintaticamente cor-
reta, construída de acordo com as regras formais da linguagem lógica. Em outras palavras, uma FBF é
uma sequência válida de símbolos que representa uma proposição lógica. Uma FBF pode ser definida
recursivamente como:

• os símbolos 𝑇 e 𝐹 são FBF.

• uma proposição atômica 𝑝 é uma FBF.

• se 𝑝 é uma FBF, então ¬𝑝 é uma FBF.

10
• se 𝑝 e 𝑞 são duas FBF’s, 𝑝 ∧ 𝑞, 𝑝 ∨ 𝑞, 𝑝 → 𝑞 e 𝑝 ⇐⇒ 𝑞 também são FBF’s.

Um exemplo de FBF é a expressão: (𝑝 ∨ 𝑞) ∧ ((¬𝑟 ∧ 𝑠) ⇐⇒ (𝑝 → ¬𝑞)).


Um tipo de FBF muito importante são as cláusulas, amplamente usadas no estudo das Formas
Normais e da prova por resolução, como veremos mais adiante.

Definição 3 (Cláusula) Uma cláusula é uma disjunção de proposições atômicas (ou suas negações).

A forma geral de uma cláusula é 𝐿1 ∨ 𝐿2 ∨ 𝐿3 ∨ ... ∨ 𝐿𝑛 , onde 𝐿𝑖 é um átomo ou sua negação.


Alguns exemplos de cláusulas são (𝑝 ∨ ¬𝑞 ∨ 𝑟) e (¬𝑟 ∨ 𝑞).

2.3 A semântica da lógica proposicional


A semântica da lógica proposicional trata do significado das proposições e da forma como os
valores de verdade são atribuídos às fórmulas bem formadas (FBFs). Enquanto a sintaxe estabelece
as regras para formar expressões válidas, a semântica define como interpretamos essas expressões e
determinamos seus valores verdade a partir da definição dos operadores lógicos.

Definição 4 O valor lógico de qualquer proposição composta depende unicamente dos valores lógi-
cos das proposições atômicas que as compõem.

A enumeração de todas as atribuições de valores lógicos a cada proposição atômica de uma pro-
posição composta 𝑃 é realizada com a construção de tabelas verdade (T.V.), sendo que cada linha da
T.V. define uma interpretação de 𝑃 .

Definição 5 O número de interpretações possíveis para uma proposição composta 𝑃 de 𝑛 átomos é


igual a 2𝑛 .

O cálculo proposicional depende de operações lógicas aplicadas entre proposições atômicas. A


seguir apresentamos os principais operadores da lógica proposicional, bem como a semântica de cada
um deles a partir da definição de tabelas verdade.

2.3.1 Negação (NOT)

Se 𝑝 é uma proposição, então ¬𝑝 denota sua negação, ou seja, esse operador inverte o valor lógico
de 𝑝.

𝑝 ¬𝑝

T F
F T

Por exemplo, se 𝑝 denota a proposição A Terra é redonda, o que é verdade, sua negação ¬𝑝 denota
a proposição A Terra não é redonda, o que é falso.

11
2.3.2 Conjunção (AND)

Se 𝑝 e 𝑞 são duas proposições, então 𝑝 ∧ 𝑞 denota sua conjunção, ou seja, esse operador realiza
um E-lógico entre 𝑝 e 𝑞.

𝑝 𝑞 𝑝∧𝑞

T T T
T F F
F T F
F F F

Note que a semântica do operador conjunção é a seguinte: o valor lógico de 𝑝 ∧ 𝑞 é verdade,


somente se ambas as proposições 𝑝 e 𝑞 forem verdade. Podemos fazer uma analogia entre a conjunção
e um circuito em série.

Figura 1: Interpretação do operador lógico conjunção (AND) como um circuito em série.

2.3.3 Disjunção (OR)

Se 𝑝 e 𝑞 são duas proposições, então 𝑝 ∨ 𝑞 denota sua disjunção, ou seja, esse operador realiza um
OU-lógico entre 𝑝 e 𝑞.

𝑝 𝑞 𝑝∨𝑞

T T T
T F T
F T T
F F F

Note que a semântica do operador disjunção é a seguinte: o valor lógico de 𝑝∨𝑞 é verdade, se uma
das proposições 𝑝 ou 𝑞 forem verdade. Podemos fazer uma analogia entre a disjunção e um circuito
em paralelo.

12
Figura 2: Interpretação do operador lógico disjunção (OR) como um circuito em paralelo.

2.3.4 Condicional (IF-THEN)

Se 𝑝 e 𝑞 são duas proposições, então 𝑝 → 𝑞 denota uma condicional, ou seja, indica que a propo-
sição 𝑝 implica a proposição 𝑞. Dizemos que 𝑝 é o antecedente e 𝑞 é o consequente da condicional.

𝑝 𝑞 𝑝→𝑞

T T T
T F F
F T T
F F T

Note que a semântica do operador condicional é a seguinte: o valor lógico de 𝑝 ∨ 𝑞 é falso apenas
se o antecedente 𝑝 é verdade e o consequente 𝑞 é falso. Note ainda que:

• se o consequente 𝑞 é verdade, não importa o valor lógico do antecedente 𝑝, pois a condicional


será sempre verdadeira.

• se o antecedente 𝑝 é falso, não importa o valor lógico do consequente 𝑞, pois a condicional será
sempre verdadeira.

Exemplos clássicos de proposicões condicionais são regras em geral, como por exemplo: Se a
média final de um aluno na disciplina for maior ou igual a seis, então ele será aprovado.

2.3.5 Bicondicional (SE E SOMENTE SE)

Se 𝑝 e 𝑞 são duas proposições, então 𝑝 ⇐⇒ 𝑞 denota uma bicondicional, ou seja, indica 𝑝 se e


somente se 𝑞.

13
𝑝 𝑞 𝑝 ⇐⇒ 𝑞

T T T
T F F
F T F
F F T

Note que a semântica do operador bicondicional é a seguinte: o valor lógico de 𝑝 ⇐⇒ 𝑞 é


verdade quando ambos 𝑝 e 𝑞 possuem o mesmo valor lógico, ou verdade ou falso. Note ainda que a
bicondicional é verdadeira quando 𝑝 → 𝑞 e 𝑞 → 𝑝 são simultaneamente verdadeiras. Essa é a razão
do nome bicondicional.

2.3.6 Precedência de operadores lógicos

Uma pergunta natural neste momento é: em uma proposição composta 𝑃 quais operações ló-
gicas devem ser realizadas primeiro? A recomendação é sempre utilizar parêntesis para agrupar as
operações lógicas, de modo a evitar qualquer tipo de ambiguidade.
De qualquer forma, na ausência de uma parentização adequada, a precedência dos operadores é
sempre a seguinte:

1. Negação (¬)

2. Conjunção (∧)

3. Disjunção (∨)

4. Condicional (→)

5. Bicondicional ( ⇐⇒ )

Por exemplo, as proposições a seguir indicam algumas equivalências entre a notação sem parên-
tesis (a esquerda) e com parêntesis (a direita):

𝑝 ∧ 𝑞 ∨ 𝑟 ≡ (𝑝 ∧ 𝑞) ∨ 𝑟 (1)
𝑝 → 𝑞 ∨ 𝑟 ≡ 𝑝 → (𝑞 ∨ 𝑟) (2)
𝑝 ⇐⇒ 𝑞 → 𝑟 ≡ 𝑝 ⇐⇒ (𝑞 → 𝑟) (3)

Porém, há casos ambíguos, como a proposição 𝑝 → 𝑞 → 𝑟, que pode indicar tanto 𝑝 → (𝑞 → 𝑟)


quanto (𝑝 → 𝑞) → 𝑟. Portanto, é sempre recomendado a utilização de parêntesis para evitar qualquer
tipo de ambiguidade.

14
2.4 Considerações finais
Neste capítulo, exploramos os dois pilares fundamentais da lógica proposicional: sintaxe e se-
mântica. A sintaxe define as regras formais para a construção de fórmulas bem formadas (FBFs),
garantindo que apenas expressões logicamente válidas sejam manipuladas dentro do sistema. Já a se-
mântica estabelece o significado dessas expressões, determinando seus valores de verdade com base
na interpretação das proposições atômicas e nas regras dos conectivos lógicos.
A relação entre sintaxe e semântica é essencial para a formalização do raciocínio lógico. Enquanto
a sintaxe permite estruturar proposições de maneira rigorosa, a semântica possibilita a análise de sua
validade e verdade em diferentes contextos. Conceitos como tabelas-verdade, modelos, satisfatibili-
dade e tautologias serão discutidos futuramente, mostrando como a lógica proposicional fornece um
método sistemático para avaliar a coerência e a correção de argumentos.
O estudo da sintaxe e da semântica da lógica proposicional é um passo fundamental para aprofundar-
se em sistemas lógicos mais avançados, como a lógica de predicados e a lógica modal. Nos próximos
capítulos, ampliaremos essas noções, explorando novas estruturas e métodos de inferência que forta-
lecem a capacidade da lógica matemática de representar e analisar o pensamento formal.

15
3 Tautologias, contradições e contingências
Durante o estudo da lógica proposicional, devemos ser capazes de construir diversas tabelas ver-
dade de proposições compostas. Uma pergunta motivadora para este capítulo é: será que existem
proposições compostas para as quais todas as suas interpretações são verdadeiras ou falsas, indepen-
dentemente dos valores lógicos de seus átomos? Veremos que sim!
Para construirmos uma tabela verdade referente a uma proposição composta 𝑃 devemos seguir os
passos abaixo:

1. Determinar o número de linhas da T.V. que é sempre 2𝑛 , onde 𝑛 é o número de átomos de 𝑃 .

2. Respeitar a precedência dos operadores lógicos, pois ela determina a ordem da construção das
colunas da T.V.

3. Aplicar as definições dos operadores lógicos (semântica).

Exemplo: Construa a T.V. da proposição 𝑃 : ¬(𝑝 ∧ ¬𝑞).


Como a proposição é composta por apenas dois átomos, 𝑝 e 𝑞, temos que a T.V. terá 4 linhas.

𝑝 𝑞 ¬𝑞 𝑝 ∧ ¬𝑞 ¬(𝑝 ∧ ¬𝑞)

T T F F T
T F T T F
F T F F T
F F T F T

Exemplo: Construa a T.V. da proposição 𝑃 : (𝑝 ∨ ¬𝑟) → (𝑞 ∧ ¬𝑟).


Como a proposição é composta por apenas três átomos, 𝑝, 𝑞 e 𝑟, temos que a T.V. terá 8 linhas.

𝑝 𝑞 𝑟 ¬𝑟 𝑝 ∨ ¬𝑟 𝑞 ∧ ¬𝑟 (𝑝 ∨ ¬𝑟) → (𝑞 ∧ ¬𝑟)

T T T F T F F
T T F T T T T
T F T F T F F
T F F T T F F
F T T F F F T
F T F T T T T
F F T F F F T
F F F T T F F

Exercício: Construa a T.V. da proposição 𝑃 : (𝑝 → (¬𝑞 ∨ 𝑟)) ∧ ¬(𝑞 ∨ (𝑝 ⇐⇒ ¬𝑟)).

16
3.1 Tautologias
Definição 6 (Tautologia) Uma tautologia é uma proposição composta para a qual todas interpre-
tações são verdadeiras, ou seja, a última coluna de sua T.V. é composta apenas por valores lógicos
verdade. Em outras palavras, é uma proposição verdadeira independentemente dos valores lógicos
de seus átomos.

Exemplo: Verifique que a proposição 𝑃 : (𝑝 ∨ (𝑞 ∧ ¬𝑞)) ⇐⇒ 𝑝 é uma tautologia, mediante a


construção de sua T.V.

𝑝 𝑞 ¬𝑞 𝑞 ∧ ¬𝑞 𝑝 ∨ (𝑞 ∧ ¬𝑞) (𝑝 ∨ (𝑞 ∧ ¬𝑞)) ⇐⇒ 𝑝

T T F F T T
T F T F T T
F T F F F T
F F T F F T

Exemplo: Mostre que a proposição 𝑃 : (𝑝 ∧ 𝑟) → (¬𝑞 ∨ 𝑟) é uma tautologia, mediante a


construção de sua T.V.

𝑝 𝑞 𝑟 ¬𝑞 𝑝∧𝑟 ¬𝑞 ∨ 𝑟 (𝑝 ∧ 𝑟) → (¬𝑞 ∨ 𝑟)

T T T F T T T
T T F F F F T
T F T T T T T
T F F T F T T
F T T F F T T
F T F F F F T
F F T T F T T
F F F T F T T

3.2 Contradições
Definição 7 (Contradição) Uma contradição é uma proposição composta para a qual todas inter-
pretações são falsas, ou seja, a última coluna de sua T.V. é composta apenas por valores lógicos falso.
Em outras palavras, é uma proposição falsa independentemente dos valores lógicos de seus átomos.

Note que a negação de uma tautologia é uma contradição e vice-versa,


Exemplo: Mostre que a proposição 𝑃 : ¬𝑝 ∧ (𝑝 ∧ ¬𝑞) é uma contradição, mediante a construção
de sua T.V.

17
𝑝 𝑞 ¬𝑝 ¬𝑞 𝑝 ∧ ¬𝑞 ¬(𝑝 ∧ ¬𝑞)

T T F F F F
T F F T T F
F T T F F F
F F T T F F

3.3 Contingências
Definição 8 (Contingência) Uma contingência é uma proposição composta que não é tautologia,
nem contradição, ou seja, possui tanto interpretações verdadeiras quanto falsas.

Exemplo: Mostre que a proposição 𝑃 : 𝑝 → (𝑞 → 𝑟) é uma contingência, mediante a construção


de sua T.V.

𝑝 𝑞 𝑟 𝑞→𝑟 𝑝 → (𝑞 → 𝑟)

T T T T T
T T F F F
T F T T T
T F F T T
F T T T T
F T F F T
F F T T T
F F F T T

3.4 Considerações finais


Neste capítulo, examinamos três classificações fundamentais das proposições na lógica mate-
mática: tautologias, contradições e contingências. Esses conceitos são essenciais para a análise da
validade de argumentos e para a construção de sistemas formais sólidos.
As tautologias representam proposições que são sempre verdadeiras, independentemente da atri-
buição de valores às suas variáveis, desempenhando um papel central em provas lógicas e sistemas
dedutivos. As contradições, por outro lado, são proposições que nunca podem ser verdadeiras, in-
dicando inconsistências e auxiliando na detecção de erros em argumentos. Já as contingências são
proposições que podem ser verdadeiras ou falsas dependendo da interpretação, sendo as mais comuns
no raciocínio lógico aplicado.
A compreensão dessas classificações permite uma abordagem mais rigorosa na construção e ve-
rificação de argumentos lógicos. Além disso, elas servem como base para tópicos mais avançados,
como equivalências lógicas, inferência dedutiva e sistemas de prova formais, que serão explorados
nos próximos capítulos.

18
4 Consequência e equivalência lógicas
A esta altura, desejamos saber como determinar se uma proposição 𝑃𝑛 é consequência lógica de
um conjunto de proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛−1 . Saber isso é fundamental, pois o conceito de consequên-
cia lógica está diretamente relacionado com processos de dedução e prova formal, o que é a base para
a verificação da validade de argumentos.

Definição 9 (Consequência lógica) Dadas as proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛 , dizemos que a proposição


𝑄 é consequência lógica delas se e somente se a seguinte regra for válida: sempre que 𝑃1 , 𝑃2 , ..., 𝑃𝑛
forem simultaneamente verdadeiras, 𝑄 também é verdadeira, ou seja:

𝑉𝐿 (𝑃1 ) = 𝑉𝐿 (𝑃2 ) = ... = 𝑉𝐿 (𝑃𝑛 ) = 𝑇 → 𝑉𝐿 (𝑄) = 𝑇 (4)

Para denotar que 𝑄 é consequência lógica de 𝑃1 , 𝑃2 , ..., 𝑃𝑛 escreveremos:

𝑃1 , 𝑃2 , 𝑃3 , ..., 𝑃𝑛 ⊨ 𝑄 (5)

Exemplo: Sejam as proposições a seguir:

𝑃 :𝑝→𝑞 (6)
𝑄:𝑟→𝑠 (7)
𝑅 : (𝑝 ∨ 𝑟) → (𝑞 ∨ 𝑠) (8)

Verifique se 𝑅 é consequência lógica de 𝑃, 𝑄, ou seja, se 𝑃, 𝑄 ⊨ 𝑅.


O primeiro passo consiste na construção da T.V. de 𝑃 , 𝑄 e 𝑅. Para isso, note que, como 𝑛 = 4,
teremos 16 linhas no total!
Após a análise da T.V. percebemos que sempre que as proposições 𝑃 e 𝑄 são conjuntamente
verdadeiras, temos que a proposição 𝑅 também é verdadeira. Portanto, de acordo com a definição
anterior, de fato 𝑅 é uma consequência lógica das proposições 𝑃 e 𝑄.
A seguir, veremos um resultado muito importante, que relaciona o conceito de consequência ló-
gica com o conceito de tautologia.

Teorema 1 Dadas as proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛 , a proposição 𝑄 é consequência lógica delas, se e


somente se:
(𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 (9)

é uma tautologia.

19
𝑝 𝑞 𝑟 𝑠 𝑝→𝑞 𝑟→𝑠 𝑝∨𝑟 𝑞∨𝑠 (𝑝 ∨ 𝑟) → (𝑞 ∨ 𝑠)

T T T T T T T T T ←
T T T F T F T T T
T T F T T T T T T ←
T T F F T T T T T ←
T F T T F T T T T
T F T F F F T F F
T F F T F T T T T
T F F F F T T F F
F T T T T T T T T ←
F T T F T F T T T
F T F T T T F T T ←
F T F F T T F T T ←
F F T T T T T T T ←
F F T F T F T F F
F F F T T T F T T ←
F F F F T T F F T ←

Prova:
1. (ida)
Se 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄, então (𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 é uma tautologia.
a) Assuma que 𝑄 é consequência lógica de 𝑃1 , 𝑃2 , ..., 𝑃𝑛 .
b) Isso implica que se 𝑃1 , 𝑃2 , ..., 𝑃𝑛 forem conjuntamente verdade, então 𝑄 também será verdade.
c) Assuma que de fato 𝑉𝐿 (𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) = 𝑇 .
d) Pela semântica do operador condicional, 𝑇 → 𝑇 é sempre verdade.
e) Portanto, (𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 é uma tautologia.

2. (volta)
Se (𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 é uma tautologia, então 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄.
a) Nos interessa a análise do caso em que 𝑃1 , 𝑃2 , ..., 𝑃𝑛 são conjuntamente verdade.
b) Isso implica que 𝑉𝐿 (𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) = 𝑇 .
c) Assim, pela semântica do operador condicional, para que (𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 seja uma
tautologia, então 𝑄 deve ser verdade, o que significa que 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄.

Exemplo: Sejam as proposições a seguir:

• 𝑃 :𝑝→𝑞

• 𝑄:𝑞→𝑟

20
• 𝑅:𝑝→𝑟

Mostre que 𝑃, 𝑄 ⊨ 𝑅.
Note que para provar isso, basta mostrar que (𝑃 ∧ 𝑄) → 𝑅 é uma tautologia.

𝑝 𝑞 𝑟 𝑝→𝑞 𝑞→𝑟 (𝑝 → 𝑞) ∧ (𝑞 → 𝑟) 𝑝→𝑟 ((𝑝 → 𝑞) ∧ (𝑞 → 𝑟)) → (𝑝 → 𝑟)

T T T T T T T T
T T F T F F F T
T F T F T F T T
T F F F T F F T
F T T T T T T T
F T F T F F T T
F F T T T T T T
F F F T T T T T

Essa é justamente uma das regras de inferência que iremos estudar mais adiante, chamada de
Silogismo Hipotético. A seguir, definiremos um outro conceito importante na lógica proposicional: a
equivalência lógica.

Definição 10 Dizemos que a proposição 𝑃 é equivalente a proposição 𝑄, ou 𝑃 ≡ 𝑄, se e somente


se 𝑃 é consequência lógica de 𝑄 e 𝑄 for consequência lógica de 𝑃 , ou seja, se 𝑃 ⊨ 𝑄 e 𝑄 ⊨ 𝑃 .

Como 𝑃 ⊨ 𝑄 se e somente se 𝑃 → 𝑄 for uma tautologia e 𝑄 ⊨ 𝑃 se e somente se 𝑄 → 𝑃


for uma tautologia, temos que 𝑃 ≡ 𝑄 se e somente se 𝑃 ⇐⇒ 𝑄 for uma tautologia. Em outras
palavras, isso significa que 𝑃 ≡ 𝑄 se e somente se suas T.V. forem idênticas.
Exemplo: Sejam as proposições 𝑃 e 𝑄 a seguir:

• 𝑃 : 𝑝 → (𝑞 ∧ 𝑟)

• 𝑄 : (𝑝 → 𝑞) ∧ (𝑝 → 𝑟)

Mostre que 𝑃 ≡ 𝑄.
Para mostrar que 𝑃 ≡ 𝑄 devemos mostrar que 𝑃 ⇐⇒ 𝑄 é uma tautologia.

𝑝 𝑞 𝑟 𝑞∧𝑟 𝑃 (𝑝 → 𝑞) 𝑝→𝑟 𝑄 𝑃 ⇐⇒ 𝑄

T T T T T T T T T
T T F F F T F F T
T F T F F F T F T
T F F F F F F F T
F T T T T T T T T
F T F F T T T T T
F F T F T T T T T
F F F F T T T T T

21
A T.V. anterior mostra que de fato 𝑃 ≡ 𝑄. Sabendo da existência do conceito de equivalência
lógica, o resultado a seguir mostra outra forma de verificar consequências lógicas, baseada no conceito
de contradição.

Teorema 2 Dadas as proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛 , a proposição 𝑄 é consequência lógica delas se e


somente se:
𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ∧ ¬𝑄 (10)

for uma contradição.

Prova:
1. (ida)
a) Do teorema anterior, sabemos que se 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄, então (𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 é
uma tautologia.
b) A negação da tautologia é uma contradição, de modo que, neste caso:

¬((𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) → 𝑄) (11)

deve ser uma contradição.


c) Note que a condicional 𝑝 → 𝑞 é logicamente equivalente a ¬𝑝 ∨ 𝑞.

𝑝 𝑞 ¬𝑝 𝑝→𝑞 ¬𝑝 ∨ 𝑞

T T F T T
T F F F F
F T T T T
F F T T T

d) Então, a expressão aanterior, que é uma contradição, pode ser expressa como:

¬(¬(𝑃1 ∧ 𝑃2 ∧ 𝑃3 ∧ ... ∧ 𝑃𝑛 ) ∨ 𝑄) (12)

e) Mas note que a proposição ¬(¬𝑝 ∨ 𝑞) é logicamente equivalente a 𝑝 ∧ ¬𝑞:

𝑝 𝑞 ¬𝑝 ¬𝑞 ¬𝑝 ∨ 𝑞 ¬(¬𝑝 ∨ 𝑞) 𝑝 ∧ ¬𝑞

T T F F T F F
T F F T F T T
F T T F T F F
F F T T T F F

f) Portanto, neste caso, a contradição pode ser expressa como:

(𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) ∧ ¬𝑄 (13)

22
2. (volta)
a) Se (𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) ∧ ¬𝑄 é uma contradição, então 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄.
b) Note que se (𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) ∧ ¬𝑄 é uma contradição, então sua negação é uma tautologia:

¬((𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) ∧ ¬𝑄) (14)

c) Mas, pela equivalência obtida na primeira parte do teorema, sabemos que (𝑝 ∧ ¬𝑞) ≡ ¬(¬𝑝 ∨ 𝑞).
Aplicando a negação em ambos os lados, a equivalência continua válida, o que nos leva a seguinte
conclusão: ¬(𝑝 ∧ ¬𝑞) ≡ ¬𝑝 ∨ 𝑞.
d) Sendo assim, a tautologia anterior pode ser expressa como:

¬(𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) ∨ 𝑄 (15)

e) Mas como ¬𝑝 ∨ 𝑞 ≡ 𝑝 → 𝑞, temos que:

(𝑃1 ∧ 𝑃2 ∧ ... ∧ 𝑃𝑛 ) → 𝑄 (16)

é uma tautologia, o que nos leva a 𝑃1 , 𝑃2 , ..., 𝑃𝑛 ⊨ 𝑄.

4.1 Proposições associadas a condicionais


Dada uma proposição condicional 𝑝 → 𝑞, podemos associar a ela outras 3 proposições:

• A recíproca: 𝑞 → 𝑝

• A contrária: ¬𝑝 → ¬𝑞

• A contrapositiva: ¬𝑞 → ¬𝑝

Teorema 3 Uma proposição condicional e sua contrapositiva são logicamente equivalentes, ou seja,
𝑝 → 𝑞 ≡ ¬𝑞 → ¬𝑝.

Um exemplo em linguagem natural seria:

• Condicional: Se um inteiro é par, então ele é divisível por 2.

• Contrapositiva: Se um inteiro não é divisível por 2, então ele não é par.

𝑝 𝑞 ¬𝑝 ¬𝑞 𝑝→𝑞 ¬𝑞 → ¬𝑝 (𝑝 → 𝑞) ⇐⇒ (¬𝑞 → ¬𝑝)

T T F F T T T
T F F T F F T
F T T F T T T
F F T T T T T

23
Teorema 4 A recíproca e a contrária de uma proposição condicional são logicamente equivalentes,
ou seja, 𝑞 → 𝑝 ≡ ¬𝑝 → ¬𝑞.

𝑝 𝑞 ¬𝑝 ¬𝑞 𝑞→𝑝 ¬𝑝 → ¬𝑞 (𝑞 → 𝑝) ⇐⇒ (¬𝑝 → ¬𝑞)

T T F F T T T
T F F T T T T
F T T F F F T
F F T T T T T

4.2 Equivalências notáveis


A seguir listamos algumas equivalências notáveis da lógica proposicional:

1. Dupla negação: ¬¬𝑝 ≡ 𝑝

2. Leis idempotentes: 𝑝 ∨ 𝑝 ≡ 𝑝 e 𝑝 ∧ 𝑝 ≡ 𝑝

3. Leis comutativas: 𝑝 ∨ 𝑞 ≡ 𝑞 ∨ 𝑝 e 𝑝 ∧ 𝑞 ≡ 𝑞 ∧ 𝑝

4. Leis associativas: 𝑝 ∨ (𝑞 ∨ 𝑟) ≡ (𝑝 ∨ 𝑞) ∨ 𝑟 e 𝑝 ∧ (𝑞 ∧ 𝑟) ≡ (𝑝 ∧ 𝑞) ∧ 𝑟

5. Regra da bicondicional: 𝑝 ⇐⇒ 𝑞 ≡ (𝑝 → 𝑞) ∧ (𝑞 → 𝑝)

Exercício: Considere a sentença a seguir como verdadeira:

Se Maria for a escola, então Gabriel ou Paula irão, e se Maria não for a escola, então Paula e
Rafael irão.

a) Escreva a sentença na linguagem da lógica proposicional.


Sejam as proposições a seguir:

• 𝑚 : Maria vaia escola.

• 𝑝 : Paula vaia escola.

• 𝑔 : Gabriel vaia escola.

• 𝑟 : Rafael vaia escola.

Podemos escrever a sentença como uma conjunção de duas condicionais 𝑃 e 𝑄, dadas por:

• 𝑃 : 𝑚 → (𝑔 ∨ 𝑝)

• 𝑄 : ¬𝑚 → (𝑝 ∧ 𝑟)

o que nos leva a 𝑆 : (𝑚 → (𝑔 ∨ 𝑝)) ∧ (¬𝑚 → (𝑝 ∧ 𝑟)).

24
b) É possível chegar a conclusão sobre quem certamente irá a escola?
Para isso, devemos verificar se algum dos átomos 𝑝, 𝑞 ou 𝑟 é consequência lógica da sentença 𝑆.
Devemos construir a T.V. para 𝑆 e verificar se 𝑆 → 𝑝, 𝑆 → 𝑔 ou 𝑆 → 𝑟 são tautologias.

𝑚 𝑔 𝑝 𝑟 ¬𝑚 𝑔∨𝑝 𝑝∧𝑟 𝑃 𝑄 𝑆 𝑆→𝑔 𝑆→𝑝 𝑆→𝑟

T T T T F T T T T T T T T
T T T F F T F T T T T T F
T T F T F T F T T T T F T
T T F F F T F T T T T F F
T F T T F T T T T T F T T
T F T F F T F T T T F T F
T F F T F F F F T F T T T
T F F F F F F F T F T T T
F T T T T T T T T T T T T
F T T F T T F T F F T T T
F T F T T T F T F F T T T
F T F F T T F T F F T T T
F F T T T T T T T T F T T
F F T F T T F T F F T T T
F F F T T F F T F F T T T
F F F F T F F T F F T T T

Observando a T.V. podemos perceber que nenhuma das 3 prposições - 𝑆 → 𝑔, 𝑆 → 𝑝 e 𝑆 → 𝑟


- são tautologias, o que significa que não há garantias sobre quem certamente irá a escola. Portanto,
não podemos concluir que alguém com certeza irá a escola.
Refaça o exercício, considerando que a sentença seja: Se Maria for a escola, então Gabriel e
Paula irão, e se Maria não for a escola, então Paula e Rafael irão. O que podemos concluir?
Uma pergunta interessante é: quantas funções lógicas de 2 variáveis existem? Note que existem
no máximo 16 combinações distintas de valores!

𝑝 𝑞 𝐹1 𝐹2 𝐹3 𝐹4 𝐹5 𝐹6 𝐹7 𝐹8 𝐹9 𝐹10 𝐹11 𝐹12 𝐹13 𝐹14 𝐹15 𝐹16

T T T T T T T T T T F F F F F F F F
T F T T T T F F F F T T T T F F F F
F T T T F F T T F F T T F F T T F F
F F T F T F T F T F T F T F T F T F

Podemos identificar que 𝐹1 é uma tautologia e 𝐹16 é uma contradição. Além disso, é possível
reconhecer algumas das operações lógicas que discutimos até o momento. Note que 𝐹8 corresponde
a conjunção, 𝐹2 corresponde a disjunção, 𝐹5 corresponde a condicional (𝑝 → 𝑞) e 𝐹7 corresponde

25
a bicondicional (𝑝 ⇐⇒ 𝑞). Há alguns operadores que não discutimos, mas são bem conhecidos
na literatura, como por exemplo, o operador 𝐹10 denominado como ou-exclusivo (XOR). Repare que
operador 𝐹9 é a negação da conjunção, e por essa razão, é conhecido como não-e (NAND). Da mesma
forma, o operador 𝐹15 é a negação da disjunção, conhecido como não-ou (NOR).

4.3 Considerações finais


Neste capítulo, exploramos dois conceitos fundamentais da lógica matemática: consequência ló-
gica e equivalência lógica. A consequência lógica define a relação entre proposições, garantindo que,
se certas premissas forem verdadeiras, então a conclusão também deve ser verdadeira. Esse conceito
é essencial para a construção de argumentos válidos e para o desenvolvimento de sistemas formais de
inferência.
A equivalência lógica, por sua vez, estabelece quando duas proposições possuem os mesmos
valores de verdade em todas as interpretações possíveis. Através de leis e regras de equivalência,
como a dupla negação, De Morgan e distributividade, aprendemos a transformar expressões lógicas
sem alterar seu significado, o que é fundamental para a simplificação de fórmulas e a demonstração
de teoremas.
A compreensão dessas relações lógicas fortalece a base para o estudo da dedução formal e dos
sistemas de prova, temas que serão abordados nos próximos capítulos. Esses conceitos não apenas
estruturam o pensamento matemático, mas também possuem aplicações diretas na computação, na
inteligência artificial e na filosofia da lógica.

26
5 Álgebra proposicional
As tabelas verdade são ferramentas poderosas para a análise de proposições lógicas. No entanto,
quando o número de átomos cresce, a construção de T.V.’s torna-se inviável pois requer 2𝑛 linhas
(complexidade exponencial). Sendo assim, a definição de um mecanismo mais eficiente torna-se
necessário: uma álgera das proposições, como uma forma matemática de manipular sentenças.
Pergunta: é possível manipular proposições lógicas de modo a simplificá-las ou escrevê-las em
outra representação? Sim, a partir das regras da álgebra proposicional.

5.1 Porpriedades da conjunção e disjunção


Definição 11 Para qualquer proposição 𝑃 definida apenas em termos das operações conjunção
(AND) e disjunção (OR), seu par dual é encontrado substituindo 𝑇 por 𝐹 (e vice-versa) e ∧ por
∨ (e vice-versa).

A seguir listamos as principais propriedades dos operadores conjunção, disjunção e negação.

1. Lei da contradição: 𝑝 ∧ ¬𝑝 ≡ 𝐹

2. Lei do terceiro excluído: 𝑝 ∨ ¬𝑝 ≡ 𝑇

3. Leis da dominação:

• 𝑝∧𝑇 ≡𝑝
• 𝑝∨𝐹 ≡𝑝

4. Leis idempotentes:

• 𝑝∧𝑝≡𝑝
• 𝑝∨𝑝≡𝑝

5. Dupla negação: ¬¬𝑝 ≡ 𝑝

6. Leis comutativas:

• 𝑝∧𝑞 ≡𝑞∧𝑝
• 𝑝∨𝑞 ≡𝑞∨𝑝

7. Leis associativas:

• 𝑝 ∨ (𝑞 ∨ 𝑟) ≡ (𝑝 ∨ 𝑞) ∨ 𝑟
• 𝑝 ∧ (𝑞 ∧ 𝑟) ≡ (𝑝 ∧ 𝑞) ∧ 𝑟

8. Leis distributivas:

27
• 𝑝 ∨ (𝑞 ∧ 𝑟) ≡ (𝑝 ∨ 𝑞) ∧ (𝑝 ∨ 𝑟)
• 𝑝 ∧ (𝑞 ∨ 𝑟) ≡ (𝑝 ∧ 𝑞) ∨ (𝑝 ∧ 𝑟)

9. Leis de De Morgan:

• ¬(𝑝 ∧ 𝑞) ≡ ¬𝑝 ∨ ¬𝑞
• ¬(𝑝 ∨ 𝑞) ≡ ¬𝑝 ∧ ¬𝑞

Note que as leis de De Morgan expressam que:

• A negação de duas proposições que são simultaneamente verdade equivale a afirmar que ao
menos uma delas é falsa.

• Negar que ao menos uma de duas proposições é verdadeira equivale a afirmar que ambas são
falsas.

Em resumo, a negação de uma conjunção é a disjunção das negações e a negação de uma disjunção
é a conjunção das negações.

Exercício: Prove, mediante tabelas verdade, as leis de De Morgan.

Exercício: Sabendo da validade das leis de De Morgan para duas proposições, prove as leis de
De Morgan para 3 proposições.
a) ¬(𝑝 ∧ 𝑞 ∧ 𝑟) ≡ ¬𝑝 ∨ ¬𝑞 ∨ ¬𝑟
Iniciando com a associativa, temos:

¬(𝑝 ∧ 𝑞 ∧ 𝑟) ≡ ¬((𝑝 ∧ 𝑞) ∧ 𝑟) (17)

Aplicando a lei de De Morgan de duas componentes:

¬((𝑝 ∧ 𝑞) ∧ 𝑟) ≡ ¬(𝑝 ∧ 𝑞) ∨ ¬𝑟 (18)

O que finalmente nos leva a:

¬(𝑝 ∧ 𝑞) ∨ ¬𝑟 ≡ ¬𝑝 ∨ ¬𝑞 ∨ ¬𝑟 (19)

b) ¬(𝑝 ∨ 𝑞 ∨ 𝑟) ≡ ¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟 (demonste)

5.2 Propriedades da condicional


Durante a manipulação de proposições compostas, pode ser necessário em algumas situações
eliminar a condicional e a bicondicional. Para isso, podemos usar as seguintes equivalências úteis:

• 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞

28
• 𝑝 ⇐⇒ 𝑞 ≡ (𝑝 → 𝑞) ∧ (𝑞 → 𝑝) ≡ (¬𝑝 ∨ 𝑞) ∧ (¬𝑞 ∨ 𝑝)

Prove as equivalências anteiores utilizando T.V.’s.

5.3 Equivalências notáveis


Existem algumas equivalências lógicas notáveis, que nos permitem simplificar proposições de
maneira bastante objetiva.

• Leis da absorção (simples)

a) 𝑝 ∨ (𝑝 ∧ 𝑞) ≡ 𝑝
Note que a proposição do lado esquerdo equivale a:

(𝑝 ∧ 𝑇 ) ∨ (𝑝 ∧ 𝑞) (20)

o que após a distributiva na direção contrária, ou seja, "colocando 𝑝 em evidência") se torna:

𝑝 ∧ (𝑇 ∨ 𝑞) ≡ 𝑝 ∧ 𝑇 ≡ 𝑝 (21)

b) 𝑝 ∧ (𝑝 ∨ 𝑞) ≡ 𝑝
Note que a proposição do lado esquerdo equivale a:

(𝑝 ∨ 𝐹 ) ∧ (𝑝 ∨ 𝑞) (22)

o que após a distributiva na direção contrária, ou seja, "colocando 𝑝 em evidência") se torna:

𝑝 ∨ (𝐹 ∧ 𝑞) ≡ 𝑝 ∨ 𝐹 ≡ 𝑝 (23)

• Leis da absorção (composta)

a) (𝑝 ∧ 𝑞) ∨ (¬𝑝 ∧ 𝑞) ≡ 𝑞
Note que aplicando a distributiva, temos que o lado esquerdo da expressão fica:

(𝑝 ∨ ¬𝑝) ∧ (𝑝 ∨ 𝑞) ∧ (𝑞 ∨ ¬𝑝) ∧ (𝑞 ∨ 𝑞) (24)

Utilizando a associativa e as leis do terceiro excluído e idempotentes, chega-se a:

(𝑇 ∧ (𝑝 ∨ 𝑞)) ∧ (𝑞 ∧ (𝑞 ∨ ¬𝑝)) (25)

Simplificando a expressão acima (lei da identidade e lei da absorção), temos:

(𝑝 ∨ 𝑞) ∧ 𝑞 ≡ 𝑞 ∧ (𝑞 ∨ 𝑝) ≡ 𝑞 (26)

29
b) (𝑝 ∨ 𝑞) ∧ (¬𝑝 ∨ 𝑞) ≡ 𝑞
Note que aplicando a distributiva, temos que o lado esquerdo da expressão fica:

(𝑝 ∧ ¬𝑝) ∨ (𝑝 ∧ 𝑞) ∨ (𝑞 ∧ ¬𝑝) ∨ (𝑞 ∧ 𝑞) (27)

Utilizando a associativa e as leis do terceiro excluído e idempotentes, chega-se a:

(𝐹 ∨ (𝑝 ∧ 𝑞)) ∨ (𝑞 ∨ (𝑞 ∧ ¬𝑝)) (28)

Simplificando a expressão acima (lei da identidade e lei da absorção), temos:

(𝑝 ∧ 𝑞) ∨ 𝑞 ≡ 𝑞 ∨ (𝑞 ∧ 𝑝) ≡ 𝑞 (29)

Exercício: Obtenha uma fórmula equivalente a ¬(𝑝 ∧ 𝑞) ∨ 𝑟 usando apenas o operador →


(condicional).
Aplicando a lei de De Morgan, temos:

¬(𝑝 ∧ 𝑞) ∨ 𝑟 ≡ ¬𝑝 ∨ ¬𝑞 ∨ 𝑟 ≡ ¬𝑝 ∨ (¬𝑞 ∨ 𝑟) (30)

Utilizando a equivalência da condicional, chega-se em:

¬(𝑝 ∧ 𝑞) ∨ 𝑟 ≡ ¬𝑝 ∨ (𝑞 → 𝑟) (31)

Novamente, pela equivalência da condicional, temos:

¬(𝑝 ∧ 𝑞) ∨ 𝑟 ≡ 𝑝 → (𝑞 → 𝑟) (32)

Vimos que existem diversas maneiras logicamente equivalentes de escrever uma fórmula. A per-
gunta que surge é: seria possível escrever qualquer fórmula da lógica proposicional utilizando apenas
conjunções, disjunções e negações? Veremos a seguir que sim, através das Formas Normais Conjun-
tiva e Disjuntiva.

5.4 Formas normais


A seguir iremos discutir o que são as Formas normais de uma fórmula bem formada na lógica
proposicional.

Definição 12 (Forma Normal Conjuntiva) Dizemos que uma fórmula 𝑃 está na Forma Normal
Conjuntiva (FNC), quando P for uma conjunção da forma:

𝑝1 ∧ 𝑝2 ∧ 𝑝3 ∧ ... ∧ 𝑝𝑛 (33)

em que cada 𝑝𝑖 é uma cláusula, ou seja, uma disjunção de átomos, ou um único átomo.

30
Em outras palavras, 𝑃 está na FNC se e somente se:

• contém apenas os operadores ∧, ∨, e ¬

• ¬ opera apenas sob átomos

• não apresenta dupla negação

• ∨ não tem alcance sobre ∧, ou seja, não existe 𝑝 ∨ (𝑞 ∧ 𝑟)

Para qualquer fórmula 𝑃 , se 𝑄 = 𝐹 𝑁 𝐶(𝑃 ), então 𝑃 ≡ 𝑄.

Teorema 5 Uma FNC é uma tautologia se e somente se cada elemento 𝑝𝑖 da conjunção for uma
tautologia (cada cláusula individual for uma tautologia).

Prova:
1. (ida)
a) Se a FNC é uma tautologia, então para toda atribuição de valores lógicos dos átomos teremos um
valor lógico verdade para a fórmula.
b) Logo, pela semântica do operador conjunção, cada cláusula individual deve assumir valor lógico
verdade, pois caso contrário, a conjunção resultaria em valor lógico falso (e não teríamos a FNC).
2. (volta)
a) Se cada cláusula da FNC é uma tautologia, então pela semântica do operador conjunção, a fórmula
terá valor lógico verdade, pois a única forma da conjunção de várias fórmulas resultar em verdade é
justamente quando todas elas são verdadeiras.

5.5 Obtenção da FNC via tabela verdade


A seguir apresentamos um algoritmo para obter a FNC de uma fórmula a partir da T.V.

1. Construa a T.V. de 𝑃 .

2. Procure na T.V. as linhas que avaliam 𝑃 como 𝐹 .

3. Para cada uma dessas linhas, construa uma disjunção da seguinte forma:

• Para cada átomo na fórmula, se seu valor lógico é 𝑉 , tome ¬𝑝, e se for 𝐹 , tome 𝑝.

4. Determine a conjunção das disjunções obtidas para cada linha 𝐹 da T.V.

5. Se a proposição 𝑃 é uma tautologia, não há linha avaliada como 𝐹 , determine 𝐹 𝑁 𝐶(𝑃 ) =


𝑝 ∨ ¬𝑝, na qual 𝑝 é uma fórmula atômica.

Exemplo: Seja 𝑃 : (¬𝑝 ∨ 𝑞) → 𝑟. Obtenha a 𝑄 = 𝐹 𝑁 𝐶(𝑃 ).


A T.V. de 𝑃 é dada por:

31
𝑝 𝑞 𝑟 ¬𝑝 ¬𝑝 ∨ 𝑞 (¬𝑝 ∨ 𝑞) → 𝑟

T T T F T T
T T F F T F
T F T F F T
T F F F F T
F T T T T T
F T F T T F
F F T T T T
F F F T T F

Como existem 3 linhas avaliadas como 𝐹 , teremos 3 cláusulas:

• 𝑝1 : ¬𝑝 ∨ ¬𝑞 ∨ 𝑟

• 𝑝2 : 𝑝 ∨ ¬𝑞 ∨ 𝑟

• 𝑝3 : 𝑝 ∨ 𝑞 ∨ 𝑟

Portanto, a FNC é dada por:

𝑄 = 𝐹 𝑁 𝐶(𝑃 ) = (¬𝑝 ∨ ¬𝑞 ∨ 𝑟) ∧ (𝑝 ∨ ¬𝑞 ∨ 𝑟) ∧ (𝑝 ∨ 𝑞 ∨ 𝑟) (34)

Observe que podemos ter átomos no lugar de algumas cláusulas na FNC. Por exemplo, a fórmula
¬𝑝 ∧ (¬𝑞 ∨ ¬𝑟) ∧ 𝑠 está na FNC. Por outro lado, não é permitido que o operador ∨ tenha alcance
sobre o operador ∧, de modo que a fórmula 𝑝 ∧ (𝑟 ∨ (𝑝 ∧ 𝑠)) não está na FNC.

Definição 13 (Forma Normal Disjuntiva) Dizemos que uma fórmula 𝑃 está na Forma Normal Dis-
juntiva (FND), quando P for uma disjunção da forma:

𝑝1 ∨ 𝑝2 ∨ 𝑝3 ∨ ... ∨ 𝑝𝑛 (35)

em que cada 𝑝𝑖 é uma conjunção de átomos ou um único átomo.

Em outras palavras, 𝑃 está na FND se e somente se:

• contém apenas os operadores ∧, ∨, e ¬

• ¬ opera apenas sob átomos

• não apresenta dupla negação

• ∧ não tem alcance sobre ∨, ou seja, não existe 𝑝 ∧ (𝑞 ∨ 𝑟)

Alguns exemplos de fórmulas na FND são:

32
• (𝑝 ∧ 𝑞) ∨ (𝑝 ∧ ¬𝑞)

• 𝑝∨𝐹

• ¬𝑝 ∨ (¬𝑞 ∧ ¬𝑟) ∨ 𝑠

• (𝑝 ∧ 𝑞) ∨ (𝑟 ∧ 𝑝 ∧ ¬𝑞) ∨ ¬𝑠

5.6 Obtenção da FND via tabela verdade


A seguir apresentamos um algoritmo para obter a FND de uma fórmula a partir da T.V.

1. Construa a T.V. de 𝑃 .

2. Procure na T.V. as linhas que avaliam 𝑃 como 𝑉 .

3. Para cada uma dessas linhas, construa uma conjunção da seguinte forma:

• Para cada átomo na fórmula, se seu valor lógico é 𝑉 , tome 𝑝, e se for 𝐹 , tome ¬𝑝.

4. Determine a disjunção das conjunções obtidas para cada linha 𝑉 da T.V.

5. Se a proposição 𝑃 é uma contradição, não há linha avaliada como 𝑉 , determine 𝐹 𝑁 𝐷(𝑃 ) =


𝑝 ∧ ¬𝑝, na qual 𝑝 é uma fórmula atômica.

Exemplo: Seja 𝑃 : ((𝑞 ∨ 𝑟) → 𝑝) ∧ ((𝑝 ∨ 𝑟) → 𝑞). Obtenha a 𝑄 = 𝐹 𝑁 𝐷(𝑃 ).


A T.V. de 𝑃 é dada por:

𝑝 𝑞 𝑟 𝑞∨𝑟 𝑝∨𝑟 (𝑞 ∨ 𝑟) → 𝑝 (𝑝 ∨ 𝑟) → 𝑞 P

T T T T T T T T
T T F T T T T T
T F T T T T F F
T F F F T T F F
F T T T T F T F
F T F T F F T F
F F T T T F F F
F F F F F T T T

Como existem 3 linhas avaliadas como 𝑇 , teremos 3 conjunções:

• 𝑝1 : 𝑝 ∧ 𝑞 ∧ 𝑟

• 𝑝2 : 𝑝 ∧ 𝑞 ∧ ¬𝑟

• 𝑝3 : ¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟

33
Portanto, a FND é dada por:

𝑄 = 𝐹 𝑁 𝐷(𝑃 ) = (𝑝 ∧ 𝑞 ∧ 𝑟) ∨ (𝑝 ∧ 𝑞 ∧ ¬𝑟) ∨ (¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟) (36)

5.7 Obtenção algébrica das formas normais


A derivação da FNC e da FND de uma fórmula 𝑃 pode ser realizada por meio da substituição de
fórmulas logicamente equivalentes. A seguir veremos um exemplo simples.

Exemplo: Seja 𝑃 : ¬((𝑝 ∨ ¬𝑞) ∧ ¬𝑟). Obtenha 𝑄 = 𝐹 𝑁 𝐶(𝑃 ).


Devemos iniciar aplicando as leis da álgebra proposicional. Pela lei de De Morgan, temos:

¬((𝑝 ∨ ¬𝑞) ∧ ¬𝑟) ≡ ¬(𝑝 ∨ ¬𝑞) ∨ ¬¬𝑟 (37)

Pela dupla negação e nova aplicação da lei de De Morgan, chega-se em:

¬(𝑝 ∨ ¬𝑞) ∨ ¬¬𝑟 ≡ ¬𝑝 ∧ ¬¬𝑞 ∨ 𝑟 (38)

Como desejamos obter a FNC, devemos diminuir o alcance do operador ∨:

(¬𝑝 ∧ ¬¬𝑞) ∨ 𝑟 ≡ 𝑟 ∨ (¬𝑝 ∧ 𝑞) (39)

Pela lei distributiva, temos finalmente a FNC:

𝑄 = 𝐹 𝑁 𝐶(𝑃 ) = (𝑟 ∨ ¬𝑝) ∧ (𝑟 ∨ 𝑞) (40)

Exemplo: Seja 𝑃 : (𝑝 ∧ 𝑞) ∨ (𝑟 ∧ (𝑠 ∨ 𝑡)). Obtenha 𝑄 = 𝐹 𝑁 𝐶(𝑃 ).


Devemos iniciar aplicando as leis da álgebra proposicional. Pela lei distributiva, temos:

(𝑝 ∧ 𝑞) ∨ (𝑟 ∧ (𝑠 ∨ 𝑡)) ≡ (𝑝 ∨ (𝑟 ∧ (𝑠 ∨ 𝑡))) ∧ (𝑞 ∨ (𝑟 ∧ (𝑠 ∨ 𝑡))) (41)

Aplicando novamente alei distributiva, chega-se finalmente na FNC:

𝑄 = 𝐹 𝑁 𝐶(𝑃 ) = (𝑝 ∨ 𝑟) ∧ (𝑝 ∨ 𝑠 ∨ 𝑡) ∧ (𝑞 ∨ 𝑟) ∧ (𝑞 ∨ 𝑠 ∨ 𝑡) (42)

5.8 Metodologia para obtenção algébrica das formas normais


A seguir apresentamos um método algorítmico para a obtenção das formas normais via álgebra
proposicional.

1. Eliminar os conectivos → e ⇐⇒ usando as equivalências:

• 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞

34
• 𝑝 ⇐⇒ 𝑞 ≡ (¬𝑝 ∨ 𝑞) ∧ (¬𝑞 ∨ 𝑝)

2. Eliminar as duplas negações: ¬¬𝑝 ≡ 𝑝

3. Reduzir o escopo das negações com as leis de De Morgan:

• ¬(𝑝 ∧ 𝑞) ≡ ¬𝑝 ∨ ¬𝑞
• ¬(𝑝 ∨ 𝑞) ≡ ¬𝑝 ∧ ¬𝑞

4. Na FNC, reduzir o escopo do operador disjunção ∨:

• 𝑝 ∨ (𝑞 ∧ 𝑟) ≡ (𝑝 ∨ 𝑞) ∧ (𝑝 ∨ 𝑟)
• (𝑝 ∧ 𝑞) ∨ 𝑟 ≡ (𝑝 ∨ 𝑟) ∧ (𝑞 ∨ 𝑟)

5. Na FND, reduzir o escopo do operador conjunção ∧:

• 𝑝 ∧ (𝑞 ∨ 𝑟) ≡ (𝑝 ∧ 𝑞) ∨ (𝑝 ∧ 𝑟)
• (𝑝 ∨ 𝑞) ∧ 𝑟 ≡ (𝑝 ∧ 𝑟) ∨ (𝑞 ∧ 𝑟)

Exemplo: Seja 𝑃 : (¬𝑝 ∨ 𝑞) → 𝑟. Obtenha 𝑄𝑇 𝑉 = 𝐹 𝑁 𝐶(𝑃 ) pelo método da tabela verdade e


𝑄𝐴𝐿𝐺 = 𝐹 𝑁 𝐶(𝑃 ) pelo método algébrico. Mostre que 𝑄𝑇 𝑉 ≡ 𝑄𝐴𝐿𝐺 .
A T.V. de 𝑃 é dada por:

𝑝 𝑞 𝑟 ¬𝑝 ¬𝑝 ∨ 𝑞 (¬𝑝 ∨ 𝑞) → 𝑟

T T T F T T
T T F F T F
T F T F F T
T F F F F T
F T T T T T
F T F T T F
F F T T T T
F F F T T F

Portanto, a FNC pelo método da T.V. é dada por:

𝑄𝑇 𝑉 = 𝐹 𝑁 𝐶(𝑃 ) = (¬𝑝 ∨ ¬𝑞 ∨ 𝑟) ∧ (𝑝 ∨ ¬𝑞 ∨ 𝑟) ∧ (𝑝 ∨ 𝑞 ∨ 𝑟) (43)

A seguir aplicamos o método algébrico:

(¬𝑝 ∨ 𝑞) → 𝑟 ≡ ¬(¬𝑝 ∨ 𝑞) ∨ 𝑟 ≡ (𝑝 ∧ ¬𝑞) ∨ 𝑟 ≡ (𝑝 ∨ 𝑟) ∧ (¬𝑞 ∨ 𝑟) = 𝑄𝐴𝐿𝐺 (44)

Para mostrar a equivalência entre 𝑄𝑇 𝑉 e 𝑄𝐴𝐿𝐺 , primeiramente lembre-se das leis associativas:

35
𝑄𝑇 𝑉 = (¬𝑞 ∨ 𝑟 ∨ ¬𝑝) ∧ (𝑝 ∨ 𝑟 ∨ ¬𝑞) ∧ (𝑝 ∨ 𝑟 ∨ 𝑞) (45)

Lembre-se também que 𝑝 ≡ 𝑝 ∧ 𝑝, o que nos permite replicar a cláusula do meio:

𝑄𝑇 𝑉 = ((¬𝑞 ∨ 𝑟 ∨ ¬𝑝) ∧ (¬𝑞 ∨ 𝑟 ∨ 𝑝)) ∧ ((𝑝 ∨ 𝑟 ∨ ¬𝑞) ∧ (𝑝 ∨ 𝑟 ∨ 𝑞)) (46)

Em seguida, note que podemos aplicar a lei da absorção no primeiro parêntesis para cancelar 𝑝
com ¬𝑝 e no segundo parêntesis para cancelar 𝑞 com ¬𝑞:

𝑄𝑇 𝑉 = (¬𝑞 ∨ 𝑟) ∧ (𝑝 ∨ 𝑟) ≡ 𝑄𝐴𝐿𝐺 (47)

Exemplo: Seja 𝑃 : (𝑝 ∨ 𝑞) ∧ (𝑟 ∨ 𝑠). Obtenha 𝑄 = 𝐹 𝑁 𝐷(𝑃 ).


Note que 𝑃 está na FNC. Para convertermos a FND é preciso aplicar a propriedade distributiva:

(𝑝 ∨ 𝑞) ∧ (𝑟 ∨ 𝑠) ≡ (𝑝 ∧ (𝑟 ∨ 𝑠)) ∨ (𝑞 ∧ (𝑟 ∨ 𝑠)) (48)

Aplicando novamente a distributiva:

(𝑝 ∧ (𝑟 ∨ 𝑠)) ∨ (𝑞 ∧ (𝑟 ∨ 𝑠)) ≡ (𝑝 ∧ 𝑟) ∨ (𝑝 ∧ 𝑠) ∨ (𝑞 ∧ 𝑟) ∨ (𝑞 ∧ 𝑠) = 𝐹 𝑁 𝐷(𝑃 ) (49)

Exercício: O problema de Post consiste em determinar se para toda T.V. existe uma fórmula que a
defina. Em termos práticos, dada uma T.V., deseja-se saber qual é a expressão lógica resultante. Este
problema é muito importante para a ciência da computação, pois é a base para o projeto de circuitos
digitais. Considere a T.V. a seguir:

𝑝 𝑞 𝑟 P

T T T T
T T F T
T F T F
T F F F
F T T F
F T F F
F F T F
F F F T

Mostre que 𝑃 ≡ ((𝑞 ∨ 𝑟) → 𝑝) ∧ ((𝑝 ∨ 𝑟) → 𝑞).


A ideia consiste em iniciar da FND de 𝑃 . Poderíamos também iniciar da FNC de 𝑃 , mas como
há menos interpretações 𝑇 do que 𝐹 na T.V., a FND é mais simples que a FNC. De acordo com o que
vimos anteriormente, sabemos que 𝑄 = 𝐹 𝑁 𝐷(𝑃 ) é dada por:

𝑄 = 𝐹 𝑁 𝐷(𝑃 ) = (𝑝 ∧ 𝑞 ∧ 𝑟) ∨ (𝑝 ∧ 𝑞 ∧ ¬𝑟) ∨ (¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟) (50)

36
Aplicando a regra da absorção composta nos dois primeiros termos, temos o cancelamento de 𝑟
com ¬𝑟:

𝑄 ≡ (𝑝 ∧ 𝑞) ∨ (¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟) (51)

Com a propriedade distributiva, podemos escrever:

𝑄 ≡ (𝑝 ∨ (¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟)) ∧ (𝑞 ∨ (¬𝑝 ∧ ¬𝑞 ∧ ¬𝑟)) (52)

Novamente aplicando a propriedade distributiva, chega-se a:

𝑄 ≡ ((𝑝 ∨ ¬𝑝) ∧ (𝑝 ∨ ¬𝑞) ∧ (𝑝 ∨ ¬𝑟)) ∧ ((𝑞 ∨ ¬𝑝) ∧ (𝑞 ∨ ¬𝑞) ∧ (𝑞 ∨ ¬𝑟)) (53)

Pela lei do terceiro excluído, sabemos que 𝑝 ∨ ¬𝑝 ≡ 𝑇 , e pela lei da dominação temos que
𝑝 ∧ 𝑇 ≡ 𝑝, o que nos permite simplificar a expressão para:

𝑄 ≡ (𝑝 ∨ ¬𝑞) ∧ (𝑝 ∨ ¬𝑟) ∧ (𝑞 ∨ ¬𝑝) ∧ (𝑞 ∨ ¬𝑟) (54)

Pela lei distributiva, mas caminhando no sentido inverso, ou seja, "colocando p em evidência" e
"colocando q em evidência", temos:

𝑄 ≡ (𝑝 ∨ (¬𝑞 ∧ ¬𝑟)) ∧ (𝑞 ∨ (¬𝑝 ∧ ¬𝑟)) (55)

Pela lei de De Morgan, chega-se em:

𝑄 ≡ (¬(𝑞 ∨ 𝑟) ∨ 𝑝) ∧ (¬(𝑝 ∨ 𝑟) ∨ 𝑞) (56)

Por fim, pela equivalência da condicional, temos:

𝑄 ≡ ((𝑞 ∨ 𝑟) → 𝑝) ∧ ((𝑝 ∨ 𝑟) → 𝑞) (57)

como queríamos demonstrar.

5.9 O operador NAND e sua importância na computação


O operador lógico não-e (NAND), denotado por |, é definido como a negação da conjunção:

𝑝|𝑞 ≡ ¬(𝑝 ∧ 𝑞) (58)

Existe um resultado teórico (teorema) na lógica matemática que garante que qualquer uma das 16
funções lógicas de duas variáveis 𝑝 e 𝑞 pode ser definida apenas em termos do operador não-e.
Esse resultado tem uma série de implicações práticas na ciência da computação, uma vez que
qualquer circuito digital pode ser construído com apenas um tipo de componente eletrônico básico:

37
as portas lógicas NAND. Isso representa uma grande economia no custo de produção de placas e
dispositivos digitais.
Por exemplo, as funções lógicas elementares ¬, ∧, ∨ e → são definidas como (verifique isso!):

• ¬𝑝 ≡ 𝑝|𝑝

• 𝑝 ∧ 𝑞 ≡ (𝑝|𝑞)|(𝑝|𝑞)

• 𝑝 ∨ 𝑞 ≡ (𝑝|𝑝)|(𝑞|𝑞)

• 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞 ≡ ¬(¬(¬𝑝 ∨ 𝑞)) ≡ ¬(𝑝 ∧ ¬𝑞) ≡ 𝑝|¬𝑞 ≡ 𝑝|(𝑞|𝑞)

Exercício: Verifique que a bicondicional 𝑝 ⇐⇒ 𝑞 pode ser expressa usando apenas o operador
NAND como ((𝑝|𝑞)|(𝑝|𝑞))|((𝑝|𝑝)|(𝑞|𝑞)).

5.10 Considerações finais


Neste capítulo, exploramos a álgebra proposicional, um sistema formal que permite manipular
proposições e conectivos lógicos de maneira algébrica. Vimos como as operações básicas, como
conjunção, disjunção, negação, implicação e bicondicional, podem ser analisadas e transformadas
utilizando um conjunto de regras bem definidas.
A introdução das leis da álgebra proposicional, incluindo leis de De Morgan, distributividade,
identidade, idempotência e absorção, nos permitiu simplificar e reescrever expressões lógicas de
forma mais eficiente. Além disso, discutimos o papel das tautologias e equivalências lógicas na
validação de argumentos e na construção de demonstrações formais.
Além disso, discutimos as formas normais conjuntiva (FNC) e disjuntiva (FND), que estruturam
fórmulas lógicas em formatos padronizados, facilitando a análise e a implementação computacional,
especialmente em sistemas de resolução automática, circuitos digitais e inteligência artificial. Es-
sas representações são fundamentais para técnicas como satisfatibilidade (SAT) e minimização de
expressões lógicas.
O estudo desses conceitos fortalece a base para sistemas dedutivos mais avançados e formalismos
lógicos mais expressivos. Nos próximos capítulos, ampliaremos essa fundamentação, abordando
sistemas de prova e a lógica de predicados, que estendem a lógica proposicional para um nível mais
detalhado e expressivo de representação do conhecimento.

38
6 Inferência lógica
O estudo da lógica compreende a análise formal de mecanismos de dedução de conhecimento.
Em outras palavras, o principal objetivo da lógica consiste na verificação da validade de uma conclu-
são lógica a partir de um conjunto de proposições (premissas). Para isso, iremos estudar regras de
inferência, que nos permitem verificar a validade de argumentos sem a necessidade da construção de
tabelas verdade.

Definição 14 (Argumento) Um argumento é uma sequência de proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛 , em que


𝑛 > 1, na qual as 𝑛 − 1 primeiras proposições 𝑃𝑖 são chamadas de premissas e a última premissa 𝑃𝑛
é a conclusão. Denote-se um argumento por:

𝑃1 , 𝑃2 , ..., 𝑃𝑛−1 ⊢ 𝑃𝑛 (59)

Definição 15 (Argumento válido) Dizemos que um argumento 𝑃1 , 𝑃2 , ..., 𝑃𝑛−1 ⊢ 𝑃𝑛 é válido se a


conclusão é consequência lógica das premissas, ou seja, se:

𝑃1 , 𝑃2 , ..., 𝑃𝑛−1 ⊨ 𝑃𝑛 (60)

Podemos tentar verificar a validade de argumentos mediante a construção de tabelas verdade, mas
como o número de linhas de uma T.V. cresce exponencialmente com o número de átomos 𝑛, esse
processo torna-se inviável em diversas situações.

6.1 Regras de inferência


As regras de inferência são princípios formais que determinam a validade da passagem de premis-
sas para conclusões dentro de um sistema lógico. Elas garantem que, ao aplicarmos certos padrões de
raciocínio, chegamos a conclusões logicamente corretas a partir de proposições previamente aceitas
como verdadeiras. Podemos resumir a importância das regras de inferência pelos seguintes pontos:

• Garantem argumentos válidos: São a base para a dedução lógica, permitindo concluir correta-
mente a partir de premissas.

• Base da prova matemática: São usadas para demonstrar teoremas e propriedades matemáticas.

• Essenciais na computação: Fundamentam algoritmos de verificação lógica, inteligência artifi-


cial e linguagens formais.

• Aplicações na argumentação e filosofia: São ferramentas essenciais para estruturar raciocínios


rigorosos.

As regras de inferência são, portanto, fundamentais para qualquer sistema lógico e desempenham
um papel central na formalização do conhecimento e na tomada de decisões baseadas na lógica. A
seguir apresentaremos uma série de regras de inferência conhecidas.

39
6.1.1 Modus Ponens (MP)

Essa regra nos permite deduzir 𝑞 a partir das premissas 𝑝 → 𝑞 e 𝑝, ou seja:

𝑝 → 𝑞, 𝑝 ⊨ 𝑞 (61)

Exemplo: Podemos utilizar o seguinte exemplo em linguagem natural:

• Se faz frio, então visto meu casaco.

• Faz frio.

• Logo, visto meu casaco.

Podemos verificar que essa regra é um argumento válido a partir da construção da tabela verdade.
A ideia é que se o argumento, em sua forma condicional, o que é representado como ((𝑝 → 𝑞)∧𝑝) → 𝑞
for uma tautologia, então ele é válido.

𝑝 𝑞 𝑝→𝑞 (𝑝 → 𝑞) ∧ 𝑝 ((𝑝 → 𝑞) ∧ 𝑝) → 𝑞

T T T T T
T F F F T
F T T F T
F F T F T

6.1.2 Modus Tollens (MT)

Essa regra nos permite deduzir ¬𝑝 a partir das premissas 𝑝 → 𝑞 e ¬𝑞, ou seja:

𝑝 → 𝑞, ¬𝑞 ⊨ ¬𝑝 (62)

Exemplo: Podemos utilizar o seguinte exemplo em linguagem natural:

• Se chove, então a grama fica molhada.

• A grama não está molhada.

• Logo, não choveu.

Podemos verificar que essa regra é um argumento válido a partir da construção da tabela verdade.
A ideia é que se o argumento, em sua forma condicional, o que é representado como ((𝑝 → 𝑞)∧¬𝑞) →
¬𝑝 for uma tautologia, então ele é válido.

40
𝑝 𝑞 ¬𝑝 ¬𝑞 𝑝→𝑞 (𝑝 → 𝑞) ∧ ¬𝑞 ((𝑝 → 𝑞) ∧ ¬𝑞) → ¬𝑝

T T F F T F T
T F F T F F T
F T T F T F T
F F T T T T T

6.1.3 Silogismo Hipotético (SH)

Essa regra é como a propriedade transitiva do operador condicional. Em resumo, ela nos permite
concluir 𝑝 → 𝑟 a partir das premissas 𝑝 → 𝑞 e 𝑞 → 𝑟, ou seja:

𝑝 → 𝑞, 𝑞 → 𝑟 ⊨ 𝑝 → 𝑟 (63)

Exemplo: Podemos utilizar o seguinte exemplo em linguagem natural:

• Se eu faço exercícios físicos, então eu fico cansado.

• Se eu fico cansado, então eu preciso descansar.

• Logo, se eu faço exercícios, então eu preciso descansar.

Podemos verificar que essa regra é um argumento válido a partir da construção da tabela verdade.
A ideia é que se o argumento, em sua forma condicional, o que é representado como ((𝑝 → 𝑞) ∧ (𝑞 →
𝑟)) → (𝑝 → 𝑟) for uma tautologia, então ele é válido.

𝑝 𝑞 𝑟 𝑝→𝑞 𝑞→𝑟 𝑝→𝑟 (𝑝 → 𝑞) ∧ (𝑞 → 𝑟) ((𝑝 → 𝑞) ∧ (𝑞 → 𝑟)) → (𝑝 → 𝑟)

T T T T T T T T
T T F T F F F T
T F T F T T F T
T F F F T F F T
F T T T T T T T
F T F T F T F T
F F T T T T T T
F F F T T T T T

41
6.1.4 Silogismo Disjuntivo (SD)

Essa regra nos permite concluir 𝑝 a partir das premissas 𝑝 ∨ 𝑞 e ¬𝑞, ou seja:

𝑝 ∨ 𝑞, ¬𝑞 ⊨ 𝑝 (64)

Exemplo: Podemos utilizar o seguinte exemplo em linguagem natural:

• Maria fala baixo ou João tem problemas auditivos.

• Maria fala alto.

• Logo, João tem problemas auditivos.

Podemos verificar que essa regra é um argumento válido a partir da construção da tabela verdade.
A ideia é que se o argumento, em sua forma condicional, o que é representado como ((𝑝∨𝑞)∧¬𝑞) → 𝑝
for uma tautologia, então ele é válido.

𝑝 𝑞 ¬𝑞 𝑝∨𝑞 (𝑝 ∨ 𝑞) ∧ ¬𝑞 ((𝑝 ∨ 𝑞) ∧ ¬𝑞) → 𝑝

T T F T F T
T F T T T T
F T F T F T
F F T F F T

6.1.5 Silogismo de Alternância (SA)

Essa regra nos diz que a partir de duas premissas condicionais com mesmo consequente e antece-
dentes complementares podemos concluir o consequente em comum destas condicionais, ou seja:

𝑝 → 𝑞, ¬𝑝 → 𝑞 ⊨ 𝑞 (65)

Essa regra é baseada na seguinte equivalência lógica:

(𝑝1 ∨ 𝑝2 ) → 𝑞 ≡ (𝑝1 → 𝑞) ∧ (𝑝2 → 𝑞) (66)

Fazendo 𝑝1 igual a 𝑝 e 𝑝2 igual a ¬𝑝, temos:

(𝑝 → 𝑞) ∧ (¬𝑝 → 𝑞) ≡ (𝑝 ∨ ¬𝑝) → 𝑞 ≡ 𝑇 → 𝑞 ≡ ¬𝑇 ∨ 𝑞 ≡ 𝐹 ∨ 𝑞 ≡ 𝑞 (67)

Exemplo: Podemos utilizar o seguinte exemplo em linguagem natural:


• Se está chovendo, então levarei um guarda-chuva.

• Se não está chovendo, então levarei um guarda-chuva.


• Logo, eu levarei um guarda chuva.

42
6.2 Outras regras de inferência lógica
A seguir apresentamos diversas regras de inferência que podem ser utilizadas na validação de
argumentos.

• Dilema Construtivo (DC): 𝑝 → 𝑞, 𝑟 → 𝑠, 𝑝 ∨ 𝑟 ⊨ 𝑞 ∨ 𝑠

• Dilema Destrutivo (DD): 𝑝 → 𝑞, 𝑟 → 𝑠, ¬𝑞 ∨ ¬𝑠 ⊨ ¬𝑝 ∨ ¬𝑟

• Contraposição: 𝑝 → 𝑞 ⊨ ¬𝑞 → ¬𝑝

• Inconsistência: 𝑝, ¬𝑝 ⊨ 𝑞

• Introdução da equivalência (IE): 𝑝 → 𝑞, 𝑞 → 𝑝 ⊨ 𝑝 ⇐⇒ 𝑞

• Simplificação (Simp): 𝑝 ∧ 𝑞 ⊨ 𝑝 e 𝑝 ∧ 𝑞 ⊨ 𝑞

• Conjunção (Conj): 𝑝, 𝑞 ⊨ 𝑝 ∧ 𝑞

• Adição (Adi): 𝑝 ⊨ 𝑝 ∨ 𝑞

• Absorção (Abs): 𝑝 → 𝑞 ⊨ 𝑝 → (𝑝 ∧ 𝑞)

• Exportação (Exp): 𝑝 → (𝑞 → 𝑟) ⊨ (𝑝 ∧ 𝑞) → 𝑟 e (𝑝 ∧ 𝑞) → 𝑟 ⊨ 𝑝 → (𝑞 → 𝑟)

6.3 Exemplos e exercícios


A seguir iremos resolver diversos exercícios de validação de argumentos via regras de inferência.

Exemplo: Verifique a validade do seguinte argumento:

Se Carlos está com fome, então ele come.


Carlos dorme ou não come.
Carlos está acordado.
Portanto, Carlos não está com fome.

Podemos identificar as seguintes proposições:

• 𝑝: Carlos está com fome.

• 𝑞: Carlos come.

• 𝑟: Carlos está acordado.

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 → 𝑞, ¬𝑟 ∨ ¬𝑞, 𝑟 ⊢ ¬𝑝 (68)

43
A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑝→𝑞 Premissa
2. ¬𝑟 ∨ ¬𝑞 Premissa
3. 𝑟 Premissa
4. ¬𝑞 SD (2,3)
5. ¬𝑝 MT (1,4)

Exemplo: Verifique a validade do seguinte argumento:

Se o mercado de trabalho for uma meritocracia, então a pessoa mais qualificada sempre consegue o
emprego.
Mas a pessoa mais qualificada nem sempre consegue o emprego, se o networking desempenha um
papel relevante no mercado de trabalho.
Pesquisas apontam que de fato o networking desempenha um papel relevante no mercado.
Portanto, o mercado de trabalho não é uma meritocracia.

Podemos identificar as seguintes proposições:

• 𝑚: o mercado de trabalho é uma meritocracia.

• 𝑞: a pessoa mais qualificada sempre consegue o emprego.

• 𝑛: o networking desempenha um papel relevante no mercado.

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑚 → 𝑞, 𝑛 → ¬𝑞, 𝑛 ⊢ ¬𝑚 (69)

A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑚→𝑞 Premissa
2. 𝑛 → ¬𝑞 Premissa
3. 𝑛 Premissa
4. ¬𝑞 MP (2,3)
5. ¬𝑚 MT (1,4)

Portanto, o argumento é válido!

Exemplo: Verifique a validade do seguinte argumento:

𝑝 → 𝑞, (𝑝 ∧ 𝑞) → 𝑟, ¬(𝑝 ∧ 𝑟) ⊢ ¬𝑝 (70)

A seguir apresentamos uma prova formal da validade do argumento.

44
1. 𝑝→𝑞 Premissa
2. (𝑝 ∧ 𝑞) → 𝑟 Premissa
3. ¬(𝑝 ∧ 𝑟) Premissa
4. 𝑝 → (𝑝 ∧ 𝑞) Abs (1)
5. 𝑝→𝑟 SH (4, 2)
6. 𝑝 → (𝑝 ∧ 𝑟) Abs (5)
7. ¬𝑝 MT (3, 6)

Portanto, o argumento é válido!

Exemplo: Prove que o seguinte argumento é válido:

(𝑝 ∨ 𝑞) → 𝑟, (𝑟 ∨ 𝑞) → (𝑝 → (𝑠 ⇐⇒ 𝑡)), 𝑝 ∧ 𝑠 ⊢ 𝑠 ⇐⇒ 𝑡 (71)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑝 ∨ 𝑞) → 𝑟 Premissa
2. (𝑟 ∨ 𝑞) → (𝑝 → (𝑠 ⇐⇒ 𝑡)) Premissa
3. 𝑝∧𝑠 Premissa
4. 𝑝 Simp (3)
5. 𝑝∨𝑞 Adi (4)
6. 𝑟 MP (1, 5)
7. 𝑟∨𝑞 Adi (6)
8. (𝑝 → (𝑠 ⇐⇒ 𝑡)) MP (2, 7)
9. 𝑠 ⇐⇒ 𝑡 MP (4, 8)

Portanto, o argumento é válido!

Exemplo: Prove que o seguinte argumento é válido:

(𝑝 ∧ 𝑞) → 𝑟, 𝑟 → 𝑠, 𝑡 → ¬𝑢, 𝑡, ¬𝑠 ∨ 𝑢 ⊢ ¬𝑝 ∨ ¬𝑞 (72)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑝 ∧ 𝑞) → 𝑟 Premissa
2. 𝑟→𝑠 Premissa
3. 𝑡 → ¬𝑢 Premissa
4. 𝑡 Premissa
5. ¬𝑠 ∨ 𝑢 Premissa
6. ¬𝑢 MP (3, 4)
7. ¬𝑠 SD (5, 6)
8. ¬𝑟 MT (2, 7)
9. ¬(𝑝 ∧ 𝑞) MT (1, 8)
10. ¬𝑝 ∨ ¬𝑞 DM (9)

45
Portanto, o argumento é válido!

Exemplo: Prove que o seguinte argumento é válido:

(𝑝 → 𝑞) ∧ (𝑟 → 𝑠), 𝑡 → 𝑢, 𝑢 → 𝑣, ¬(𝑞 ∧ 𝑣) ⊢ ¬(𝑝 ∧ 𝑡) (73)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑝 → 𝑞) ∧ (𝑟 → 𝑠) Premissa
2. 𝑡→𝑢 Premissa
3. 𝑢→𝑣 Premissa
4. ¬(𝑞 ∧ 𝑣) Premissa
5. 𝑡→𝑣 SH (2, 3)
6. ¬𝑞 ∨ ¬𝑣 DM (4)
7. 𝑝→𝑞 Simp (1)
8. ¬𝑝 ∨ ¬𝑡 DD (5, 6, 7)
9. ¬(𝑝 ∧ 𝑡) DM (8)

Portanto, o argumento é válido!

Exemplo: Considere o seguinte argumento em linguagem natural:

Se as uvas caem, então a raposa as come.


Se a raposa as come, então as uvas estão maduras.
As uvas estão verdes ou elas caem.
Logo, a raposa come as uvas se e somente se as uvas caem.

Podemos identificar as seguintes proposições:

• 𝑝: as uvas caem.

• 𝑞: a raposa come as uvas.

• 𝑟: as uvas estão maduras.

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 → 𝑞, 𝑞 → 𝑟, ¬𝑟 ∨ 𝑝 ⊢ 𝑝 ⇐⇒ 𝑞 (74)

A seguir apresentamos uma prova formal da validade do argumento.

46
1. 𝑝→𝑞 Premissa
2. 𝑞→𝑟 Premissa
3. ¬𝑟 ∨ 𝑝 Premissa
4. 𝑟→𝑝 IC (3)
5. 𝑞→𝑟 SH (2, 4)
6. (𝑝 → 𝑞) ∧ (𝑞 → 𝑝) Conj (1, 5)
7. 𝑝 ⇐⇒ 𝑞 IE (6)

Portanto, o argumento é válido!

Exemplo: Prove a validade do argumento a seguir:

𝑝 ∨ ¬𝑞, ¬𝑞 → 𝑟, 𝑝 → 𝑠, ¬𝑟 ⊢ 𝑠 (75)

A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑝 ∨ ¬𝑞 Premissa
2. ¬𝑞 → 𝑟 Premissa
3. 𝑝→𝑠 Premissa
4. ¬𝑟 Premissa
5. 𝑞 MT (2, 4)
6. 𝑝 SD (1, 5)
7. 𝑠 MP (3, 6)

Portanto, o argumento é válido!

Exemplo: Prove a validade do argumento a seguir:

𝑝 → 𝑞, ¬𝑞 ∧ ¬𝑟, ¬𝑟 → ¬𝑠 ⊢ ¬(𝑝 ∨ 𝑠) (76)

A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑝→𝑞 Premissa
2. ¬𝑞 ∧ ¬𝑟 Premissa
3. ¬𝑟 → ¬𝑠 Premissa
4. ¬𝑞 Simp (2)
5. ¬𝑟 Simp (2)
6. ¬𝑠 MP (3, 5)
7. ¬𝑝 MT (1, 4)
8. ¬𝑝 ∧ ¬𝑠 Conj (6, 7)
9. ¬(𝑝 ∨ 𝑠) DM (8)

Portanto, o argumento é válido!

47
Exemplo: Considere o seguinte argumento em linguagem natural:

Se o universo é finito, então a vida é curta.


Se a vida vale a pena, então a vida é complexa.
Se a vida é curta ou complexa, então a vida tem sentido.
A vida não tem sentido.
Logo, não é verdade que o universo é finito ou a vida vale a pena.

Podemos identificar as seguintes proposições:

• 𝑢: o iniverso é finito.

• 𝑐: a vida é curta.

• 𝑣: a vida vale a pena.

• 𝑥: a vida é complexa.

• 𝑠: a vida tem sentido

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑢 → 𝑐, 𝑣 → 𝑥, (𝑐 ∨ 𝑥) → 𝑠, ¬𝑠 ⊢ ¬(𝑢 ∨ 𝑣) (77)

A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑢→𝑐 Premissa
2. 𝑣→𝑥 Premissa
3. (𝑐 ∨ 𝑥) → 𝑠 Premissa
4. ¬𝑠 Premissa
5. ¬(𝑐 ∨ 𝑥) MT (3, 4)
6. ¬𝑐 ∧ ¬𝑥 DM (5)
7. ¬𝑐 Simp (6)
8. ¬𝑥 Simp (6)
9. ¬𝑢 MT (1, 7)
10. ¬𝑣 MT (2, 8)
11. ¬𝑢 ∧ ¬𝑣 Conj (9, 10)
12. ¬(𝑢 ∨ 𝑣) DM (11)

Portanto, o argumento é válido!

Exemplo: Ao sair para a universidade de manhã, você percebe que não está usando os seus
óculos. Ao tentar descobrir onde estão os seus óculos, você se lembra dos seguintes fatos, que são
todos verdadeiros:

48
Se meus óculos estão na bancada da cozinha, então eu os vi durante o café da manhã.
Eu estava lendo o jornal na sala ou na cozinha.
Se eu estava lendo o jornal na sala, então meus óculos estão na mesinha de centro.
Eu não vi os meus óculos durante o café da manhã.
Se eu estava lendo um livro na cama, então meus óculos estão no criado mudo.
Se eu estava lendo o jornal na cozinha, então meus óculos estão na bancada da cozinha.

Podemos identificar as seguintes proposições:

• 𝑝: os óculos estão na bancada da cozinha.

• 𝑞: eu vi meus óculos durante o café da manhã.

• 𝑟: eu estava lendo o jornal na sala.

• 𝑠: eu estava lendo o jornal na cozinha.

• 𝑡: os óculos estão na mesinha de centro.

• 𝑢: eu estava lendo um livro na cama.

• 𝑣: meus óculos estão no criado-mudo.

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 → 𝑞, 𝑟 ∨ 𝑠, 𝑟 → 𝑡, ¬𝑞, 𝑢 → 𝑣, 𝑠 → 𝑝 ⊢ 𝑋 (78)

onde 𝑋 pode ser igual a 𝑝, 𝑡 ou 𝑣, dependendo de onde os óculos estavam. A pergunta é: podemos
chegar a alguma conclusão sobre 𝑋? A seguir apresentamos uma prova formal de que é possível
concluir que 𝑋 é 𝑡, ou seja, os óculos estão na mesinha de centro.

1. 𝑝 → 𝑞 Premissa
2. 𝑟 ∨ 𝑠 Premissa
3. 𝑟 → 𝑡 Premissa
4. ¬𝑞 Premissa
5. 𝑢 → 𝑣 Premissa
6. 𝑠 → 𝑝 Premissa
7. ¬𝑝 MT (1, 4)
8. ¬𝑠 MT (6, 7)
9. 𝑟 SD (2, 8)
10. 𝑡 MP (3, 9)

Como foi possível concluir 𝑡 a partir das premissas, então os óculos estão na mesinha de centro.

49
Exemplo: Prove a validade do seguinte argumento:

𝑝 → (𝑞 → ¬𝑟), 𝑟 ⊢ ¬𝑝 ∨ ¬𝑞 (79)

A seguir apresentamos uma prova formal da validade do argumento.

1. 𝑝 → (𝑞 → ¬𝑟) Premissa
2. 𝑟 Premissa
3. (𝑝 ∧ 𝑞) → ¬𝑟 Exp (1)
4. ¬¬𝑟 DN (2)
5. ¬(𝑝 ∧ 𝑞) MT (3, 4)
6. ¬𝑝 ∨ ¬𝑞 DM (5)

Portanto, o argumento é válido!

Exemplo: Prove a validade do seguinte argumento:

(¬𝑝 ∨ 𝑞) ∨ 𝑟, (𝑞 ∨ 𝑟) → 𝑠 ⊢ 𝑝 → 𝑠 (80)

A seguir apresentamos uma prova formal da validade do argumento.

1. (¬𝑝 ∨ 𝑞) ∨ 𝑟 Premissa
2. (𝑞 ∨ 𝑟) → 𝑠 Premissa
3. ¬𝑝 ∨ (𝑞 ∨ 𝑟) Assoc (1)
4. 𝑝 → (𝑞 ∨ 𝑟) IC (3)
5. 𝑝→𝑠 SH (4, 2)

Portanto, o argumento é válido!

Exemplo: Prove a validade do seguinte argumento:

¬𝑝 ∨ ¬𝑞, 𝑟 → 𝑝, 𝑞 ∨ ¬𝑠 ⊢ ¬𝑠 ∨ ¬𝑟 (81)

A seguir apresentamos uma prova formal da validade do argumento.

1. ¬𝑝 ∨ ¬𝑞 Premissa
2. 𝑟→𝑝 Premissa
3. 𝑞 ∨ ¬𝑠 Premissa
4. ¬𝑝 → ¬𝑟 CP (2)
5. ¬¬𝑞 ∨ ¬𝑠 DN (3)
6. ¬𝑞 → ¬𝑠 IC (5)
7. ¬𝑠 ∨ ¬𝑟 DC (1, 4, 6)

Portanto, o argumento é válido!

50
Exemplo: Prove a validade do seguinte argumento:

(𝑝 ∨ 𝑞) ∧ (𝑝 ∨ 𝑟), 𝑝 → 𝑠, 𝑞 → 𝑠, 𝑝 → 𝑡, 𝑟 → 𝑡 ⊢ 𝑠 ∧ 𝑡 (82)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑝 ∨ 𝑞) ∧ (𝑝 ∨ 𝑟) Premissa
2. 𝑝 → 𝑠 Premissa
3. 𝑞 → 𝑠 Premissa
4. 𝑝 → 𝑡 Premissa
5. 𝑟 → 𝑡 Premissa
6. 𝑝 ∨ 𝑞 Simp (1)
7. 𝑝 ∨ 𝑟 Simp (1)
8. 𝑠 ∨ 𝑠 DC (2, 3, 6)
9. 𝑠 Idemp (8)
10. 𝑡 ∨ 𝑡 DC (4, 5, 7)
11. 𝑡 Idemp (10)
12. 𝑠 ∧ 𝑡 Conj (9, 11)

Portanto, o argumento é válido!

Exemplo: Considere o seguinte argumento em linguagem natural:

O mordomo é inocente ou culpado.


Se o mordomo é inocente , então a testemunha mentiu.
Se o mordomo tem um cúmplice, então a testemunha não mentiu.
O mordomo tem um cúmplice, se a testemunha mentiu ou não.

Pergunta-se: o mordomo é inocente ou culpado? Prove sua resposta.


Podemos identificar as seguintes proposições:

• 𝑝: o mordomo é inocente.

• 𝑞: o mordomo é culpado.

• 𝑟: a testeminha mentiu.

• 𝑠: o mordomo tem um cúmplice.

Assim, podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 ∨ 𝑞, 𝑝 → 𝑟, 𝑠 → ¬𝑟, (𝑟 ∨ ¬𝑟) → 𝑠 ⊢ 𝑋 (83)

onde 𝑋 deve ser 𝑝 (o mordomo é inocente) ou 𝑞 (o mordomo é culpado). A pergunta é: podemos


chegar a alguma conclusão sobre 𝑋? A seguir apresentamos uma prova formal de que é possível
concluir que o mordomo é de fato culpado.

51
1. 𝑝∨𝑞 Premissa
2. 𝑝→𝑟 Premissa
3. 𝑠 → ¬𝑟 Premissa
4. (𝑟 ∨ ¬𝑟) → 𝑠 Premissa
5. 𝑇 →𝑠 Equiv (4)
6. 𝑠 Cond (5)
7. ¬𝑟 MP (3, 6)
8. ¬𝑝 MT (2, 7)
9. 𝑞 SD (1, 8)

Exemplo: Considere o seguinte argumento em linguagem natural:

Se chove, Ana Maria está em casa.


Se faz sol, Ana Maria está na praia.
Não é verdade que Ana Maria está em casa ou na praia.
Logo, não é verdade que chove ou faz sol.

Podemos identificar as seguintes proposições:

• 𝑝: chove.

• 𝑞: Ana Maria está em casa.

• 𝑟: faz sol.

• 𝑠: Ana Maria está na praia.

Podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 → 𝑞, 𝑟 → 𝑠, ¬(𝑞 ∨ 𝑠) ⊢ ¬(𝑝 ∨ 𝑟) (84)

1. 𝑝→𝑞 Premissa
2. 𝑟→𝑠 Premissa
3. ¬(𝑞 ∨ 𝑠) Premissa
4. ¬𝑞 ∧ ¬𝑠 DM (3)
5. ¬𝑞 Simp (4)
6. ¬𝑠 Simp (4)
7. ¬𝑝 MT (1, 5)
8. ¬𝑟 MT (2, 6)
9. ¬𝑝 ∧ ¬𝑟 Conj (7, 8)
10. ¬(𝑝 ∨ 𝑟) DM (9)

52
Exemplo: Prove a validade do seguinte argumento:

(𝑝 ∨ 𝑞) → ¬𝑟, 𝑠 → 𝑝, 𝑡 → 𝑞, 𝑠 ∨ 𝑡 ⊢ 𝑢 ∨ ¬𝑟 (85)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑝 ∨ 𝑞) → ¬𝑟 Premissa
2. 𝑠→𝑝 Premissa
3. 𝑡→𝑞 Premissa
4. 𝑠∨𝑡 Premissa
5. 𝑝∨𝑞 DC (2, 3, 4)
6. ¬𝑟 MP (1, 5)
7. 𝑢 ∨ ¬𝑟 Adição (6)

Portanto, o argumento é válido!

Exemplo: Prove a validade do seguinte argumento:

(𝑏 ∨ 𝑛) → 𝑝, (𝑝 ∧ 𝑔) → 𝑎, 𝑎 → 𝑐, 𝑛 ∧ ¬𝑐 ⊢ ¬𝑔 (86)

A seguir apresentamos uma prova formal da validade do argumento.

1. (𝑏 ∨ 𝑛) → 𝑝 Premissa
2. (𝑝 ∧ 𝑔) → 𝑎 Premissa
3. 𝑎→𝑐 Premissa
4. 𝑛 ∧ ¬𝑐 Premissa
5. ¬𝑐 Simp (4)
6. ¬𝑎 MT (3, 5)
7. ¬(𝑝 ∧ 𝑔) MT (2, 6)
8. ¬𝑝 ∨ ¬𝑔 DM (7)
9. 𝑛 Simp (4)
10. 𝑛∨𝑏 Adi (9)
11. 𝑏∨𝑛 Comut (10)
12. 𝑝 MP (1, 11)
13. ¬𝑔 SD (8, 12)

Portanto, o argumento é válido!

6.4 Considerações finais


A inferência lógica constitui o cerne da Lógica Matemática, sendo o mecanismo formal que per-
mite derivar conclusões a partir de premissas, garantindo a solidez e a validade do raciocínio. Ao
longo deste capítulo, exploramos os fundamentos teóricos e práticos que sustentam os processos in-

53
ferenciais, desde sistemas dedutivos clássicos, como a dedução natural e o cálculo de sequentes, até
abordagens modernas que integram lógicas não clássicas e aplicações computacionais.
Um dos pilares discutidos foi a importância da rigorosa definição de regras de inferência, que
assegura a integridade dos argumentos, evitando falácias e ambiguidades. Sistemas como o Modus
Ponens e o Silogismo Hipotético exemplificam como estruturas formais podem capturar a essência
do pensamento lógico, enquanto metateoremas como os de Soundness e Completude reforçam a
correlação entre sintaxe e semântica na validade das demonstrações.
Por fim, é crucial reconhecer que a inferência lógica, embora fundamentada em princípios imu-
táveis, continua a evoluir. Novas lógicas (como as modais, difusas ou paraconsistentes) expandem
as fronteiras do que pode ser formalizado, respondendo a demandas da filosofia, da ciência da com-
putação e da matemática pura. Assim, o estudo da inferência não apenas consolida o conhecimento
existente, mas também abre caminhos para investigações futuras, desafiando-nos a refinar nossas fer-
ramentas e a questionar os limites do raciocínio formal.
Este capítulo, portanto, não encerra o tema, mas convida o leitor a aprofundar-se nesse universo,
onde clareza, precisão e criatividade coexistem para desvendar os mistérios da verdade lógica.

54
7 Técnicas dedutivas
As técnicas dedutivas na lógica proposicional são métodos formais que permitem demonstrar a
validade de argumentos e a derivação de proposições a partir de premissas. Diferente da verificação
por tabelas-verdade, que é um processo exaustivo, as técnicas dedutivas seguem um conjunto de regras
bem definidas para construir sequências de inferências lógicas corretas.
O objetivo da dedução lógica é garantir que, se as premissas forem verdadeiras, a conclusão
também seja necessariamente verdadeira. Para isso, utilizamos técnicas para sistemas formais de
prova, como:

• Prova direta: sistemas de dedução natural baseados em regras de inferência como Modus
Ponens, Modus Tollens, Silogismo Hipotético, entre outras.

• Prova condicional: técnica para demonstrar argumentos em que a conclusão é uma condicio-
nal, ou seja, está na forma 𝑝 → 𝑞.

• Prova por redução ao absurdo: técnica baseada no conceito de contradição para demonstrar
a validade de argumentos.

Essas abordagens são amplamente utilizadas em matemática, ciência da computação e filosofia,


permitindo a construção de argumentos rigorosos e a fundamentação de sistemas lógicos mais avan-
çados. A seguir, exploraremos essas técnicas em maior profundidade, detalhando seus princípios e
aplicações.
Em sistemas axiomáticos, teorias são definidas com base em axiomas (conjunto de premissas
fundamentais), de modo que toda consequência lógica desses axiomas são teoremas válidos dessa
teoria.

Definição 16 Uma teoria é um conjunto de sentenças {𝑠1 , 𝑠2 , ..., 𝑠𝑛 } que é fechado sob a operação
de implicação lógica. Dado um subconjunto de sentenças {𝑠1 , 𝑠2 , ..., 𝑠𝑘 }, 𝑘 ≤ 𝑛, da teoria, se uma
sentença 𝑟 é uma consequência lógica de {𝑠1 , 𝑠2 , ..., 𝑠𝑘 }, então 𝑟 deve ser parte da teoria (teorema).

Definição 17 Uma teoria axiomática é dita completa se cada sentença válida na teoria pode ser
provada verdadeira ou falsa.

7.1 Prova direta


Mas o que é uma prova formal? Podemos definir uma prova formal como segue.

Definição 18 (Prova formal) Sejam 𝑃1 , 𝑃2 , ..., 𝑃𝑛 e 𝑄 fórmula válidas da lógica proposicional. Di-
zemos que uma dedução (ou prova formal) de 𝑄 a partir de 𝑃1 , 𝑃2 , ..., 𝑃𝑛 é uma sequência finita de
proposições 𝐶1 , 𝐶2 , ..., 𝐶𝑘 , se e somente se 𝐶𝑘 ≡ 𝑄 e:

• cada 𝐶𝑖 ̸= 𝐶𝑘 ≡ 𝑄 for uma premissa 𝑃𝑗 ; ou

55
• cada 𝐶𝑖 que não é uma premissa for derivada via regras de inferênci lógica; ou

• cada 𝐶𝑖 que não for uma premissa for obtida por uma equivalência lógica.

Em reumo, uma prova formal é um procedimento rigoroso e sistemático para prova de teoremas e
deduções de consequências lógicas. Dizemos que 𝑄 é um teorema, se é uma consequência lógica das
premissas 𝑃1 , 𝑃2 , ..., 𝑃𝑛 .

Exemplo: Prove que 𝑟 ∨ ¬𝑠 é um teorema da teoria a seguir:

𝑠 ∧ 𝑞, 𝑡 → ¬𝑞, ¬𝑡 → 𝑟 (87)

A seguir apresentamos uma prova formal do teorema.

1. 𝑠∧𝑞 Axioma
2. 𝑡 → ¬𝑞 Axioma
3. ¬𝑡 → 𝑟 Axioma
4. 𝑞 Simp (1)
5. ¬𝑡 MT (2, 4)
6. 𝑟 MP (3, 5)
7. 𝑟 ∨ ¬𝑠 Adição (6)

Portanto, a prova do teorema está concluída.

Exemplo: Prove que 𝑎 é um teorema da teoria a seguir:

¬𝑎 → 𝑐, 𝑐 → ¬𝑚, 𝑚 ∨ 𝑟, ¬𝑟 (88)

A seguir apresentamos uma prova formal do teorema.

1. ¬𝑎 → 𝑐 Axioma
2. 𝑐 → ¬𝑚 Axioma
3. 𝑚∨𝑟 Axioma
4. ¬𝑟 Axioma
5. ¬𝑎 → ¬𝑚 SH (1, 2)
6. 𝑚 SD (3, 4)
7. 𝑎 MT (5, 6)

Portanto, a prova do teorema está concluída.

Exemplo: Considere o seguinte argumento em linguagem natural:

56
Gabriel estuda ou não está cansado.
Se Gabriel estuda, então dorme tarde.
Gabriel não dorme tarde ou está cansado.
Logo, Gabriel está cansado se e somente se estuda.

Podemos identificar as seguintes proposições:

• 𝑝: Gabriel estuda.

• 𝑞: Gabriel está cansado.

• 𝑟: Gabriel dorme tarde.

Podemos escrever o argumento na linguagem da lógica proposicional como:

𝑝 ∨ ¬𝑞, 𝑝 → 𝑟, ¬𝑟 ∨ 𝑞 ⊢ 𝑝 ⇐⇒ 𝑞 (89)

1. 𝑝 ∨ ¬𝑞 Premissa
2. 𝑝→𝑟 Premissa
3. ¬𝑟 ∨ 𝑞 Premissa
4. 𝑟→𝑞 IC (3)
5. 𝑝→𝑞 SH (2, 4)
6. 𝑞→𝑝 IC (1)
7. (𝑝 → 𝑞) ∧ (𝑞 → 𝑝) Conj (5, 6)
8. 𝑝 ⇐⇒ 𝑞 IE (7)

Portanto, a prova do argumento está concluída.

7.2 Inconsistência
Uma teoria não pode ser inconsistente, uma vez que, se isso ocorrer, qualquer proposição pode ser
derivada como verdadeira, tornando o sistema trivial e inutilizável. Esse princípio é conhecido como
explosão lógica (Principium Explosionis).

Definição 19 Uma teoria axiomática é consistente se não é possível gerar uma contradição a partir
das sentenças na teoria.

No contexto da lógica proposicional, um argumento inconsistente é aquele que em que todas as


premissas não podem ser verdadeiras ao mesmo tempo.

Definição 20 Denomina-se de argumento inconsistente aquele em que suas premissas não podem
ser simultaneamente verdadeiras, ou seja, na tabela verdade não existe sequer uma linha na qual as
proposiçoes assumam valor lógico 𝑇 ao mesmo tempo.

57
Exemplo: Mostre que as proposições ¬(𝑝 ∨ ¬𝑞), 𝑝 ∨ ¬𝑟 e 𝑞 → 𝑟 inconsistentes.

𝑝 𝑞 𝑟 ¬𝑞 ¬𝑟 𝑝 ∨ ¬𝑞 ¬(𝑝 ∨ ¬𝑞) 𝑝 ∨ ¬𝑟 𝑞→𝑟

T T T F F T F T T
T T F F T T F T F
T F T T F T F T T
T F F T T T F T T
F T T F F F T F T
F T F F T F T T F
F F T T F T F F T
F F F T T T F T T

Note que não há nenhuma linha sequer da T.V. em que as 3 proposições ¬(𝑝 ∨ ¬𝑞), 𝑝 ∨ ¬𝑟 e 𝑞 → 𝑟
são conjuntamente verdadeiras. Isso signfica que esse conjunto de proposições á inconsistente. Se
uma teoria fosse baseada nessas 3 premissas, ela seria inconsistente.
Como sabemos, a construção de tabelas verdade não é um processo computacionalmente eficiente,
muito pelo contrário, uma vez que se o conjunto de proposições é definido em função de 𝑛 átomos, o
total de linhas será igual a 2𝑛 , o que é inviável até para valores pequenos de 𝑛.
Outra maneira de demonstrar que um conjunto de propsições {𝑃1 , 𝑃2 , ..., 𝑃𝑛 } é inconsistente é: se
a partir de {𝑃1 , 𝑃2 , ..., 𝑃𝑛 } for possível deduzir uma contradição qualquer, como por exemplo, 𝑝 ∧ ¬𝑝,
esse conjunto de proposições é inconsistentes.

Exemplo: Mostre que o conjunto de proposições {¬(𝑝 ∨ ¬𝑞), 𝑝 ∨ ¬𝑟, 𝑞 → 𝑟} é inconsistente.

1. ¬(𝑝 ∨ ¬𝑞) Premissa


2. 𝑝 ∨ ¬𝑟 Premissa
3. 𝑞→𝑟 Premissa
4. ¬𝑝 ∧ 𝑞 DM (1)
5. 𝑞 Simp (4)
6. 𝑟 MP (3, 6)
7. ¬𝑝 Simp (4)
8. ¬𝑟 SD (2, 7)
9. 𝑟 ∧ ¬𝑟 Conj (6, 8)

Note que chegamos à contradição 𝑟 ∧ ¬𝑟, o que significa que o conjunto de proposições é de fato
inconsistente.

Exemplo: Mostre que o conjunto de proposições {¬𝑝 ∨ ¬𝑞, 𝑝 ∧ 𝑠, ¬𝑠 ∨ 𝑟, 𝑟 → (𝑟 ∧ 𝑞)} é incon-


sistente.

58
1. ¬𝑝 ∨ ¬𝑞 Premissa
2. 𝑝 ∧ 𝑠 Premissa
3. ¬𝑠 ∨ 𝑟 Premissa
4. 𝑟 → (𝑟 ∧ 𝑞) Premissa
5. 𝑝 Simp (4)
6. 𝑠 Simp (4)
7. ¬𝑞 SD (1, 5)
8. 𝑟 SD (3, 6)
9. 𝑟 ∧ 𝑞 MP (4, 8)
10. 𝑞 Simp (9)
11. 𝑞 ∧ ¬𝑞 Conj (7, 10)

Note que chegamos à contradição 𝑞 ∧ ¬𝑞, o que significa que o conjunto de proposições é de fato
inconsistente.

7.3 Prova condicional


Uma maneira mais geral de provar uma conclusão na forma condicional 𝑝 → 𝑞 é colocar o
antecedente 𝑝 como hipótese e inferir logicamente o seu consequente 𝑞.
Pergunta: mas porque isso é válido? Iremos responder a essa pergunta a seguir.
Sabemos que se 𝑝 → 𝑞 é consequênvia lógica das premissas 𝑝1 , 𝑝2 , ..., 𝑝𝑛 , então:

(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) → (𝑝 → 𝑞) (90)

é uma tautologia. Empregando a equivalência lógica 𝑎 → 𝑏 ≡ ¬𝑎 ∨ 𝑏, temos que:

¬(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) ∨ (𝑝 → 𝑞) (91)

também é uma tautologia. Porém, isso equivale a:

¬(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) ∨ (¬𝑝 ∨ 𝑞) (92)

Mas pela propriedade associativa, temos:

(¬(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) ∨ ¬𝑝) ∨ 𝑞 (93)

Aplicando a lei de De Morgan ¬𝑎 ∨ ¬𝑏 ≡ ¬(𝑎 ∧ 𝑏), chega-se em:

¬((𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) ∧ 𝑝) ∨ 𝑞 (94)

o que, pela introdução da condicional, nos leva a:

(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ∧ 𝑝) → 𝑞 (95)

59
O resultado que acabamos de apresentar nos mostra que: se (𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) → (𝑝 → 𝑞) é uma
tautologia, então (𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ∧ 𝑝) → 𝑞 também é uma tautologia. Isso nos permite definir o
Teorema da dedução, como segue.

Teorema 6 (Teorema da dedução) Seja 𝑝1 , 𝑝2 , ..., 𝑝𝑛 um conjunto de premissas e 𝑝 → 𝑞 a conclusão


que desejamos provar. Então:

𝑝1 , 𝑝2 , ..., 𝑝𝑛 ⊨ 𝑝 → 𝑞 ⇐⇒ 𝑝1 , 𝑝2 , ..., 𝑝𝑛 , 𝑝 ⊨ 𝑞 (96)

ou seja, para provar uma condicional 𝑝 → 𝑞, podemos iintroduzir 𝑝 como hipótese (trabalhar no lado
direito da bicondicional), deduzir 𝑞 e no final da prova, descartar 𝑝, indicando que a hipótese pode
voltar para o antecedente da condicional (lado esquerdo da bicondicional).

Exemplo: Dado o conjunto de premissas {𝑏 → ¬𝑐, ¬(𝑑 ∧ ¬𝑏)}, prove 𝑐 → ¬𝑑.

1. 𝑏 → ¬𝑐 Premissa
2. ¬(𝑑 ∧ ¬𝑏) Premissa
3. 𝑐 Hip.
4. ¬𝑏 MT (1, 3)
5. ¬𝑑 ∨ 𝑏 DM (2)
6. ¬𝑑 SD (4, 5)
7. 𝑐 → ¬𝑑 Elim. Hip. (3)

Portanto, pelo Teorema da dedução, temos que 𝑐 → ¬𝑑 é consequência lógica das premissas.

Exemplo: Prove 𝑎 → 𝑏, dado o conjunto de premissas {(𝑎 ∨ 𝑗) → 𝑔, 𝑗 → (¬𝑔 ∧ ¬𝑗), 𝑗 ∨ 𝑏}.

1. (𝑎 ∨ 𝑗) → 𝑔 Premissa
2. 𝑗 → (¬𝑔 ∧ ¬𝑗) Premissa
3. 𝑗∨𝑏 Premissa
4. 𝑎 Hip.
5. 𝑎∨𝑗 Adi (4)
6. 𝑔 MP (1, 5)
7. 𝑔∨ℎ Adi (6)
8. ¬(¬(𝑔 ∨ ℎ)) DN (7)
9. ¬(¬𝑔 ∧ ¬ℎ) DM (8)
10. ¬𝑗 MT (2, 9)
11. 𝑏 SD (3, 10)
12. 𝑎→𝑏 Elim. Hip. (4)

Portanto, pelo Teorema da dedução, temos que 𝑎 → 𝑏 é consequência lógica das premissas.

Exemplo: Suponha que seu amigo machucou o tornozelo uma semana antes de uma grande
corrida e sua intenção seja persuadí-lo a parar de correr por alguns dias, a fim de que o seu tornozelo

60
melhore. Você pode alertá-lo fazendo a seguinte afirmação condicional: Se você continuar a correr,
não estará apto a disputar a corrida. A resposta de seu amigo pode ser: prove isso!
Você então elabora o argumento com base em 3 suposições:
• Seu tornozelo está muito inchado.

• Se seu tornozelo está muito inchado e você continuar a correr, então seu tornozelo não irá sarar
em uma semana.

• Se seu tornozelo não sarar em uma semana, então você não estará apto a disputar a corrida.
Prove a validade do argumento usando:
a) Uma prova condicional invocando o Teorema da dedução.
b) Uma prova direta, sem invocar o Teorema da dedução.
Primeiramente, devemos escrever o argumento na linguagem da lógica proposicional:
• 𝑝: seu tornozelo está muito inchado.

• 𝑞: você continua a correr.

• 𝑟: seu tornozelo irá sarar em uma semana.

• 𝑠: você está apto a disputar a corrida.


De acordo com a nossa definição, o argumento pode ser expresso como:

𝑝, (𝑝 ∧ 𝑞) → ¬𝑟, ¬𝑟 → ¬𝑠 ⊢ 𝑞 → ¬𝑠 (97)

Utilizando a prova condicional, temos a seguinte dedução:

1. 𝑝 Premissa
2. (𝑝 ∧ 𝑞) → ¬𝑟 Premissa
3. ¬𝑟 → ¬𝑠 Premissa
4. 𝑞 Hip.
5. 𝑝∧𝑞 Conj (1, 4)
6. ¬𝑟 MP (2, 5)
7. ¬𝑠 MP (3, 6)
8. 𝑞 → ¬𝑠 Elim. Hip. (4)

Sem a utilização da prova condicional, temos a seguinte dedução:

1. 𝑝 Premissa
2. (𝑝 ∧ 𝑞) → ¬𝑟 Premissa
3. ¬𝑟 → ¬𝑠 Premissa
4. 𝑝 → (𝑞 → ¬𝑟) Exp (2)
5. 𝑞 → ¬𝑟 MP (1, 4)
6. 𝑞 → ¬𝑠 SH (5, 3)

61
Portanto, demonstramos que o argumento é válido de duas maneiras distintas: com e sem a apli-
cação da prova condicional via o Teorema da dedução.

Exemplo: Demonstre a lei da exportação, ou seja:

(𝑝 ∧ 𝑞) → 𝑟 ⊢ 𝑝𝑡𝑜(𝑞 → 𝑟) (98)

1. (𝑝 ∧ 𝑞) → 𝑟 Premissa
2. 𝑝 Hip.
3. 𝑞 Hip.
4. 𝑝∧𝑞 Conj (2, 3)
5. 𝑟 MP (1, 4)
6. 𝑞→𝑟 Elim. Hip. (3)
7. 𝑝 → (𝑞 → 𝑟) Elim. Hip. (2)

Portanto, pelo Teorema da dedução, temos que 𝑝 → (𝑞 → 𝑟) é consequência lógica de (𝑝∧𝑞) → 𝑟.

7.4 Prova por redução ao absurdo


Suponha que desejamos mostrar a validade do argumento a seguir:

𝑝1 , 𝑝2 , ..., 𝑝𝑛 ⊢ 𝑞 (99)

Então, basta mostrar que (𝑝1 ∧𝑝2 ∧...∧𝑝𝑛 ) → 𝑞 é uma tautologia. Mas, por algumas equivalências
lógicas, sabemos que:

𝑞 ≡ 𝑞 ∨ 𝑞 ≡ ¬¬𝑞 ∨ 𝑞 ≡ ¬𝑞 → 𝑞 (100)

ou seja, a proposição a seguir também é uma tautologia:

(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) → (¬𝑞 → 𝑞) (101)

Mas, pelo Teorema da dedução, a inclusão de ¬𝑞 como hipótese nos permite deduzir 𝑞, o que
implica em dizer que:

(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ∧ ¬𝑞) → 𝑞 (102)

também é uma tautologia!


Portanto, se introduzirmos a negação da conclusão ¬𝑞 como premissa provisória e ainda conse-
guirmos deduzir q, geramos uma contradição 𝑞 ∧ ¬𝑞. Essa é a ideia da prova por redução ao absurdo,
também conhecida como prova por contradição.

62
Exemplo: Prove 𝑟 por redução ao absurdo, dado {¬𝑝 → 𝑟, ¬𝑟 → 𝑞, ¬(𝑝 ∧ 𝑞)}.

1. ¬𝑝 → 𝑟 Premissa
2. ¬𝑟 → 𝑞 Premissa
3. ¬(𝑝 ∧ 𝑞) Premissa
4. ¬𝑟 PP
5. 𝑞 MP (2, 4)
6. ¬𝑝 ∨ ¬𝑞 DM (3)
7. ¬¬𝑞 DN (5)
8. ¬𝑝 SD (6, 7)
9. 𝑟 MP (1, 8)
10. 𝑟 ∧ ¬𝑟 Conj (4, 9)

Portanto, pelo prova por redução ao absurdo, temos que 𝑟 é consequência lógica das premissas.
Uma observação importante é que nem sempre a contradição envolve diretamente a proposição 𝑟 e
sua negação, ou seja, ao adicionar ¬𝑟 como premissa provisória, podemos chegar em uma contradição
que envolve 𝑝 e ¬𝑝 e mesmo assim a prova por redução terminará com sucesso.

Exemplo: Prove ¬𝑝 por redução ao absurdo, dado o conjunto de premissas {¬𝑞 ∨ 𝑟, 𝑝 → ¬𝑟, 𝑞}.
1. ¬𝑞 ∨ 𝑟 Premissa
2. 𝑝 → ¬𝑟 Premissa
3. 𝑞 Premissa
4. 𝑝 PP
5. ¬𝑟 MP (2, 4)
6. ¬𝑞 SD (1, 5)
7. 𝑞 ∧ ¬𝑞 Conj (3, 6)
8. ¬𝑝 RA

Exemplo: Verifique, utilizando redução ao absurdo, a validade do argumento:

𝑝 ⇐⇒ ¬𝑞 ⊢ ¬(𝑝 ∧ 𝑞) (103)

1. 𝑝 ⇐⇒ ¬𝑞 Premissa
2. ¬(¬(𝑝 ∧ 𝑞)) PP
3. 𝑝∧𝑞 DN (2)
4. 𝑝 Simp (3)
5. 𝑞 Simp (3)
6. (𝑝 → ¬𝑞) ∧ (¬𝑞 → 𝑝) Bicond. (1)
7. (𝑝 → ¬𝑞) Simp (6)
8. ¬𝑞 MP (4, 7)
9. 𝑞 ∧ ¬𝑞 Conj (5, 8)
10. ¬(𝑝 ∧ 𝑞) RA

63
Exemplo: Prove o argumento a seguir utilizando redução ao absurdo:

¬𝑠 ⇐⇒ (¬𝑝 ∨ ¬𝑣), 𝑣 ∧ 𝑝 ⊢ 𝑠 (104)

1. ¬𝑠 ⇐⇒ (¬𝑝 ∨ ¬𝑣) Premissa


2. 𝑣∧𝑝 Premissa
3. ¬𝑠 Hip.
4. (¬𝑠 → (¬𝑝 ∨ ¬𝑣)) ∧ ((¬𝑝 ∨ ¬𝑣) → ¬𝑠) IE (1)
5. ¬𝑠 → (¬𝑝 ∨ ¬𝑣) Simp (4)
6. ¬𝑝 ∨ ¬𝑣 MP (3, 5)
7. ¬(𝑝 ∧ 𝑣) DM (6)
8. 𝑝∧𝑣 Comut. (2)
9. (𝑝 ∧ 𝑣) ∧ ¬(𝑝 ∧ 𝑣) Conj(7, 8)
10. 𝑠 RA

Exemplo: Demonstre o argumento a seguir utilizando prova condicional e prova por redução ao
absurdo:

¬𝑝 ∨ 𝑞, ¬𝑞, ¬𝑟 → 𝑠, ¬𝑝 → (𝑠 → ¬𝑡) ⊢ 𝑡 → 𝑟 (105)

Pelo Teorema da dedução, podemos escrever o argumento como:

¬𝑝 ∨ 𝑞, ¬𝑞, ¬𝑟 → 𝑠, ¬𝑝 → (𝑠 → ¬𝑡), 𝑡 ⊢ 𝑟 (106)

Empregando a prova por redução ao absurdo, temos a seguinte dedução:

1. ¬𝑝 ∨ 𝑞 Premissa
2. ¬𝑞 Premissa
3. ¬𝑟 → 𝑠 Premissa
4. ¬𝑝 → (𝑠 → ¬𝑡) Premissa
5. 𝑡 Hip.
6. ¬𝑟 PP
7. ¬𝑝 SD (1, 2)
8. 𝑠 → ¬𝑡 MP (4, 7)
9. 𝑠 MP (3, 6)
10. ¬𝑡 MP (8, 9)
11. 𝑡 ∧ ¬𝑡 Conj (5, 10)
12. 𝑟 RA
13. 𝑡→𝑟 Elim. Hip. (5)

64
8 O método do tableaux analítico
As tabelas verdade são um método semântico poderoso para a validação de argumentos na lógica
proposicional, mas possui um grande problema: são altamente ineficientes. O método do tableaux
analítico também é semântico, mas, em geral, é mais eficiente para fórmulas com muitas variáveis ou
estrutura complexa. Enquanto as tabelas verdade são úteis para fins didáticos ou fórmulas pequenas,
os tableaux destacam-se em aplicações reais onde a eficiência computacional é crítica.
O método do tableaux analítico (ou tableaux semântico) é uma técnica de prova formal na ló-
gica proposicional que utiliza uma estrutura de árvore para verificar a validade de argumentos ou a
satisfatibilidade de fórmulas. Esse método opera decompondo sistematicamente fórmulas em seus
componentes mais simples, seguindo regras de expansão que refletem a semântica dos conectivos ló-
gicos. Cada ramo da árvore representa uma possível interpretação das fórmulas, e o fechamento de
todos os ramos indica que a fórmula inicial é uma contradição.
Este método destaca-se por sua clareza visual e abordagem semântica, sendo uma ferramenta
poderosa tanto para ensino quanto para aplicações práticas em ciência da computação. Enquanto
métodos baseados em regras de inferência enfatizam a sintaxe e a construção de provas, os tableaux
oferecem uma perspectiva complementar, focada na análise de modelos e contradições.
O método do tableaux analítico para provar que um argumento é válido é uma técnica baseada
em uma árvore de refutação. Cada fórmula 𝛼 é antecedida por 𝑠 : para significar que ela deve ser
satisfeita, ou por 𝑓 : para significar que ela deve ser falseada. Esse método é baseado em um conjunto
de regras semânticas baseadas nos operadores lógicos ¬, ∧, ∨, → e ⇐⇒ .

8.1 Regras semânticas do operador negação


Essa simples regra nos diz que para satisfazer ¬𝛼 devemos falsear 𝛼 e para falsear ¬𝛼 devemos
satisfazer 𝛼. Em notação matemática, temos:
𝑠 : ¬𝛼 𝑓 : ¬𝛼
(107) (108)
𝑓 :𝛼 𝑠:𝛼

8.2 Regras semâncias do operador conjunção


Essa regra nos diz que para satisfazer 𝛼 ∧ 𝛽 devemos satisfazer 𝛼 e 𝛽 simultaneamente e para
falsear 𝛼 ∧ 𝛽 devemos falsear 𝛼 ou 𝛽, gerando uma ramificação na árvore de refutação.
𝑠:𝛼∧𝛽
𝑓 :𝛼∧𝛽
𝑠:𝛼 (109) (110)
𝑓 :𝛼|𝑓 :𝛽
𝑠:𝛽

8.3 Regras semâncias do operador disjunção


Essa regra nos diz que para satisfazer 𝛼 ∨ 𝛽 devemos satisfazer 𝛼 ou 𝛽, gerando uma ramificação
na árvore de refutação e para falsear 𝛼 ∨ 𝛽 devemos falsear 𝛼 e 𝛽 simultaneamente.

65
𝑓 :𝛼∨𝛽
𝑠:𝛼∨𝛽
(111) 𝑓 :𝛼 (112)
𝑠:𝛼|𝑠:𝛽
𝑓 :𝛽

8.4 Regras semâncias do operador condicional


Essa regra nos diz que para satisfazer 𝛼 → 𝛽 devemos falsear 𝛼 ou satisfazer 𝛽, gerando uma
ramificação na árvore de refutação e para falsear 𝛼 → 𝛽 devemos satisfazer 𝛼 e falsear 𝛽 simultanea-
mente.
𝑓 :𝛼→𝛽
𝑠:𝛼→𝛽
(113) 𝑠:𝛼 (114)
𝑓 :𝛼|𝑠:𝛽
𝑓 :𝛽

8.5 Regras semâncias do operador bicondicional


Essa regra nos diz que para satisfazer 𝛼 ⇐⇒ 𝛽 devemos satisfazer 𝛼 e 𝛽 simultaneamente ou
falsear 𝛼 e 𝛽 simultaneamente, gerando uma ramificação na árvore de refutação. Para falsear 𝛼 ⇐⇒
𝛽 devemos satisfazer 𝛼 e falsear 𝛽 simultaneamente ou falsear 𝛼 e satisfazer 𝛽 simultaneamente,
gerando uma ramificação na árvore de refutação.
𝑠 : 𝛼 ⇐⇒ 𝛽 𝑓 : 𝛼 ⇐⇒ 𝛽
𝑠:𝛼 𝑓 :𝛼 (115) 𝑠:𝛼 𝑓 :𝛼 (116)
𝑠:𝛽 𝑓 :𝛽 𝑓 :𝛽 𝑠:𝛽

Um tableaux analítico é uma árvore de refutação cujo processo de construção é top-down, ou seja,
iniciamos em um nó raiz e a partir da aplicação das regras semânticas vamos ramificando a árvore.
Um ramo fechado de um tableaux é um ramo que contém uma fórmula 𝛼 e sua negação ¬𝛼. Um
tableaux fechado é aquele em que todos os ramos são fechados.
A intuição do método do tableaux analítico é que se uma formula 𝛼 é uma tautologia, então sua ne-
gação ¬𝛼 é uma contradição. Sabemos que em um argumento válido na sua forma condicional é uma
tautologia, portanto, a negação de um argumento válido na sua forma condicional é uma contradição,
ou seja, deve existir um tableaux fechado para ele.

Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento:

𝑝 ⇐⇒ (¬𝑞 ∨ 𝑟) ⊢ ¬𝑝 → 𝑞 (117)

Para isso devemos encontrar um tableaux fechado que falseie o argumento na forma condicio-
nal (falsear uma tautologia, gera uma contradição), ou seja, devemos iniciar a árvore de refutação
falseando a fórmula:

(𝑝 ⇐⇒ (¬𝑞 ∨ 𝑟)) → (¬𝑝 → 𝑞) (118)

66
1. 𝑓 : (𝑝 ⇐⇒ (¬𝑞 ∨ 𝑟)) → (¬𝑝 → 𝑞)
2. 𝑠 : 𝑝 ⇐⇒ (¬𝑞 ∨ 𝑟) (1)
3. 𝑓 : ¬𝑝 → 𝑞 (1)
4. 𝑠 : ¬𝑝 (3)
5. 𝑓 :𝑞 (3)
6. 𝑓 :𝑝 (4)

7. 𝑠:𝑝 𝑓 :𝑝 (2)
8. 𝑠 : ¬𝑞 ∨ 𝑟 𝑓 : ¬𝑞 ∨ 𝑟
9. ⊗ 𝑓 : ¬𝑞 (8)
10. 𝑓 :𝑟 (8)

Como ambos os ramos do tableaux estão fechados, a conclusão é de que o argumento é válido.
Uma observação relevante é que, para gerar um tableaux mais conciso, recomenda-se dar prioridade
as regras que não causam bifurcação nos ramos atuais.

Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento:

𝑝 → 𝑞, ¬𝑝 → 𝑟, ¬𝑞 ⊢ 𝑟 (119)

Para isso devemos encontrar um tableaux fechado que falseie o argumento na forma condicio-
nal (falsear uma tautologia, gera uma contradição), ou seja, devemos iniciar a árvore de refutação
falseando a fórmula:

((𝑝 → 𝑞) ∧ (¬𝑝 → 𝑟) ∧ ¬𝑞) → 𝑟 (120)

1. 𝑓 : ((𝑝 → 𝑞) ∧ (¬𝑝 → 𝑟) ∧ ¬𝑞) → 𝑟


2. 𝑠 : (𝑝 → 𝑞) ∧ (¬𝑝 → 𝑟) ∧ ¬𝑞 (1)
3. 𝑓 :𝑟 (1)
4. 𝑠 : ¬𝑟 (3)
5. 𝑠:𝑝→𝑞 (2)
6. 𝑠 : ¬𝑝 → 𝑟 (2)
7. 𝑠 : ¬𝑞 (2)

8. 𝑓 :𝑝 𝑠:𝑞 (4)

9. 𝑓 : ¬𝑝 𝑠:𝑟 (5)
⊗ ⊗

67
Como todos os ramos do tableaux estão fechados, a conclusão é de que o argumento é válido.

Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento:

𝑝 → 𝑞, (𝑝 ∧ 𝑞) → 𝑟, ¬(𝑝 ∧ 𝑟) ⊢ ¬𝑝 (121)

Para isso devemos encontrar um tableaux fechado que falseie o argumento na forma condicio-
nal (falsear uma tautologia, gera uma contradição), ou seja, devemos iniciar a árvore de refutação
falseando a fórmula:

((𝑝 → 𝑞) ∧ ((𝑝 ∧ 𝑞) → 𝑟) ∧ ¬(𝑝 ∧ 𝑟)) → ¬𝑝 (122)

1. 𝑓 : ((𝑝 → 𝑞) ∧ ((𝑝 ∧ 𝑞) → 𝑟) ∧ ¬(𝑝 ∧ 𝑟)) → ¬𝑝


2. 𝑠 : ((𝑝 → 𝑞) ∧ ((𝑝 ∧ 𝑞) → 𝑟) ∧ ¬(𝑝 ∧ 𝑟)) (1)
3. 𝑓 : ¬𝑝 (1)
4. 𝑠:𝑝→𝑞 (2)
5. 𝑠 : (𝑝 ∧ 𝑞) → 𝑟 (2)
6. 𝑠:𝑝 (3)
7. 𝑠 : ¬(𝑝 ∧ 𝑟) (2)

8. 𝑓 :𝑝 𝑠:𝑞 (4)

9. 𝑓 :𝑝∧𝑞 𝑠:𝑟 (5)

10. 𝑓 :𝑝 𝑓 :𝑞 (9)
11. ⊗ ⊗ |
12. 𝑓 :𝑝∧𝑟 (7)

13. 𝑓 :𝑝 𝑓 :𝑟
⊗ ⊗

Como todos os ramos do tableaux estão fechados, a conclusão é de que o argumento é válido.
Podemos adotar uma notação simplificada alternativa, sem a necessidade dos prefixos 𝑠 : e 𝑓 :, a
partir das seguintes definições:

• o prefixo 𝑠 : é descartado.

• o prefixo 𝑓 : é substituído pela negação ¬ (pois para falsear 𝛼, basta satisfazer ¬𝛼).

Dessa forma, as regras semânticas são ajustadas para uma nova notação. A seguir apresentamos
as novas regras semânticas modificadas.

68
1. Negação: Essa simples regra nos diz que para satisfazer ¬¬𝛼 devemos satisfazer 𝛼.

¬¬𝛼
(123)
𝛼

2. Conjunção: Essas regras nos dizem que para satisfazer 𝛼 ∧ 𝛽, devemos satisfazer ambos 𝛼 e 𝛽
simultaneamente, e para satisfazer ¬(𝛼 ∧ 𝛽), basta satisfazer ¬𝛼 ou ¬𝛽.

𝛼∧𝛽
¬(𝛼 ∧ 𝛽)
𝛼 (124) (125)
¬𝛼 | ¬𝛽
𝛽

3. Disjunção: Essas regras nos dizem que para satisfazer 𝛼 ∨ 𝛽, devemos satisfazer 𝛼 ou 𝛽, e para
satisfazer ¬(𝛼 ∨ 𝛽) devemos satisfazer ¬𝛼 e ¬𝛽 simultaneamente.

¬(𝛼 ∨ 𝛽)
𝛼∨𝛽
(126) ¬𝛼 (127)
𝛼|𝛽
¬𝛽

4. Condicional: Essas regras nos dizem que para satisfazer 𝛼 → 𝛽, basta satisfazer ¬𝛼 ou 𝛽 e
para satisfazer ¬(𝛼 → 𝛽) devemos satisfazer 𝛼 e ¬𝛽 simultaneamente.

¬(𝛼 → 𝛽)
𝛼→𝛽
(128) 𝛼 (129)
¬𝛼 | 𝛽
¬𝛽

5. Bicondicional: Essas regras nos dizem que para satisfazer 𝛼 ⇐⇒ 𝛽 devemos satisfazer 𝛼
e 𝛽 simultaneamente ou satisfazer ¬𝛼 e ¬𝛽 simultaneamente, e para satisfazer ¬(𝛼 ⇐⇒ 𝛽)
devemos satisfazer 𝛼 e ¬𝛽 simultaneamente ou satisfazer ¬𝛼 e 𝛽 simultaneamente.

𝛼 ⇐⇒ 𝛽 ¬(𝛼 ⇐⇒ 𝛽)
𝛼 ¬𝛼 (130) 𝛼 ¬𝛼 (131)
𝛽 ¬𝛽 ¬𝛽 𝛽

Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento (regra Silo-
gismo Hipotético):

𝑝 → 𝑞, 𝑞 → 𝑟 ⊢ 𝑝 → 𝑟 (132)

Para isso devemos encontrar um tableaux fechado para a negação do argumento na forma condi-
cional, ou seja, devemos iniciar a árvore de refutação com a negação da seguinte fórmula:

((𝑝 → 𝑞) ∧ (𝑞 → 𝑟)) → (𝑝 → 𝑟) (133)

69
1. ¬(((𝑝 → 𝑞) ∧ (𝑞 → 𝑟)) → (𝑝 → 𝑟))
2. (𝑝 → 𝑞) ∧ (𝑞 → 𝑟) (1)
3. ¬(𝑝 → 𝑟) (1)
4. 𝑝→𝑞 (2)
5. 𝑞→𝑟 (2)
6. 𝑝 (3)
7. ¬𝑟 (3)

8. ¬𝑝 𝑞 (4)

9. ¬𝑞 𝑟 (5)
⊗ ⊗

Como todos os ramos do tableaux estão fechados, o argumento é válido. Essa é uma possível
demonstração para a regra de inferência Silogismo Hipotético sem utilizar tabelas verdade.
Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento (Lei da Expor-
tação):

𝑝 → (𝑞 → 𝑟) ⊢ (𝑝 ∧ 𝑞) → 𝑟 (134)

Para isso devemos encontrar um tableaux fechado para a negação do argumento na forma condi-
cional, ou seja, devemos iniciar a árvore de refutação com a negação da seguinte fórmula:

(𝑝 → (𝑞 → 𝑟)) → ((𝑝 ∧ 𝑞) → 𝑟) (135)

1. ¬((𝑝 → (𝑞 → 𝑟)) → ((𝑝 ∧ 𝑞) → 𝑟))


2. 𝑝 → (𝑞 → 𝑟) (1)
3. ¬((𝑝 ∧ 𝑞) → 𝑟) (1)
4. 𝑝∧𝑞 (3)
5. ¬𝑟 (3)
6. 𝑝 (4)
7. 𝑞 (4)

8. ¬𝑝 𝑞→𝑟 (2)
9. ⊗ ¬𝑞 (8)
10. 𝑟 (8)

Como todos os ramos do tableaux estão fechados, o argumento é válido. Essa é uma possível
demonstração para Lei da Exportação sem utilizar tabelas verdade.

70
Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento (Regra Dilema
Destrutivo):

𝑝 → 𝑞, 𝑟 → 𝑠, ¬(𝑞 ∨ 𝑠) ⊢ ¬(𝑝 ∨ 𝑟) (136)

Para isso devemos encontrar um tableaux fechado para a negação do argumento na forma condi-
cional, ou seja, devemos iniciar a árvore de refutação com a negação da seguinte fórmula:

((𝑝 → 𝑞) ∧ (𝑟 → 𝑠) ∧ ¬(𝑞 ∨ 𝑠)) → ¬(𝑝 ∨ 𝑟) (137)

1. ¬(((𝑝 → 𝑞) ∧ (𝑟 → 𝑠) ∧ ¬(𝑞 ∨ 𝑠)) → ¬(𝑝 ∨ 𝑟))


2. (𝑝 → 𝑞) ∧ (𝑟 → 𝑠) ∧ ¬(𝑞 ∨ 𝑠) (1)
3. 𝑝∨𝑟 (1)
4. 𝑝→𝑞 (2)
5. 𝑟→𝑠 (2)
6. ¬(𝑞 ∨ 𝑠) (2)
7. ¬𝑞 (6)
8. ¬𝑠 (6)

9. ¬𝑝 𝑞 (4)

10. 𝑝 𝑟 (3)

11. ¬𝑟 𝑠 (5)
⊗ ⊗

Exemplo: Utilizando o método do tableaux analítico, prove o seguinte argumento em linguagem


natural:
Se o time joga bem, ganha o campeonato.
Se o time não joga bem, o técnico é o culpado.
Se o time ganha o campeonato, os torcedores ficam contentes.
Os torcedores não estão contentes.
Logo, o técnico é o culpado.

Primeiramente, devemos escrever o argumento na linguagem da lógica proposicional:

• 𝑗: o time joga bem.

• 𝑔: o time ganha o campeonato.

• 𝑐: o técnico é culpado.

71
• 𝑡: os torcedores ficam contentes.

De acordo com a nossa definição, o argumento pode ser expresso como:

𝑗 → 𝑔, ¬𝑗 → 𝑐, 𝑔 → 𝑡, ¬𝑡 ⊢ 𝑐 (138)

Para isso devemos encontrar um tableaux fechado para a negação do argumento na forma condi-
cional, ou seja, devemos iniciar a árvore de refutação com a negação da seguinte fórmula:

((𝑗 → 𝑔) ∧ (¬𝑗 → 𝑐) ∧ (𝑔 → 𝑡) ∧ ¬𝑡) → 𝑐 (139)

1. ¬(((𝑗 → 𝑔) ∧ (¬𝑗 → 𝑐) ∧ (𝑔 → 𝑡) ∧ ¬𝑡) → 𝑐)


2. (𝑗 → 𝑔) ∧ (¬𝑗 → 𝑐) ∧ (𝑔 → 𝑡) ∧ ¬𝑡 (1)
3. ¬𝑐 (1)
4. 𝑗→𝑔 (2)
5. ¬𝑗 → 𝑐 (2)
6. 𝑔→𝑡 (2)
7. ¬𝑡 (2)

8. ¬𝑔 𝑡 (6)

9. ¬𝑗 𝑔 (4)

10. 𝑗 𝑐 (5)
⊗ ⊗

Como todos os ramos do tableaux estão fechados, o argumento é válido.

8.6 Considerações finais


O método dos tableaux analíticos representa uma contribuição fundamental para a Lógica Ma-
temática, especialmente no estudo da lógica proposicional. Ao longo deste capítulo, exploramos
sua estrutura, mecanismos e aplicações, evidenciando como essa técnica combina elegância formal e
utilidade prática. Sua importância reside não apenas na capacidade de verificar validade e satisfati-
bilidade, mas também na maneira como ilustra a relação entre sintaxe e semântica, oferecendo uma
ponte entre a teoria e a interpretação concreta das fórmulas lógicas.
Uma das principais distinções entre o método dos tableaux e os sistemas de dedução baseados em
regras de inferência (como a dedução natural ou o cálculo de Hilbert) está na direção da análise. En-
quanto os tableaux operam por redução ao absurdo — decompondo a negação da conclusão em busca
de contradições —, as regras de inferência constroem provas de modo construtivo, derivando a con-
clusão passo a passo a partir das premissas. Essa diferença reflete-se na estrutura das demonstrações:

72
os tableaux organizam-se em árvores ramificadas, que explicitam possíveis cenários semânticos, en-
quanto os sistemas de regras seguem uma sequência linear, priorizando a correção sintática de cada
passo.
Outro contraste relevante é o foco metodológico. Os tableaux analíticos são essencialmente se-
mânticos, pois vinculam-se diretamente à noção de modelos e interpretações. Cada ramo aberto, por
exemplo, corresponde a um modelo possível para as fórmulas analisadas, enquanto o fechamento de
todos os ramos indica insatisfatibilidade. Já as regras de inferência são sintáticas, preocupando-se
com a manipulação simbólica das fórmulas, independentemente de seu significado. Essa dualidade
enriquece o estudo da lógica, permitindo abordar problemas sob perspectivas complementares: os ta-
bleaux são ideais para identificar contraexemplos e explorar cenários, enquanto as regras de inferência
destacam-se na construção explícita de argumentos válidos.
Além disso, o método dos tableaux demonstra-se particularmente eficaz em contextos pedagógi-
cos e computacionais. Sua natureza visual e algorítmica facilita a compreensão de conceitos como
contradição e consistência, sendo amplamente utilizado em ferramentas de automação de provas. Em
contrapartida, sistemas baseados em regras de inferência são mais adequados para formalizações rigo-
rosas e para o estudo de metateoremas (como completude e correção), já que espelham a arquitetura
axiomática da lógica.
Por fim, é importante ressaltar que essas abordagens não são rivais, mas complementares. En-
quanto os tableaux revelam a "anatomia" das contradições, os métodos dedutivos tradicionais ex-
põem a "engrenagem" interna das demonstrações. Dominar ambas as técnicas permite ao estudante
não apenas resolver problemas de maneira versátil, mas também desenvolver uma visão crítica sobre
os limites e as potencialidades da lógica formal.
Este capítulo, ao desvendar os tableaux analíticos, convida o leitor a reconhecer a pluralidade de
métodos que sustentam a Lógica Matemática. Cada técnica, com suas particularidades, reforça que a
busca pela verdade lógica é tanto uma ciência quanto uma arte — onde clareza, criatividade e rigor
se entrelaçam para desvendar os fundamentos do raciocínio válido.

73
9 Prova por resolução
A prova por resolução é um método de inferência fundamental na lógica proposicional, ampla-
mente utilizado em sistemas automatizados de demonstração de teoremas e em aplicações práticas
como verificação formal e inteligência artificial. Desenvolvida por John Alan Robinson em 1965,
a resolução baseia-se na ideia de simplificar fórmulas lógicas combinando cláusulas (disjunções de
literais) que contenham literais complementares (por exemplo, 𝑎 e ¬𝑎), gerando novas cláusulas até
que se derive uma contradição explícita (cláusula vazia).
Sua relevância reside na eficiência algorítmica e na completude: qualquer contradição expressa na
forma normal conjuntiva (CNF) pode ser refutada através da aplicação sistemática da regra de reso-
lução. Esse método é particularmente útil para verificar a validade de argumentos ou a inconsistência
de conjuntos de cláusulas, sendo a base de algoritmos como o DPLL (Davis-Putnam-Logemann-
Loveland), essenciais em solucionadores SAT (Boolean Satisfiability Problem), ferramentas críticas
em otimização, síntese de circuitos e planejamento automatizado.
Diferente de métodos como os tableaux analíticos ou a dedução natural, a resolução opera exclusi-
vamente em cláusulas, dispensando regras complexas de inferência. Sua simplicidade sintática e foco
na eliminação de literais complementares permitem uma implementação computacional altamente
otimizada, consolidando-a como um pilar da lógica computacional. Assim, a prova por resolução
não apenas aprofunda o entendimento teórico da estrutura das demonstrações, mas também conecta a
lógica proposicional a desafios tecnológicos contemporâneos, reforçando seu papel central na ciência
da computação e na matemática discreta.

9.1 Fundamentação teórica


Em particular, a prova por resolução é uma tentativa de caminharmos no sentido de automatizar
a prova de um argumento, ou seja, o objetivo é fazer com que o computador seja capaz de provar
argumentos de maneira eficiente. Por essa razão, a prova por resolução é um método sintático de
demonstração baseada em uma única regra de inferência. A resolução é uma operação aplicada a
duas cláusulas de entrada e sempre retorna uma cláusula de saida.

Definição 21 Sejam 𝑃 e 𝑄 duas clásulas. Se existe um átomo 𝑎 ∈ 𝑃 e ¬𝑎 ∈ 𝑄, então:

𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑎) = (𝑃 − {𝑎}) ∪ (𝑄 − {¬𝑎}) (140)

é a cláusula obtida pela união de 𝑃 e 𝑄 removendo os átomos complementares.

Exemplo: Seja 𝑃 : ¬𝑝 ∨ 𝑟 e 𝑄 : 𝑞 ∨ ¬𝑟. Então, temos:

𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑟) = ¬𝑝 ∨ 𝑞 (141)

Pode-se mostrar que o resolvente de duas cláusulas tem ligação direta com as regras de inferência
que vimos anteriormente.

74
• Modus Ponens: 𝑝 → 𝑞, 𝑝 ⊨ 𝑞

𝑃 : 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞 (142)
𝑄:𝑝 (143)
𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑝) = 𝑞 (144)

• Modus Tollens: 𝑝 → 𝑞, ¬𝑞 ⊨ ¬𝑝

𝑃 : 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞 (145)
𝑄 : ¬𝑞 (146)
𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑞) = ¬𝑝 (147)

• Silogismo Hipotético: 𝑝 → 𝑞, 𝑞 → 𝑟 ⊨ 𝑝 → 𝑟

𝑃 : 𝑝 → 𝑞 ≡ ¬𝑝 ∨ 𝑞 (148)
𝑄 : 𝑞 → 𝑟 ≡ ¬𝑞 ∨ 𝑟 (149)
𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑞) = ¬𝑝 ∨ 𝑟 ≡ 𝑝 → 𝑟 (150)

• Silogismo Disjuntivo: 𝑝 ∨ 𝑞, ¬𝑝 ⊨ 𝑞

𝑃 :𝑝∨𝑞 (151)
𝑄 : ¬𝑝 (152)
𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑝) = 𝑞 (153)

Verifique também para outras regras de inferência!

Teorema 7 Sejam duas cláusulas arbitrárias 𝑃 e 𝑄 e 𝑎 um átomo tal que 𝑎 ∈ 𝑃 e ¬𝑎 ∈ 𝑄. Então:

𝑃, 𝑄 ⊨ 𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑎) (154)

Em outras palavras, o resolvente de duas cláusulas arbitrárias sempre é consequência lógica delas.
Portanto, podemos utilizar essa operação para demonstrar a validade de argumentos. Porém, no
processo de prova por resolução, nem sempre as proposições são clásulas. Se não forem, devemos
primeiro convertê-las para a FNC (Forma Normal Conjuntiva). A aplicação da prova por resolução
está diretamente relacionada com a prova por redução ao absurdo. Existem duas formas variantes
para deduções baseadas em contradições:

1. introduzir a negação da conclusão como premissa provisória.

2. negar todo argumento/teorema escrito na forma condicional.

75
A seguir apresentamos um algoritmo para aplicar a prova por resolução a um conjunto de premis-
sas arbitrárias.
Algoritmo para resolução
A entrada deve ser um conjunto de proposições {𝑃1 , 𝑃2 , ..., 𝑃𝑛 }.

1. Encontre a FNC de cada proposição 𝑃𝑖 e também da negação da conclusão.

2. identifique e isole cada cláusula (a FNC pode conter várias cláusulas).

3. Procure por um par de cláusulas 𝑃 e 𝑄, de modo que 𝑝 ∈ 𝑃 e ¬𝑝 ∈ 𝑄. Obtenha 𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝑃, 𝑄; 𝑝).

4. Repita o passo anterior até que se tenha 2 cláusulas compostas por um único átomo: 𝐶𝑖 : 𝑝 e
𝐶𝑗 : ¬𝑝. Obtenha 𝑟𝑒𝑠𝑜𝑙𝑣𝑒𝑛𝑡𝑒(𝐶𝑖 , 𝐶𝑗 ; 𝑝) para obter a clásula vazia NIL, que representa uma
contradição (o que implica que o argumento é válido!).

Exemplo: Demonstre o argumento a seguir utilizando a prova por resolução com a negação da
conclusão.

¬𝑝 → 𝑞, 𝑞 → 𝑟, 𝑟 → 𝑠, ¬𝑠 ⊢ 𝑝 (155)

Nomeando as premissas, temos:

• 𝑃 : ¬𝑝 → 𝑞

• 𝑄:𝑞→𝑟

• 𝑅:𝑟→𝑠

• 𝑆 : ¬𝑠

• 𝑇 :𝑝

Primeiramente, devemos converter as proposições e a negação da conclusão para a FNC:

• 𝐹 𝑁 𝐶(𝑃 ) = ¬¬𝑝 ∨ 𝑞 ≡ 𝑝 ∨ 𝑞

• 𝐹 𝑁 𝐶(𝑄) = ¬𝑞 ∨ 𝑟

• 𝐹 𝑁 𝐶(𝑅) = ¬𝑟 ∨ 𝑠

• 𝐹 𝑁 𝐶(𝑆) = ¬𝑠

• 𝐹 𝑁 𝐶(¬𝑇 ) = ¬𝑝

76
A seguir, temos a prova por resolução ilustrada em detalhes. Note que devemos partir das 5
proposições convertidas para a FNC:

1. 𝑝∨𝑞 Premissa
2. ¬𝑞 ∨ 𝑟 Premissa
3. ¬𝑟 ∨ 𝑠 Premissa
4. ¬𝑠 Premissa
5. ¬𝑝 PP
6. 𝑞 resolvente(1, 5)
7. 𝑟 resolvente(2, 6)
8. 𝑠 resolvente(3, 7)
9. 𝑁 𝐼𝐿 resolvente(4, 8)

Como a prova por resolução encontrou a cláusula vazia NIL, o argumento em questão é válido.
É possível visualizar a prova por resolução através de uma árvore de refutação construída de maneira
bottom-up, isto é, em cada uma das folhas adicionamos uma cláusula inicial e a cada resolvente,
combinamos duas folhas, gerando um nó intermediário. Se ao final do processo atingirmos uma raiz
NIL, o argumento é válido. A figura a seguir ilustra a árvore de refutação obtida para o exemplo em
questão.

Figura 3: Árvore de refutação referente ao processo de prova por resolução do exemplo em questão.

Uma observação importante é que a sequência de passos necessárias para chegar na cláusula vazia
NIL em uma prova por resolução não é única, ou seja, na grande maioria dos casos pode haver mais
de uma sequência possível.
Exemplo: Demonstre o argumento a seguir utilizando a prova por resolução com a negação da
forma condicional do argumento.

77
¬𝑝 → 𝑞, 𝑞 → 𝑟, 𝑟 → 𝑠, ¬𝑠 ⊢ 𝑝 (156)

A forma condicional do argumento é dada por:

((¬𝑝 → 𝑞) ∧ (𝑞 → 𝑟) ∧ (𝑟 → 𝑠) ∧ ¬𝑠) → 𝑝 (157)

de forma que a sua negação é dada por:

¬(((¬𝑝 → 𝑞) ∧ (𝑞 → 𝑟) ∧ (𝑟 → 𝑠) ∧ ¬𝑠) → 𝑝) (158)

Pela equivalência da condicional, podemos escrever:

¬(¬((¬𝑝 → 𝑞) ∧ (𝑞 → 𝑟) ∧ (𝑟 → 𝑠) ∧ ¬𝑠) ∨ 𝑝) (159)

Aplicando a lei de DeMorgan, temos:

(¬𝑝 → 𝑞) ∧ (𝑞 → 𝑟) ∧ (𝑟 → 𝑠) ∧ ¬𝑠 ∧ ¬𝑝 (160)

o que é equivalente a seguinte FNC:

(𝑝 ∨ 𝑞) ∧ (¬𝑞 ∨ 𝑟) ∧ (¬𝑟 ∨ 𝑠) ∧ ¬𝑠 ∧ 𝑝 (161)

Sendo assim, é possível identificar as seguintes cláusulas:


• 𝐶1 : 𝑝 ∨ 𝑞

• 𝐶2 : ¬𝑞 ∨ 𝑟

• 𝐶3 : ¬𝑟 ∨ 𝑠

• 𝐶4 : ¬𝑠

• 𝐶5 : ¬𝑝
A seguir, temos a prova por resolução ilustrada em detalhes. Note que utilizaremos outra sequên-
cia de operações em comparação com o exemplo anterior:

1. 𝑝∨𝑞 Premissa
2. ¬𝑞 ∨ 𝑟 Premissa
3. ¬𝑟 ∨ 𝑠 Premissa
4. ¬𝑠 Premissa
5. ¬𝑝 Premissa
6. 𝑝∨𝑟 resolvente(1, 2)
7. ¬𝑟 resolvente(3, 4)
8. 𝑝 resolvente(6, 7)
9. 𝑁 𝐼𝐿 resolvente(5, 8)

78
Como a prova por resolução encontrou a cláusula vazia NIL, o argumento em questão é válido. A
figura a seguir ilustra a árvore de refutação obtida para o exemplo em questão.

Figura 4: Árvore de refutação referente ao processo de prova por resolução do exemplo em questão.

Exemplo: Demonstre o argumento a seguir utilizando a prova por resolução com a negação da
conclusão.

¬𝑝 → 𝑞, 𝑟 → 𝑠, (𝑞 ∨ 𝑠) → 𝑡, ¬𝑡 ⊢ ¬𝑝 ∧ ¬𝑟 (162)

Nomeando as premissas, temos:

• 𝑃 :𝑝→𝑞

• 𝑄:𝑟→𝑠

• 𝑅 : (𝑞 ∨ 𝑠) → 𝑡

• 𝑆 : ¬𝑡

• 𝑇 : ¬𝑝 ∧ ¬𝑟

Primeiramente, devemos converter as proposições e a negação da conclusão para a FNC:

• 𝐹 𝑁 𝐶(𝑃 ) = ¬𝑝 ∨ 𝑞

• 𝐹 𝑁 𝐶(𝑄) = ¬𝑟 ∨ 𝑠

• 𝐹 𝑁 𝐶(𝑅) = ¬(𝑞 ∨ 𝑠) ∨ 𝑡 ≡ (¬𝑞 ∧ ¬𝑠) ∨ 𝑡 ≡ (¬𝑞 ∨ 𝑡) ∧ (¬𝑠 ∨ 𝑡)

• 𝐹 𝑁 𝐶(𝑆) = ¬𝑡

• 𝐹 𝑁 𝐶(¬𝑇 ) = 𝐹 𝑁 𝐶(¬(¬𝑝 ∧ ¬𝑟)) = 𝑝 ∨ 𝑟

79
A seguir, temos a prova por resolução ilustrada em detalhes. Note que devemos partir de 6 cláu-
sulas, uma vez que a proposição 𝑅 gerou duas delas:

1. ¬𝑝 ∨ 𝑞 Premissa
2. ¬𝑟 ∨ 𝑠 Premissa
3. ¬𝑞 ∨ 𝑡 Premissa
4. ¬𝑠 ∨ 𝑡 Premissa
5. ¬𝑡 Premissa
6. 𝑝∨𝑟 Premissa
7. ¬𝑝 ∨ 𝑡 resolvente(1, 3)
8. ¬𝑝 resolvente(5, 7)
9. ¬𝑠 resolvente(4, 5)
10. ¬𝑟 resolvente(2, 9)
11. 𝑝 resolvente(6, 10)
12. 𝑁 𝐼𝐿 resolvente(8, 11)

Como a prova por resolução encontrou a cláusula vazia NIL, o argumento em questão é válido. A
figura a seguir ilustra a árvore de refutação obtida para o exemplo em questão.

Figura 5: Árvore de refutação referente ao processo de prova por resolução do exemplo em questão.

Note que no processo de construção da árvore de refutação na prova por resolução, podemos
utilizar uma cláusula mais de uma vez no caminho até a cláusula vazia NIL. Por exemplo, a cláusula
¬𝑡 é usada primeiramente com a cláusula ¬𝑠 ∨ 𝑡 e depois com a cláusula ¬𝑝 ∨ 𝑡.

Exemplo: Demonstre o argumento a seguir em linguagem natural utilizando a prova por resolução
com a negação da conclusão.

80
O participante vai ao paredão se o lider indica ou se os colegas indicam.
Se o participante vai ao paredão e chora, então ele conquista o público.
Se o participante conquista o público, ele não é eliminado.
O líder indicou um participante e ele foi eliminado.
Logo, o participante não chorou.

Primeiramente, devemos escrever o argumento na linguagem da lógica proposicional:

• 𝑙: o líder indica.

• 𝑒: os colegas escolhem.

• 𝑝: o participante vai ao paredão.

• 𝑐: o participante chora.

• 𝑞: o participante conquista o público.

• 𝑚: o participante é eliminado.

Assim, temos o seguinte argumento na linguagem da lógica proposicional:

(𝑙 ∨ 𝑒) → 𝑝, (𝑝 ∧ 𝑐) → 𝑞, 𝑞 → ¬𝑚, 𝑙 ∧ 𝑚 ⊢ ¬𝑐 (163)

Nomeando as premissas, temos:

• 𝑃1 : (𝑙 ∨ 𝑒) → 𝑝

• 𝑃2 : (𝑝 ∧ 𝑐) → 𝑞

• 𝑃3 : 𝑞 → ¬𝑚

• 𝑃4 : 𝑙 ∧ 𝑚

• 𝑃5 : ¬𝑐

Agora, devemos converter as proposições e a negação da conclusão para a FNC:

• 𝐹 𝑁 𝐶(𝑃1 ) = ¬(𝑙 ∨ 𝑒) ∨ 𝑝 ≡ (¬𝑙 ∧ ¬𝑒) ∨ 𝑝 ≡ (¬𝑙 ∨ 𝑝) ∧ (¬𝑒 ∨ 𝑝) (duas cláusulas)

• 𝐹 𝑁 𝐶(𝑃2 ) = ¬(𝑝 ∧ 𝑐) ∨ 𝑞 ≡ ¬𝑝 ∨ ¬𝑐 ∨ 𝑞

• 𝐹 𝑁 𝐶(𝑃3 ) = ¬𝑞 ∨ ¬𝑚

• 𝐹 𝑁 𝐶(𝑃4 ) = 𝑙 ∧ 𝑚 (duas cláusulas)

• 𝐹 𝑁 𝐶(𝑃5 ) = 𝑐 (negação da conclusão)

81
A seguir, temos a prova por resolução ilustrada em detalhes. Note que devemos partir de 7 cláu-
sulas, uma vez que as proposições 𝑃1 e 𝑃4 geraram duas delas:

1. ¬𝑙 ∨ 𝑝 Premissa
2. ¬𝑒 ∨ 𝑝 Premissa
3. ¬𝑝 ∨ ¬𝑐 ∨ 𝑞 Premissa
4. ¬𝑞 ∨ ¬𝑚 Premissa
5. 𝑙 Premissa
6. 𝑚∨𝑟 Premissa
7. 𝑐 Premissa
8. 𝑝 resolvente(1, 5)
9. ¬𝑐 ∨ 𝑞 resolvente(3, 8)
10. 𝑞 resolvente(7, 9)
11. ¬𝑚 resolvente(4, 10)
12. 𝑁 𝐼𝐿 resolvente(6, 11)

Como a prova por resolução encontrou a cláusula vazia NIL, o argumento em questão é válido. A
figura a seguir ilustra a árvore de refutação obtida para o exemplo em questão.

Figura 6: Árvore de refutação referente ao processo de prova por resolução do exemplo em questão.

Note que neste exemplo não foi preciso utilizar todas as cláusulas para atingir a cláusula vazia
NIL. Não há problema algum com essa situação, uma vez que isso indica que há mais informação
disponível no argumento do que o necessário para provar sua validade.

82
9.2 Considerações finais
A prova por resolução consolida-se como um dos pilares metodológicos mais elegantes e eficien-
tes da lógica proposicional. Ao longo deste capítulo, exploramos sua estrutura minimalista, funda-
mentada na combinação estratégica de cláusulas e na busca pela cláusula vazia, símbolo máximo da
contradição. Sua simplicidade sintática, que dispensa regras complexas de inferência, contrasta com
seu poder decisório: a resolução é um método completo, capaz de demonstrar qualquer argumento
válido.
A relevância desse método transcende o âmbito teórico. Na prática, a resolução tornou-se a base
de algoritmos revolucionários na ciência da computação, como os solucionadores SAT (Boolean Sa-
tisfiability Problem), ferramentas essenciais para verificação formal de circuitos, planejamento auto-
matizado e inteligência artificial. Sua eficiência em lidar com problemas NP-completos, ainda que
limitada pela complexidade exponencial no pior caso, reforça a importância de otimizações heurísti-
cas e do pré-processamento de fórmulas em forma normal conjuntiva (FNC).
Comparada a outros métodos, como os tableaux analíticos ou a dedução natural, a resolução
destaca-se por sua natureza algorítmica e foco na refutação. Enquanto os tableaux exploram ramifica-
ções semânticas e a dedução natural constrói argumentos passo a passo, a resolução opera como um
processo mecânico de eliminação de literais complementares, priorizando a economia de passos e a
automatização. Essa diferença não a torna superior, mas complementar: cada método ilumina facetas
distintas da lógica, seja pela perspectiva sintática, semântica ou pragmática.
É importante ressaltar, porém, que a resolução não é um método perfeito. Sua aplicação exige
a conversão prévia de fórmulas para FNC, etapa que pode gerar explosão exponencial de cláusulas.
Além disso, sua eficácia em larga escala depende criticamente de estratégias de ordenação e seleção
de cláusulas, como o uso da regra da pureza e da eliminação de cláusulas subsumidas, que evitam
derivações redundantes.
Por fim, a prova por resolução ensina-nos uma lição profunda sobre a lógica: mesmo sistemas
aparentemente austeros podem ser surpreendentemente poderosos quando combinados com intuição
estratégica e rigor formal. Seu legado persiste não apenas como ferramenta acadêmica, mas como
alicerce de tecnologias que moldam o mundo contemporâneo. Assim, este capítulo não se encerra
aqui, mas convida o leitor a explorar horizontes mais amplos — como a resolução em lógica de
primeira ordem ou suas aplicações em sistemas de raciocínio automatizado —, onde a busca pelo
conhecimento continua a desafiar e inspirar.

83
10 Lógica de predicados: sintaxe, semântica e linguagem natural
A lógica de predicados (ou lógica de primeira ordem) é uma extensão da lógica proposicional que
permite analisar a estrutura interna das proposições, incorporando elementos como quantificadores,
predicados e variáveis. Enquanto a Lógica Proposicional trata proposições como átomos indivisíveis
(i.e., 𝑃 e 𝑄), a Lógica de Predicados decompõe essas proposições em sujeitos e propriedades (i.e.,
𝑃 (𝑥), 𝑅(𝑥, 𝑦)), onde 𝑥 e 𝑦 são variáveis que representam objetos em um domínio de discurso.
A grande vantagem da lógica de predicados é permitir uma expressividade muito mais rica que a
da lógica proposicional, que é limitada a expressar relações verdadeiras/falsas entre proposições atô-
micas. Já a lógica de predicados permite descrever relações complexas entre objetos e generalizações
sobre domínios finitos ou infinitos. Em resumo, a lógica proposicional é limitada pois:

• Representa sentenças como um todo.

• Não captura relação entre as partes das sentenças.

• Não possui mecanismo de generalização.

Por exemplo, sejam as sentenças 𝑝 e 𝑞 na lógica proposicional:

• 𝑝 : Maria é mãe de Carlos.

• 𝑞 : Ana é mãe de José.

Note que não conseguimos modelar relações entre as partes da sentenças. Considere o predicado
a seguir:

• 𝑀 (𝑥, 𝑦) : 𝑥 é mãe de 𝑦

Na lógica de predicados, é possível abstrair relações entre variáveis de um domínio de discurso.


Em termos práticos, a lógica de predicados é um sistema mais expressivo e poderoso capaz de distin-
guir entre coisas (termos) e asserções sobre as coisas (fórmulas e predicados). A seguir veremos um
simples exemplo de problema que é possível ser resolvido com a lógica de predicados mas não com
a lógica proposicional.
Exemplo: Sejam as premissas a seguir:

• 𝑝 : João é pai de Pedro.

• 𝑝 : Paulo é pai de Maria.

• 𝑟 : Pedro e Maria são irmãos.

Deseja-se chegar na conclusão de que a mãe de Pedro é a mesma mãe de Maria. Observe que
a lógica proposicional não nos permite chegar a essa conclusão. Na lógica de predicados, podemos
definir os três predicados a seguir:

84
• 𝑃 (𝑥, 𝑦) : 𝑥 é pai de 𝑦

• 𝐼(𝑥, 𝑦) : 𝑥 é irmão de 𝑦

• 𝑀 (𝑥, 𝑦) : 𝑥 é mãe de 𝑦

Sejam os símbolos João, Pedro, Paulo e Maria definidos pelas constantes 𝑗, 𝑝, 𝑘 e 𝑚. Dessa forma,
supondo que 𝑥 é uma variável do domínio do discurso, podemos expressar os fatos anteriores como:

• 𝑃 (𝑗, 𝑝)

• 𝑃 (𝑘, 𝑚)

• 𝐼(𝑝, 𝑚)

• 𝑀 (𝑥, 𝑝) ∧ 𝑀 (𝑥, 𝑚)

Perceba que na lógica de predicados, nossa atenção se volta para a estrutura das proposições.

Figura 7: Na lógica de predicados, uma proposição pode ser decomposta em partes.

Como qualquer linguagem, a lógica de predicados é composta por uma sintaxe e uma semântica:

1. Sintaxe: especifica como os símbolos do alfabeto se combinam para formar sequências válidas.

2. Semântica: especifica como as sequências válidas se relacionam entre si e qual o valor verdade
dessa relação.

10.1 Sintaxe da lógica de predicados


A sintaxe da Lógica de Predicados (ou Lógica de Primeira Ordem) define as regras formais para
construir expressões válidas (fórmulas) nesse sistema lógico. Ela especifica os símbolos permitidos,
como combiná-los e quais estruturas são gramaticalmente corretas, sem considerar seu significado
(semântica). A sintaxe é dividida em componentes básicos e regras de formação, que garantem a
precisão e a clareza das expressões lógicas. A seguir apresentamos cada um dos componentes que
definem a sintaxe da lógica de predicados.

85
1. Alfabeto

• Um conjunto de termos (objetos - constantes e variáveis - de um domínio)


– Constantes: 𝑎, 𝑏, 𝑐, 𝑑, John, Mary, Beth,... (letras minúsculas do início do alfabeto ou
nomes próprios)
– Variáveis: 𝑥, 𝑦, 𝑧, 𝑥0 , 𝑥1 , 𝑥2 ,... (letras minúsculas do final do alfabeto)
• Funções: mapeiam elementos para outros elementos, como por exemplo, 𝑓 (𝑥) denota o
sucessor de 𝑥 (letras minúsculas)
• Predicados: representam propriedades ou relações entre elementos (letras maiúsculas)
– Unários: 𝐹 (𝑥), 𝑅(𝑥) são propriedades de 𝑥
– Binários: 𝐴(𝑥, 𝑦), 𝑀 (𝑥, 𝑦) representam relações entre dois elementos
– Ternários: 𝑃 (𝑥, 𝑦, 𝑧) representa uma relação entre três elementos
– ...
– n-ários: 𝑆(𝑧1 , 𝑥2 , ..., 𝑥𝑛 ) representa uma relação entre n elementos
• Operadores lógicos: negação (¬), conjunção (∧), disjunção (∨), condicional (→) e bicon-
dicional ( ⇐⇒ )
• Quantificadores: assiciam propriedades a alguns ou todos elementos do domínio
– ∀ : universal
– ∃ : existencial
• Símbolos de pontuação: ( e ) para definir a precedência das operações

2. Regras sintáticas

• Se 𝑃 é um predicado n-ário e 𝑡1 , 𝑡2 , ..., 𝑡𝑛 são termos (variáveis ou constantes), então


𝑃 (𝑡1 , 𝑡2 , ..., 𝑡𝑛 ) é uma fórmula atômica
– John é feliz: 𝐹 (𝑗)
– John ama Mary: 𝐴(𝑗, 𝑚)
– John prefere Mary a Sue: 𝑃 (𝑗, 𝑚, 𝑠)
• Se 𝜑 é uma fórmula, então ¬𝜑 também é uma fórmula
• Se 𝜑 e 𝜓 são fórmulas, então:
– 𝜑 ∧ 𝜓 é uma fórmula
– 𝜑 ∨ 𝜓 é uma fórmula
– 𝜑 → 𝜓 é uma fórmula
– 𝜑 ⇐⇒ 𝜓 é uma fórmula
• Se 𝜑 é uma fórmula e 𝑥 é uma variável do domínio, então:

86
– ∀𝑥𝜑 também é uma fórmula
– ∃𝑥𝜑 também é uma fórmula
* Todos são felizes: ∀𝑥𝐹 (𝑥)
* Alguém ama John: ∃𝑥𝐴(𝑥, 𝑗)
* Todo mundo ama alguém: ∀𝑥∃𝑦𝐴(𝑥, 𝑦)

A partir da definição da sintaxe, pode-se perceber que a lógica de predicados é uma generalização
da lógica proposicional no sentido de que a estrutura da lógica proposicional está imersa na estrutura
da lógica de predicados. Nesse contexto, funções atômicas da lógica proposicional são predicados de
aridade zero e termos na lógica de predicados são como proposições átomos na lógica proposicional.
Considere a proposição a seguir: Se Ana é mãe de Maria, então Maria não é mãe de Ana.
Na lógica proposicional, temos a representação 𝑝 → ¬𝑞, onde 𝑝: Ana é mãe de Maria e 𝑞: Maria
é mãe de Ana. Já na lógica de predicados, temos mais informação. Seja 𝑀 (𝑥, 𝑦) o predicado 𝑥 é mãe
de 𝑦. Então, a representação fica 𝑀 (𝑎, 𝑚) → ¬𝑀 (𝑚, 𝑎) (substituímos átomos por predicados que
indicam propriedades).
Uma observação importante é quanto a diferença entre uma função e um predicado. Em uma
função, o contra-domínio é um conjunto arbitrário (podendo inclusive ser infinito, como os naturais
ou os reais), enquanto que em um predicado, o contra-domínio é sempre o conjunto {𝑇, 𝐹 }. Em
outras palavras, uma função pode retornar um valor qualquer, já um predicado pode retornar apenas
valores lógicos 𝑇 ou 𝐹 .

10.2 Escopo de quantificadores


O escopo de um quantificador em uma fórmula 𝛼 é a fórmula a qual ele se aplica. Por exemplo,
em ∀𝑥𝛼 o escopo de ∀ é 𝛼.

Definição 22 Uma variável que ocorre dentro do escopo de um quatificador é dita ligada.

Definição 23 Uma variável que ocorre fora do escopo de um quatificador é dita livre.

Por exemplo, na fórmula a seguir:

(∀𝑥𝑄(𝑥)) ∨ 𝑃 (𝑥, 𝑓 (𝑐)) (164)

a primeira ocorrência de 𝑥 é uma variável ligada pois está no escopo do quantificador universal e a
segunda ocorrência de 𝑥 é uma variável livre.

Definição 24 Uma fórmula fechada é uma fórmula que não contém nenhuma ocorrência de variáveis
livres.

87
10.3 Enunciados categóricos
Antes de estudarmos como realizar o mapeamento de linguagem natural para a linguagem da
lógica de predicados, apresentaremos a seguir alguns enunciados categóricos, que definem 4 tipos de
sentenças amplamente utilizadas em argumentos.

1. Universal afirmativa: são sentenças da forma "Todos os homens são mortais", que podem ser
traduzidas como:
∀𝑥(𝐻(𝑥) → 𝑀 (𝑥)) (165)

e cujo diagrama de Venn é representado por:

Figura 8: Diagrama de Venn da sentença universal afirmativa.

2. Universal negativa: são sentenças da forma "Nenhum homem possui asas", que podem ser
traduzidas como:
∀𝑥(𝐻(𝑥) → ¬𝐴(𝑥)) (166)

e cujo diagrama de Venn é representado por:

Figura 9: Diagrama de Venn da sentença universal negativa.

3. Particular afirmativa: são sentenças da forma "Alguns homens são inteligentes", que podem
ser traduzidas como:
∃𝑥(𝐻(𝑥) → 𝐼(𝑥)) (167)

e cujo diagrama de Venn é representado por:

88
Figura 10: Diagrama de Venn da sentença particular afirmativa.

4. Particular negativa: são sentenças da forma "Alguns homens não são bondosos", que podem
ser traduzidas como:
∃𝑥(𝐻(𝑥) → ¬𝐵(𝑥)) (168)

e cujo diagrama de Venn é representado por:

Figura 11: Diagrama de Venn da sentença particular negativa.

10.4 Mapeamento para linguagem natural


O mapeamento da linguagem natural para a linguagem da Lógica de Predicados envolve traduzir
afirmações do cotidiano ou de textos em estruturas formais que respeitem a sintaxe e a semântica
da lógica. Esse processo exige identificar componentes como sujeitos, predicados, quantificadores,
relações e conectivos lógicos. Em resumo, para realizar esse mapamento, devemos seguir os seguintes
passos:

1. Definir o domínio do discurso: estabelecer o conjunto de objetos sobre os quais se fala: pes-
soas, animais, números, etc.

2. Identificar elementos da sentença: sujeitos e objetos como variáveis ou constantes, proprie-


dades ou relações como predicados, quantificadores e conectivos.

3. Traduzir quantificadores: universais como todo, cada e qualquer ou existenciais como algum,
existe, pelo menos um.

4. Representar predicados e relações: predicados unários são usados para representar uma pro-
priedade de um objeto, enquanto predicados de maior aridade são usados para representar rela-
ções entre dois ou mais objetos.

89
5. Lidar com conectivos lógicos: conectar predicados e relações com operadores negação, con-
junção, disjunção, condicional e bicondicional.

6. Estruturar fórmulas complexas: combinar um variado número de quantificadores, predicados


e conectivos lógicos.

A seguir ilustramos alguns exemplos de como traduzir sentenças em linguagem natural para a
linguagem da lógica de predicados.
Exemplo: Traduza as sentenças em linguagem natural para a linguagem da lógica de predicados.
a) Existem pessoas que não gostam de viver.
Assumiremos que o domínio 𝐷 é o conjunto dos seres vivos. Sendo assim, podemos definir dois
predicados:

• 𝑃 (𝑥): 𝑥 é uma pessoa.

• 𝑉 (𝑥): 𝑥 gosta de viver.

A sentença pode ser expressa como:

∃𝑥(𝑃 (𝑥) ∧ ¬𝑉 (𝑥)) (169)

b) Todo filho é mais novo que seus pais.


Assumiremos que o domínio 𝐷 é o conjunto das pessoas. Sendo assim, podemos definir dois
predicados binários:

• 𝐹 (𝑥, 𝑦): 𝑥 é filho de 𝑦.

• 𝑁 (𝑥, 𝑦): 𝑥 é mais novo que 𝑦.

A sentença pode ser expressa como:

∀𝑥∃𝑦(𝐹 (𝑥, 𝑦) → 𝑁 (𝑥, 𝑦)) (170)

c) Alguns cachorros latem, outros não.


Assumiremos que o domínio 𝐷 é o conjunto dos cachorros. Sendo assim, podemos definir o
predicado:

• 𝐿(𝑥): 𝑥 late.

A sentença pode ser expressa como:

(∃𝑥𝐿(𝑥)) ∧ (∃𝑥¬𝐿(𝑥)) (171)

90
d) Nem todos os pássaros podem voar.
Assumiremos que o domínio 𝐷 é o conjunto dos animais. Sendo assim, podemos definir os
predicados:

• 𝑃 (𝑥): 𝑥 é um passaro.

• 𝑉 (𝑥): 𝑥 pode voar.

A sentença pode ser expressa como:

¬∀(𝑃 (𝑥) → 𝑉 (𝑥)) (172)

e) Todos que são alegres ou tolerantes são felizes se e seomente se não forem egoístas.
Assumiremos que o domínio 𝐷 é o conjunto das pessoas. Sendo assim, podemos definir os
predicados:

• 𝐴(𝑥): 𝑥 é alegre.

• 𝑇 (𝑥): 𝑥 é tolerante.

• 𝐹 (𝑥): 𝑥 é feliz.

• 𝐸(𝑥): 𝑥 é egoísta.

A sentença pode ser expressa como:

∀𝑥(((𝐴(𝑥) ∨ 𝑇 (𝑥)) → 𝐹 (𝑥)) ⇐⇒ ¬𝐸(𝑥)) (173)

f) Todos os convocados se apresentaram, mas alguns deles não foram selecionados.


Assumiremos que o domínio 𝐷 é o conjunto das pessoas. Sendo assim, podemos definir os
predicados:

• 𝐶(𝑥): 𝑥 foi convocado.

• 𝐴(𝑥): 𝑥 se apresentou.

• 𝑆(𝑥): 𝑥 foi selecionado.

A sentença pode ser expressa como:

∀𝑥(𝐶(𝑥) → 𝐴(𝑥)) ∧ ∃𝑥(𝐶(𝑥) ∧ ¬𝑆(𝑥)) (174)

91
10.5 Semântica da lógica de predicados
A semântica da Lógica de Predicados (ou Lógica de Primeira Ordem) define como as fórmulas
são interpretadas em estruturas matemáticas, atribuindo significado aos símbolos e determinando se
uma proposição é verdadeira ou falsa em um contexto específico. Enquanto a sintaxe trata da forma
das fórmulas, a semântica lida com seu significado e validade em relação a um modelo (ou estrutura).
A dificuldade em verificar se uma fórmula da lógica de predicados é verdadeira ou falsa surge
devido à complexidade inerente à Lógica de Predicados, especialmente quando comparada à Lógica
Proposicional. Os principais motivos são:

1. Domínios Infinitos e Quantificadores: quantificadores universais (∀) exigem verificar todos


os elementos do domínio. Se o domínio é infinito (ex.: números naturais), isso é impossível de
ser feito em tempo finito.

2. Indecidibilidade: o teorema de Church (1936) mostra que a Lógica de Predicados é indeci-


dível, ou seja, não existe um algoritmo geral que determine se uma fórmula qualquer é válida
(verdadeira em todos os modelos). Isso contrasta com a lógica proposicional, que é decidível
(via tabelas-verdade).

3. Dependência do modelo: a verdade de uma fórmula na lógica de predicados depende da inter-


pretação escolhida.

4. Complexidade Computacional: mesmo em domínios finitos, a validação de fórmulas com


múltiplos quantificadores e predicados pode exigir verificação exponencial.

Definição 25 Uma interpretação 𝐼 de uma fórmula 𝛼 consiste em:

1. Um conjunto não vazio 𝐷 (domínio), no qual os termos (variáveis e constantes) assumem


valores.

2. Uma atribuição a cada:

• Constante (𝐷).
• Função n-ária (𝐷𝑛 → 𝐷).
• Predicado n-ário (𝐷𝑛 → 𝑛).

Observação: Iremos denotar por 𝐴(𝑥/𝑑) a atribuição de variável que mapeia 𝑥 para 𝑑 ∈ 𝐷.
Seja 𝐼 uma interpretação de uma linguagem de primeira ordem Λ com domínio 𝐷. O valor verdade
de uma fórmula 𝛼 é dado por:

1. Se a fórmula é da forma ∃𝑥𝛼, seu valor lógico é 𝑇 se existe um 𝑑 ∈ 𝐷 tal que 𝛼 é verdadeira
quando 𝐴(𝑥/𝑑). Caso contrário, o seu valor lógico é 𝐹 .

92
2. Se a fórmula é da forma ∀𝑥𝛼, seu valor lógico é 𝑇 se para todo 𝑑 ∈ 𝐷 𝛼 é verdadeira quando
𝐴(𝑥/𝑑). Caso contrário, o seu valor lógico é 𝐹 .

Exemplo: Considere a seguinte fórmula da lógica de predicados:

∀𝑥(𝑃 (𝑥) → 𝑄(𝑥, 𝑎)) (175)

em que o domínio 𝐷 = {1, 2}, a constante 𝑎 = 1 e os predicados são definidos por:

• 𝑃 (𝑥): 𝑥 é par.

• 𝑄(𝑥, 𝑦): 𝑥 é maior que 𝑦.

Pergunta-se: a fórmula é verdadeira ou falsa?


Iniciamos avaliando 𝑃 (𝑥) e 𝑄(𝑥, 𝑦) para todo 𝑑 ∈ 𝐷. Note que temos os seguintes valores:

𝑃 (1) 𝑃 (2) 𝑄(1, 1) 𝑄(1, 2) 𝑄(2, 1) 𝑄(2, 2)


𝐹 𝑇 𝐹 𝐹 𝑇 𝐹

Como temos um quantificador universal, devemos verificar se a fórmula é verdadeira para todos
os valores de 𝑑 ∈ 𝐷.

• x = 1: 𝑃 (1) → 𝑄(1, 1) ≡ 𝐹 → 𝐹 ≡ 𝑇

• x = 2: 𝑃 (2) → 𝑄(2, 1) ≡ 𝑇 → 𝑇 ≡ 𝑇

Portanto, a fórmula em questão é verdadeira!


Exemplo: Considere a seguinte fórmula da lógica de predicados:

∀𝑥(𝑃 (𝑥) → (𝑄(𝑥, 𝑎) ∧ 𝑃 (𝑏))) (176)

em que o domínio 𝐷 = {1, 2}, as constantes 𝑎 = 1 e 𝑏 = 2, e os predicados são definidos por:

• 𝑃 (𝑥): 𝑥 é par.

• 𝑄(𝑥, 𝑦): 𝑥 é maior que 𝑦.

Pergunta-se: a fórmula é verdadeira ou falsa?


Iniciamos avaliando 𝑃 (𝑥) e 𝑄(𝑥, 𝑦) para todo 𝑑 ∈ 𝐷. Note que temos os seguintes valores:

𝑃 (1) 𝑃 (2) 𝑄(1, 1) 𝑄(1, 2) 𝑄(2, 1) 𝑄(2, 2)


𝐹 𝑇 𝐹 𝐹 𝑇 𝐹

Como temos um quantificador universal, devemos verificar se a fórmula é verdadeira para todos
os valores de 𝑑 ∈ 𝐷.

93
• x = 1: 𝑃 (1) → (𝑄(1, 1) ∧ 𝑃 (2)) ≡ 𝐹 → (𝐹 ∧ 𝑇 ) ≡ 𝐹 → 𝐹 ≡ 𝑇

• x = 2: 𝑃 (2) → (𝑄(2, 1) ∧ 𝑃 (2)) ≡ 𝑇 → (𝑇 ∧ 𝑇 ) ≡ 𝑇 → 𝑇 ≡ 𝑇

Portanto, a fórmula em questão é verdadeira!


Exemplo: Considere a seguinte fórmula da lógica de predicados:

∀𝑥(∃𝑦(𝑄(𝑦, 𝑥) ∨ 𝑃 (𝑓 (𝑥)))) (177)

em que o domínio 𝐷 = {1, 2}, 𝑓 (𝑥) = 𝑥 é a função identidade e os predicados são definidos por:

• 𝑃 (𝑥): 𝑥 é par.

• 𝑄(𝑥, 𝑦): 𝑥 é maior que 𝑦.

Pergunta-se: a fórmula é verdadeira ou falsa?


Iniciamos avaliando 𝑃 (𝑥) e 𝑄(𝑥, 𝑦) para todo 𝑑 ∈ 𝐷. Note que temos os seguintes valores:

𝑃 (1) 𝑃 (2) 𝑄(1, 1) 𝑄(1, 2) 𝑄(2, 1) 𝑄(2, 2)


𝐹 𝑇 𝐹 𝐹 𝑇 𝐹

Como temos um quantificador universal, devemos verificar se a fórmula é verdadeira para todos
os valores de 𝑑 ∈ 𝐷.

• x=1

– y = 1: 𝑄(1, 1) ∨ 𝑃 (𝑓 (1)) ≡ 𝐹 ∨ 𝐹 ≡ 𝐹
– y = 2: 𝑄(2, 1) ∨ 𝑃 (𝑓 (1)) ≡ 𝑇 ∨ 𝐹 ≡ 𝑇

• x=2

– y = 1: 𝑄(1, 2) ∨ 𝑃 (𝑓 (2)) ≡ 𝐹 ∨ 𝑇 ≡ 𝑇
– y = 2: 𝑄(2, 2) ∨ 𝑃 (𝑓 (2)) ≡ 𝐹 ∨ 𝑇 ≡ 𝑇

Portanto, como tanto para 𝑥 = 1 quanto para 𝑥 = 2 existe um 𝑦 que satisfaz a fórmula (retorna
𝑇 ), a fórmula em questão é verdadeira!
Na lógica proposicional é possível enumerar todas as possíveis interpretações de uma proposição
composta 𝑃 via tabelas verdade: se 𝑃 é composta por 𝑛 átomos, então temos 2𝑛 interpretações.
Na lógica de predicados, não é possível enumerar todas as interptretações de uma fórmula 𝑃 (é um
problema indecidível pois em diversos cenários, o domínio é um conjunto infinito, i.e., naturais).

94
10.6 Equivalência entre quantificadores
Para provar a validade de argumentos na lógica de predicados é conveniente que os quantificadores
não se apresentem na forma negativa. Para isso, iremos apresentar como negar sentenças quantifica-
das. Note que para um domínio 𝐷 = {𝑎, 𝑏, 𝑐, ...}, temos que:

∀𝑥𝑃 (𝑥) ≡ 𝑃 (𝑎) ∧ 𝑃 (𝑏) ∧ 𝑃 (𝑐) ∧ ... (178)

Então, temos que a negação é dada por:

¬∀𝑥𝑃 (𝑥) ≡ ¬(𝑃 (𝑎) ∧ 𝑃 (𝑏) ∧ 𝑃 (𝑐) ∧ ...) (179)


≡ ¬𝑃 (𝑎) ∨ ¬𝑃 (𝑏) ∨ ¬𝑃 (𝑐) ∨ ...
≡ ∃𝑥¬𝑃 (𝑥)

De modo similar, note que:

∃𝑥𝑃 (𝑥) ≡ 𝑃 (𝑎) ∨ 𝑃 (𝑏) ∨ 𝑃 (𝑐) ∨ ... (180)

de modo que a negação fica:

¬∃𝑥𝑃 (𝑥) ≡ ¬(𝑃 (𝑎) ∨ 𝑃 (𝑏) ∨ 𝑃 (𝑐) ∨ ...) (181)


≡ ¬𝑃 (𝑎) ∧ ¬𝑃 (𝑏) ∧ ¬𝑃 (𝑐) ∧ ...
≡ ∀𝑥¬𝑃 (𝑥)

Essa relação também nos permite escrever as seguintes equivalências:

• ∀𝑥𝑃 (𝑥) ≡ ¬∃𝑥¬𝑃 (𝑥)

• ∃𝑥𝑃 (𝑥) ≡ ¬∀𝑥¬𝑃 (𝑥)

A primeira equivalência se traduz para: todo x possui a proriedade P é o mesmo que não existe
x que não possua a propriedade P. A segunda equivalência se traduz para: existe x que possui a
propriedade P é o mesmo que não é verdade que todo x não possui a propriedade P.
Exemplo: Reescreva a sentença a seguir: Não existe baleia que seja réptil.
Seja o domínio 𝐷 o conjunto dos animais e os predicados a seguir:

• 𝐵(𝑥): 𝑥 é baleia

• 𝑅(𝑥): 𝑥 é réptil

95
A sentença original fica:

¬∃𝑥(𝐵(𝑥) ∧ 𝑅(𝑥)) (182)

Assim, trazendo a negação para o interior da fórmula, temos:

¬∃𝑥(𝐵(𝑥) ∧ 𝑅(𝑥)) ≡ ∀𝑥(¬(𝐵(𝑥) ∧ 𝑅(𝑥))) (183)

Aplicando a lei de De Morgan, podemos escrever:

∀𝑥(¬(𝐵(𝑥) ∧ 𝑅(𝑥))) ≡ ∀𝑥(¬𝐵(𝑥) ∨ ¬𝑅(𝑥)) (184)

Por fim, pela equivalência da condicional, chega-se em:

∀𝑥(¬𝐵(𝑥) ∨ ¬𝑅(𝑥)) ≡ ∀𝑥(𝐵(𝑥) → ¬𝑅(𝑥)) (185)

o que se traduz para: Todas as baleias não são répteis.


Exemplo: Reescreva a sentença a seguir: Nem tudo que reluz é ouro.
Seja o domínio 𝐷 o conjunto dos objetos e os predicados a seguir:

• 𝑅(𝑥): 𝑥 reluz

• 𝑂(𝑥): 𝑥 é ouro

A sentença original fica:

¬∀𝑥(𝑅(𝑥) → 𝑂(𝑥)) (186)

Assim, trazendo a negação para o interior da fórmula, temos:

¬∀𝑥(𝑅(𝑥) → 𝑂(𝑥)) ≡ ∃𝑥(¬(𝑅(𝑥) → 𝑂(𝑥))) (187)

Pela a equivalência da condicional, podemos escrever:

∃𝑥(¬(𝑅(𝑥) → 𝑂(𝑥))) ≡ ∃𝑥(¬(¬𝑅(𝑥) ∨ 𝑂(𝑥))) (188)

Por fim, aplicando a lei de De Morgan, chega-se em:

∃𝑥(¬(¬𝑅(𝑥) ∨ 𝑂(𝑥))) ≡ ∃𝑥(𝑅(𝑥) ∧ ¬𝑂(𝑥))) (189)

o que se traduz para: Existe algo que reluz e não é ouro.


Exemplo: Reescreva a sentença a seguir: Nem todo ator americano é famoso.
Seja o domínio 𝐷 o conjunto das pessoas e os predicados a seguir:

• 𝐴(𝑥): 𝑥 é ator

96
• 𝑀 (𝑥): 𝑥 é americano

• 𝐹 (𝑥): 𝑥 é famoso

A sentença original fica:

¬∀𝑥((𝐴(𝑥) ∧ 𝑀 (𝑥)) → 𝐹 (𝑥)) (190)

Assim, trazendo a negação para o interior da fórmula, temos:

∃𝑥(¬((𝐴(𝑥) ∧ 𝑀 (𝑥)) → 𝐹 (𝑥))) (191)

Pela a equivalência da condicional, podemos escrever:

∃𝑥(¬(¬(𝐴(𝑥) ∧ 𝑀 (𝑥)) ∨ 𝐹 (𝑥))) (192)

Por fim, aplicando a lei de De Morgan, chega-se em:

∃𝑥((𝐴(𝑥) ∧ 𝑀 (𝑥)) ∨ ¬𝐹 (𝑥)) (193)

o que se traduz para: Existe ator americano que não é famoso.


Exemplo: Mostre a seguinte equivalência:

¬∃𝑥(𝐴(𝑥) ∧ (𝐵(𝑥) → ¬𝐶(𝑥))) ≡ ∀𝑥(𝐴(𝑥) → (𝐵(𝑥) ∧ 𝐶(𝑥))) (194)

Iniciamos resolvendo a negação do quantificador e com a equivalência da condicional:

¬∃𝑥(𝐴(𝑥) ∧ (𝐵(𝑥) → ¬𝐶(𝑥))) ≡ ∀𝑥(¬(𝐴(𝑥) ∧ (¬𝐵(𝑥) ∨ ¬𝐶(𝑥)))) (195)

Aplicando a lei de De Morgan, temos:

∀𝑥(¬(𝐴(𝑥) ∧ (¬𝐵(𝑥) ∨ ¬𝐶(𝑥)))) ≡ ∀𝑥(¬𝐴(𝑥) ∨ ¬(¬𝐵(𝑥) ∨ ¬𝐶(𝑥))) (196)

Novamente, aplicando a lei de De Morgan, chega-se em:

∀𝑥(¬𝐴(𝑥) ∨ ¬(¬𝐵(𝑥) ∨ ¬𝐶(𝑥))) ≡ ∀𝑥(¬𝐴(𝑥) ∨ (𝐵(𝑥) ∧ 𝐶(𝑥))) (197)

Por fim, com a equivalência da condicional podemos escrever:

∀𝑥(¬𝐴(𝑥) ∨ (𝐵(𝑥) ∧ 𝐶(𝑥))) ≡ ∀𝑥(𝐴(𝑥) → (𝐵(𝑥) ∧ 𝐶(𝑥))) (198)

o que conclui a demonstração.


Exercício: Mostre a equivalência a seguir:

¬∀𝑥(¬𝐴(𝑥) → (𝐵(𝑥) ∧ 𝐶(𝑥))) ≡ ∃𝑥(¬𝐴(𝑥) ∧ (𝐵(𝑥) → ¬𝐶(𝑥))) (199)

97
10.7 Considerações finais
A lógica de predicados revela-se como um marco fundamental no estudo da lógica matemática,
integrando rigor formal, expressividade semântica e aplicações práticas. Ao longo deste capítulo,
exploramos suas três dimensões centrais - sintaxe, semântica e a interface com a linguagem natu-
ral - consolidando-a como um sistema capaz de modelar não apenas argumentos matemáticos, mas
também raciocínios cotidianos complexos.
A sintaxe, com sua estrutura hierárquica de termos, predicados e quantificadores, oferece um ar-
cabouço preciso para representar relações e generalizações. Ao definir regras claras para a construção
de fórmulas, ela permite formalizar afirmações que a lógica proposicional não poderia capturar, como
"Todo número tem um sucessor", ∀𝑥∃𝑦(𝑦 = 𝑥+1). No entanto, essa riqueza estrutural exige cuidado:
a complexidade de fórmulas com quantificadores aninhados ou funções evidencia a necessidade de
disciplina na manipulação simbólica.
Já a semântica conecta a sintaxe ao significado, atribuindo vida às fórmulas por meio de modelos,
domínios e interpretações. A noção de verdade em um modelo mostra que a validade lógica não
é absoluta, mas relativa a contextos. Esse poder descritivo, porém, traz desafios intransponíveis:
a indecidibilidade da lógica de predicados, estabelecida por Church, revela que não há algoritmo
geral para determinar a validade de todas as fórmulas. Assim, enquanto a lógica proposicional é
mecanicamente verificável (via tabelas-verdade), a Lógica de Predicados exige métodos heurísticos,
aproximações ou restrições a fragmentos decidíveis (como a lógica monádica).
A tradução da linguagem natural para a lógica de predicados ilustra tanto sua utilidade quanto
suas limitações. Ao mapear frases como "Algum estudante ama todos os livros", percebemos sua
capacidade de desvendar a estrutura lógica oculta na comunicação humana. Contudo, ambiguidades,
pronomes implícitos e generalizações vagas (ex.: "quase todos") expõem fronteiras onde a formaliza-
ção clássica é insuficiente, demandando extensões como lógicas modais ou difusas.
Essa tensão entre expressividade e complexidade é central na lógica de predicados. Seu poder de
representação a torna indispensável em campos como inteligência artificial (para bancos de dados e
planejamento), filosofia (para análise de argumentos) e ciência da computação (em verificação formal
de sistemas). Por outro lado, sua indecidibilidade lembra-nos que a busca por automação total esbarra
em limites teóricos intransponíveis, exigindo criatividade e adaptação.
Por fim, este capítulo não apenas descreve um sistema lógico, mas convida à reflexão sobre a
natureza do pensamento estruturado. A lógica de predicados não é apenas uma ferramenta técnica
— é uma linguagem que desvenda como organizamos e comunicamos conhecimento. Seu estudo
prepara o terreno para explorar temas avançados, como lógicas de ordem superior, teorias de modelos
e aplicações em linguística computacional, onde a dança entre forma e significado continua a inspirar
descobertas. Assim, concluímos que a lógica de predicados é tanto um fim quanto um meio. Como
fim, consolida-se como a linguagem padrão da matemática; como meio, desafia-nos a transcender
limites, questionar pressupostos e, acima de tudo, manter viva a curiosidade pelo fundamento lógico
que sustenta o mundo das ideias.

98
11 Técnicas dedutivas na lógica de predicados
As técnicas dedutivas na lógica de predicados são métodos formais para derivar conclusões válidas
a partir de premissas, utilizando regras que manipulam fórmulas com quantificadores, variáveis e
predicados. Essas técnicas estendem os sistemas de prova da lógica proposicional, incorporando
mecanismos para lidar com generalizações universais e existenciais, além de relações complexas
entre objetos.
A importância dessas técnicas reside em sua capacidade de formalizar argumentos matemáticos,
verificar consistência em bancos de dados e suportar aplicações em inteligência artificial (i.e., pla-
nejamento automatizado). Assim, as técnicas dedutivas equilibram rigor formal e eficiência prática,
consolidando-se como pilares para a fundamentação da lógica, da computação teórica e da filosofia
analítica.
Para provar a validade de argumentos com quantificadores, precisamos transformar tais argumen-
tos por meio das operações de exemplificação e generalização. A exemplificação nada mais é que
a passagem de funções proposicionais para proposições, e a generalização reverte o processo, trans-
formando proposições em funções proposicionais. Existem 2 tipos de exemplificação e 2 tipos de
generalização, conforme veremos a seguir:

1. Exemplificação existencial (EE): se existe um termo associado ao predicado 𝑃 , estipulamos


que tal termo seja uma constante 𝑐.
∃𝑥𝑃 (𝑥)
(200)
𝑃 (𝑐)

2. Exemplificação universal (EU): se todos os termos estão associados ao predicado 𝑃 , escolhe-


mos qualquer um deles, por exemplo, 𝑐.
∀𝑥𝑃 (𝑥)
(201)
𝑃 (𝑐)

3. Generalização existencial (GE): se concluirmos que 𝑐 está associado ao predicado 𝑃 , então


existe um termo 𝑥 associado a 𝑃 .
𝑃 (𝑐)
(202)
∃𝑥𝑃 (𝑥)

4. Generalização universal (GU): se o termo 𝑐 tomado na exemplificação pode ser qualquer um


(arbitrário), então qualquer termo 𝑥 está associado ao predicado 𝑃 .
𝑃 (𝑐)
(203)
∀𝑥𝑃 (𝑥)

A seguir, veremos diversos exemplos de como provar argumentos na lógica de predicados utili-
zando regras de inferência, exemplificação e generalização.

99
Exemplo: Prove a validade do seguinte argumento:
Todos os jogadores de futebol são atletas.
Todos os atletas sofrem contusões.
Logo, todos os jogadores sofrem contusões.
Considere o domínio 𝐷 como o conjunto das pessoas e os seguintes predicados:

• 𝐽(𝑥): 𝑥 é jogador de futebol.

• 𝐴(𝑥): 𝑥 é atleta.

• 𝐶(𝑥): 𝑥 sofre contusões.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐽(𝑥) → 𝐴(𝑥)), ∀𝑥(𝐴(𝑥) → 𝐶(𝑥)) ⊢ ∀𝑥(𝐽(𝑥) → 𝐶(𝑥)) (204)

1. ∀𝑥(𝐽(𝑥) → 𝐴(𝑥)) Premissa


2. ∀𝑥(𝐴(𝑥) → 𝐶(𝑥)) Premissa
3. 𝐽(𝑘) → 𝐴(𝑘) EU (1)
4. 𝐴(𝑘) → 𝐶(𝑘) EU (2)
5. 𝐽(𝑘) → 𝐶(𝑘) SH (3, 4)
6. ∀𝑥(𝐽(𝑥) → 𝐶(𝑥)) GU (5)

Exemplo: Prove a validade do seguinte argumento:


Todos que estavam doentes foram medicados.
Alguns não foram medicados.
Logo, nem todos estavam doentes.
Considere o domínio 𝐷 como o conjunto das pessoas e os seguintes predicados:

• 𝐷(𝑥): 𝑥 estava doente

• 𝑀 (𝑥): 𝑥 foi medicado.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐷(𝑥) → 𝑀 (𝑥)), ∃𝑥¬𝑀 (𝑥) ⊢ ∃𝑥¬𝐷(𝑥) (205)

1. ∀𝑥(𝐷(𝑥) → 𝑀 (𝑥)) Premissa


2. ∃𝑥¬𝑀 (𝑥) Premissa
3. ¬𝑀 (𝑐) EE (2)
4. 𝐷(𝑐) → 𝑀 (𝑐) EU (1)
5. ¬𝐷(𝑐) MT (3, 4)
6. ∃𝑥¬𝐷(𝑥) GU (5)

100
Exemplo: Prove a validade do seguinte argumento:
Todos que gostam de mar bravo são surfistas.
Alguns gostam de mar bravo e não gostam de jogar futebol.
Logo, há alguns surfistas que não gostam de jogar futebol.
Considere o domínio 𝐷 como o conjunto das pessoas e os seguintes predicados:

• 𝑀 (𝑥): 𝑥 gosta de mar bravo.

• 𝐵(𝑥): 𝑥 gosta de jogar futebol.

• 𝑆(𝑥): 𝑥 é surfista.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝑀 (𝑥) → 𝑆(𝑥)), ∃𝑥(𝑀 (𝑥) ∧ ¬𝐵(𝑥)) ⊢ ∃𝑥(𝑆(𝑥) ∧ ¬𝐵(𝑥)) (206)

1. ∀𝑥(𝑀 (𝑥) → 𝑆(𝑥)) Premissa


2. ∃𝑥(𝑀 (𝑥) ∧ ¬𝐵(𝑥)) Premissa
3. 𝑀 (𝑐) ∧ ¬𝐵(𝑐) EE (2)
4. 𝑀 (𝑐) → 𝐵(𝑐) EU (1)
5. 𝑀 (𝑐) Simp (3)
6. 𝑆(𝑐) MP (4, 5)
7. ¬𝐵(𝑐) Simp (3)
8. 𝑆(𝑐) ∧ ¬𝐵(𝑐) Conj (6, 7)
9. ∃𝑥(𝑆(𝑥) ∧ ¬𝐵(𝑥)) GE (8)

Exemplo: Prove a validade do seguinte argumento:

Ácidos ou bases são produtos químicos.


O vinagre é um ácido.
Logo, o vinagre é um produto químico.
Considere o domínio 𝐷 como o conjunto das substâncias, 𝑣 é a constante que representa a subs-
tância vinagre e os seguintes predicados:

• 𝐴(𝑥): 𝑥 é ácido.

• 𝐵(𝑥): 𝑥 é base.

• 𝑃 (𝑥): 𝑥 é produto químico.

101
Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥((𝐴(𝑥) ∨ 𝐵(𝑥)) → 𝑃 (𝑥)), 𝐴(𝑣) ⊢ 𝑃 (𝑣) (207)

1. ∀𝑥((𝐴(𝑥) ∨ 𝐵(𝑥)) → 𝑃 (𝑥)) Premissa


2. 𝐴(𝑣) Premissa
3. (𝐴(𝑣) ∨ 𝐵(𝑣)) → 𝑃 (𝑣) EU (1)
4. 𝐴(𝑣) ∨ 𝐵(𝑣) Adi (2)
5. 𝑃 (𝑣) MP (3, 4)

Exemplo: Construa uma prova formal para o argumento a seguir:


Qualquer material apropriado resiste a pressão.
Não existe um metal que resista a pressão.
Logo, nenhum materil apropriado é metal.
Considere o domínio 𝐷 como o conjunto dos materiais e os seguintes predicados:

• 𝐴(𝑥): 𝑥 é apropriado.

• 𝑀 (𝑥): 𝑥 é metal.

• 𝑃 (𝑥): 𝑥 resiste a pressão.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐴(𝑥) → 𝑃 (𝑥)), ¬∃𝑥(𝑀 (𝑥) ∧ 𝑃 (𝑥)) ⊢ ¬∃𝑥(𝐴(𝑥) ∧ 𝑀 (𝑥)) (208)

1. ∀𝑥(𝐴(𝑥) → 𝑃 (𝑥)) Premissa


2. ¬∃𝑥(𝑀 (𝑥) ∧ 𝑃 (𝑥)) Premissa
3. ∀𝑥(¬(𝑀 (𝑥) ∧ 𝑃 (𝑥))) Negação (2)
4. ∀𝑥(¬𝑀 (𝑥) ∨ ¬𝑃 (𝑥)) DM (3)
5. ∀𝑥(𝑀 (𝑥) → ¬𝑃 (𝑥)) IC (4)
6. 𝐴(𝑐) → 𝑃 (𝑐) EU (1)
7. 𝑀 (𝑐) → ¬𝑃 (𝑐) EU (5)
8. ¬¬𝑃 (𝑐) → 𝑀 (𝑐) CP (7)
9. 𝑃 (𝑐) → 𝑀 (𝑐) DN (8)
10. 𝐴(𝑐) → ¬𝑀 (𝑐) SH (6, 9)
11. ∀𝑥(𝐴(𝑥) → ¬𝑀 (𝑥)) GU (10)
12. ¬¬∀𝑥(𝐴(𝑥) → ¬𝑀 (𝑥)) DN (11)
13. ¬∃𝑥(¬(𝐴(𝑥) → ¬𝑀 (𝑥))) Equiv (12)
14. ¬∃𝑥(¬(¬𝐴(𝑥) ∨ ¬𝑀 (𝑥))) Equiv (13)
15. ¬∃𝑥(𝐴(𝑥) ∧ 𝑀 (𝑥)) DM (14)

102
Exemplo: Prove o argumento a seguir:

∀𝑥(𝑃 (𝑥) → ¬𝐷(𝑥)), ∀𝑥(𝐹 (𝑥) → 𝐷(𝑥)) ⊢ ∀𝑥(𝑃 (𝑥) → ¬𝐹 (𝑥)) (209)

1. ∀𝑥(𝑃 (𝑥) → ¬𝐷(𝑥)) Premissa


2. ∀𝑥(𝐹 (𝑥) → 𝐷(𝑥)) Premissa
3. 𝑃 (𝑐) → ¬𝐷(𝑐) EU (1)
4. 𝐹 (𝑐) → 𝐷(𝑐) EU (2)
5. ¬𝐷(𝑐) → ¬𝐹 (𝑐) CP (4)
6. 𝑃 (𝑐) → ¬𝐹 (𝑐) SH (3, 5)
7. ∀𝑥(𝑃 (𝑥) → ¬𝐹 (𝑥)) GU (6)

Exemplo: Prove o argumento a seguir:

∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)), ∃𝑥𝐹 (𝑥) ⊢ ∃𝑥𝐺(𝑥) (210)

1. ∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)) Premissa


2. ∃𝑥𝐹 (𝑥) Premissa
3. 𝐹 (𝑐) EE (2)
4. 𝐹 (𝑐) → 𝐺(𝑐) EU (1)
5. 𝐺(𝑐) MP (3, 4)
6. ∃𝑥𝐹 (𝑥) GE (5)

Exemplo: Prove o argumento a seguir:

∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)), ∃𝑥(𝐹 (𝑥) ∧ 𝐻(𝑥)) ⊢ ∃𝑥(𝐺(𝑥) ∧ 𝐻(𝑥)) (211)

1. ∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)) Premissa


2. ∃𝑥(𝐹 (𝑥) ∧ 𝐻(𝑥)) Premissa
3. 𝐹 (𝑐) ∧ 𝐻(𝑐) EE (2)
4. 𝐹 (𝑐) → 𝐺(𝑐) EU (1)
5. 𝐹 (𝑐) Simp (3)
6. 𝐺(𝑐) MP (4, 5)
7. 𝐻(𝑐) Simp (3)
8. 𝐺(𝑐) ∧ 𝐻(𝑐) Conj (6, 7)
9. ∃𝑥(𝐺(𝑥) ∧ 𝐻(𝑥)) GE (8)

103
Exemplo: Construa uma prova formal para o argumento a seguir:
Todos os jogadores do time trouxeram contrabando.
Todos contrabandista desobedece a lei.
Se alguém desobedece a lei, então deve ser punido.
Robinho é jogador.
Logo, Robinho deve ser punido.
Considere o domínio 𝐷 como o conjunto das pessoas, 𝑟 a constante que representa o elemento
Robinho em 𝐷 e os seguintes predicados:

• 𝐽(𝑥): 𝑥 é jogador do time.

• 𝐶(𝑥): 𝑥 faz contrabando (é contrabandista).

• 𝐷(𝑥): 𝑥 desobedece a lei.

• 𝑃 (𝑥): 𝑥 deve ser punido.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐽(𝑥) → 𝐶(𝑥)), ∀𝑥(𝐶(𝑥) → 𝐷(𝑥)), ∀𝑥(𝐷(𝑥) → 𝑃 (𝑥)), 𝐽(𝑟) ⊢ 𝑃 (𝑟) (212)

1. ∀𝑥(𝐽(𝑥) → 𝐶(𝑥)) Premissa


2. ∀𝑥(𝐶(𝑥) → 𝐷(𝑥)) Premissa
3. ∀𝑥(𝐷(𝑥) → 𝑃 (𝑥)) Premissa
4. 𝐽(𝑟) Premissa
5. 𝐽(𝑟) → 𝐶(𝑟) EU (1)
6. 𝐶(𝑟) → 𝐷(𝑟) EU (2)
7. 𝐷(𝑟) → 𝑃 (𝑟) EU (3)
8. 𝐽(𝑟) → 𝐷(𝑟) SH (5, 6)
9. 𝐽(𝑟) → 𝑃 (𝑟) SH (8, 7)
10. 𝑃 (𝑟) MP (4, 9)

Exemplo: Construa uma prova formal para o argumento a seguir:


Todos os franceses são amáveis.
As pessoas amáveis são generosas.
As pessoas generosas são honestas.
Existem industriais desonestos.
Logo, nem todo industrial é francês.
Considere o domínio 𝐷 como o conjunto das pessoas e os seguintes predicados:

• 𝐹 (𝑥): 𝑥 é francês.

104
• 𝐴(𝑥): 𝑥 é amável.

• 𝐺(𝑥): 𝑥 é generoso.

• 𝐻(𝑥): 𝑥 é honesto.

• 𝐼(𝑥): 𝑥 é industrial.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐹 (𝑥) → 𝐴(𝑥))


∀𝑥(𝐴(𝑥) → 𝐺(𝑥))
∀𝑥(𝐺(𝑥) → 𝐻(𝑥)) (213)
∃𝑥(𝐼(𝑥) ∧ ¬𝐻(𝑥))
¬∀𝑥(𝐼(𝑥) → 𝐹 (𝑥))

1. ∀𝑥(𝐹 (𝑥) → 𝐴(𝑥)) Premissa


2. ∀𝑥(𝐴(𝑥) → 𝐺(𝑥)) Premissa
3. ∀𝑥(𝐺(𝑥) → 𝐻(𝑥)) Premissa
4. ∃𝑥(𝐼(𝑥) ∧ ¬𝐻(𝑥)) Premissa
5. 𝐼(𝑎) ∧ ¬𝐻(𝑎) EE (4)
6. 𝐺(𝑎) → 𝐻(𝑎) EU (3)
7. 𝐴(𝑎) → 𝐺(𝑎) EU (2)
8. 𝐹 (𝑎) → 𝐴(𝑎) EU (1)
9. ¬𝐻(𝑎) Simp (5)
10. ¬𝐺(𝑎) MT (6, 9)
11. ¬𝐴(𝑎) MT (7, 10)
12. ¬𝐹 (𝑎) MT (8, 11)
13. 𝐼(𝑎) Simp (5)
14. 𝐼(𝑎) ∧ ¬𝐹 (𝑎) Conj (12, 13)
15. ∃𝑥(𝐼(𝑥) ∧ ¬𝐹 (𝑥)) GE (14)
16. ¬¬∃𝑥(𝐼(𝑥) ∧ ¬𝐹 (𝑥)) DN (15)
17. ¬∀𝑥(¬(𝐼(𝑥) ∧ ¬𝐹 (𝑥))) Equiv (16)
18. ¬∀𝑥(¬𝐼(𝑥) ∨ 𝐹 (𝑥)) Equiv (17)
19. ¬∀𝑥(𝐼(𝑥) → 𝐹 (𝑥)) IC (18)

11.1 Prova condicional


Da mesma forma que na lógica proposicional, podemos invocar o teorema da dedução para provar
argumentos na lógica de predicados. Apenas relembrando, o teorema da dedução nos mostra que:

𝑝1 , 𝑝2 , ..., 𝑝𝑛 ⊨ 𝑝 → 𝑞 ⇐⇒ 𝑝1 , 𝑝2 , ..., 𝑝𝑛 , 𝑝 ⊨ 𝑞 (214)

105
A prova condicional na lógica de predicados é uma técnica dedutiva usada para provar implicações
universais da forma ∀𝑥(𝑃 (𝑥) → 𝑄(𝑥)). Ela combina a estrutura da prova condicional da Lógica
Proposicional com as regras de quantificação, garantindo que a generalização universal seja válida.
Aqui está como funciona passo a passo:

1. Escolha de um elemento arbitrário: para provar ∀𝑥(𝑃 (𝑥) → 𝑄(𝑥)), selecione um elemento
arbitrário 𝑐 do domínio 𝐷. A arbitrariedade significa que 𝑐 não tem propriedades especiais além
de pertencer ao domínio.

2. Assunção da hipótese: assuma 𝑃 (𝑐) como hipótese temporária. Essa assunção é feita dentro
de um subprova ou contexto hipotético.

3. Derivação do consequente: usando as regras de inferência e premissas disponíveis, derive


𝑄(𝑐) a partir de 𝑃 (𝑐). Durante essa etapa, é essencial garantir que 𝑐 permaneça arbitrário e não
esteja vinculado a nenhuma suposição externa.

4. Conclusão da implicação: ao final da subprova, descarregue a assunção 𝑃 (𝑐) e conclua


𝑃 (𝑐) → 𝑄(𝑐) usando a regra da introdução da implicação (como na lógica proposicional).

5. Generalização universal: como 𝑐 foi escolhido arbitrariamente, aplique a regra de generaliza-


ção universal para concluir ∀𝑥(𝑃 (𝑥) → 𝑄(𝑥)).

Algumas restrições importantes são:

• Variável arbitrária: a variável 𝑐 não pode aparecer livre em nenhuma premissa. Se 𝑐 estiver
vinculada a alguma restrição externa, a generalização universal será inválida.

• Domínio não vazio: o domínio de discurso deve conter pelo menos um elemento, pois a prova
depende da existência de 𝑐.

A seguir veremos alguns exemplos de prova condicional na lógica de predicados.

Exemplo: Prove o seguinte argumento:

¬𝐹 (𝑎) ∨ ∃𝑥𝐹 (𝑥), ∃𝑥𝐹 (𝑥) → 𝑃 (𝑎) ⊢ 𝐹 (𝑎) → 𝑃 (𝑎) (215)

1. ¬𝐹 (𝑎) ∨ ∃𝑥𝐹 (𝑥) Premissa


2. ∃𝑥𝐹 (𝑥) → 𝑃 (𝑎) Premissa
3. 𝐹 (𝑎) Hip.
4. ∃𝑥𝐹 (𝑥) SD (1, 3)
5. 𝑃 (𝑎) MP (2, 4)
6. 𝐹 (𝑎) → 𝑃 (𝑎) Elim. Hip. (3)

106
Exemplo: Prove o seguinte argumento:

∀𝑥(𝐹 (𝑥) → (𝐺(𝑥) ∨ 𝐻(𝑥))), ∀𝑥¬𝐺(𝑥) ⊢ ∀𝑥𝐹 (𝑥) → ∀𝑥𝐻(𝑥) (216)

1. ∀𝑥(𝐹 (𝑥) → (𝐺(𝑥) ∨ 𝐻(𝑥))) Premissa


2. ∀𝑥¬𝐺(𝑥) Premissa
3. ∀𝑥𝐹 (𝑥) Hip.
4. ¬𝐺(𝑎) EU (2)
5. 𝐹 (𝑎) → (𝐺(𝑎) ∨ 𝐻(𝑎)) EU (1)
6. 𝐹 (𝑎) EU (3)
7. 𝐺(𝑎) ∨ 𝐻(𝑎) MP (5, 6)
8. 𝐻(𝑎) SD (4, 7)
9. ∀𝑥𝐻(𝑥) GU (8)
10. ∀𝑥𝐹 (𝑥) → ∀𝑥𝐻(𝑥) Elim. Hip. (3)

Exemplo: Construa uma prova formal para o argumento a seguir em linguagem natural:
Todos que estudam compreendem a matéria.
Todos que compreendem a matéria passam na prova.
Todos que passam na prova, ficam felizes.
Portanto, se Ana estuda, então ela fica feliz.
Considere o domínio 𝐷 como o conjunto dos estudantes, 𝑎 a constante que representa o elemento
Ana em 𝐷 e os seguintes predicados:

• 𝐸(𝑥): 𝑥 estuda.

• 𝐶(𝑥): 𝑥 compreende a matéria.

• 𝑃 (𝑥): 𝑥 passa na prova.

• 𝐹 (𝑥): 𝑥 fica feliz.

Assim, podemos escrever o argumento na linguagem da lógica de predicados como:

∀𝑥(𝐸(𝑥) → 𝐶(𝑥)), ∀𝑥(𝐶(𝑥) → 𝑃 (𝑥)), ∀𝑥(𝑃 (𝑥) → 𝐹 (𝑥)) ⊢ 𝐸(𝑎) → 𝐹 (𝑎) (217)

107
1. ∀𝑥(𝐸(𝑥) → 𝐶(𝑥)) Premissa
2. ∀𝑥(𝐶(𝑥) → 𝑃 (𝑥)) Premissa
3. ∀𝑥(𝑃 (𝑥) → 𝐹 (𝑥)) Premissa
4. 𝐸(𝑎) Hip.
5. 𝐸(𝑎) → 𝐶(𝑎) EU (1)
6. 𝐶(𝑎) → 𝑃 (𝑎) EU (2)
7. 𝑃 (𝑎) → 𝐹 (𝑎) EU (3)
8. 𝐶(𝑎) MP (4, 5)
9. 𝑃 (𝑎) MP (6, 8)
10. 𝐹 (𝑎) MP (7, 9)
11. 𝐸(𝑎) → 𝐹 (𝑎) Elim. Hip. (4)

11.2 Prova por redução ao absurdo


Assim como na lógica porposicional, podemos utilizar a prova por redução ao absurdo na verifi-
cação de argumentos na lógica de predicados. A validade da prova por redução ao absurdo é garantida
pelo seguinte resultado:

𝑝1 , 𝑝2 , ..., 𝑝𝑛 ⊨ 𝑞 ⇐⇒ 𝑝1 , 𝑝2 , ..., 𝑝𝑛 , ¬𝑞 ⊨ 𝑞 (218)

A prova por redução ao absurdo é uma técnica dedutiva que visa demonstrar a validade de uma
fórmula 𝜑 assumindo sua negação (¬𝜑) e derivando uma contradição. Na Lógica de Predicados, essa
técnica incorpora quantificadores e variáveis, exigindo atenção adicional ao escopo e às regras de
inferência. Em resumo, a prova por redução ao absurdo é composta por 3 passos:

1. Assumir a negação da conclusão como premissa provisória.

2. Derivar uma contradição a partir da utilização das regras de inferência.

3. Obtenção da validade da conclusão.

A prova por redução ao absurdo na Lógica de Predicados é uma ferramenta poderosa, mas exige
rigor na manipulação de quantificadores e variáveis para evitar falhas lógicas. Ela reforça a ideia de
que a negação de uma verdade inevitavelmente leva ao caos lógico. A seguir apreentamos alguns
exemplos de como aplicar a prova por redução ao absurdo na validação de argumentos da lógica de
predicados.

Exemplo: Prove o seguinte argumento utilizando redução por absurdo:

∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥), ¬𝐺(𝑎) ⊢ ¬∀𝑥𝐹 (𝑥) (219)

108
1. ∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥) Premissa
2. ¬𝐺(𝑎) Premissa
3. ¬¬∀𝑥𝐹 (𝑥) Hip.
4. ∀𝑥𝐹 (𝑥) DN (3)
5. ∀𝑥𝐺(𝑥) MP (1, 4)
6. 𝐺(𝑎) EU (5)
7. 𝐺(𝑎) ∧ ¬𝐺(𝑎) Conj (2, 6)
8. ¬∀𝑥𝐹 (𝑥) RA

Exemplo: Prove o seguinte argumento utilizando redução por absurdo:

∀𝑥(𝐹 (𝑥) → ¬𝐺(𝑥)) ⊢ ¬∃𝑥(𝐹 (𝑥) ∧ 𝐺(𝑥)) (220)

1. ∀𝑥(𝐹 (𝑥) → ¬𝐺(𝑥)) Premissa


2. ∃𝑥(𝐹 (𝑥) ∧ 𝐺(𝑥)) Hip.
3. 𝐹 (𝑎) ∧ 𝐺(𝑎) EE (2)
4. 𝐹 (𝑎) → ¬𝐺(𝑎) EU (1)
5. 𝐹 (𝑎) Simp (3)
6. ¬𝐺(𝑎) MP (4, 5)
7. 𝐺(𝑎) Simp (3)
8. 𝐺(𝑎) ∧ ¬𝐺(𝑎) Conj (6, 7)
9. ¬∃𝑥(𝐹 (𝑥) ∧ 𝐺(𝑥)) RA

Exemplo: Prove o seguinte argumento utilizando redução por absurdo:

∀𝑥(𝑃 (𝑥) → 𝑆(𝑥)), 𝑃 (𝑎) ∨ 𝑃 (𝑏) ⊢ ∃𝑥𝐹 (𝑥) (221)

1. ∀𝑥(𝑃 (𝑥) → 𝑆(𝑥)) Premissa


2. 𝑃 (𝑎) ∨ 𝑃 (𝑏) Premissa
3. ¬∃𝑥𝐹 (𝑥) Hip.
4. ∀𝑥¬𝑆(𝑥) Equiv (3)
5. 𝑃 (𝑎) → 𝑆(𝑎) EU (1)
6. ¬𝑆(𝑎) EU (4)
7. ¬𝑃 (𝑎) MT (5, 6)
8. 𝑃 (𝑏) SD (2, 7)
9. 𝑃 (𝑏) → 𝑆(𝑏) EU (1)
10. 𝑆(𝑏) MP (8, 9)
11. ¬𝑆(𝑏) EU (4)
12. 𝑆(𝑏) ∧ ¬𝑆(𝑏) Conj (10, 11)
13. ∃𝑥𝑆(𝑥) RA

109
11.3 Considerações finais
As técnicas dedutivas em Lógica de Predicados — a prova direta, a prova condicional e a prova por
redução ao absurdo — constituem os pilares fundamentais para a construção rigorosa de argumentos
formais. Ao longo deste capítulo, exploramos como cada método não apenas reflete a estrutura lógica
subjacente às afirmações matemáticas e filosóficas, mas também revela a riqueza e a flexibilidade da
Lógica de Predicados em lidar com generalizações, relações complexas e contradições.
A prova direta destaca-se por sua transparência e linearidade, permitindo derivar conclusões a par-
tir de premissas por meio da aplicação sistemática de regras de inferência e manipulação de quantifi-
cadores. Sua força reside na capacidade de construir demonstrações passo a passo, tornando explícita
a cadeia de raciocínio que liga axiomas a teoremas. No entanto, sua eficácia depende da clareza das
premissas e da habilidade em desvendar a estrutura interna das fórmulas, especialmente em contextos
com múltiplos quantificadores aninhados.
Já a prova condicional introduz uma camada estratégica ao permitir assumir hipóteses temporárias,
como no caso de implicações universais. Ao isolar um elemento arbitrário do domínio e trabalhar
dentro de um contexto hipotético, essa técnica ilustra como a generalização emerge da análise de
casos particulares. Sua elegância está na forma como harmoniza a abstração dos quantificadores com
a concretude das instâncias individuais, reforçando a importância do cuidado com variáveis livres e
escopo durante a generalização.
Por fim, a prova por redução ao absurdo revela-se como uma ferramenta poderosa para lidar com
afirmações cuja negação conduz a contradições inevitáveis. Ao assumir a falsidade da conclusão
desejada e derivar um absurdo, esse método não apenas valida teoremas de existência ou universali-
dade, mas também expõe a coerência intrínseca dos sistemas formais. Na Lógica de Predicados, essa
técnica ganha complexidade adicional devido à interação entre quantificadores e negação, exigindo
domínio de equivalências lógicas.
Apesar de suas diferenças, essas técnicas são complementares. Enquanto a prova direta e a con-
dicional enfatizam a construção positiva de argumentos, a redução ao absurdo opera pela negação
e refutação. Juntas, elas oferecem um repertório completo para abordar problemas que vão desde a
fundamentação da matemática até a verificação formal de algoritmos.
Este capítulo não esgota o estudo das técnicas dedutivas, mas abre portas para explorar horizontes
mais amplos. A prova direta, a condicional e a redução ao absurdo são mais que ferramentas —
são manifestações da busca humana por clareza e verdade em um universo de estruturas formais.
Ao dominá-las, o estudante não apenas adquire habilidades para resolver problemas complexos, mas
também desenvolve uma mentalidade crítica, capaz de discernir padrões, evitar falácias e apreciar a
beleza da lógica como linguagem universal do pensamento estruturado.

110
12 O método do tableaux analítico na lógica de predicados
O método do tableaux semântico é uma técnica de prova utilizada na lógica proposicional e na
lógica de predicados para determinar a validade de argumentos. Ele baseia-se na tentativa de cons-
truir um contraexemplo para a conclusão de um argumento, explorando sistematicamente todas as
possibilidades para verificar se existe um caso em que as premissas sejam verdadeiras e a conclusão
falsa.
É uma técnica de prova formal que utiliza uma estrutura de árvore para verificar a validade de
argumentos ou a consistência de fórmulas. Na Lógica de Predicados, ele estende o método proposi-
cional, incorporando regras para lidar com quantificadores universais (∀) e existenciais (∃), além de
variáveis, constantes e funções.
Relembrando as regras semânticas dos operadores lógicos, temos as seguintes possibilidades:

𝛼∧𝛽 ¬(𝛼 ∨ 𝛽)
¬¬𝛼 ¬(𝛼 ∧ 𝛽) 𝛼∨𝛽
𝛼 ¬𝛼
𝛼 ¬𝛼 ¬𝛽 𝛼 𝛽
𝛽 ¬𝛽

¬(𝛼 → 𝛽) 𝛼 ⇐⇒ 𝛽 ¬(𝛼 ⇐⇒ 𝛽)
𝛼→𝛽
𝛼 𝛼 ¬𝛼 𝛼 ¬𝛼
¬𝛼 𝛽
¬𝛽 𝛽 ¬𝛽 ¬𝛽 𝛽
A seguir, iremos apresentar diversos exemplos de como utilizar o método do tableaux analítico
na prova de argumentos na lógica de predicados. Ao invés de negar todo o argumento na sua forma
condicional, é possível apenas negar a conclusão, assim como fazemos na prova por resolução. O
exemplo a seguir ilustra essa abordagem.
Exemplo: Prove a validade do argumento a seguir utilizando o método do tableaux analítico com
a negação da conclusão:

∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)), ∀𝑥𝐹 (𝑥) ⊢ 𝐺(𝑎) (222)

Devemos iniciar copiando as premissas e a negação da conclusão e então aplicar as regras semân-
ticas para desenvolver o tableaux analítico.

1. ∀𝑥(𝐹 (𝑥) → 𝐺(𝑥)) Premissa


2. ∀𝑥𝐹 (𝑥) Premissa
3. ¬𝐺(𝑎) Hip.
4. 𝐹 (𝑎) → 𝐺(𝑎) (1)
5. 𝐹 (𝑎) (2)

6. ¬𝐹 (𝑎) 𝐺(𝑎) (4)


⊗ ⊗

111
Portanto, como todos os ramos estão fechados, o argumento é válido!
Exemplo: Prove a validade do argumento a seguir com o método do tableaux analítico com a
negação de todo argumento na forma condicional:

∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥), ¬∀𝑥𝐺(𝑥) ⊢ ¬∀𝑥𝐹 (𝑥) (223)

O primeiro passo consiste em escrever o argumento na forma condicional:

((∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥)) ∧ (¬∀𝑥𝐺(𝑥))) → ¬∀𝑥𝐹 (𝑥) (224)

1. ¬(((∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥)) ∧ (¬∀𝑥𝐺(𝑥))) → ¬∀𝑥𝐹 (𝑥))


2. (∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥)) ∧ (¬∀𝑥𝐺(𝑥)) (1)
3. ∀𝑥𝐹 (𝑥) (1)
4. ∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥) (2)
5. ¬∀𝑥𝐺(𝑥) (2)
6. ∃𝑥¬𝐺(𝑥) (5)
7. ¬𝐺(𝑎) IE (6)

8. ¬∀𝑥𝐹 (𝑥) ∀𝑥𝐺(𝑥) (4)


9. ∃𝑥¬𝐹 (𝑥) (8)
10. ¬𝐹 (𝑎) IE(9)
11. 𝐹 (𝑎) IU(3)
12. ⊗ 𝐺(𝑎) IU (8)

Portanto, como todos os ramos estão fechados, o argumento é válido!


Note que, assim como nas técnicas dedutivas, deve-se instanciar primeiramente os quantificadores
existenciais, pois assim é possível escolher o mesmo elemento na instanciação universal. A recomen-
dação de exemplificar primeiro os quantificadores existenciais e depois os universais em deduções na
lógica de predicados está ligada a estratégias para evitar erros de escopo, garantir a correta manipu-
lação de variáveis e otimizar a construção de provas. Esse princípio é essencial devido às diferenças
fundamentais entre as regras de inferência para os quantificadores existencial euniversal.
A regra da instanciação existencial exige a introdução de uma nova constante (ou variável) que
não esteja presente anteriormente na prova. Por exemplo, de ∃𝑥𝑃 (𝑥), derivamos 𝑃 (𝑐), onde 𝑐 é uma
constante nova. Se aplicarmos primeiro o universal, poderíamos usar uma variável já existente, ge-
rando conflitos. A regra da instanciação universal permite substituir 𝑥 por qualquer termo do domínio
(constantes, variáveis ou funções). Portanto, após introduzir uma constante nova via ∃, podemos
usá-la com ∀.
Em resumo, a priorização da instanciação existencial antes da universal é uma convenção estraté-
gica que:

112
• Preserva a integridade das variáveis e constantes.

• Respeita a dependência lógica entre quantificadores.

• Otimiza a construção de provas, evitando armadilhas comuns.

Essa abordagem é adotada em sistemas formais como dedução natural, tableaux semânticos e
métodos de resolução, garantindo coerência e eficácia na manipulação de argumentos complexos.
Exemplo: Prove a validade do argumento a seguir utilizando o método do tableaux analítico:

∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥), ¬∃𝑥𝐺(𝑥) ⊢ ∃𝑥¬𝐹 (𝑥) (225)

Devemos iniciar copiando as premissas e a negação da conclusão e então aplicar as regras semân-
ticas para desenvolver o tableaux analítico.

1. ∀𝑥𝐹 (𝑥) → ∀𝑥𝐺(𝑥) Premissa


2. ¬∃𝑥𝐺(𝑥) Premissa
3. ¬∃𝑥¬𝐹 (𝑥) Hip.
4. ∀𝑥¬𝐺(𝑥) Equiv. (2)
5. ∀𝑥𝐹 (𝑥) Equiv. (3)

6. ¬∀𝑥𝐹 (𝑥) ∀𝑥𝐺(𝑥) (1)


7. ∃𝑥¬𝐹 (𝑥)
8. ¬𝐹 (𝑎) IE (7)
9. 𝐹 (𝑎) IU (5)
10. ⊗ 𝐺(𝑎) IU (6)
11. ¬𝐺(𝑎) IU (4)

Portanto, como todos os ramos estão fechados, o argumento é válido!


Exemplo: Prove a validade do argumento a seguir utilizando o método do tableaux analítico:

∃𝑥(𝐹 (𝑥) ∧ 𝐺(𝑥) ⊢ ∃𝑥𝐹 (𝑥) ∧ ∃𝑥𝐺(𝑥) (226)

Devemos iniciar copiando as premissas e a negação da conclusão e então aplicar as regras semân-
ticas para desenvolver o tableaux analítico.

113
1. ∃𝑥(𝐹 (𝑥) ∧ 𝐺(𝑥)) Premissa
2. ¬(∃𝑥𝐹 (𝑥) ∧ ∃𝑥𝐺(𝑥)) Hip.
3. 𝐹 (𝑎) ∧ 𝐺(𝑎) IE (1)
4. 𝐹 (𝑎) (3)
5. 𝐺(𝑎) (3)

6. ¬∃𝑥𝐹 (𝑥) ¬∃𝑥𝐺(𝑥) (2)


7. ∀𝑥¬𝐹 (𝑥) Equiv. (6)
8. ¬𝐹 (𝑎) IU (7)
9. ⊗ ∀𝑥¬𝐺(𝑥) Equiv. (6)
10. ¬𝐺(𝑎) IU (10)

Portanto, como todos os ramos estão fechados, o argumento é válido!

Exemplo: Construa uma dedução formal para o argumento a seguir em linguagem natural usando
a prova condicional:
Todos que estudam lógica compreendem argumentos válidos.
Todos que compreendem argumentos válidos são bons debatedores.
Todos que são bons debatedores são capazes de influenciar pessoas.
Maria estuda lógica.
Portanto, Maria é capaz de influenciar pessoas.
Considere o domínio 𝐷 como o conjunto das pessoas, 𝑚 a constante que representa o elemento
Maria em 𝐷 e os seguintes predicados:

• 𝐿(𝑥): 𝑥 estuda lógica.

• 𝐶(𝑥): 𝑥 compreende argumentos válidos.

• 𝐷(𝑥): 𝑥 é um bom debatedor.

• 𝐼(𝑥): 𝑥 é capaz de influenciar pessoas.

Assim, o argumento pode ser excrito na linguagem da lógica de predicados como:

∀𝑥(𝐿(𝑥) → 𝐶(𝑥)), ∀𝑥(𝐶(𝑥) → 𝐷(𝑥)), ∀𝑥(𝐷(𝑥) → 𝐼(𝑥)), 𝐿(𝑚) ⊢ 𝐼(𝑚) (227)

Devemos iniciar copiando as premissas e a negação da conclusão e então aplicar as regras semân-
ticas para desenvolver o tableaux analítico.

114
1. ∀𝑥(𝐿(𝑥) → 𝐶(𝑥)) Premissa
2. ∀𝑥(𝐶(𝑥) → 𝐷(𝑥)) Premissa
3. ∀𝑥(𝐷(𝑥) → 𝐼(𝑥)) Premissa
4. 𝐿(𝑚) Premissa
5. ¬𝐼(𝑚) Hip.
6. 𝐿(𝑚) → 𝐶(𝑚) IU (1)
7. 𝐶(𝑚) → 𝐷(𝑚) IU (2)
8. 𝐷(𝑚) → 𝐼(𝑚) IU (3)

9. ¬𝐿(𝑚) 𝐶(𝑚) (6)



10. ¬𝐶(𝑚) 𝐷(𝑚) (7)

11. ¬𝐷(𝑚) 𝐼(𝑚)
⊗ ⊗

Como todos os ramos do tableaux estão fechados, a conclusão é de que o argumento é válido.

12.1 Considerações finais


O método do tableaux analítico na lógica de predicados consolida-se como uma ferramenta in-
dispensável para a análise de argumentos complexos, combinando clareza visual e rigor formal. Ao
longo deste capítulo, exploramos sua capacidade de decompor fórmulas em estruturas ramificadas,
revelando contradições ou modelos possíveis por meio de uma abordagem sistemática. Sua adap-
tação à Lógica de Predicados, com regras específicas para quantificadores universais e existenciais,
demonstra não apenas sua versatilidade, mas também sua profundidade ao lidar com generalizações
e relações entre objetos.
Uma das principais vantagens do método reside em sua intuição semântica. Ao construir uma
árvore de tableaux, cada ramo representa um universo de discurso potencial, onde a presença de
contradições sinaliza a insatisfatibilidade do conjunto de fórmulas. Essa característica o torna par-
ticularmente útil para identificar contraexemplos, oferecendo uma ponte natural entre a sintaxe e a
interpretação concreta das afirmações. Além disso, sua estrutura hierárquica facilita o ensino e a
compreensão de conceitos como escopo de quantificadores e dependência entre variáveis.
No entanto, o método enfrenta desafios significativos. A indecidibilidade da lógica de predicados
implica que, em certos casos (como fórmulas com quantificadores aninhados em domínios infinitos),
a árvore de tableaux pode não terminar, gerando ramificações infinitas. Isso exige estratégias de oti-
mização, como a priorização de regras existenciais antes das universais e a introdução criteriosa de
constantes novas, para evitar redundâncias ou conflitos. Apesar disso, sua aplicação em contextos
práticos — como verificação de consistência em bancos de dados ou suporte a sistemas de inteligên-

115
cia artificial — reforça sua relevância, especialmente quando combinado com técnicas heurísticas e
algoritmos de poda.
Comparado a outros métodos dedutivos, como a resolução ou a dedução natural, o tableaux ana-
lítico destaca-se por sua transparência. Enquanto a resolução opera em forma clausal e a dedução
natural requer uma sequência linear de passos, o tableaux expõe visualmente todas as possibilidades
lógicas, tornando erros mais fáceis de detectar e corrigir. Essa qualidade pedagógica o torna ideal
para o ensino de lógica, permitindo que estudantes visualizem o impacto de cada regra de inferência
e quantificador.
Por fim, é crucial reconhecer que o método dos tableaux não é apenas uma técnica mecânica,
mas uma janela para a estrutura profunda da lógica. Ao desvendar como contradições emergem
da interação entre quantificadores e predicados, ele revela a elegância e a coerência dos sistemas
formais. Seu estudo prepara o terreno para explorar temas avançados, como lógicas não clássicas
(modal, intuicionista) ou extensões para teorias matemáticas específicas.
Este capítulo, portanto, não encerra a jornada, mas convida o leitor a aprofundar-se na arte de
desmontar e reconstruir argumentos. Em um mundo onde a precisão lógica é essencial para a ciência,
a tecnologia e a filosofia, o método dos tableaux analíticos permanece uma bússola confiável —
guiando-nos entre as complexidades do pensamento formal e iluminando os caminhos da verdade
lógica.

116
13 Formas normais em lógica de predicados
A lógica de predicados, com sua capacidade de expressar generalizações e relações complexas por
meio de quantificadores e predicados, é uma ferramenta poderosa para a formalização de argumentos
matemáticos, filosóficos e computacionais. No entanto, a complexidade inerente a suas fórmulas —
especialmente quando combinam múltiplos quantificadores, conectivos lógicos e variáveis — pode
tornar desafiadora a análise direta de validade, consistência ou satisfatibilidade. É nesse contexto que
as formas normais emergem como instrumentos essenciais, oferecendo estruturas padronizadas que
simplificam a manipulação e o estudo sistemático de expressões lógicas.
Neste capítulo, focaremos em duas formas normais fundamentais na lógica de predicados: a forma
normal prenex e a forma normal clausal. A primeira organiza as fórmulas de modo que todos os quan-
tificadores sejam deslocados para o início, separando-os de uma matriz livre de quantificadores. Essa
estrutura não apenas revela com clareza o escopo e a interação entre quantificadores, mas também
prepara o terreno para métodos de prova como os tableaux semânticos ou a resolução. Já a forma nor-
mal clausal, frequentemente utilizada em sistemas automatizados de prova, decompõe fórmulas em
cláusulas (disjunções de literais) precedidas por quantificadores universais, facilitando a aplicação de
algoritmos como o da resolução, que demanda uma estrutura uniforme para operar eficientemente.
A importância dessas formas normais vai além da mera simplificação sintática. Elas são funda-
mentais para os seguintes aspectos:

• Automação de provas: Sistemas como solucionadores SAT e provadores de teoremas depen-


dem de fórmulas padronizadas para implementar estratégias de busca e unificação.

• Análise semântica: A forma prenex, por exemplo, permite isolar quantificadores, tornando
explícitas dependências entre variáveis.

• Teoria de modelos: A conversão para cláusulas auxilia na identificação de contradições e na


construção de interpretações.

Ao longo deste capítulo, exploraremos os algoritmos de conversão para cada forma normal, dis-
cutindo desafios como o tratamento de quantificadores existenciais (via Skolemização) e a eliminação
de conectivos redundantes. Além disso, ilustraremos como essas formas são aplicadas em problemas
reais, desde a verificação de consistência em bases de conhecimento até a otimização de consultas em
bancos de dados.
Ao dominar as formas normais prenex e clausal, o leitor não apenas aprofundará sua compreensão
da estrutura da lógica de predicados, mas também adquirirá ferramentas práticas para enfrentar desa-
fios em áreas como inteligência artificial, ciência da computação e matemática discreta. Prepare-se
para desvendar como a ordem, a padronização e a decomposição podem transformar a complexidade
em clareza.

117
13.1 Forma normal prenex
A forma normal prenex (FNP) é uma maneira padronizada de escrever fórmulas da lógica de
predicados, onde todos os quantificadores aparecem no início da expressão, seguidos por uma fórmula
quantificador-livre chamada de parte matriz. Essa organização permite separar claramente a parte
quantificada da parte proposicional da fórmula, facilitando sua análise e manipulação.

Definição 26 (Forma Normal Prenex) Uma fórmula bem formada da lógica de predicados está na
forma normal prenex (FNP) se e somente se:

(𝑄1 𝑥1 )(𝑄2 𝑥2 )(𝑄3 𝑥3 )...(𝑄𝑛 𝑥𝑛 )𝑀 (228)

onde cada 𝑄𝑖 é um quantificador existencial (∃) ou universal (∀) e 𝑀 é a matriz da fórmula, ou seja,
uma expressão que não contém quantificadores.

A importância da forma normal prenex se dá em diversos aspectos:

• Simplificação da análise lógica: ao isolar os quantificadores, torna-se mais fácil identificar o


escopo e a interação entre eles, o que facilita a aplicação de métodos de prova (e.g., tableaux
semânticos, resolução).

• Preparação para outras formas normais: a forma prenex é um passo intermediário para a
forma normal clausal (usada em resolução) e a forma normal de Skolem (para eliminar quanti-
ficadores existenciais).

• Automação de provas: sistemas automatizados de prova (e.g., provadores de teoremas) fre-


quentemente exigem fórmulas em formas padronizadas para aplicar algoritmos eficientes.

• Clareza estrutural: explicita a hierarquia de quantificadores, ajudando a detectar dependências


entre variáveis (ex.: ∀𝑥∃𝑦𝜑 vs. ∃𝑦∀𝑥𝜑).

• Aplicações em ciência da computação: utilizada em verificação formal de softwares, bancos


de dados e otimização de consultas, onde a estrutura lógica precisa ser analisada rapidamente.

Exemplo: Converta a fórmula a seguir para a FNP:

¬∀𝑥(𝑃 (𝑥) → ∃𝑦𝑄(𝑥, 𝑦)) (229)

Primeiramente, devemos eliminar a implicação, o que nos leva a:

¬∀𝑥(¬𝑃 (𝑥) ∨ ∃𝑦𝑄(𝑥, 𝑦)) (230)

Em seguida, devemos mover a negação para o interior:

∃𝑥¬(¬𝑃 (𝑥) ∨ ∃𝑦𝑄(𝑥, 𝑦)) (231)

118
Aplicando a lei de De Morgan, temos:

∃𝑥(𝑃 (𝑥) ∧ ∀𝑦¬𝑄(𝑥, 𝑦)) (232)

o que nos leva a FNP, dada por:

∃𝑥∀𝑦(𝑃 (𝑥) ∧ ¬𝑄(𝑥, 𝑦)) (233)

Em resumo, a forma normal prenex é uma ferramenta essencial para desvendar a estrutura quan-
tificacional de fórmulas complexas, tornando-as mais acessíveis para análise humana e automatizada.
Sua importância reside na capacidade de padronizar e simplificar expressões lógicas, servindo como
base para métodos avançados de dedução e aplicações práticas em ciência da computação e mate-
mática. Dominar essa forma é um passo crucial para quem busca trabalhar com sistemas formais,
automação de provas ou fundamentos da lógica.

13.2 Forma Normal Clausal


A forma normal clausal (FNC) é uma estrutura padronizada na lógica de predicados em que
fórmulas são convertidas em um conjunto de cláusulas, cada uma sendo uma disjunção de literais
(átomos ou suas negações), precedidas por quantificadores universais. Essa forma é essencial para
métodos automatizados de prova, como a resolução, e simplifica a análise da validade de argumentos.

Definição 27 (Forma Normal Clausal) Uma fórmula bem formada da lógica de predicados está na
forma normal clausal (FNC) se e somente se ela está na FNP e sua matriz 𝑀 for uma conjunção de
disjunções de fórmulas atômicas, negadas ou não.

13.2.1 Método de conversão para FNC

A seguir apresentaremos um algoritmo para a obtenção da forma normal clausal de uma fórmula
arbitrária da lógica de predicados.

1. Eliminar variáveis livres: Se a fórmula 𝛼 tiver uma variável livre 𝑥, devemos substituir por
∃𝑥𝛼, ou seja:
∃𝑥(𝑃 (𝑥, 𝑦) ∨ 𝑄(𝑥)) (234)

deve se transformar em:


∃𝑥∃𝑦(𝑃 (𝑥, 𝑦) ∨ 𝑄(𝑥)) (235)

2. Renomear variáveis quantificadas mais do que uma vez: cada quantificador deve ter sua
própria variável para que não haja ambiguidade, ou seja:

∀𝑥𝑃 (𝑥) → ∀𝑥𝑄(𝑥) (236)

119
deve ser expressa como:
∀𝑥𝑃 (𝑥) → ∀𝑦𝑄(𝑦) (237)

3. Remover equivalências e implicações: devemos utilizar equivalências lógica para remover os


operadors → e ⇐⇒ :
𝛼 → 𝛽 ≡ ¬𝛼 ∨ 𝛽 (238)

𝛼 ⇐⇒ 𝛽 ≡ (¬𝛼 ∨ 𝛽) ∧ (¬𝛽 ∨ 𝛼) (239)

4. Mover a negação para o interior: os quantificadores universais e existenciais não devem


aparecer com o símbolo de negação à esquerda, o escopo das negações deve ser um único
átomo e não devem existir duplas negações:

¬∀𝑥𝛼 ≡ ∃𝑥¬𝛼 (240)

¬∃𝑥𝛼 ≡ ∀𝑥¬𝛼 (241)

¬(𝛼 ∧ 𝛽) ≡ ¬𝛼 ∨ ¬𝛽 (242)

¬(𝛼 ∨ 𝛽) ≡ ¬𝛼 ∧ ¬𝛽 (243)

¬¬𝛼 ≡ 𝛼 (244)

Por exemplo, a fórmula a seguir:

∀𝑥(¬𝑃 (𝑥) ∨ (¬∀𝑦(¬𝑄(𝑥, 𝑦) ∨ 𝑃 (𝑦)))) (245)

deve ser expressa como:


∀𝑥(¬𝑃 (𝑥) ∨ ∃𝑦(𝑄(𝑥, 𝑦) ∧ ¬𝑃 (𝑦))) (246)

5. Skolemização: devemos eliminar os quantificadores existenciais a partir da introdução de fun-


ções de Skolem. Quando o quantificador existencial está dentro do escopo do quantificador
universal, abre-se a possibilidade de que a variável interna 𝑥 depdenda da variável externa 𝑦.
Por exemplo, em:
∀𝑦(∃𝑥𝑃 (𝑥, 𝑦)) (247)

devemos substituir 𝑥 por uma função de Skolem 𝑔(𝑦), gerando:

∀𝑦𝑃 (𝑔(𝑦), 𝑦) (248)

Um outro exemplo mais elaborado consiste na fórmula a seguir:

(∀𝑤𝑄(𝑤)) ∧ (∀𝑥∀𝑦∃𝑧(𝑃 (𝑥, 𝑦, 𝑧) ∨ (∀𝑢𝑅(𝑥, 𝑢, 𝑦, 𝑧)))) (249)

120
que após a Skolemização, torna-se:

(∀𝑤𝑄(𝑤)) ∧ (∀𝑥∀𝑦(𝑃 (𝑥, 𝑦, 𝑔(𝑥, 𝑦)) ∨ (∀𝑢𝑅(𝑥, 𝑢, 𝑦, 𝑔(𝑥, 𝑦))))) (250)

Uma observação relevante consiste em como realizar a Skolemização quando o quantificador


existencial não está no escopo de um quantificador universal, como em ∃𝑥𝑃 (𝑥). Neste caso,
ficamos com 𝑃 (𝑎), onde 𝑎 é uma nova constante.

6. Obter a FNC e remover quantificadores existenciais: neste ponto, cada quantificador uni-
versal tem sua própria variável, sendo que podemos mover todos os ∀ para a frente da fórmula e
deixar que o escopo deles inclua toda a fórmula. Portanto, podemos descartar os quantificadores
universais e trabalhar apenas com a matriz 𝑀 .

7. Converter M para a forma conjuntiva: devemos aplicar regras para diminuir o escopo do
operador ∨, como por exemplo:

(𝛼1 ∧ 𝛼2 ) ∨ 𝛼3 ≡ (𝛼1 ∨ 𝛼3 ) ∧ (𝛼2 ∨ 𝛼3 ) (251)

𝛼1 ∨ (𝛼2 ∧ 𝛼3 ) ≡ (𝛼1 ∨ 𝛼2 ) ∧ (𝛼1 ∨ 𝛼3 ) (252)

A seguir discutimos alguns exemplos de como converter fórmulas da lógica de predicados para a
forma normal clausal (FNC).
Exemplo: Converta a expressão a seguir para a FNC.

∀𝑥(∀𝑦((∃𝑧(𝑃 (𝑥, 𝑧) ∧ 𝑃 (𝑦, 𝑧))) → (∃𝑢𝑄(𝑥, 𝑦, 𝑢)))) (253)

Pela equivalência da condicional, temos:

∀𝑥(∀𝑦(¬(∃𝑧(𝑃 (𝑥, 𝑧) ∧ 𝑃 (𝑦, 𝑧))) ∨ (∃𝑢𝑄(𝑥, 𝑦, 𝑢)))) (254)

Trazendo a negação para o interior, chega-se em:

∀𝑥(∀𝑦(∀𝑧(¬(𝑃 (𝑥, 𝑧) ∧ 𝑃 (𝑦, 𝑧))) ∨ (∃𝑢𝑄(𝑥, 𝑦, 𝑢)))) (255)

Aplicando a lei de De Morgan, podemos escrever:

∀𝑥(∀𝑦(∀𝑧(¬𝑃 (𝑥, 𝑧) ∨ ¬𝑃 (𝑦, 𝑧)) ∨ (∃𝑢𝑄(𝑥, 𝑦, 𝑢)))) (256)

Realizando a Skolemização (remoção dos quantificadores existenciais), temos:

∀𝑥(∀𝑦(∀𝑧(¬𝑃 (𝑥, 𝑧) ∨ ¬𝑃 (𝑦, 𝑧)) ∨ 𝑄(𝑥, 𝑦, 𝑔(𝑥, 𝑦)))) (257)

o que finalmente nos leva a FNC:

121
∀𝑥∀𝑦∀𝑧(¬𝑃 (𝑥, 𝑧) ∨ ¬𝑃 (𝑦, 𝑧) ∨ 𝑄(𝑥, 𝑦, 𝑔(𝑥, 𝑦))) (258)

onde toda a matriz 𝑀 é na verdade uma única cláusula 𝐶, dada por:

𝐶 : ¬𝑃 (𝑥, 𝑧) ∨ ¬𝑃 (𝑦, 𝑧) ∨ 𝑄(𝑥, 𝑦, 𝑔(𝑥, 𝑦)) (259)

Exemplo: Converta a expressão a seguir para a FNC.

∀𝑥(∃𝑦(∀𝑧(𝐼(𝑧, 𝑦) ⇐⇒ (𝐼(𝑧, 𝑥) ∧ 𝐼(𝑥, 𝑦))))) (260)

Pela equivalência da bicondicional, temos:

∀𝑥(∃𝑦(∀𝑧((𝐼(𝑧, 𝑦) → (𝐼(𝑧, 𝑥) ∧ 𝐼(𝑥, 𝑦))) ∧ ((𝐼(𝑧, 𝑥) ∧ 𝐼(𝑥, 𝑦)) → 𝐼(𝑧, 𝑦))))) (261)

Pela equivalência da condicional, chega-se em:

∀𝑥(∃𝑦(∀𝑧((¬𝐼(𝑧, 𝑦) ∨ (𝐼(𝑧, 𝑥) ∧ 𝐼(𝑥, 𝑦))) ∧ (¬(𝐼(𝑧, 𝑥) ∧ 𝐼(𝑥, 𝑦)) ∨ 𝐼(𝑧, 𝑦))))) (262)

Aplicando a distributiva e a lei de De Morgan, temos:

∀𝑥(∃𝑦(∀𝑧((¬𝐼(𝑧, 𝑦) ∨ 𝐼(𝑧, 𝑥)) ∧ (¬𝐼(𝑧, 𝑦) ∨ 𝐼(𝑥, 𝑦))) ∧ (¬𝐼(𝑧, 𝑥) ∨ ¬𝐼(𝑥, 𝑦) ∨ 𝐼(𝑧, 𝑦)))) (263)

Aplicando a Skolemização (remoção do quantificador existencial), chega-se na FNC:

∀𝑥∀𝑧((¬𝐼(𝑧, 𝑔(𝑥)) ∨ 𝐼(𝑧, 𝑥)) ∧ (¬𝐼(𝑧, 𝑔(𝑥)) ∨ 𝐼(𝑥, 𝑔(𝑥)) ∧ (¬𝐼(𝑧, 𝑥) ∨ ¬𝐼(𝑥, 𝑔(𝑥)) ∨ 𝐼(𝑧, 𝑔(𝑥)))))
(264)
em que temos 3 cláusulas, dadas por:

𝐶1 : ¬𝐼(𝑧, 𝑔(𝑥)) ∨ 𝐼(𝑧, 𝑥) (265)


𝐶2 : ¬𝐼(𝑧, 𝑔(𝑥)) ∨ 𝐼(𝑥, 𝑔(𝑥)) (266)
𝐶3 : ¬𝐼(𝑧, 𝑥) ∨ ¬𝐼(𝑥, 𝑔(𝑥)) ∨ 𝐼(𝑧, 𝑔(𝑥)) (267)

13.3 Considerações finais


Neste capítulo, exploramos as formas normais em lógica de predicados, com ênfase na forma
normal prenex (FNP) e na forma normal clausal (FNC). Discutimos os procedimentos para converter

122
fórmulas arbitrárias nessas representações padronizadas e destacamos sua importância na manipula-
ção lógica e na automação de provas.
A forma normal prenex permite reescrever qualquer fórmula da lógica de predicados de maneira
que todos os quantificadores apareçam no início, seguidos por uma parte matriz livre de quantifi-
cadores. Essa estrutura facilita a análise lógica e serve como um passo intermediário para outras
transformações, como a Skolemização. Já a forma normal clausal, essencial para a técnica de resolu-
ção, expressa fórmulas como conjuntos de cláusulas disjuntivas, permitindo a aplicação de algoritmos
eficientes para a verificação de validade e satisfatibilidade.
Como veremos no próximo capítulo, com a prova por resolução, a padronização das fórmulas
nestas formas normais desempenha um papel fundamental na teoria da prova automática e na imple-
mentação de demonstradores de teoremas. O estudo dessas transformações nos fornece ferramentas
essenciais para lidar com argumentos lógicos de maneira estruturada e computacionalmente viável,
aproximando a lógica formal da prática computacional e da inteligência artificial.

123
14 Prova por resolução na lógica de predicados
A prova por resolução é um dos métodos dedutivos mais poderosos e elegantes da Lógica Matemá-
tica, permitindo verificar a validade de argumentos de maneira sistemática e automatizável. Enquanto
na lógica proposicional a resolução opera sobre cláusulas simples (disjunções de literais), na Lógica
de Predicados, ela enfrenta desafios adicionais: variáveis, quantificadores e a necessidade de lidar
com estruturas complexas de termos e predicados. Este capítulo explora como a resolução é adaptada
para esse contexto, destacando dois conceitos centrais — substituição e unificação — que permitem
harmonizar cláusulas aparentemente desconexas em busca de contradições.
A resolução na lógica de predicados baseia-se na conversão prévia de fórmulas para a forma
normal clausal, onde todas as expressões são transformadas em conjuntos de cláusulas universais. No
entanto, diferentemente da lógica proposicional, aqui as cláusulas podem conter variáveis, exigindo
mecanismos para tratar sua interdependência. É nesse ponto que a substituição — a troca de variáveis
por termos (constantes, funções ou outras variáveis) — e a unificação — o processo de encontrar
substituições que tornem dois literais complementares idênticos — se tornam indispensáveis.

14.1 Substituição
A substituição é uma operação fundamental na lógica de predicados que consiste em trocar variá-
veis por termos (constantes, funções ou outras variáveis) dentro de uma fórmula, respeitando regras
sintáticas e semânticas. Ela é essencial para manipular fórmulas com quantificadores, aplicar re-
gras de inferência e viabilizar métodos de prova como a resolução. Em resumo, a substituição é um
processo que serve para:

• Instanciação de quantificadores: permite aplicar exemplificação universal e existencial subs-


tituindo variáveis por termos específicos.

• Unificação: encontrar substituições que tornem dois literais idênticos.

• Aplicação da resolução: métodos como resolução dependem de substituições para combinar


cláusulas e derivar contradições.

Definição 28 (Expressão) Uma expressão 𝐸 é um termo, ou um literal, ou uma conjunção/disjunção


de literais. A matriz 𝑀 da forma normal clausal é um exemplo de expressão.

Definição 29 (Substituição) Uma substituição é um conjunto finito da forma:

𝜃 = {𝑡1 /𝑣1 , 𝑡2 /𝑣2 , ..., 𝑡𝑛 /𝑣𝑛 } (268)

onde cada 𝑣𝑖 é uma variável e cada 𝑡𝑖 é um termo diferente.

Em outras palavras, uma substituição troca variáveis por termos. Seja a expressão 𝐸 = 𝑃 (𝑥) ∨
𝑄(𝑥) e 𝜃 = {𝑎/𝑥}. Então, temos que:

124
𝐸𝜃 = 𝑃 (𝑎) ∨ 𝑄(𝑎) (269)

é a instanciação de 𝐸 por 𝜃. A substituição torna a cláusula menos geral, similar com o que ocorre
com as regras Exemplificação Existencial (EE) e Exemplificação Universal (EU).
A substituição é a espinha dorsal da manipulação de variáveis na lógica de predicados, permi-
tindo que regras de inferência e métodos de prova operem de forma dinâmica e precisa. Sem ela,
seria impossível instanciar quantificadores, unificar literais ou implementar sistemas automatizados
de raciocínio. Seu domínio é crucial para qualquer aplicação prática, desde inteligência artificial até
verificação formal de softwares, onde a precisão lógica é indispensável.

Exemplo: Considere a expressão 𝐸 = 𝑃 (𝑥, 𝑓 (𝑦), 𝑏). Então, temos:

• Se 𝜃 = {𝑧/𝑥, 𝑤/𝑦}, então 𝐸𝜃 = 𝑃 (𝑧, 𝑓 (𝑤), 𝑏).

• Se 𝜃 = {𝑎/𝑦}, então 𝐸𝜃 = 𝑃 (𝑥, 𝑓 (𝑎), 𝑏).

• Se 𝜃 = {𝑔(𝑧)/𝑥, 𝑎/𝑦}, então 𝐸𝜃 = 𝑃 (𝑔(𝑧), 𝑓 (𝑎), 𝑏).

• Se 𝜃 = {𝑐/𝑥, 𝑧/𝑦}, então 𝐸𝜃 = 𝑃 (𝑐, 𝑓 (𝑎), 𝑏).

14.2 Unificação
A unificação é um processo fundamental na lógica de predicados que permite tornar dois termos
ou literais estruturalmente idênticos por meio da substituição de variáveis por termos. Ela é a base
para operações como resolução de cláusulas, aplicação de regras de inferência e algoritmos de prova
automatizados.
A unificação é um mecanismo para encontrar uma substituição 𝜎 que, quando aplicada a dois
termos ou literais, os torna idênticos. Formalmente, dados dois termos 𝑡1 e 𝑡2 , um unificador 𝜎 é
uma substituição tal que 𝜎(𝑡1 ) = 𝜎(𝑡2 ). Se tal substituição existir, os termos são unificáveis, caso
contrário, não são. Por exemplo, sejam os termos 𝑃 (𝑥, 𝑓 (𝑎)) e 𝑃 (𝑏, 𝑦). Definindo o unificador 𝜎
como 𝜎 = {𝑥 ↦→ 𝑏, 𝑦 ↦→ 𝑓 (𝑎)}, temos como resultado 𝑃 (𝑏, 𝑓 (𝑎)) = 𝑃 (𝑏, 𝑓 (𝑎)), mostrando que os
termos são de fato unificáveis.
O conceito de Unificador Mais Geral (UMG) é importante na lógica de predicados. Em resumo, o
UMG é uma substituição que torna dois termos ou literais idênticos, preservando ao máximo a gene-
ralidade das variáveis. Ele é a solução mais flexível para unificar expressões, evitando instanciações
desnecessárias de variáveis e permitindo que substituições adicionais sejam aplicadas posteriormente,
se necessário.
Dentre as características desejáveis do UMG, encontram-se:

• Generalidade máxima: o UMG não atribui valores específicos a variáveis, a menos que seja
estritamente necessário.

125
Exemplo: Unificar 𝑃 (𝑥, 𝑦) e 𝑃 (𝑎, 𝑏):
UMG: {𝑥 ↦→ 𝑎, 𝑦 ↦→ 𝑏}
Substituição menos geral (não UMG): {𝑥 ↦→ 𝑎, 𝑦 ↦→ 𝑏, 𝑧 ↦→ 𝑐}

• Estrutura conservada: mantém a estrutura funcional dos termos.


Exemplo: Unificar 𝑃 (𝑥, 𝑔(𝑦)) e 𝑃 (𝑔(𝑧), 𝑤)):
UMG: {𝑥 ↦→ 𝑔(𝑧), 𝑤 ↦→ 𝑔(𝑦)}

• Evita conflitos: falha se os termos tiverem estruturas incompatíveis (i.e., 𝑓 (𝑥) vs. 𝑔(𝑦)) ou se
houver ocorrência circular (i.e., 𝑥 = 𝑓 (𝑥)).

Tipicamente, para encontrar o UMG realiza-se uma comparação recursiva para analisar a estrutura
dos termos e unificar componentes correspondentes. Por exemplo, suponha que desejamos unificar
𝑃 (𝑓 (𝑥), 𝑦) com 𝑃 (𝑧, 𝑔(𝑎)). Primeiro, unifica-se 𝑓 (𝑥) com 𝑧 pelo mapeamento 𝑧 ↦→ 𝑓 (𝑥) e em
seguida unifica-se 𝑦 com 𝑔(𝑎) pelo mapeamento 𝑦 ↦→ 𝑔(𝑎). Por fim, definimos o UMG criando o
conjunto {𝑧 ↦→ 𝑓 (𝑥), 𝑦 ↦→ 𝑔(𝑎)}.
O UMG é a substituição ótima para unificar termos em lógica de predicados, equilibrando preci-
são e generalidade. Ele é essencial para algoritmos de prova automatizados, sistemas de raciocínio
artificial e aplicações que demandam manipulação flexível de variáveis, como bancos de dados de-
dutivos e processamento de linguagem natural. Dominar esse conceito é fundamental para trabalhar
com lógicas computacionais e métodos formais.

14.3 Resolução na lógica de predicados


A resolução é um dos métodos dedutivos mais poderosos e elegantes da lógica matemática, per-
mitindo verificar a validade de argumentos de forma sistemática e automatizável. Enquanto na lógica
proposicional a resolução opera sobre cláusulas simples (disjunções de literais), na Lógica de Pre-
dicados, ela enfrenta desafios adicionais: variáveis, quantificadores e a necessidade de harmonizar
estruturas complexas de termos e predicados. Este método, desenvolvido inicialmente por John Alan
Robinson em 1965, estende a resolução proposicional ao incorporar mecanismos para lidar com ge-
neralizações universais e existenciais, tornando-se uma ferramenta essencial para sistemas de inteli-
gência artificial, verificação formal de softwares e bancos de dados dedutivos.
Na lógica de predicados, a resolução depende criticamente de dois conceitos fundamentais: a
substituição e a unificação. A substituição permite instanciar variáveis com termos específicos, en-
quanto a unificação identifica como tornar literais complementares estruturalmente idênticos, viabili-
zando a combinação de cláusulas para derivar contradições.
A eficácia da resolução na lógica de predicados também está vinculada à conversão prévia de
fórmulas para a forma normal clausal, onde todas as expressões são padronizadas em conjuntos de
cláusulas universais. Esse processo envolve etapas como a Skolemização, que elimina quantificadores
existenciais substituindo-os por funções ou constantes, garantindo que as variáveis restantes sejam
universalmente quantificadas.

126
Apesar de sua potência, a resolução na lógica de predicados enfrenta limitações intrínsecas. A
indecidibilidade deste sistema lógico (demonstrada por Church em 1936) implica que, para certas
fórmulas, nenhum algoritmo garantirá sempre uma resposta em tempo finito. Além disso, a com-
plexidade gerada por funções aninhadas e quantificadores múltiplos exige estratégias de otimização,
como heurísticas de escolha de literais e restrições a fragmentos decidíveis.
A seguir veremos uma série de exemplos de como aplicar a resolução na verificação da validade
de argumentos da lógica de predicados.

Exemplo: Mostre a validade do seguinte argumento da lógica de predicados:

∀𝑥(𝑃 (𝑥) → 𝑄(𝑥)), ∀𝑥(𝑅(𝑥) → ¬𝑄(𝑥)), ∃𝑥(𝑅(𝑥) ∧ 𝑆(𝑥)) ⊢ ∃𝑥(𝑆(𝑥) ∧ ¬𝑃 (𝑥)) (270)

O primeiro passo consiste na identificação das premissas. Note que temos 3 premissas, 𝛼, 𝛽 e 𝛾,
e a conclusão, que deve ser negada e considerada como hipótese (𝛿):

𝛼 : ∀𝑥(𝑃 (𝑥) → 𝑄(𝑥)) (271)

𝛽 : ∀𝑥(𝑅(𝑥) → ¬𝑄(𝑥)) (272)

𝛾 : ∃𝑥(𝑅(𝑥) ∧ 𝑆(𝑥)) (273)

𝛿 : ¬∃𝑥(𝑆(𝑥) ∧ ¬𝑃 (𝑥)) (274)

Note que as premissas já encontram-se na forma normal prenex (FNP). Convertendo as matrizes
das fórmulas para a forma normal clausal (FNC), temos:

𝐹 𝑁 𝐶(𝛼) : ¬𝑃 (𝑥) ∨ 𝑄(𝑥)) (275)

𝐹 𝑁 𝐶(𝛽) : ¬𝑅(𝑥) ∨ ¬𝑄(𝑥) (276)

𝐹 𝑁 𝐶(𝛾) : 𝑅(𝑎) ∧ 𝑆(𝑎) (277)

onde a Skolemização é aplicada em 𝛾 para eliminar o quantificador existencial. A negação da con-


clusão é dada por:

¬∃𝑥(𝑆(𝑥) ∧ ¬𝑃 (𝑥)) (278)

Movendo a negação para o interior e aplicando a lei de De Morgan, temos:

∀𝑥(¬𝑆(𝑥) ∨ 𝑃 (𝑥)) (279)

de modo que a FNC é dada por:

𝐹 𝑁 𝐶(𝛿) : ¬𝑆(𝑥) ∨ 𝑃 (𝑥) (280)

127
Renomeando as variáveis para que as cláusulas não as compartilhem, temos:

• 𝐶1 : ¬𝑃 (𝑥) ∨ 𝑄(𝑥)

• 𝐶2 : ¬𝑅(𝑦) ∨ ¬𝑄(𝑦)

• 𝐶3 : 𝑅(𝑎)

• 𝐶4 : 𝑆(𝑎)

• 𝐶5 : ¬𝑆(𝑧) ∨ 𝑃 (𝑧)

A seguir, mostramos a prova or resolução do argumento em questão.

1. ¬𝑃 (𝑥) ∨ 𝑄(𝑥) Premissa


2. ¬𝑅(𝑦) ∨ ¬𝑄(𝑦) Premissa
3. 𝑅(𝑎) Premissa
4. 𝑆(𝑎) Premissa
5. ¬𝑆(𝑧) ∨ 𝑃 (𝑧) Premissa
6. ¬𝑆(𝑎) ∨ 𝑃 (𝑎) 𝜃 ← {𝑎/𝑧}, 𝐶5 𝜃
7. 𝑃 (𝑎) resolvente(4, 6)
8. ¬𝑃 (𝑎) ∨ 𝑄(𝑎) 𝜃 ← {𝑎/𝑥}, 𝐶1 𝜃
9. 𝑄(𝑎) resolvente(7, 8)
10. ¬𝑅(𝑎) ∨ ¬𝑄(𝑎) 𝜃 ← {𝑎/𝑦}, 𝐶2 𝜃
11. ¬𝑅(𝑎) resolvente(9, 10)
12. 𝑁 𝐼𝐿 resolvente(3, 11)
A figura a seguir ilustra a árvore de refutação obtida pela prova por resolução.

Figura 12: Árvore de refutação para a prova por resolução na lógica de predicados.

128
Exemplo: Considere o argumento a seguir em linguagem natural:
A) Todo número primo diferente de 2 é ímpar.
B) O quadrado de um número ímpar é ímpar.
C) O número 7 é primo.
D) O número 7 é diferente de 2.
E) O quadrado de 7 é ímpar.
Utilizando resolução, mostre que E é uma consequência lógica das premissas A, B, C e D.
Especificando o domínio 𝐷 como o conjunto dos naturais, podemos definir as seguintes funções
e predicados:

• 𝑃 (𝑥): 𝑥 é um número primo.

• 𝐼(𝑥): 𝑥 é um número ímpar.

• 𝑆(𝑥, 𝑦): 𝑥 igual a 𝑦.

• 𝑄(𝑥): função que retorna o quadrado de 𝑥.

Traduzindo as premissas e a conclusão para a linguagem da lógica de predicados, temos:

∀𝑥((𝑃 (𝑥) ∧ ¬𝑆(𝑥, 2)) → 𝐼(𝑥)), ∀𝑥(𝐼(𝑥) → 𝐼(𝑄(𝑥))), 𝑃 (7), ¬𝑆(7, 2) ⊢ 𝐼(𝑄(7))

Devemos converter as premissas para a FNC. Iniciando com a premissa A, podemos aplicar a
equivalência da condicional:

∀𝑥((𝑃 (𝑥) ∧ ¬𝑆(𝑥, 2)) → 𝐼(𝑥)) ≡ ∀𝑥(¬(𝑃 (𝑥) ∧ ¬𝑆(𝑥, 2)) ∨ 𝐼(𝑥)) (281)

Aplicando a lei de De Morgan, temos:

∀𝑥(¬(𝑃 (𝑥) ∧ ¬𝑆(𝑥, 2)) ∨ 𝐼(𝑥)) ≡ ∀𝑥(¬𝑃 (𝑥) ∨ 𝑆(𝑥, 2) ∨ 𝐼(𝑥)) (282)

Para a premissa B, basta aplicar a equivalência da condicional:

∀𝑥(𝐼(𝑥) → 𝐼(𝑄(𝑥))) ≡ ∀𝑥(¬𝐼(𝑥) ∨ 𝐼(𝑄(𝑥))) (283)

As premissas C e D, bem como a conclusão E já encontram-se na FNC, e portanto, nenhuma


transformação adicional é necessária. O próximo passo consiste na dedução via prova por resolução,
conforme o processo descrito a seguir. Lembre-se de que devemos incluir como premissa a negação
da conclusão.

129
1. ¬𝑃 (𝑥) ∨ 𝑆(𝑥, 2) ∨ 𝐼(𝑥) Premissa
2. ¬𝐼(𝑧) ∨ 𝐼(𝑄(𝑧)) Premissa
3. 𝑃 (7) Premissa
4. ¬𝑆(7, 2) Premissa
5. ¬𝐼(𝑄(7)) Premissa
6. ¬𝑃 (7) ∨ 𝑆(7, 2) ∨ 𝐼(7) 𝜃 ← {7/𝑥}, 𝐶1 𝜃
7. ¬𝑃 (7) ∨ 𝐼(7) resolvente(4, 6)
8. 𝐼(7) resolvente(3, 7)
9. ¬𝐼(7) ∨ 𝐼(𝑄(7)) 𝜃 ← {7/𝑧}, 𝐶2 𝜃
10. ¬𝐼(7) resolvente(5, 9)
11. 𝑁 𝐼𝐿 resolvente(8, 10)
Como foi possível derivar a cláusula vazia NIL, temos que o argumento é válido. A figura a seguir
ilustra a árvore de refutação obtida para a prova de resolução.

Figura 13: Árvore de refutação para a prova por resolução na lógica de predicados.

Exemplo: Sejam os predicados definidos a seguir:

• 𝑃 (𝑥, 𝑦): 𝑥 é pai de 𝑦

• 𝐴(𝑥, 𝑦): 𝑥 é avô de 𝑦

Considere o seguinte argumento:


O pai do pai de qualquer pessoa é o avô dela.
Todos tem um pai.
Traduza as sentenças para a linguagem da lógica de predicados e conclua a seguinte afirmação:
"Existe alguém que é avô de alguém".

130
Considerando o domínio 𝐷 como o conjunto das pessoas, a tradução das premissas é dada por:

𝛼 : ∀𝑥(∀𝑦((𝑃 (𝑥, 𝑦) ∧ 𝑃 (𝑦, 𝑧)) → 𝐴(𝑥, 𝑧))) (284)

𝛽 : ∀𝑥(∃𝑦(𝑃 (𝑥, 𝑦))) (285)

A conclusão pode ser traduzida para:

𝛾 : ∃𝑥(∃𝑦(𝐴(𝑥, 𝑦))) (286)

O primeiro passo consiste na obtenção das FNC’s das premissas 𝛼 e 𝛽, e da negação da conclusão
¬𝛾. Usando a equivalência da condicional, sabemos que podemos expressar 𝛼 como:

𝛼 ≡ ∀𝑥(∀𝑦(¬(𝑃 (𝑥, 𝑦) ∧ 𝑃 (𝑦, 𝑧)) ∨ 𝐴(𝑥, 𝑧))) (287)

Aplicando a lei de De Morgan, temos:

𝛼 ≡ ∀𝑥(∀𝑦(¬𝑃 (𝑥, 𝑦) ∨ ¬𝑃 (𝑦, 𝑧) ∨ 𝐴(𝑥, 𝑧))) (288)

o que nos leva a:

𝐹 𝑁 𝐶(𝛼) : ¬𝑃 (𝑥, 𝑦) ∨ ¬𝑃 (𝑦, 𝑧) ∨ 𝐴(𝑥, 𝑧) (289)

Aplicando a Skolemização em 𝛽, chega-se em:

𝛽 ≡ ∀𝑥(𝑃 (𝑥, 𝑔(𝑥))) (290)

o que nos leva a:

𝐹 𝑁 𝐶(𝛽) : 𝑃 (𝑥, 𝑔(𝑥)) (291)

A negação da conclusão pode ser expressa como:

¬𝛾 ≡ ¬∃𝑥∃𝑦𝐴(𝑥, 𝑦) ≡ ∀𝑥∀𝑦¬𝐴(𝑥, 𝑦) (292)

o que nos leva a:

𝐹 𝑁 𝐶(𝛾) : ¬𝐴(𝑥, 𝑦) (293)

O próximo passo consiste na dedução via prova por resolução, conforme o processo descrito a
seguir. Lembre-se de que devemos incluir como premissa a negação da conclusão.

131
1. ¬𝑃 (𝑥, 𝑦) ∨ ¬𝑃 (𝑦, 𝑧) ∨ 𝐴(𝑥, 𝑧) Premissa
2. 𝑃 (𝑤, 𝑔(𝑤)) Premissa
3. ¬𝐴(𝑢, 𝑣) Premissa
4. ¬𝑃 (𝑢, 𝑦) ∨ ¬𝑃 (𝑦, 𝑣) ∨ 𝐴(𝑢, 𝑣) 𝜃 ← {𝑢/𝑥, 𝑣/𝑧}, 𝐶1 𝜃
5. ¬𝑃 (𝑢, 𝑦) ∨ ¬𝑃 (𝑦, 𝑣) resolvente(3, 4)
6. ¬𝑃 (𝑢, 𝑤) ∨ ¬𝑃 (𝑤, 𝑔(𝑤)) 𝜃 ← {𝑤/𝑦, 𝑔(𝑤)/𝑣}, 𝐶5 𝜃
7. ¬𝑃 (𝑢, 𝑤) resolvente(2, 6)
8. ¬𝑃 (𝑤, 𝑔(𝑤)) 𝜃 ← {𝑤/𝑢, 𝑔(𝑤)/𝑤}, 𝐶7 𝜃
9. 𝑁 𝐼𝐿 resolvente(2, 8)
Como foi possível derivar a cláusula vazia NIL, temos que o argumento é válido. A figura a seguir
ilustra a árvore de refutação obtida para a prova de resolução.

Figura 14: Árvore de refutação para a prova por resolução na lógica de predicados.

14.4 Cláusulas de Horn


Cláusulas de Horn são um tipo de cláusula muito importante na lógica de predicados e na ciência
da computação por diversos motivos, dentre os quais destacam-se:

• Base da programação lógica (Prolog): linguagens como Prolog são construídas sobre cláusu-
las de Horn. Fatos e regras em Prolog correspondem diretamente a cláusulas de Horn, permi-
tindo representar conhecimento e realizar inferências eficientes.

• Eficiência computacional: A restrição a no máximo um literal positivo simplifica algoritmos


de resolução, como o SLD Resolution (usado em Prolog), tornando a busca por soluções mais
rápida e previsível.

• Decidibilidade: diferentemente da lógica de predicados geral (indecidível), conjuntos de cláu-


sulas de Horn possuem algoritmos de decisão eficientes para satisfatibilidade, ou seja, é possível

132
satisfazer simultaneamente as cláusulas de um conjunto finito.

• Sistemas especialistas: modelam conhecimento especializado (ex.: diagnósticos médicos)


usando regras do tipo "SE... ENTÃO".

• Semântica clara: a estrutura condicional 𝑎 → 𝑏 é intuitiva para modelar causalidade, permi-


tindo fácil interpretação por humanos.

A seguir definiremos o que são cláusulas de Horn.

Definição 30 (Cláusulas de Horn) Clásulas de Horn são cláusulas contendo, no máximo, um literal
positivo. Elas podem ser de 3 tipos:

1. Fatos: são cláusulas unitárias em que o único literal é positivo.

2. Regras: são cláusulas da forma:

¬𝑝1 ∨ ¬𝑝2 ∨ ... ∨ ¬𝑝𝑛 ∨ 𝑞 (294)

o que equivale a:
(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) → 𝑞 (295)

onde 𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 é o corpo da regra e 𝑞 é a cabeça da regra.

3. Restrições: não possuem nenhum átomo positivo, como:

¬𝑝1 ∨ ¬𝑝2 ∨ ... ∨ ¬𝑝𝑛 ≡ ¬(𝑝1 ∧ 𝑝2 ∧ ... ∧ 𝑝𝑛 ) (296)

Resultados teóricos que não iremos demonstrar, mas são fundamentais para a lógica computacio-
nal, são apresentados a seguir.

Teorema 8 Seja 𝐶 um conjunto de cláusulas de Horn sem restrições. Então, 𝐶 é satisfazível.

Teorema 9 Seja 𝐶 um conjunto de cláusulas de Horn contendo um fato 𝑝. Seja 𝐶 ′ o conjunto de


cláusulas obtidas a partir de 𝐶 removendo ¬𝑝 de todas as cláusulas. Então, 𝐶 é equivalente a 𝐶 ′ .

A garantia de satisfatibilidade para cláusulas de Horn depende da ausência de restrições contra-


ditórias e da estrutura definida das cláusulas. O teorema do modelo mínimo assegura que conjuntos
puramente definidos são sempre satisfazíveis, enquanto a presença de restrições exige verificação.
Esse resultado é fundamental para aplicações práticas, como programação em lógica e sistemas espe-
cialistas, onde a eficiência e a consistência são críticas.
A importância desses resultados se dá em dois aspectos principais:

• Decidibilidade eficiente: conjuntos de cláusulas de Horn podem ser verificados quanto à satis-
fatibilidade em tempo polinomial, ao contrário da Lógica de Predicados geral (indecidível).

133
• Aplicações em programação lógica: sistemas como Prolog baseiam-se nesse resultado para
garantir que programas lógicos (definidos por cláusulas de Horn) tenham um modelo mínimo
estável.

Outra propriedade fundamental é que a resolvente entre duas cláusulas de Horn é sempre uma
cláusula de Horn. Matematicamente, isso significa que um conjunto de cláusulas de Horn mais a
operação resolvente define um sistema fechado. Por essa razão, cláusulas de Horn são usadas para
representar regras lógicas em Prolog, o que permite o raciocínio lógico em sistemas computacionais.
Lembre-se que:

¬𝑝 ∨ ¬𝑞 ∨ ... ∨ ¬𝑡 ∨ 𝑢 ≡ (𝑝 ∧ 𝑞 ∧ ... ∧ 𝑡) → 𝑢 (297)

Na programação lógica, temos a interpretação a seguir: para mostrar 𝑢, mostre 𝑝 e mostre 𝑞 e


sucessivamente até mostre 𝑡. Em Prolog, escrevemos na forma reversa, ou seja:

𝑢 : −𝑝, 𝑞, ..., 𝑡 (298)

Basicamente, um programa lógico é um conjunto de cláusulas de Horne por isso elas são um
pilar da lógica de predicados aplicada, equilibrando expressividade e eficiência computacional. Sua
importância reside na capacidade de viabilizar sistemas de raciocínio automatizado, como Prolog, e
em aplicações que demandam interpretação rápida de regras complexas. Ao restringir a forma das
cláusulas, elas transformam problemas lógicos abstratos em tarefas computacionalmente tratáveis,
consolidando-se como uma ferramenta indispensável na interseção entre lógica, ciência da computa-
ção e inteligência artificial.

14.5 Considerações finais


A prova por resolução na Lógica de Predicados consolida-se como um método dedutivo de grande
poder e elegância, capaz de operar sobre a complexidade introduzida por quantificadores, variáveis e
estruturas de termos. Ao longo deste capítulo, exploramos como a resolução transcende a simplici-
dade da Lógica Proposicional, incorporando mecanismos essenciais como substituição e unificação,
que permitem harmonizar cláusulas aparentemente desconexas e derivar contradições de forma siste-
mática.
A substituição revelou-se um pilar indispensável, viabilizando a instanciação de variáveis e a
adaptação de termos para tornar literais complementares. Já a unificação, especialmente por meio do
Unificador Mais Geral (UMG), mostrou-se a chave para resolver o desafio de tornar termos estrutu-
ralmente idênticos, preservando a generalidade máxima e evitando restrições desnecessárias. Esses
conceitos não apenas sustentam a resolução, mas também a conectam a aplicações práticas, como
sistemas de programação em lógica (e.g., Prolog) e verificadores formais de software.
A análise de exemplos práticos, como a validação de argumentos envolvendo relações universais
e existenciais, demonstrou como a resolução opera em três etapas fundamentais:

134
1. Conversão para Forma Normal Clausal, incluindo a Skolemização para eliminar quantificadores
existenciais.

2. Unificação de Literais, identificando substituições que tornam os termos compatíveis.

3. Aplicação da Regra de Resolução, derivando novas cláusulas até obter a cláusula vazia (contra-
dição) ou esgotar as possibilidades.

No entanto, a resolução na Lógica de Predicados não está isenta de desafios. A indecidibilidade


deste sistema lógico implica que, em alguns casos, o processo pode não terminar, gerando ramifica-
ções infinitas. Além disso, a complexidade computacional exigida para unificar termos aninhados ou
gerenciar cláusulas com múltiplas variáveis demanda estratégias de otimização, como heurísticas de
seleção de literais e restrições a fragmentos decidíveis.
Apesar dessas limitações, a relevância da resolução permanece inquestionável. Ela é a base de
sistemas de inteligência artificial, bancos de dados dedutivos e ferramentas de verificação formal,
onde a capacidade de automatizar o raciocínio lógico é crítica. Ao dominar este método, o estudante
não apenas adquire uma técnica poderosa para análise de argumentos, mas também desenvolve uma
compreensão profunda de como a lógica formal se integra às tecnologias modernas.
Em síntese, a prova por resolução na Lógica de Predicados é mais que um algoritmo — é uma
janela para a coerência estrutural do pensamento dedutivo. Seu estudo prepara o terreno para explorar
temas avançados, como lógicas de ordem superior ou teorias de modelos, reforçando a ideia de que,
mesmo em sistemas complexos, a busca pela contradição é um caminho seguro para a verdade lógica.

135
15 Teorias axiomáticas e incompletude
As teorias axiomáticas são fundamentais na organização do conhecimento racional. Elas repre-
sentam a tentativa humana de estruturar ideias complexas a partir de princípios simples e indubitáveis,
chamados axiomas, dos quais todas as demais afirmações (teoremas, leis ou hipóteses) são derivadas
por meio de regras lógicas rigorosas. Desde os Elementos de Euclides, que há mais de dois milênios
estabeleceu a geometria sob bases axiomáticas, até as formulações modernas da física quântica ou da
teoria da computação, os sistemas axiomáticos têm sido essenciais para garantir coerência, clareza e
progresso tanto na matemática pura quanto nas ciências aplicadas.
Na matemática, as teorias axiomáticas garantem que o edifício intelectual seja construído sobre
alicerces sólidos. Por exemplo, os axiomas de Peano definem os números naturais a partir de conceitos
básicos como "zero"e "sucessor", permitindo derivar propriedades como a adição e a multiplicação.
Sem essa estrutura, a matemática seria um conjunto desconexo de observações, vulnerável a con-
tradições. Nas ciências, embora os axiomas muitas vezes tenham caráter empírico (como as leis de
Newton), eles funcionam como pontos de partida teóricos para modelar fenômenos naturais, prever
resultados e validar experimentos.
Um sistema axiomático não apenas organiza o conhecimento, mas também revela conexões pro-
fundas entre áreas aparentemente distintas. A teoria dos conjuntos de Zermelo-Fraenkel (ZF), por
exemplo, unifica conceitos matemáticos sob uma linguagem comum, enquanto a axiomatização da
termodinâmica permite aplicar princípios universais (como a conservação da energia) a sistemas tão
diversos quanto motores e estrelas. Essa capacidade de generalização é crucial para avanços interdis-
ciplinares, como a fusão entre matemática e biologia na modelagem de ecossistemas ou entre lógica
e ciência da computação no design de algoritmos.
Ao definir axiomas de forma explícita, as teorias axiomáticas eliminam ambiguidades linguísticas
e conceituais. Na matemática, isso evita paradoxos (como o famoso paradoxo de Russell na teoria
ingênua dos conjuntos) e assegura que provas sejam verificáveis passo a passo. Nas ciências, a pre-
cisão axiomática permite que modelos teóricos sejam testados e refinados. Por exemplo, a teoria da
relatividade geral de Einstein é formulada axiomaticamente, o que possibilita previsões precisas sobre
fenômenos como a curvatura da luz em campos gravitacionais.
As teorias axiomáticas também impulsionam a inovação ao desafiar pressupostos. A substituição
do axioma das paralelas de Euclides por alternativas não euclidianas, por exemplo, revolucionou a
geometria e abriu caminho para a relatividade geral. No entanto, os próprios limites dos sistemas
axiomáticos, revelados por resultados como os teoremas da incompletude de Gödel, lembram-nos de
que nenhum sistema formal é autossuficiente. Esses limites não são fracassos, mas incentivos para a
criatividade, mostrando que a busca pelo conhecimento é um processo dinâmico e infinito.
Na ciência da computação, axiomas sustentam a verificação formal de softwares críticos (como
sistemas de aviação). Na economia, teorias como a dos jogos usam axiomas para modelar compor-
tamentos racionais. Até mesmo nas humanidades, a lógica modal (baseada em axiomas) auxilia na
análise de argumentos filosóficos e éticos.

136
As teorias axiomáticas são muito mais que abstrações intelectuais: elas são ferramentas práticas
para explorar a realidade, resolver problemas e expandir as fronteiras do saber. Seja na pureza da
matemática ou no empirismo das ciências naturais, elas asseguram que o conhecimento não seja um
amontoado de opiniões, mas uma rede coerente e verificável de ideias. Neste capítulo, exploraremos
como esses sistemas não apenas moldaram a história do pensamento, mas continuam a ser indispen-
sáveis para enfrentar os desafios do futuro.

15.1 Conceitos e fundamentos


Primeiramente, precisamos definir o que é uma teoria. Não é simples produzir uma definição
precisa e formal, mas para os nossos propósitos, uma teoria é um conjunto de axiomas (premissas
fundamentais) e suas consequências lógicas (teoremas).

Definição 31 Uma teoria é completa se qualquer proposição atômica 𝑝 ou sua negação ¬𝑝 que
compõe suas proposições 𝑃1 , 𝑃2 , ..., 𝑃𝑛 (axiomas + teoremas) pode ser provada. Em outras palavras,
uma teoria é completa se existe uma demonstração para todo 𝑝 ou ¬𝑝 (componentes das proposições).

Definição 32 Uma teoria é consistente se não há proposição 𝑝 tal que 𝑝 e ¬𝑝 são ambas prováveis
(𝑇 ). Em outras palavras, é uma teoria livre de contradições.

Definição 33 Uma teoria é axiomatizável se é possível demonstrar qualquer proposição com um


processo algorítmico (regras de inferência, tableaux analítico, prova por resolução, etc.) em um
número finito de passos

Com base nas definições acima, iremos enunciar um outro resultado muito importante na lógica
matemática: o teorema da incompletude de Gödel.

Teorema 10 (Teorema da incompletude de Gödel (1931)) Toda teoria axiomatizável e completa rica
o suficiente é inconsistente.

Precisamos entender o que significa uma teoria ser "rica o suficiente". De forma simplista, diremos
que uma teoria rica o suficiente é aquela suficientemente poderosa para expressar a aritmética básica.
A implicação do primeiro teorema de Gödel pe que existem sentenças verdadeiras na teoria que
não podem ser provadas, ou seja, há verdades matemáticas inacessíveis à propria teoria. O segundo
teorema de Gödel é enunciado a seguir.

Teorema 11 (Segundo teorema de Gödel) Nenhuma teoria rica o suficiente, axiomatizável e con-
sistente pode provar sua própria consistência.

A implicação do segundo teorema de Gödel é que se um sistema pudesse provar "Eu não sou
contraditório", isso seria uma contradição! Logo, a consistência depende de um sistema externo mais
forte (que, por sua vez, também não pode provar sua própria consistência).
Juntos, os dois teoremas de Gödel causaram um profundo impacto na matemática e na ciência
da computação, acarretando na descoberta de problemas indecidíveis, como o famoso problema da
parada (halting problem) proposto por Alan Turing.

137
15.2 A máquina de Gödel
Iremos apresentar uma alegoria que nos permite construir um esboço simplista e intuitivo da prova
do teorema da incompletude de Gödel. Trata-se da máquina de Gödel, um mecanismo abstrato que
imprime expressões compostas por apenas 5 símbolos: ¬, 𝑃 , 𝑁 , ( e ). A seguir apresentamos algumas
definições importantes:

• Uma expressão é imprimível se a máquina pode imprimí-la (quando uma expressão é imprimida
pela máquina, equivale a ela ser provada).

• Toda a expressão que a máquina pode imprimir será impressa em algum momento.

• A norma de uma expressão 𝑋 é a expressão 𝑋(𝑋).

• Uma sentença é uma expressão com uma das quatro formas a seguir (sintaxe):

1. 𝑃 (𝑋)
2. ¬𝑃 (𝑋)
3. 𝑃 𝑁 (𝑋)
4. ¬𝑃 𝑁 (𝑋)

A semântica de cada sentença é dada por:

• 𝑃 (𝑋) é verdade ⇐⇒ 𝑋 é imprimível.

• ¬𝑃 (𝑋) é verdade ⇐⇒ 𝑋 não é imprimível.

• 𝑃 𝑁 (𝑋) é verdade ⇐⇒ a norma de 𝑋 é imprimível.

• ¬𝑃 𝑁 (𝑋) é verdade ⇐⇒ a norma de 𝑋 não é imprimível.

Todas as sentenças imprimidas pela máquina são verdadeiras! Se a máquina imprime 𝑃 (𝑋),
como 𝑋 é imprimível, a máquina também irá imprimir 𝑋 em algum momento. Note ainda que se
𝑋 é imprimível, então 𝑃 (𝑋) é verdade, mas isso não implica que 𝑃 (𝑋) deva ser imrpimível. Em
resumo:

• Toda sentença imprimível é verdadeira, mas nem toda sentença verdadeira é imprimível (pode
ser provada).

A pergunta que surge agora é: existe uma sentença verdadeira que não é imrpimível (pode ser
provada)? Vamos tentar buscar por essa sentença 𝑍. Lembre-se que desejamos ter:

• 𝑍 deve ser verdade ⇐⇒ 𝑍 não é imprimível

Note que para toda expressão 𝑍, temos que:

138
• ¬𝑃 𝑁 (𝑍) é verdade ⇐⇒ a norma de 𝑍 não é imprimível

Vamos substituir 𝑍 por ¬𝑃 𝑁 , gerando ¬𝑃 𝑁 (¬𝑃 𝑁 ). Porém, essa expressão se traduz para:

• a norma de ¬𝑃 𝑁 não é imprimível

Assim, temos:

• ¬𝑃 𝑁 (¬𝑃 𝑁 ) é verdade ⇐⇒ a norma de ¬𝑃 𝑁 não é imprimível

o que gera a conclusão de que ¬𝑃 𝑁 (¬𝑃 𝑁 ) é verdade se e somente se ¬𝑃 𝑁 (¬𝑃 𝑁 ) não é imprimível.
Construímos portanto um exemplo de sentença verdadeira que não pode ser provada!

15.3 O problema da parada


No cerne da ciência da computação e da lógica matemática reside uma pergunta aparentemente
simples, mas profundamente revolucionária: é possível determinar, de maneira geral, se um programa
de computador vai parar de executar ou se entrará em um loop infinito? Formulado por Alan Turing
em 1936, o problema da parada não apenas desafiou os limites da computação mecânica, mas também
redefiniu nossa compreensão sobre o que pode ou não ser resolvido por algoritmos.
Turing introduziu essa questão como parte de sua resposta ao Entscheidungsproblem (problema da
decisão), proposto por David Hilbert, que questionava se existiria um método mecânico para decidir
a verdade ou falsidade de qualquer afirmação matemática. Ao demonstrar que o problema da parada
é indecidível — ou seja, não existe um algoritmo universal capaz de solucioná-lo para todos os pares
de programa e entrada —, Turing não apenas refutou as esperanças de Hilbert de uma matemática
completamente automatizável, mas também lançou as bases para a teoria da computabilidade e os
fundamentos teóricos dos computadores modernos.
Usando seu modelo abstrato de máquina (a Máquina de Turing), ele mostrou que qualquer tenta-
tiva de criar um programa "oráculo"que decida a parada de outros programas inevitavelmente levaria a
uma contradição lógica. Essa demonstração, baseada em um raciocínio de autorreferência e diagona-
lização, revelou que existem problemas intrinsecamente insolúveis, não por limitações tecnológicas,
mas por barreiras fundamentais impostas pela própria estrutura da lógica.
A relevância do problema da parada transcende a teoria pura. Ele é um pilar para entender a com-
plexidade computacional, a segurança de sistemas e até mesmo as fronteiras da inteligência artificial.
Se um algoritmo não pode prever seu próprio comportamento em todos os casos, como confiar total-
mente em sistemas que controlam infraestruturas críticas ou tomam decisões autônomas? Além disso,
o resultado de Turing ecoa os teoremas de incompletude de Gödel, sugerindo que a incompletude e a
indecidibilidade são fenômenos universais, presentes tanto na matemática quanto na computação.
Este problema também expõe a diferença crucial entre verdade e demonstração: mesmo sabendo
que um programa pode parar, podemos ser incapazes de prová-lo dentro do sistema formal em que
operamos. Hoje, o legado de Turing nos lembra que, embora a tecnologia avance, certas questões

139
permanecerão sempre além do alcance da resolução algorítmica, desafiando-nos a buscar soluções
criativas e a aceitar os limites do conhecimento humano. Neste seção, discutiremos um pouco mais
sobre esse fascinante problema.

15.3.1 Enunciado do problema e um esboço de prova

Dado um programa 𝑃 e uma entrada 𝐼 (input), deseja-se decidir, por meio de um algoritmo, se
𝑃 terminará sua execução com essa entrada ou permanecerá executando para sempre (loop infinito).
Turing demonstrou que não pode existir um algoritmo que resolva esse problema de decisão, pois isso
iria ferir a lógica. A seguir, apresentamos um esboço da prova usando redução ao absurdo.

1. Suponha que exista uma função computável ℎ𝑎𝑙𝑡𝑠(𝑓 ), que retorna True se afunção 𝑓 termina e
False, caso contrário (nunca termina). Essa é exatamente a negação da conclusão.

2. Seja a funçao 𝑔() a seguir:

Algoritmo 1 Halting problem


1: function G()
2: if ℎ𝑎𝑙𝑡𝑠(𝐺) then
3: L OOP FOREVER
4: end if
5: end function

3. Note que se ℎ𝑎𝑙𝑡𝑠(𝑔) retorna 𝑇 𝑟𝑢𝑒, significa a função 𝑔 termina, mas então ela entra em um
loop infinito.

4. Por outro lado, note que se ℎ𝑎𝑙𝑡𝑠(𝑔) retorna 𝐹 𝑎𝑙𝑠𝑒, significa que a função 𝑔 não deve terminar,
mas ela termina (não entra no if).

5. Portanto, como chegamos em uma contradição, a hipótese inicial de que existe uma função
computável ℎ𝑎𝑙𝑡𝑠(𝑓 ) é falsa. Logo, sua negação deve ser verdadeira, ou seja, não existe função
ℎ𝑎𝑙𝑡𝑠(𝑓 ) que decida se 𝑓 termina ou não!

Em outras palavras, trata-se de um problema indecidível.

15.4 Considerações finais


Neste capítulo, examinamos as teorias axiomáticas e os impactos dos teoremas da incompletude
de Gödel na lógica matemática. Inicialmente, discutimos a estrutura das teorias formais baseadas
em conjuntos de axiomas, regras de inferência e a distinção entre consistência, completude e de-
cidibilidade. Em seguida, exploramos os teoremas de incompletude, que demonstram limitações
fundamentais em sistemas formais suficientemente expressivos, como a aritmética de Peano.

140
O Primeiro Teorema da Incompletude mostrou que qualquer teoria formal consistente e sufici-
entemente poderosa contém proposições verdadeiras que não podem ser provadas dentro da própria
teoria. Já o Segundo Teorema da Incompletude revelou que tais teorias não podem demonstrar sua
própria consistência, reforçando a necessidade de abordagens metamatemáticas para a fundamentação
da matemática.
Esses resultados tiveram um impacto profundo na filosofia da matemática e na computação, desa-
fiando a visão formalista de um sistema matemático completo e confiável. Além disso, influenciaram
áreas como a teoria da computabilidade e a inteligência artificial, ao estabelecer limites rigorosos para
o que pode ser computado e formalmente provado.
Assim, o estudo das teorias axiomáticas e da incompletude não apenas aprofunda nossa com-
preensão da lógica matemática, mas também destaca as fronteiras do conhecimento formal, abrindo
caminho para novas investigações na estrutura do raciocínio matemático e na natureza da prova.

141
Informações sobre o autor
Alexandre L. M. Levada concluiu o curso de graduação em Bacharelado em Ciência da Computa-
ção no Departamento de Estatística, Matemática e Computação (DEMAC) da Universidade Estadual
Paulista "Júlio de Mesquita Filho"(UNESP), em Rio Claro, no ano de 2002. Concluiu o mestrado
em Ciência da Computação, na Universidade Federal de São Carlos (UFSCar), em fevereiro de 2006.
Concluiu o doutorado em Física Computacional no Instituto de Física de São Carlos (IFSC) da USP
em 2010 sob a orientação do Prof. Dr. Nelson Delfino d’Ávila Mascarenhas e co-orientação do Prof.
Dr. Alberto Tannús. Atualmente é Professor do Departamento de Computação na Universidade Fede-
ral de São Carlos. Atua nas áreas de processamento de imagens e sinais e reconhecimento de padrões.
Possui experiência em ministrar diversas disciplinas para cursos de Ciência e Engenharia de Compu-
tação, como Lógica Matemática, Teoria dos Grafos, Matemática Discreta, Algoritmos e Estruturas
de Dados 1 e 2, Projeto e Análise de Algoritmos, Otimização Matemática, Processamento Digital de
Imagens, Reconhecimento de Padrões e Programação Científica.

“Se você tiver um pão e eu tiver um euro, e eu uso o meu euro para comprar o seu pão, no final
da troca eu terei o pão e você o euro. Parece um equilíbrio perfeito, não? A tem um euro, B
tem um pão; depois, A tem o pão e B o euro. É uma transação justa, mas meramente material.
Agora, imagine que você tem um soneto de Verlaine ou conhece o teorema de Pitágoras, e eu
não tenho nada. Se me ensinar, no final dessa troca, eu terei aprendido o soneto e o teorema,
mas você ainda os terá também. Nesse caso, não há apenas equilíbrio, mas crescimento. No
primeiro, trocamos mercadorias. No segundo, compartilhamos conhecimento. E enquanto a
mercadoria se consome, a cultura se expande infinitamente.”

Michel Serres, filósofo francês.

142
Referências
[1] M. C. Nicoletti, A cartilha da lógica. Editora UFSCar (EDUFSCar), 2009.

[2] A. L. M. Levada, Fundamentos de lógica matemática. Editora UFSCar (EDUFSCar), 2012. Dis-
ponível em: http://livresaber.sead.ufscar.br:8080/jspui/bitstream/
123456789/2781/1/SI_Alexandre_FundamentosLogicaMat.pdf.

[3] J. N. Souza, Lógica para ciência da computação. Elsevier, 2008.

[4] F. S. C. Silva, M. Finger, and A. C. V. Melo, Lógica para computação. Thomson, 2010.

[5] J. Nolt, D. Rohatyn, and A. Varzi, Schaum’s outline of theory and problems of logic. Thomson,
2 ed., 1998.

[6] F. Howard-Snyder, D. Howard-Snyder, and R. Wasserman, The power of logic. McGraw-Hill,


4 ed., 2009.

[7] C. A. F. Bispo, L. B. Castanheira, and O. M. S. Filho, Introdução à lógica matemática. Cengage


Learning, 2011.

[8] J. C. Magossi, Lógica matemática: uma introdução. Editora UNICAMP, 2020.

[9] J. Heil, First-order logic: a concise introduction. Hackett Publishing Company, Inc, 2 ed., 2021.

[10] C. A. Mortari, Introdução à Lógica. Editora UNESP, 2 ed., 2017.

[11] N. J. Vieira, “Lógica aplicada a computação,” 2006. Disponível em: https://homepages.


dcc.ufmg.br/~nvieira/cursos/lac/apostila/lac.caps1e2.pdf.

[12] H. M. Caseli, “Aulas de lógica matemática,” 2021. Disponível em: https://www.


youtube.com/@profa.helenacaseli6674/.

[13] S. L. Pereira, “Lógica proposicional,” 2008. Disponível em: https://www.ime.usp.br/


~slago/IA-logicaProposicional.pdf.

[14] S. L. Pereira, “Lógica de predicados,” 2008. Disponível em: https://www.ime.usp.br/


~slago/IA-logicaDePredicados.pdf.

[15] A. Figur, “O teorema da incompletude de Gödel,” Acta Legalicus, vol. 3, setembro 2017.

[16] E. Nagel and J. R. Newman, Gödel’s proof. New York University Press, 2001.

143

Você também pode gostar