6 L´ ogica de primeira ordem – axiomatiza¸c˜ ao
6.3 Principais esquemas de teoremas
6.3 Principais esquemas de teoremas
Encontrar um caminho para demonstrar um teorema a partir da pequena lista de axiomas apresentada na se¸c˜ao anterior n˜ao ´e uma tarefa f´acil. Como poderemos perceber logo no primeiro teorema desta se¸c˜ao, mesmo resultados que temos como triviais s˜ao dif´ıceis de provar. Por´em, cada vez que provamos um teorema, podemos coloc´a-lo diretamente dentro de uma outra demons- tra¸c˜ao, sem precisarmos prov´a-lo novamente. Melhor ainda se provarmos esquemas de teoremas , que, como os esquemas de axiomas, s˜ ao enunciados na metalinguagem em fun¸c˜oes de f´ormulas arbitr´arias (por exemplo, se A e
B s˜ao teoremas, ent˜ao A
∧∧
B ´e um teorema). Por esse tipo de resultado ser enunciado e demonstrado na metalinguagem, o chamamos de metateoremas . Na pr´atica, eles funcionam como novos axiomas e regras de inferˆencias que deduzimos, e, a partir de ent˜ao, podemos utiliz´a-los nas pr´oximas demons- tra¸c˜oes.Portanto, encontrar uma demonstra¸c˜ao torna-se paulatinamente mais f´acil `a medida que provamos os “primeiros” teoremas e metateoremas, e as de- monstra¸c˜oes se tornam mais pr´oximas das argumenta¸c˜oes que estamos acos- tumados a fazer na metalinguagem. Isso porque os argumen tos l´ogicos que costumamos usar intuitivamente nas demonstra¸c˜oes feitas na “matem´atica comum”, sem a linguagem l´ogica, come¸cam a incorporar a lista de metateo- remas que podemos usar sem precisar redemonstrar. Dessa forma, tudo que conseguimos provar com rigor na linguagem natural, tamb´em conseguiremos provar na linguagem l´ogica.
O prop´osito desta se¸c˜ao ´e provar axiomaticamente uma quantidade razo´avel de teoremas e metateoremas, de modo que as demonstra¸ c˜oes axiom´aticas se tornem mais fact´ıveis – pelo menos nos n´ıveis mais elementares – , e n˜ao apenas uma possibilidade te´orica.
Vamos come¸car por um teorema bem sim ples: (x = y)
→→
(y = x). Escreveremos as f´ormulas que comp˜oem a demonstra¸c˜ao explicando, entre colchetes, ap´os cada f´ormula, como a obtivemos.1. (x = y)
→ →
((x = x)→ →
(y = x)) [Do esquema A5, tomando x = x no lugar de A e y = x no lugar de B]2. (x = x)
→→
(((x = y)→ →
((x = x)→ →
(y = x)))→→
((x = y)→→
(y = x))) [Do esquema A1, tomando a tautologia p→ →
((q→ →
( p→ →
r))→ →
(q→ →
r)), substituindo p por x = x, q por x = y e r por y = x]100CAP ´ ITULO 6. L ´ OGICA DE PRIMEIRA ORDEM – AXIOMATIZAC¸ ˜ AO 3. x = x [Esquema A4]
4. ((x = y)
→ →
((x = x)→ →
(y = x)))→ →
((x = y)→ →
(y = x)) [modus ponens aplicado a 2 e 3, tomando como A a f´ormula x = x e como Ba f´ormula ((x = y)
→→
((x = x)→→
(y = x)))→→
((x = y)→→
(y = x))] 5. (x = y)→ →
(y = x) [Modus Ponens aplicado a 1 e 4, tomando ( x =y)
→→
((x = x)→→
(y = x)) no lugar de A e (x = y)→→
(y = x) no lugar de B]O pr´oximo grupo de metateoremas que mostraremos s˜ao novas regras de inferˆencia obtidas a partir do modus pones e das instˆancias de tautologias. Come¸camos derivando a regra de inferˆencia que ´e a contrapositiva do modus ponens, e corresponde ao silogismo l´ ogico negando o consequente . Como todos metateoremas desse grupo tˆem demonstra¸c˜oes bem parecidas e simples, deixaremos a maioria das demonstra¸c˜oes como exerc´ıcio ao leitor.Lembramos que estamos seguindo aquelas regras de omiss˜ao de parˆenteses, quando n˜ao houver comprometimento com o significado. Eliminamos os parˆenteses externos e em sequˆencias de operadores un´arios (
¬¬
,∀ ∀
e∃ ∃
).Teorema 6.4 (Modus Tollens). Se A
→ →
B e¬ ¬
B s˜ ao teoremas ent˜ ao¬ ¬
A ´e um teorema.Demonstra¸c˜ao: Pela tabela-verdade podemos verificar que a seguinte f´ormula ´e uma instˆancia de tautologia, onde A e B s˜ao f´ormulas quaisquer:
(A
→→
B)→→
((¬¬
B)→→
(¬¬
A))Se A
→ →
B ´e um teorema, da f´ormula acima e de modus ponens conclu´ımos que a seguinte f´ormula ´e um teorema:(
¬¬
B)→→
(¬¬
A)Aplicando modus ponens novamente – assumindo que
¬ ¬
B ´e um teorema –conclu´ımos
¬ ¬
A. 6.3. PRINCIPAIS ESQUEMAS DE TEOREMAS 101
Demonstra¸c˜ao: Como no Teorema 6.4, basta aplicarmo s duas vezes mo- dus ponens `a seguinte instˆancia de tautologia:
A
→→
(B→ →
(A∧∧
B))
Os pr´oximos oito teoremas seguem o mesmo m´etodo e deixaremos as provas como exerc´ıcios.
Teorema 6.6. Se A
→→
B e B→→
C s˜ ao teoremas ent˜ ao A→→
C ´e um teorema.Teorema 6.7. Se A
→ →
(B→ →
C ) e B s˜ ao teoremas, ent˜ ao A→ →
C ´e um teorema.Teorema 6.8. Se A
→→
B e B→→
A s˜ ao teoremas ent˜ ao A↔↔
B ´e um teorema.Teorema 6.9. Se A
→ →
(B→→
C ) e A→ →
(C→→
D) s˜ ao teoremas ent˜ aoA
→→
(B→ →
D) ´e um teorema.Teorema 6.10. Se A
→→
B e A→→
C s˜ ao teoremas ent˜ ao A→→
(B∧∧
C ) ´e um teorema.Teorema 6.11. Se A
→ →
(B→ →
C ) ´e um teorema ent˜ ao (A∧∧
B)→ →
C ´e um teorema.Teorema 6.12. Uma f´ ormula da forma A
→→
B ´e um teorema se, e somente se, (¬¬
B)→→
(¬¬
A) ´e um teorema.Teorema 6.13. Se A
→→
B e (¬¬
A)→→
B s˜ ao teoremas ent˜ ao B ´e um teorema. Os dois teoremas seguintes generalizam o esquema de axiomas A5, sobre substitui¸c˜ao de termos iguais em uma f´ormula.Teorema 6.14. Se t e s s˜ ao termos, e B ´e obtido a partir de A atrav´es de uma substitui¸c˜ ao de t por s, em uma ocorrˆencia que n˜ ao est´ a no escopo de nenhuma ocorrˆencia de uma vari´ avel que ocorre em t ou em s, ent˜ ao (t = s)
→→
(A→→
B) ´e um teorema.102CAP ´ ITULO 6. L ´ OGICA DE PRIMEIRA ORDEM – AXIOMATIZAC¸ ˜ AO
Demonstra¸c˜ao Sejam x e y duas vari´aveis que n˜ao aparecem nas f´ormulas
A e B nem nos termos t e s. Considere C a f´ormula obtida pela substitui¸c˜ao do termo t pela vari´avel x na f´ormula A, na mesma ocorrˆencia em que t ´e substitu´ıdo por s, em B. Da mesma for ma, considere D a f´ormula em que substitu´ımos essa mesma ocorrˆencia de s em B pela vari´avel y.
Como x e y n˜ao ocorrem em A nem em B, reparemos que [C ]t
x ´e a f´ormula
A, e [D]s
y ´e a f´ormula B. Pela hip´otese, temos que x e y n˜ao est˜ao no escopo de nenhuma vari´avel que ocorre em t ou s. Portanto, as substitui¸c˜oes em [C ]t
x e [D]sy s˜ao boas. Como escolhemos x e y que n˜ao aparecem nas f´ormulas
A e B, temos que D ´e obtido a partir de uma substitui¸c˜ao boa de x por y
em C . Portanto, o esquema A5 nos fornece o seguinte axioma: (x = y)
→→
(C→ →
D)Pela regra da generaliza¸c˜ao
∀∀
x((x = y)→→
(C→ →
D))Usando as observa¸c˜oes acima notamos que a seguinte f´ormula ´e uma instˆancia de A3:
∀∀
x((x = y)→→
(C→ →
D))→→
((t = y)→→
(A→→
D)) Por modus ponens, das duas ´ultimas f´ormulas, obtemos(t = y)
→→
(A→→
D) Novamente pela generaliza¸c˜ao:∀∀
y((t = y)→→
(A→→
D)) Por A3:∀∀
y((t = y)→→
(A→→
D))→→
((t = s)→→
(A→→
B))Usando modus ponens mais uma vez obtemos o teorema que quer´ıamos: (t = s)
→→
(A→→
B)
Na hip´otese do Teorema 6.14 tamb´em dizemos que a substitui¸c˜ao de t
por s ´e boa .
Teorema 6.15. Se t e s s˜ ao termos, e B ´e obtido a partir de A atrav´es de duas ou mais substitui¸c˜ oes boas de t por s, ent˜ ao (t = s)
→ →
(A→ →
B) ´e um teorema.6.3. PRINCIPAIS ESQUEMAS DE TEOREMAS 103
Demonstra¸c˜ao Se B ´e obtido a partir de n substitui¸c˜oes de t por s em A, considere uma sequˆencia de f´ormulas A0,...,A n em que A0 ´e a f´ormula A,
An ´e a f´ormula B, e cada f´ormula ´e obtida a partir de uma substitui¸c˜ao de t por s na f´ormula anterior. O metateorema 6.14 nos d´a, para cada i < n, o seguinte teorema:
(1) ( t = s)
→→
(Ai→ →
Ai+1)Mostraremos, por indu¸c˜ao em i, que para todo i < n vale o teorema
(2) ( t = s)
→→
(A0→ →
Ai+1)Para i = 0 a express˜ao (2) ´e um caso particular de (1). Suponha que temos mostrado o seguinte teorema:
(3) ( t = s)
→→
(A0→
→
Ai)De (3) e (1) e da nova regra de inferˆencia 6.9 obtemos (2). Tomando i = n
−−
1 obtemos(t = s)
→→
(A0→ →
An)
Teorema 6.16. Se A ´e um teorema, t ´e um termo, e x ´e uma vari´ avel livre para t, em A, ent˜ ao [A]t
x ´e um teorema.
Demonstra¸c˜ao: Pela regra da generaliza¸c˜ao,
∀ ∀
xA ´e um teorema. De A3 temos que (∀∀
xA)→
→
[A]tx ´e um teorema. De Modus Ponens conclu´ımos que
[A]tx ´e um teorema.
Mostraremos, agora, as propriedades reflexiva, sim´etrica e transitiva da igualdade entre termos.
Teorema 6.17. Se t ´e um termo, ent˜ ao t = t ´e um teorema.
Demonstra¸c˜ao: Segue de A4 e 6.16.
104CAP ´ ITULO 6. L ´ OGICA DE PRIMEIRA ORDEM – AXIOMATIZAC¸ ˜ AO
Demonstra¸c˜ao: Provamos, no exemplo, que (x = y)
→ →
(y = x) ´e um teorema. Aplicando duas vezes 6.16 provamos o que quer´ıamos. Teorema 6.19. Se t, s e u s˜ ao termos, ent˜ ao ((t = s)
∧∧
(s = u))→→
(t = u) ´e um teorema.Demonstra¸c˜ao: Mostraremos a sequˆencia de f´ormulas da demonstra¸c˜ao, enumerando as f´ormulas `a esquerda e indicando, `a direita, os axiomas, regras de inferˆencia, metateoremas e f´ormulas anteriores utilizados. Abreviamos as regras de generaliza¸c˜ao e modus ponens como G e MP, respectivamente, e omitimos detalhes nas indica¸c˜oes dos esque mas de axiomas. Cabe ao leitor (nesta e nas pr´oximas demonstra¸c˜oes) completar os detalhes, como verificar as instˆancias de tautologia e se as substitui¸c˜oes s˜ao boas.
1. (x = y)
→→
(y = x) [6.18] 2. (y = x)→→
((y = z )→→
(x = z )) [A5] 3. (x = y)→→
((y = z )→→
(x = z )) [6.6, 1 e 2] 4. ((x = y)→ →
((y = z )→ →
(x = z )))→ →
(((x = y)∧∧
(y = z ))→ →
(x = z )) [A1] 5. ((x = y)∧∧
(y = z ))→→
(x = z ) [MP, 4 e 3] 6. ((t = y)∧∧
(y = z ))→→
(t = z ) [6.16, 5] 7. ((t = s)∧∧
(s = z ))→→
(t = z ) [6.16, 6] 8. ((t = s)∧∧
(s = u))→→
(t = u) [6.16, 7] Os pr´oximos teoremas nos ajudar˜ao a trabalhar melhor com o quantifi- cador universal.
Teorema 6.20. Se A e B s˜ ao f´ ormulas e x ´e uma vari´ avel, ent˜ ao
∀ ∀
x(A→ →
B)→→
((∀∀
xA)→→
(∀∀
xB)) ´e um teorema.6.3. PRINCIPAIS ESQUEMAS DE TEOREMAS 105 Demonstra¸c˜ao 1. (
∀∀
xA)→→
A [A3] 2. ((∀∀
xA)→→
A)→→
((A→→
B)→→
((∀∀
xA)→→
B)) [A1] 3. (A→→
B)→→
((∀∀
xA)→→
B) [MP, 1 e 2] 4. (∀∀
x(A→→
B))→→
(A→→
B) [A3] 5. (∀∀
x(A→→
B))→→
((∀∀
xA)→→
B) [6.6, 4 e 3] 6.∀∀
x((∀∀
x(A→→
B))→→
((∀∀
xA)→→
B)) [G e 5] 7. (∀∀
x((∀∀
x(A→→
B))→→
((∀∀
xA)→→
B)))→→
((∀∀
x(A→→
B))→→
(∀∀
x((∀∀
xA)→→
B))) [A2] 8. (∀∀
x(A→→
B))→→
(∀∀
x((∀∀
xA)→→
B)) [MP, 6 e 7] 9. (∀∀
x((∀∀
xA)→→
B))→→
((∀∀
xA)→→
(∀∀
xB)) [A2] 10. (∀∀
x(A→→
B))→→
((∀∀
xA)→→
(∀∀
xB)) [6.6, 8 e 9] Teorema 6.21. Se A
→→
B e∀ ∀
xA s˜ ao teoremas, ent˜ ao∀ ∀
xB ´e teorema.Demonstra¸c˜ao: 1. A
→→
B [hip´otese] 2.∀∀
xA [hip´otese] 3.∀∀
x(A→→
B) [G e 1] 4. (∀∀
x(A→→
B))→→
((∀∀
xA)→→
(∀∀
xB)) [6.20] 5. (∀∀
xA)→→
(∀∀
xB) [MP, 3 e 4] 6.∀∀
xB [MP, 2 e 5] Teorema 6.22. Se A e B s˜ ao f´ ormulas e x ´e uma vari´ avel, ent˜ ao
∀ ∀
x(A∧∧
B)→→
((∀∀
xA)∧∧
(∀∀
xB)) ´e um teorema.106CAP ´ ITULO 6. L ´ OGICA DE PRIMEIRA ORDEM – AXIOMATIZAC¸ ˜ AO Demonstra¸c˜ao: 1. (A
∧∧
B)→→
A [A1] 2.∀∀
x((A∧∧
B)→→
A) [G e 1] 3. (∀∀
x((A∧∧
B)→→
A))→→
((∀∀
x(A∧∧
B))→→
(∀∀
xA)) [6.20] 4. (∀∀
x(A∧∧
B))→→
(∀∀
xA) [MP, 2 e 3]5. (
∀∀
x(A∧∧
B))→→
(∀∀
xB) [Repita os passos anteriores] 6. (∀∀
x(A∧∧
B))→→
((∀∀
xA)∧∧
(∀∀
xB)) [6.10, 4 e 5]
Teorema 6.23. Se A e B s˜ ao f´ ormulas e x ´e uma vari´ avel, ent˜ ao
∀ ∀
x(A∧∧
B)↔↔
((∀∀
xA)∧∧
(∀∀
xB)) ´e um teorema. Demonstra¸c˜ao: 1. A→→
(B→ →
(A∧∧
B)) [A1] 2.∀∀
x(A→→
(B→ →
(A∧∧
B))) [G e 1] 3. (∀∀
x(A→→
(B→ →
(A∧∧
B))))→→
((∀∀
xA)→→
(∀∀
x(B→ →
(A∧∧
B)))) [6.20] 4. (∀∀
xA)→→
(∀∀
x(B→ →
(A∧∧
B))) [MP, 2 e 3] 5. (∀∀
x(B→ →
(A∧∧
B)))→→
((∀∀
xB)→→
(∀∀
x(A∧∧
B))) [6.20] 6. (∀∀
xA)→→
((∀∀
xB)→→
(∀∀
x(A∧∧
B))) [6.6, 4 e 5] 7. ((∀∀
xA)∧∧
(∀∀
xB))→→
(∀∀
x(A∧∧
B)) [6.11 e 6] 8. (∀∀
x(A∧∧
B))→→
((∀∀
xA)∧∧
(∀∀
xB)) [6.22] 9.∀∀
x(A∧∧
B)↔↔
((∀∀
xA)∧∧
(∀∀
xB)) [6.8, 7 e 8] Teorema 6.24. Se A
↔↔
B ´e um teorema e x ´e uma vari´ avel, ent˜ ao (∀∀
xA)↔↔
(∀∀
xB) ´e um teorema.6.3. PRINCIPAIS ESQUEMAS DE TEOREMAS 107 Demonstra¸c˜ao: 1. A
↔↔
B [Hip´otese] 2. (A↔↔
B)→→
(A→→
B) [A1] 3. A→→
B [MP, 1 e 2] 4.∀∀
x(A→→
B) [G e 3] 5. (∀∀
x(A→→
B))→→
((∀∀
xA)→→
(∀∀
xB)) [6.20] 6. (∀∀
xA)→→
(∀∀
xB) [MP, 4 e 5]7. (
∀∀
xB)→→
(∀∀
xA) [Analogamente aos pass os 1 a 6] 8. (∀∀
xA)↔↔
(∀∀
xB) [6.8, 6 e 7]
Terminamos nossa lista com alguns teoremas sobre o quantificador exis- tencial.
Teorema 6.25. Se A ´e uma f´ ormula e x ´e uma vari´ avel, ent˜ ao A
→→
(∃∃
xA) ´e um teorema.Demonstra¸c˜ao: Lembramos que a f´ormula acima ´e uma abreviatura de
A
→→
(¬∀¬∀
x¬¬
A). Fa¸camos a prova: 1. (∀∀
x¬¬
A)→→
(¬¬
A) [A3] 2. (¬¬¬¬
A)→→
(¬∀¬∀
x¬¬
A) [6.12] 3. A→→
(¬¬¬¬
A) [A1] 4. A→→
(¬∀¬∀
x¬¬
A) [6.6, 3 e 2] Teorema 6.26. Se A ´e uma f´ ormula e x ´e uma vari´ avel, ent˜ ao (
∀∀
xA)→ →
(∃∃
xA) ´e um teorema.108CAP ´ ITULO 6. L ´ OGICA DE PRIMEIRA ORDEM – AXIOMATIZAC¸ ˜ AO Demonstra¸c˜ao: 1. (
∀∀
xA)→→
A [A3] 2. A→→
(∃∃
xA) [6.25] 3. (∀∀
xA)→→
(∃∃
xA) [6.6, 1 e 2] Teorema 6.27. Se x e y s˜ ao vari´ aveis,
∀ ∀
x∃∃
y(x = y) ´e um teorema.Demonstra¸c˜ao: 1. (
∀∀
y(¬¬
(x = y)))→→
(¬¬
(y = y)) [A3] 2. (¬¬
(¬¬
(y = y)))→→
(¬¬
(∀∀
y(¬¬
(x = y)))) [6.12 e 1] 3. (y = y)→→
(¬¬
(¬¬
(y = y))) [A1] 4. (y = y)→→
(¬¬
(∀∀
y(¬¬
(x = y)))) [6.6, 3 e 2] 5. (y = y)→→
(∃∃
y(x = y)) [defini¸c˜ao de∃ ∃
] 6. y = y [A4] 7.∃∃
y(x = y) [MP, 6 e 5] 8.∀∀
x∃∃
y(x = y) [G e 7] 6.4 F´ormulas equivalentes
Continuamos a apresentar alguns metateoremas cruciais para as demons- tra¸c˜oes forma is. Desta vez, mostraremos teoremas da forma A
↔ ↔
B, que ser˜ao ´uteis para a pr´oxima se¸c˜ao, sobre forma normal prenexa.Defini¸c˜ao 6.28. Dizemos uma f´ormula A ´e equivalente a uma f´ormula B
6.4. F ´ ORMULAS EQUIVALENTES 109