E ∀x(P
d(x, g
1)−→∃y P
d(y, x)) verdadeira no modelo Zoo? Esta f´ormula, interpretada no
modelo Zoo, quer dizer que, se x devora g
1, ent˜ao existe algum y que devora x. Em conjuntos, a
quest˜ao ´e a seguinte:
para todo (x, g
1)∈Devora, existe y tal que (y, x)∈Devora?
Isto n˜ao ´e verdade, pois Efan devora g
1mas ningu´em o devora. Utilizando as rela¸c˜oes, temos
(Efan, g
1)∈Devora, mas n˜ao existey tal que (y, Ef an)∈Devora
Logo a f´ormula ∀x(P
d(x, g
1)−→∃y P
d(y, x)) ´e falsa no modelo Zoo.
13.4 Defini¸c˜ao Formal de Modelo
A defini¸c˜ao formal de verdade emprega a no¸c˜ao de satisfabilidade, definida abaixo. Para definir
esta no¸c˜ao, ´e antes necess´ario definir o que ´e o valor de um termot em uma estrutura A dados os
valores que as suas vari´aveis livres devem assumir. O “valor de um termo t” ´e um valor em |A|
resultado da avalia¸c˜ao das poss´ıveis fun¸c˜oes em t e da substitui¸c˜ao das vari´aveis e constantes em
t pelos respectivos valores. Por exemplo, considere um termot=
defx+c avaliado em um modelo
dos n´umeros naturais em que x´e substitu´ıdo por 1 e ccorresponde a 0. Ent˜ao o valor det neste
modelo com xsubstitu´ıdo por 1 ´e igual a 1 + 0, que ´e 1. Note que em 1 + 0, o + ´e a fun¸c˜ao soma
do modelo, os n´umeros naturais. O + da defini¸c˜ao de t,x+c, ´e apenas um s´ımbolo de fun¸c˜ao sem
significado.
Defini¸c˜ao 13.7. Considere Auma estrutura de uma linguagem L. Seja tum termot(v
1, v
2, ...v
n)
com v
i, v
2, . . . v
nmeta-vari´aveis
6livres
7e~a = (a
1, a
2, ...a
n) uma seq¨uˆencia de elementos em |A|
(a
i∈ |A|). O valor det emA, utilizando-se~a, ´e denotado port
A[~a] e definido indutivamente como:
1. a
iset ´ev
i;
2. c
Aset ´e c ec
A´e o valor de |A| associado `a constante cde L;
3. f
A(t
A1
[~a], t
A2
[~a], . . . t
Ak
[~a]) se t ´e f(t
1, t
2, . . . t
k).
Ent˜ao t
A[~a] ´e na verdade a aplica¸c˜ao de uma fun¸c˜ao espec´ıfica para A que toma~a e t como
parˆametros e produz um elemento de |A| como resultado:
g
A:T
∗×S
∗−→|A|
T
∗´e o conjunto de termos da linguagem e S
∗´e o conjunto de todas as seq¨uˆencias de|A|, de todos
os tamanhos. UsamosAem g
Apara indicar queg ´e espec´ıfico para esta estrutura. Outra estrutura
exigiria um g diferente.
Intuitivamente, t
A[~a] ´e o elemento de |A| resultado da avalia¸c˜ao de t em A utilizando~a como
valores para as vari´aveis livres. Note que t
A[~a] ´e um valor em |A| e t ´e apenas uma seq¨uˆencia
de s´ımbolos sem significado. Note que f
A(t
A1
[~a], t
A2
[~a], . . . t
Ak
[~a]) ´e um valor em |A| — a fun¸c˜ao
realmente ´e avaliada.
Exemplo 13.11. Como exemplo de c´alculo do valor de termos, considere a estrutura A =
hN,+,×,0,1i, o termo t igual (x+ 1)y e a sequˆencia~a = (1,3):
t
A[~a] = (1 + 1)3 = 6
Mais formalmente, temos
((x+ 1)y)
A[~a] = (x+ 1)
A[~a]y
A[~a]
= (x
A[~a] + 1
A[~a])y
A[~a]
= (1 + 1)3
= 23
= 6
Repetiremos este c´alculo colocando iacima, sobre chaves, das partes da f´ormula que s˜ao sintaxe e
m para as partes que s˜ao do modelo. As partes com i n˜ao tˆem significado algum pois s˜ao apenas
linguagem. Mas fornecendo-se um modeloAe uma sequˆencia~a de valores para as vari´aveis livres,
o termo resulta em um valor que ´e elemento do universo do modelo.
6Qualquer uma delas pode ser substitu´ıda por qualquer outra vari´avel da linguagem.
(
iz }| {
(x+ 1)y)
A[~a] =
iz }| {
(x+ 1)
A[~a]
mz}|{
iz}|{y
A[~a]
= (
iz}|{
x
A[~a]
mz}|{
+
iz}|{
1
A[~a])
mz}|{
iz}|{
y
A[~a]
=
mz }| {
(1 + 1)3
=
mz}|{
23
=
mz}|{
6
Utilizando a fun¸c˜aog
A, temos
g
A((x+ 1)y, ~a) = 6 com~a= (1,3)
t
A[~a] ´e o valor de t em A usando os valores de~a para as vari´aveis livres.
Exemplo 13.12. Considere a estrutura A =hR,+,, f,0,1,2i na qual − representa a subtra¸c˜ao
e f ´e a fun¸c˜ao fatorial. Naturalmente, a linguagem possui s´ımbolos iguais a estes. Calculemos
alguns termos usando sequˆencias diferentes:
(a) t ´e (((x
2+ 2)x
1)x
3) + 1 e~a= (5,0,3). Vejamos:
((((
0z}|{
x
2+2)
5z}|{
x
1)
3z}|{
x
3) + 1)
A[~a] = ((((0 + 2)5))3) + 1
= (25)3 + 1
= 103 + 1
= 31
(b) t ´e −(f(x)2) +y com~a= (5,250).
(−(f(x)2) +y)
A[~a] = −(f(
5z}|{x )2) +
250z}|{y
= −(f(5)2) + 250
= −(1202) + 250
= −(240) + 250
= 10
Note que o valor de t depende n˜ao s´o dos valores de ~a, mas tamb´em da estrutura utilizada.
Poder´ıamos ter valores diferentes em diferentes interpreta¸c˜oes. Por exemplo, suponha que t =
x
1+x
2e~a = (1,1). Na estruturaB=def <N, +, , 0, 1>dos n´umeros naturais,t
B[~a] = 2. Mas
no modelo Z
2, que cont´em apenas os elementos 0 e 1 e onde 1 + 1 = 0, temos t
Z2[~a] = 0.
Defini¸c˜ao 13.8. Seja A(v
1, v
2, ...v
n) uma f´ormula em uma linguagem L, v
i, v
2, . . . v
nmeta-vari´aveis, A uma estrutura de L e ~a uma seq¨uˆencia em |A|. Escrevemos “~a satisfaz A em A”,
denotado por AA[~a], se uma das condi¸c˜oes abaixo ´e satisfeita.
1. A´et
1=t
2et
A 1[~a] =t
A 2[~a]. Ou seja,
A(t
1=t
2)[~a] sse t
A 1[~a] =t
A 2[~a]
O s´ımbolo = que aparece emt
1=t
2´e o s´ımbolo da linguagem de primeira ordem. O s´ımbolo
= emt
A1
[~a] =t
A2
[~a] ´e o igual do modeloA. Admite-se que todos os modelos utilizam o mesmo
s´ımbolo de igualdade e que este s´ımbolo ´e igual ao s´ımbolo das linguagens de primeira ordem.
Uma nota¸c˜ao mais precisa utilizaria =
Apara denotar igualdade entre os elementos do modelo
A;
2. A´eP(t
1, t
2, ...t
n) e (t
A1[~a], t
A2[~a], . . . t
An[~a])∈P
A. Ou seja,
AP(t
1, t
2, ...t
n)[~a] sse (t
A1[~a], t
A2[~a], . . . t
An[~a])∈P
A3. A´e¬B e A6B[~a]. Ou seja,
A¬B[~a] sse A6B[~a]
Escrevemos A6 B[~a] para “~a n˜ao satisfaz A em A”. Isto ´e, utilizando as regras de
satisfa-bilidade apresentadas aqui, n˜ao se consegue provar que AB[~a];
4. A´eB ∨C e AB[~a] ou AC[~a]. Ou seja,
A(B∨C)[~a] sse AB[~a] ou AC[~a]
B e C n˜ao necessariamente possuem todas as vari´aveis livres de B−→C. Ent˜ao
poder-se-ia pensar queB[~a] n˜ao tem significado, pois o n´umero de valores em~apode ser maior do que o
n´umero de vari´aveis livres emB. Ent˜ao, considereB=
defB(v
1, v
2, ...v
n) eC=
defC(v
1, v
2, ...v
n);
5. A ´e ∃x B(x). Seja y uma vari´avel que n˜ao pertence ao conjunto de vari´aveis utilizadas em
A. Ent˜ao
A(∃x B(x))[~a] sse existe b∈ |A| tal que AB
x y[b, ~a].
onde|A|´e o universo da estruturaA. O s´ımbolo B
xy
´e a f´ormula B comx substitu´ıdo por y.
Naturalmente, b substituir´a y nas aplica¸c˜oes indutivas para se descobrir a satisfabilidade de
A.
Intuitivamente, A A[~a], ~a satisfaz A em A, se A ´e verdade no modelo A segundo a
inter-preta¸c˜ao usual de verdade. Isto ´e, a f´ormula ´e interpretada como se referisse exclusivamente ao
modeloA: a igualdade ´e a igualdade no modelo, os s´ımbolos de predicados de As˜ao os predicados
do modelo, o ∃xde A refere a um elemento espec´ıfico do universo |A| e assim por diante.
Os conectivos derivados∧,−→e←→s˜ao definidos a partir de¬e∨e o quantificador universal
∀´e definido usando∃. A defini¸c˜ao de satisfa¸c˜ao para estes conectivos derivados e para∀´e deduzida
utilizando a defini¸c˜ao de satisfa¸c˜ao para f´ormulas que usam ¬, ∨ e ∃. Ent˜ao temos
1. A(B∧C)[~a] sse AB[~a] eAC[~a]
2. A(B−→C)[~a] sse A6B[~a] ou AC[~a]
3. A(B←→C)[~a] sse (AB[~a] e AC[~a]) ou (A6B[~a] e A6C[~a])
4. A(∀x B(x))[~a] sse AB
xy
[b, ~a] para todo b∈ |A|
onde y ´e uma vari´avel que n˜ao pertence ao conjunto de vari´aveis utilizadas em B e |A| ´e o
universo da estrutura A. O s´ımbolo B
yx´e a f´ormula B com x substitu´ıdo pory.
A defini¸c˜ao de satisfa¸c˜ao dada acima exige que a estrutura obede¸ca as regras da l´ogica cl´assica.
Por exemplo, quando se diz que os n´umeros naturais s˜ao uma estrutura para uma certa linguagem
8exige-se mais do que a presen¸ca das fun¸c˜oes + e . Exige-se, por exemplo, que neste pequeno
mundo dos n´umeros uma f´ormula como ¬B seja considerada “verdadeira” se e somente se B seja
considerada “falsa”. E que∀xB(x) seja considerada “verdadeira” se e somente seB ´e “verdadeira”
quandox´e substitu´ıdo por cada um dos n´umeros naturais. Ent˜ao de certa forma as interpreta¸c˜oes
interpretam tamb´em os s´ımbolos da l´ogica como ¬,−→ e∀. Estes s´ımbolos s˜ao interpretados como
na l´ogica cl´assica, o que pode ser observado nas defini¸c˜oes de satisfa¸c˜ao acima:
• o¬ ´e interpretado com um n˜ao: A¬B[~a] sse~a n˜aosatisfaz B em A;
• o−→ ´e interpretado como no CP: A (B−→C)[~a] sse~a n˜ao satisfaz B em A ou~a satisfaz
C em A;
• o ∧´e interpretado como um “e” na linguagem natural (Portuguˆes, Inglˆes): A (B∧C)[~a]
sse~a satisfaz B em Ae~a satisfaz C em A;
• o∨´e interpretado como um “ou” na linguagem natural: A(B∨C)[~a] sse~a satisfaz B em
Aou~a satisfaz C em A;
• o ←→ ´e interpretado como um “se e somente se” na linguagem natural: A (B←→C)[~a]
sse (~a satisfaz B em Ase e somente se~a satisfaz C em A).
Uma estrutura ent˜ao ´e composta por uma “parte do mundo” mais as regras da l´ogica cl´assica.
Note que a defini¸c˜ao de estrutura engloba, de certa forma, a defini¸c˜ao de tabelas verdade do
c´alculo proposicional: elas dizem o que deve ser verdadeiro e o que deve ser falso (por enquanto,
satisfaz´ıvel e n˜ao satisfaz´ıvel).
Exemplo 13.13. Como exemplo, considere a estrutura A=hZ, <,+,×,0,1i. Iremos verificar se
algumas sequˆencias satisfazem algumas f´ormulas nesta estrutura.
(a) x= 2×x com~a= (5,3,4). Aqui colocamos mais valores na sequˆencia do que vari´aveis livres
na f´ormula. N˜ao tem importˆancia. Usamos o primeiro valor, 2. Ent˜ao ficamos com
A(x= 2×x)[~a] sse x
A[~a] = (2×x)
A[~a]
sse 5 = (2
A[~a]×x
A[~a])
sse 5 = (2×5)
sse 5 = 10
Ent˜ao ~a n˜ao satisfaz x = 2×x em A, A 6 (x = 2×x)[~a]. Note que na segunda linha em
diante, ×´e a opera¸c˜ao multiplica¸c˜ao em Z. Na primeira linha, a primeira ocorrˆencia de = ´e
um s´ımbolo da linguagem e a segunda ´e a rela¸c˜ao de igualadade em Z.
(b) ∀y(0< z−→(x < y−→x < y+z)) com~a = (3,2,−5). As vari´aveis livres s˜ao x e z (3 para x
e 2 para z).
A(∀y(0< z−→(x < y−→x < y+z)))[~a] sse
para todo y∈Z,A6(0< z)[~a] ou A(x < y−→x < y+z)[~a] sse
para todo y∈Z,(0<2) ´e falso ou (A6(x < y)[~a] ou A(x < y+z)[~a]) sse
para todoy∈Z,(0<2) ´e falso ou (3< y ´e falso ou 3< y+ 2)
Como 0<2 ´e satisfeito emZ, 3 < y n˜ao ´e satisfeito para todoy (pois h´a y menores ou iguais
a 3), temos que~a = (3,2,−5) satisfaz ∀y(0< z−→(x < y−→x < y+z)) em Z. Ou seja,
A(∀y(0< z−→(x < y−→x < y+z)))[~a]
(c) ∀x(x+y = 0) com~a = (1,4). Para~a satisfazer a f´ormula em A, ter´ıamos que ter x+ 1 = 0
para todox∈Z. Como isto n˜ao acontece, temos
A6(∀x(x+y = 0))[~a]
(d) ∃y(x=y+z) com~a= (0,1,2). x assume 0 e z, 1. Ent˜ao para termos
A(∃y(x=y+z))[~a]
´e necess´ario que exista umy∈Z tal que 0 =y+ 1. Basta tomary=−1.
Defini¸c˜ao 13.9. O fecho de uma f´ormula A com vari´aveis livresx
1,x
2, . . .,x
n´e a f´ormula
∀x
1∀x
2. . . x
nA
Exemplo 13.14. O fecho dex+y=z ´e ∀x∀y∀z(x+y=z). O fecho de∃y(f(x
1, y)< z+x
2) ´e
∀x
1∀z∀x
2∃y(f(x
1, y)< z+x
2).
Defini¸c˜ao 13.10. Uma f´ormula A de uma linguagem L ´e verdadeira na estrutura A de L se e
somente se toda seq¨uˆencia~a de|A|satisfazA. Isto ´e,AA[~a] para toda sequˆencia~a. Escrevemos
AA.
Defini¸c˜ao 13.11. Uma f´ormulaA de uma linguagemL ´efalsa na estrutura Ade Lse e somente
se nenhuma seq¨uˆencia~a de |A| satisfaz A. Isto ´e, A 6 A[~a] para toda sequˆencia ~a. Escrevemos
A6A.
Ent˜ao uma f´ormulaA´e verdadeira em uma estrutura se e somente se o fecho deA´e verdadeiro.
Estas defini¸c˜oes s˜ao muito, muito importantes. Elas dizem quando uma f´ormula ´everdadeira
e quando ´e falsa. Estas defini¸c˜oes correspondem, aproximadamente, no C´alculo Proposicional,
a uma f´ormula ser tautologia (verdadeira) e contradi¸c˜ao (falsa). Uma estrutura A na L´ogica de
Primeira Ordem corresponde `as tabelas verdades dos conectivos no CP. E uma seq¨uˆencia~a em A
na LPO corresponde a uma atribui¸c˜ao de valores `as vari´aveis de uma f´ormula no CP; isto ´e, uma
linha da tabela verdade.
H´a algumas observa¸c˜oes importantes sobre as defini¸c˜oes acima:
• uma certa f´ormula pode n˜ao ser verdadeira nem falsa. Por exemplo, na estruturaA=hZ, <
,+,×,0,1i, a f´ormula
x= 2×x
n˜ao ´e verdadeira nem falsa. Temos
A(x= 2×x)[~a] para a= (0) mas
A6(x= 2×x)[~b] para b= (1)
• se uma f´ormula ´e verdadeira ent˜ao ela n˜ao ´e falsa. Se ´e verdadeira, pela defini¸c˜ao ela n˜ao
pode ser falsa. Se ´e falsa, pela defini¸c˜ao de f´ormula falsa ela n˜ao pode ser verdadeira;
• uma f´ormula fechada, sem vari´aveis livres, ´e sempre verdadeira ou falsa.
Defini¸c˜ao 13.12. Uma estrutura Ade uma linguagem L´e um modelopara uma f´ormula A em
L se A´everdadeira em A. Escrevemos AA.
Exemplo 13.15. Como exemplo, considere a estrutura A=hZ, <,+,×,0,1i. Iremos verificar se
algumas f´ormulas s˜ao verdadeiras nesta estrutura; isto ´e, se a estrutura ´e modelo para cada uma
das f´ormulas.
(a) ∃x(x= 2×x). H´a algum x∈Z tal que x= 2×x? Sim, x= 0:
0 = 2×0
0 = 0
Correto. Note que avaliamos a f´ormula dentro do modelo. Assim, os s´ımbolos = e × que
aparecem nestas duas f´ormulas s˜ao o igual do modelo e a multiplica¸c˜ao em Z. Ent˜ao
A∃x(x= 2×x)
Ou, se preferir, Z∃x(x= 2×x);
(b) ∀x∀y∃z (0< z−→(x < y−→x < y+z)). Para todo x, y e z de Z, se z > 0 ent˜ao se x < y
temos x < y +z? Claramente sim. Esta ´e uma f´ormula do tipo A−→(B−→C) que j´a vimos
(Exerc´ıcio 6.8) ser logicamente equivalente a A∧B−→C. Ent˜ao a f´ormula acima quer dizer
“sez >0 e x < y temos x < y+z”? Sim, pois z ´e positivo e temos x < y < y+z.
Ent˜ao
A∀x∀y∃z(0< z−→(x < y−→x < y+z))
Ou, se preferir, Z∀x∀y∃z(0< z−→(x < y−→x < y+z));
(c) ∀x∃y(x+y = 0). Para todo x de Z existe um y em Z tal que x+y = 0? Sim. Escolhendo
x=n, basta tomary =−n. Este y sempre existe em Z. Logo
A∀x∃y(x+y = 0)
(d) ∀x∃y(x=y+ 1). Verdadeiro. Se tomarmos x=n,n ∈Z, podemos tomary=n−1. Note que
se o modelo fosse N, esta f´ormula seria falsa, pois para x = 0 n˜ao existe y tal que 0 =y+ 1.
Concluindo,
A∀x∃y(x=y+ 1)
(e) ∀x∀y∀z(x < y∧y < z−→x < z). Esta f´ormula ´e claramente verdadeira emN,ZeR. A prova
´e trivial e deixada como exerc´ıcio;
9(f) ∀x∃y(x×y = 1). Esta f´ormula quer dizer que “para todo x ∈ Z, existe um y ∈ Z tal que
x×y = 1”. Falso. Tome x = 2. N˜ao h´a y em Z tal que x×y = 1. Se a estrutura fosse R,
esta f´ormula seria verdadeira. Concluindo,
Z6∀x∃y(x×y= 1)
R∀x∃y(x×y= 1)
Exemplo 13.16. Como exemplo, considere a estruturaA=hN, D, <,+,×,0,1ina qual D´e uma
rela¸c˜ao bin´aria tal que D(x, y) se e somente sex divide y. Exige-se que x6= 0. Ent˜ao
(a) ∀x∃y(y6= 1∧D(y, x)). Falso. Tome x= 1. N˜ao h´a y6= 1 que divide 1;
(b) ∀x(1< x−→(∃y(y6= 1∧D(x, y))). Para todox >1,x∈N, existe um y∈N,y6= 1 tal que x
divide y. Quer dizer, todo n´umero inteiro maior do que 1 ´e divide um n´umero diferente de 1.
Verdadeiro, pois todo n´umero divide o seu dobro;
(c) ∀x(1 < x−→(∃y(y 6= 1∧x 6= y∧D(y, x))). Usamos x 6= y para ¬(x = y). Esta f´ormula ´e
falsa, pois os n´umeros primos s´o s˜ao divis´ıveis por 1 e por eles mesmos. Ent˜ao se tomarmosx
como 7, por exemplo, a f´ormula ´e falsa. E
(1< x−→(∃y(y6= 1∧x6=y∧D(y, x))
tem que ser verdadeira para todox∈N.
9Isto significa que o escritor n˜ao teve paciˆencia suficiente para colocar a prova aqui. Ent˜ao ele deixou para o leitor esta responsabilidade.
Defini¸c˜ao 13.13. Uma estrutura A de uma linguagem L ´e um modelo para um conjunto de
f´ormulas Γ em L se A´e modelo para cada uma das f´ormulas de Γ. Escrevemos AΓ.
Ent˜ao A´e modelo de Γ se e somente se
AA para todoA∈Γ
Exemplo 13.17. Por exemplo,
NΓ no qual
Γ ={∃x(y+x=y),∀x∃y(y=x+ 1),∀x(x= 0∨0< x)}
R Γ no qual Γ = {∀x(x < x+ 1),∀x∀y(x < y−→¬(x = y)),∀x∀y∀z(x < y∧y <
z−→x < z)}
ZΓ no qual Γ ={(x×(y+ 1) =x×y+x),∀x∃y(x+y= 0)}
Defini¸c˜ao 13.14. Escrevemos Γ A para indicar que A ´e verdadeira em todos os modelos do
conjunto Γ.
Isto ´e, para qualquer Amodelo de Γ, ent˜ao AA.
Exemplo 13.18. Seja L
Puma linguagem com uma ´unica constante 0, os s´ımbolos de fun¸c˜ao
bin´arios + e e s´ımbolo de fun¸c˜ao un´ario p´osfixado
0. Este ´ultimo s´ımbolo ser´a utilizado como x
0(quando interpretado nos n´umeros naturais, significa o sucessor de x, que ´e x+ 1).
F1 x=y−→(x=z−→y=z)
F2 x=y−→(x
0=y
0)
F3 06=x
0, que ´e o mesmo que ¬(0 =x
0)
F4 x
0=y
0−→x=y
F5 x+ 0 =x
F6 x+y
0= (x+y)
0F7 x0 = 0
F8 x(y
0) = (xy) +x
F9 (A(0)∧(∀x(A(x)−→A(x
0))))−→∀x A(x) para qualquer f´ormula A.
Considere que Γ
Pseja o conjunto de f´ormulas F1-F9. Por [F9], h´a infinitas f´ormulas em Γ
P.
Ent˜ao temos
Γ
P0 +x=x
Γ
P∀x(¬(x= 0)−→¬(x= 0
00x))
Γ
P∀x∀y(x+y=y+x)
Sup˜oe-se que Γ
Pseja suficientes para caracterizar a Aritm´etica, que ´e um modeloBno qual valem
as “verdades” usuais sobre n´umeros, como 1+1 = 2,∀x∀y(x+y=y+x) e (x+0
00)y= (xy)+0
00y.
Estas f´ormulas s˜ao chamadas de “axiomas de Peano”.
O leitor pode se perguntar porque a defini¸c˜ao de estrutura e modelo. Estas defini¸c˜oes
foram feitas sob medida para representar estruturas matem´aticas como os n´umeros naturais e suas
opera¸c˜oes, os n´umeros reais, as diferentes geometrias, grupos, etc.
Lema 13.1. A ´e falso em uma estrutura A se e somente se ¬A ´e verdadeiro.
Prova. A ´e falso em uma estrutura A (defini¸c˜ao de f´ormula falsa) sse nenhuma seq¨uˆencia ~a de
|A| satisfaz A em A sse (expandindo “nenhuma seq¨uˆencia”) toda seq¨uˆencia~a de |A| n˜ao satisfaz
A em A sse (pela defini¸c˜ao 13.8 de 6) para toda seq¨uˆencia ~a de |A| tem-se A 6 A[~a] sse (pela
defini¸c˜ao 13.8 de satisfa¸c˜ao de ¬B) para toda seq¨uˆencia~a de|A| tem-se A ¬A[~a] sse (defini¸c˜ao
de f´ormula verdadeira em uma estrutura) ¬A´e verdadeira.
Esta prova poderia ser resumida [8] para : uma seq¨uˆencia ~a satisfaz ¬A sse~a n˜ao satisfaz A.
Portanto, todas as seq¨uˆencias satisfazem ¬A sse nenhuma seq¨uˆencia satisfaz A. Ou seja, ¬A ´e
verdadeira sse A ´e falsa.
´
E importante observar que, seA possui vari´aveis livres,Apoderia n˜ao ser verdadeiro nem falso
em uma estrutura. Mas se A´e verdadeiro em uma estrutrura A, ¬A´e falso. E seA ´e falso em A,
¬A´e verdadeiro. Ent˜ao temos trˆes poss´ıves “valores verdade” para uma f´ormula A com vari´aveis
livres: V, F, I. Este ´ultimo s´ımbolo representa “a f´ormula n˜ao ´e nem verdadeira nem falsa”.
Pode-se concluir que, se uma f´ormula A n˜ao ´e verdadeira, A pode ter tanto o valor verdade F
como I. Ent˜ao se A n˜ao ´e verdadeira n˜ao se pode concluir que A possui o valor verdade F, que A
´e falsa.
Proposi¸c˜ao 13.1. Os axiomas das teorias de primeira ordem s˜ao verdadeiros em qualquer
estru-tura.
Defini¸c˜ao 13.15. Uma f´ormula A de uma linguagem L ´e logicamente v´alida se e somente se
ela ´e verdadeiraem todas as estruturas de L.
Uma f´ormula ´e verdadeira em uma estrutura se ela ´e verdadeira naquele peda¸co “mundo real”
que chamamos deestruturade uma linguagem (veja defini¸c˜ao 13.10). Se uma f´ormula ´e verdadeira
em todas as estruturas, ent˜ao ´e claro que a veracidade dela n˜ao depende de algo particular de
nenhuma parte do “mundo real”, a sua veracidade n˜ao depende das estruturas. Isto significa que a
f´ormula ´elogicamente v´alidapor causa da defini¸c˜ao 13.10 de verdade, que por sua vez depende
da defini¸c˜ao 13.8 de satisfa¸c˜ao. A defini¸c˜ao de satisfa¸c˜ao depende dasregras da l´ogica usuais, como
A−→B ´e verdade se A´e falsa ou B ´e verdade. Ent˜ao a defini¸c˜ao de logicamente v´alidacoincide
com a defini¸c˜ao usual, que ´e ser verdade independente de uma estrutura espec´ıfica. ´E “verdade”
apenas pelas regras da l´ogica.
A Figura 13.2 mostra conjuntos de f´ormulas verdadeiras em trˆes estruturas de uma linguagem
L. Assuma que estas trˆes estruturas representem todas as poss´ıveis estruturas desta linguagem. As
f´ormulas logicamente v´alidas em L est˜ao na intersec¸c˜ao de todos os trˆes conjuntos representados
na figura, que ´e a ´area em cinza.
Figura 13.2: Conjuntos representando f´ormulas verdadeiras nas estruturas de uma linguagem L.
Assuma que as trˆes estruturas representadas representem todas as estruturas desta linguagem.
Pela defini¸c˜ao de logicamente v´alido, temos que todos os axiomas s˜ao logicamente v´alidos.
Como um exemplo de f´ormula logicamente v´alida temos
• ∀x A−→∃x A, que quer dizer, em uma estrutura, que se todos os elementos do modelo
satisfazem certas propriedades dadas por A, ent˜ao existe um elemento que satisfaz aquelas
propriedades;
• A−→A, ´obvio;
• ∃x B−→(∀x A(x)−→A(t)), pois∀x A(x)−→A(t) ´e logicamente v´alida. Vejamos porquˆe. Esta
f´ormula quer dizer que, para todo x do universo do modelo, se A(x) for v´alido ent˜ao A(t)
tamb´em o ser´a (note a precedˆencia: (∀x A(x))−→A(t)). Como A(x) ´e verdadeiro para todos
os elementos do universo, ser´a v´alido para um valor do termo t quando interpretado no
modelo. Pelas propriedades do conectivo −→, a f´ormula toda ´e logicamente v´alida (se B ´e
V, ent˜ao A−→B ´e V).
Defini¸c˜ao 13.16. Considere as f´ormulas A e B de uma mesma linguagem L. Dizemos que uma
f´ormula A logicamente implica uma f´ormula B se, para toda estrutura de L, toda seq¨uˆencia
que satisfaz A tamb´em satisfaz B.
Exemplo 13.19. Seja A=
def∃x(P(x, y)∧Q(x, y)) e B=
def∃x Q(x, y). Ent˜ao A implica
logi-camente B. Para cada sequˆencia~a que satisfaz A e cada estrutura A, temos A (∃x(P(x, y)∧
Q(x, y)))[~a] o que implica emA(∃x Q(x, y))[~a]. Em resumo, se temosX eY em uma estrutura,
ent˜ao temos obrigatoriamente Y nesta mesma estrutura. N˜ao ´e poss´ıvel ter uma estrutura com
uma seq¨uˆencia que satisfaz a primeira f´ormula sem satisfazer a segunda.
Defini¸c˜ao 13.17. Considere as f´ormulas A e B de uma mesma linguagem L. Dizemos que uma
f´ormula A ´e logicamente equivalente a uma f´ormula B se A implica logicamente B e
vice-versa.
Exemplo 13.20. Seja A=
def∀x(R(x, y, z)−→S(y, x)) e B=
def∀x(¬S(y, x)−→¬R(x, y, z)). As
duas f´ormulas s˜ao logicamente equivalentes pois X−→Y ≡ ¬Y−→¬X.
Defini¸c˜ao 13.18. Considere a f´ormulaAe um conjunto Γ de f´ormulas de uma linguagemL. Uma
f´ormula A ´e uma conseq¨uˆencia l´ogica de um conjunto de f´ormulas Γ se A ´e verdadeira em
todos os modelos de Γ. Isto ´e, se A Γ para certo modelo A, ent˜ao A A. Escrevemos Γ A
como na Defini¸c˜ao 13.14.
Exemplo 13.21. Neste exemplo usaremos os axiomas de Peano do exerc´ıcio 13.18, o conjunto
Γ
P. A partir destes axiomas, temos
Γ
Px+y=y+x
Γ
P∃x(y+y=x)
Γ
P∃z(¬(z = 0)∧x+z =y)−→¬(x=y)
Para provar que Γ A, tome um modelo A qualquer (gen´erico, n˜ao espec´ıfico) de Γ e prove
queAA. Por exemplo, provaremos que
∀x
1Q(x
1)Q(c)
no qual c´e uma constante da linguagem.
SejaA um modelo de∀x
1Q(x
1). Ent˜ao temos Q(b) para todo elementob ∈ |A| e
consequente-mente, Q(c), pois crefere-se a um elemento espec´ıfico de A. Note queQ(b) refere-se ao predicado
do modelo e Q na f´ormula ´e apenas um s´ımbolo da linguagem.
Para provar que Γ 6 A, basta encontrar um modelo de Γ em que A ´e falsa. Por exemplo,
suponha que queremos provar que
Q(c)6∀x Q(x)
Claramente isto ´e correto, pois se temos Q(c) n˜ao necessariamente temos Q(x) para todo
x da estrutura. Se algu´em tem olhos azuis, n˜ao necessariamente todo mundo tem olhos azuis.
Acharemos um contra-exemplo concreto para este caso.
Considere o modeloAcom universo|A|={0,1}que associa `a constantecda linguagem o elemento
0. O predicado Q ´e {0}. Ent˜ao AQ(c)[b] para todob ∈ |A|, pois 0∈Q e b n˜ao ´e utilizado. Ou
mais claramente, AQ(c) pois temos Q(0) na estrutura A. Mas 1 6∈Q e portanto n˜ao ´e verdade
que para todo x do universo da estrutura, temos Q(x). Mais formalmente, n˜ao ´e verdade que
A(∀x Q(x))[b] para todo b ∈ |A|
Isto significaria 0∈Q e 1∈Q. N˜ao se esque¸ca de que usamos Q para s´ımbolo de predicado (nas
f´ormulas) e Qpara o predicado da estrutura.
13.5 Considera¸c˜oes Finais
Esta Unidade ensinou como associar conjuntos de f´ormulas a algo chamadomodelo. Ou o contr´ario,
podemos abstrair o modelo em um conjunto de f´ormulas, colocando nelas apenas os fatos que nos
interessam. Vimos que um conjunto de f´ormulas pode ser associado a mais de um modelo. De
fato, qualquer conjunto de f´ormulas pode ser associado a nenhum ou a infinitos modelos. Sim,
pode n˜ao existir nenhum modelo para as f´ormulas. Por exemplo, n˜ao h´a nenhum modelo para a
f´ormula P(x)∧ ¬P(x) pelo simples fato de que ela n˜ao ´e verdadeira de nenhum modo.
A associa¸c˜ao de f´ormulas a um modelo ´e uma ferramenta muito ´util. Inicialmente abstra´ımos
o modelo para um conjunto de f´ormulas Γ e a partir da´ı podemos trabalhar estas f´ormulas
sintati-camente. Utilizando Γ, os axiomas da L´ogica de Primeira Ordem e as regras de dedu¸c˜ao, podemos
produzir teoremas que s˜ao sempre verdadeiros no modelo. Em resumo, podemos produzir verdades
a respeito do mundo utilizando apenas algumas poucas regras da l´ogica.
13.6 Exerc´ıcios
13.1. Defina estrutura para uma linguagem. Dˆe um exemplo de linguagem e de duas estruturas
para ela.
13.2. As fun¸c˜oes de uma estrutura podem ser de um subconjunto do universo para outro
subcon-junto ?
13.3. Explique a frase: “um conjunto de f´ormulas l´ogicas comprimem informa¸c˜oes sobre uma parte
do mundo real”. Na sua explica¸c˜ao, explique porque as dedu¸c˜oes que podem ser feitas utilizando
as f´ormulas permitem comprimir uma grande quantidade de informa¸c˜ao em poucas f´ormulas.
13.4. (Muito Importante) Fa¸ca um modeloA para cada um dos itens abaixo tal que
(a) os predicados un´arios P eQ, que s˜ao subconjuntos de |A|, satisfa¸cam P ⊂Q;
(b) os predicados un´arios P eQ satisfa¸cam P ⊂Q e P 6=Q;
(c) os predicados un´arios P eQ satisfa¸cam P ∩Q=∅;
(d) os predicados un´arios P eQ satisfa¸cam P ∩Q6=∅;
(e) os predicados un´arios P eQ satisfa¸cam P ∪Q=|A|;
(f) os predicados un´arios P eQ satisfa¸cam P ∩Q6=∅ eP ∪Q6=|A|;
(g) os predicados un´arios P,Q e R satisfa¸cam P ∩Q∩R 6=∅, P ∪Q∪R6=|A|;
(h) 1)R(x, y) sempre que x6=y; 2) sempre queQ(x),P(y), x6=y, ent˜ao R(x, y);
(i) todoxesteja relacionado (via uma rela¸c˜ao bin´ariaR) com todoydiferente dele (o que ´e isto?);
(j) h´a um grupo de elementos (com dois ou mais elementos — vocˆe fixa este n´umero) relacionados
entre si via uma rela¸c˜ao bin´aria R sendo que nenhum elemento deste grupo se relaciona com
nenhum outro elemento que n˜ao pertence a este grupo.
13.5. (Muito importante) Prove que as f´ormulas abaixo n˜ao s˜ao logicamente v´alidas. Isto ´e, cada
uma delas n˜ao ´e v´alida em algum modelo.
1. ∀x∀y(f(x) =f(y)−→x=y)
2. ∀x∀y∀z(x < y∧y < z−→x < z)
3. R(x, y)
4. P(x)−→Q(x)
5. R(x, y)←→∃x∃y P(x)∧Q(y)
6. ∀x∃y(y×y=x)
7. R(x, y)−→S(x, y)
13.6. Fa¸ca dois modelos para a f´ormula ∀x∀y∃z (¬(z = x)∧ ¬(z = y)). Interpretada nestes
No documento
José de Oliveira Guimarães Campus de Sorocaba da UFSCar Sorocaba - SP
(páginas 135-155)