Cálculo de Predicados de Primeira-Ordem da Lógica...
Transcript of Cálculo de Predicados de Primeira-Ordem da Lógica...
Cálculo de Predicados de Primeira-Ordemda Lógica Clássica
Logica CC
Departamento de Matematica
Universidade do Minho, Braga
2009 /2010
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 1/75
Sintaxe do Cálculo de Predicados
Definicao 3.1 Um tipo de linguagem e um terno (F ,R,N ), emque:
a) F e um conjunto, numeravel ou finito, de sımbolos designadospor sımbolos de funcao;
b) R e um conjunto, numeravel ou finito, de sımbolos designadospor sımbolos de relacao ou sımbolos de predicado;
c) N e uma funcao de domınio F ∪R e conjunto de chegada N0.
Para cada s ∈ F ∪R, chamamos ao numero natural N (s) a aridadede s. Os sımbolos de funcao de aridade 0 sao chamados constantes.
Exemplo 3.2 O terno ({0, s,+,×}, {=, <},N ), onde N (0) = 0,N (s) = 1, N (+) = 2, N (×) = 2, N (=) = 2 e N (<) = 2, e um tipode linguagem. Chamaremos LArit a este tipo de linguagem para aAritmetica.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 2/75
Sintaxe do Cálculo de Predicados
Caso nada seja dito em contrario, L e utilizado para representar umtipo linguagem (F ,R,N ), cujo conjunto das constantes e C.
Definicao 3.3 O alfabeto AL, do Calculo de Predicados, induzidopor um tipo de linguagem L e o conjunto formado pelos seguintessımbolos:
a) sımbolos de funcao e sımbolos de predicado de L;
b) ⊥, ∧, ∨, ¬, → e ↔, chamados conectivos proposicionais;
c) x0, x1, ..., xn, ..., chamados variaveis (de indivıduo), formandoum conjunto numeravel, notado por V ;
d) ∃ e ∀, chamados quantificador existencial e quantificadoruniversal respectivamente;
e) “(”, “)” e “,” chamados sımbolos auxiliares.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 3/75
Sintaxe do Cálculo de Predicados
Definicao 3.4 O conjunto de L-termos, que notamos por TL, e oconjunto definido indutivamente, sobre o conjunto de palavras sobreAL, pelo seguinte conjunto de regras:
a) para cada variavel xi ∈ V , xi ∈ TL
xi;
b) para cada constante c de L, c ∈ TLc
;
c) para cada sımbolo de funcao f de L, de aridade n ≥ 1,
t1 ∈ TL ... tn ∈ TL
f(t1, ..., tn) ∈ TLf .
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 4/75
Sintaxe do Cálculo de Predicados
Exemplo 3.5 A palavra ×(x1, s(0)) sobre o alfabeto ALArite um
LArit-termo. De facto,
x1 ∈ TLArit
x10 ∈ TLArit
0
s(0) ∈ TLArit
s
×(x1, s(0)) ∈ TLArit
×
e uma arvore de formacao de ×(x1, s(0)).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 5/75
Sintaxe do Cálculo de Predicados
Notacao: No caso em que f e um sımbolo de funcao binario e t1 e t2sao L-termos, e usual a notacao t1ft2 (possivelmente entreparentesis) para representar o L-termo f(t1, t2). Por exemplo, anotacao x1 × s(0) representara o LArit-termo ×(x1, s(0)).
Definicao 3.6 Chamaremos subtermos aos sub-objectos de umL-termo.
Exemplo 3.7 O conjunto dos subtermos de x1 × s(0) e
{x1 × s(0), x1, s(0), 0}.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 6/75
Sintaxe do Cálculo de Predicados
A definicao indutiva do conjunto de L-termos e determinista, Assim,existe um teorema de recursao estrutural para L-termos, que pode serenunciado como se segue.
Teorema 3.8 [Teorema da Recursao Estrutural para L-Termos] SejamX um conjunto, gV : V → X e gC : C → X funcoes e seja, para cadasımbolo de funcao f , de aridade n ≥ 1, gf : Xn → X uma funcao.Entao, existe uma e uma so funcao G : TL → X tal que:
a) Para todo x ∈ V , G(x) = gV(x);
b) Para todo c ∈ C, G(c) = gC(c);
c) para todo o sımbolo de funcao f , de aridade n ≥ 1, e para todot1, ..., tn ∈ TL,
G(f(t1, ..., tn)) = gf (G(t1), ..., G(tn)).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 7/75
Sintaxe do Cálculo de Predicados
Definicao 3.9 A funcao VAR : TL → P(V), que a cada L-termo t fazassociar o conjunto VAR(t) das variaveis que ocorrem em t, edefinida, por recursao estrutural em TL, do seguinte modo:
a) Para todo x ∈ V , VAR(x) = {x};
b) Para todo c ∈ C, VAR(c) = ∅;
c) para todo o sımbolo de funcao f , de aridade n ≥ 1, e para todot1, ..., tn ∈ TL,
VAR(f(t1, ..., tn)) =
n⋃
i=1
VAR(ti).
Exemplo 3.10 O conjunto das variaveis que ocorrem no LArit-termox0 × s(x1) e
VAR(x0 × s(x1)) = VAR(x0) ∪ VAR(s(x1))
= {x0} ∪ VAR(x1)
= {x0, x1}.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 8/75
Sintaxe do Cálculo de Predicados
Definicao 3.11 Sejam x ∈ V e t ∈ TL. A funcao [t/x] : TL → TL
que a cada L-termo t0 faz associar o L-termo que resulta dasubstituicao em t0, da variavel x pelo termo t, e definida, por recursaoestrutural, do seguinte modo:
a) para todo y ∈ V , y[t/x] =
t se y = x
y se y 6= x
b) para todo c ∈ C, c[t/x] = c;
c) para todo o sımbolo de funcao f , de aridade n ≥ 1, e para todot1, ..., tn ∈ TL,
f(t1, ..., tn)[t/x] = f(t1[t/x], ..., tn[t/x]).
O L-termo que resulta da substituicao em t0, da variavel x pelo termot, e representado por t0[t/x].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 9/75
Sintaxe do Cálculo de Predicados
Exemplo 3.12 O LArit-termo que resulta da substituicao de x1 pors(0), em x0 × s(x1), e
(x0 × s(x1))[s(0)/x1] = x0[s(0)/x1] × s(x1)[s(0)/x1]
= x0 × s(x1[s(0)/x1])
= x0 × s(s(0)).
Uma vez que o conjunto de L-termos e definido indutivamente, existeum teorema de inducao estrutural para este conjunto, que pode serenunciado como se segue.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 10/75
Sintaxe do Cálculo de Predicados
Teorema 3.13 [Inducao Estrutural em L-Termos] Seja P (t) umapropriedade que depende de um L-termo t. Se:
a) para todo x ∈ V , P (x) e valida;
b) para todo c ∈ C, P (c) e valida;
c) para todo o sımbolo de funcao f , de aridade n ≥ 1, e para todot1, ..., tn ∈ TL, se P (t1) e ... e P (tn) sao validas, entaoP (f(t1, ..., tn)) e valida
entao, para todo t ∈ TL, P (t) e valida.
Proposicao 3.14 Dados L-termos t1 e t2 e dada uma variavel x, sex 6∈ VAR(t1), entao t1[t2/x] = t1.
Dem: Por inducao estrutural em t1. (Exercıcio.)
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 11/75
Sintaxe do Cálculo de Predicados
Definicao 3.15 Seja L um tipo de linguagem. Uma palavra sobre oalfabeto AL da forma R(t1, ..., tn), onde R e um sımbolo de relacaode aridade n e t1, ..., tn sao L-termos, e chamada uma L-formulaatomica. O conjunto das L-formulas atomicas e representado porAtL.
Exemplo 3.16 As palavras < (x0, s(0)) e = (x0, x1), sobre oalfabeto ALArit
, sao LArit-formulas atomicas.
Notacao: Quando R e um sımbolo de relacao binario e t1 e t2 saoL-termos, utilizamos a notacao t1Rt2 (possivelmente entre parentesis)para representar a L-formula atomica R(t1, t2). Por exemplo, anotacao x0 < s(0) representara a LArit-formula atomica < (x0, s(0)).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 12/75
Sintaxe do Cálculo de Predicados
Definicao 3.17 Seja L um tipo de linguagem. O conjunto dasL-formulas, que representamos por FL, e o conjunto definidoindutivamente, sobre o conjunto de palavras sobre AL, pelas regrasseguintes:
a) ⊥ ∈ FL⊥
;
b) ϕ ∈ FLAtL, para cada ϕ ∈ AtL;
c)ϕ ∈ FL
(¬ϕ) ∈ FL
¬ ;
d)ϕ ∈ FL ψ ∈ FL
(ϕ�ψ) ∈ FL� , para cada � ∈ {∧,∨,→,↔};
e)ϕ ∈ FL
(∃xϕ) ∈ FL∃x , para cada x ∈ V ;
f)ϕ ∈ FL
(∀xϕ) ∈ FL∀x , para cada x ∈ V .
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 13/75
Sintaxe do Cálculo de Predicados
Exemplo 3.18 A palavra (∀x0(∃x1
((¬(x0 < s(0))) → (x0 = x1))),sobre o alfabeto induzido pelo tipo de linguagem LArit, e umaLArit-formula, como prova a arvore de formacao seguinte:
(x0 < s(0)) ∈ FLArit
AtLArit
(¬(x0 < s(0))) ∈ FLArit
¬(x0 = x1) ∈ FLArit
AtLArit
((¬(x0 < s(0))) → (x0 = x1)) ∈ FLArit
→
(∃x1((¬(x0 < s(0))) → (x0 = x1))) ∈ FLArit
∃x1
(∀x0(∃x1
((¬(x0 < s(0))) → (x0 = x1))) ∈ FLArit
∀x0
Para simplificacao de escrita, omitiremos alguns parentesis na escritade formulas; os parentesis extremos e os parentesis a volta denegacoes ou de quantificadores sao geralmente omitidos. Porexemplo, a LArit-formula do exemplo anterior podera ser representadapor ∀x0
∃x1(¬(x0 < s(0)) → (x0 = x1)).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 14/75
Sintaxe do Cálculo de Predicados
Uma vez que o conjunto de L-formulas se encontra definido atravesde uma definicao indutiva determinista, existem teoremas de recursaoe de inducao estrutural para L-formulas.
Teorema 3.19 [Recursao Estrutural em L-formulas] Sejam X umconjunto e x ∈ X e sejam g : AtL → X, g¬ : X → X,g� : X ×X → X (para cada � ∈ {∧,∨,→,↔}) e gQ : X → X
(para cada Q ∈ {∃,∀}) funcoes. Entao, existe uma e uma so funcaoG : FL → X tal que:
a) G(⊥) = x;
b) G(ϕ) = g(ϕ), para todo ϕ ∈ AtL;
c) G(¬ϕ)) = g¬(G(ϕ)), para todo ϕ ∈ FL;
d) G(ϕ�ψ) = g�(G(ϕ), G(ψ)), para todo � ∈ {∧,∨,→,↔} e paratodo ϕ,ψ ∈ FL;
e) G(Qyϕ) = gQ(G(ϕ)), para todo Q ∈ {∃,∀}, para todo y ∈ V epara todo ϕ ∈ FL.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 15/75
Sintaxe do Cálculo de Predicados
Teorema 3.20 [Inducao Estrutural em L-Formulas] Seja L um tipode linguagem e seja P (ϕ) uma propriedade que depende de umaL-formula ϕ. Se:
a) P (⊥);
b) P (ϕ), para todo ϕ ∈ AtL;
c) P (ϕ) ⇒ P (¬ϕ), para todo ϕ ∈ FL;
d) P (ϕ) e P (ψ) ⇒ P (ϕ�ψ), para todo � ∈ {∧,∨,→,↔} e paratodo ϕ,ψ ∈ FL;
e) P (ϕ) ⇒ P (Qxϕ), para todo Q ∈ {∃,∀}, para todo x ∈ V e paratodo ϕ ∈ FL;
entao, para todo σ ∈ FL, P (σ).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 16/75
Sintaxe do Cálculo de Predicados
Definicao 3.21 Sejam L um tipo de linguagem e ϕ ∈ FL. Aossub-objectos de ϕ damos a designacao de subformulas de ϕ.
Definicao 3.22 Dada uma subformula de uma L-formula ϕ da formaQxψ, em que Q ∈ {∃,∀} e x ∈ V , o alcance desta ocorrencia doquantificador Qx em ϕ e a L-formula ψ.
Exemplo 3.23 Na LArit-formula
∀x0(∃x1
(x0 = s(x1)) → (¬(x0 = 0) ∧ ∃x1(x1 < x0))),
a) o alcance de ∀x0e ∃x1
(x0 = s(x1)) → (¬(x0 = 0) ∧ ∃x1(x1 < x0));
b) o alcance da primeira ocorrencia do quantificador ∃x1e x0 = s(x1);
c) o alcance da segunda ocorrencia do quantificador ∃x1e x1 < x0.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 17/75
Sintaxe do Cálculo de Predicados
Definicao 3.24 Numa L-formula ϕ, uma ocorrencia numasub-formula atomica de ϕ de uma variavel x diz-se livre quando essaocorrencia nao esta no alcance de nenhum quantificador Qx (comQ ∈ {∃,∀}); caso contrario, essa ocorrencia de x diz-se ligada.Representamos por LIV(ϕ) o conjunto das variaveis que temocorrencias livres em ϕ e por LIG(ϕ) o conjunto das variaveis que temocorrencias ligadas em ϕ.
Exemplo 3.25 Seja ϕ a LArit-formula
∃x1(¬( x0︸︷︷︸
(a)
< s(0)) → ∀x0( x0︸︷︷︸
(b)
= x1︸︷︷︸
(a)
)).
A ocorrencia (a) de x0 e livre, enquanto que a ocorrencia (b) de x0,por se encontrar no alcance do quantificador ∀x0
, e ligada. Aocorrencia (a) de x1 e tambem ligada, pois encontra-se no alcance doquantificador ∃x1
. Assim, LIV(ϕ) = {x0} e LIG(ϕ) = {x0, x1}.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 18/75
Sintaxe do Cálculo de Predicados
Definicao 3.26 A L-formula resultante da substituicao, numaL-formula ϕ, de todas as ocorrencias livres de uma variavel xpor um L-termo t, que sera notada por ϕ[t/x], e definida, porrecursao estrutural em ϕ, como:
a) ⊥[t/x] = ⊥;
b) para todo o sımbolo de relacao R, de aridade n, e para todot1, ..., tn ∈ TL, R(t1, ..., tn)[t/x] = R(t1[t/x], ..., tn[t/x]);
c) Para todo ψ ∈ FL, (¬ψ)[t/x] = (¬ψ[t/x]);
d) Para todo � ∈ {∧,∨,→,↔} e para todo ψ1, ψ2 ∈ FL,
(ψ1�ψ2)[t/x] = (ψ1[t/x]�ψ2[t/x]);
e) Para todo Q ∈ {∃,∀}, para todo y ∈ V e para todo ψ ∈ FL,
(Qyψ)[t/x] =
(Qyψ) se y = x
(Qyψ[t/x]) se y 6= x
.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 19/75
Sintaxe do Cálculo de Predicados
Exemplo 3.27 Seja ϕ a LArit-formula
∃x1(¬(x0 < s(0)) → ∀x0
(x0 = x1)).
Entao,
ϕ[s(x1)/x0] = ∃x1(¬(s(x1) < s(0)) → ∀x0
(x0 = x1)).
Definicao 3.28 Uma variavel x diz-se substituıvel por umL-termo t numa L-formula ϕ sem captura de variaveis ou que avariavel x e livre para substituicao por um L-termo t numaL-formula ϕ quando nao existem ocorrencias livres de x no alcancede quantificadores Qy, em que Q ∈ {∃,∀} e y ∈ VAR(t), ou,equivalentemente, quando, para toda a ocorrencia livre de x em ϕ, seessa ocorrencia esta no alcance de um quantificador Qy, com
Q ∈ {∃,∀}, entao y 6∈ VAR(t).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 20/75
Sintaxe do Cálculo de Predicados
Exemplo 3.29 Seja ϕ a LArit-formula ∀x1(x1 < x2) ∨ ¬(x1 < x2).
a) x0 e substituıvel por x1 + s(x2) em ϕ sem captura de variaveis,pois x0 nao tem ocorrencias livres em ϕ.
b) x1 e substituıvel por x1 + s(x2) em ϕ sem captura de variaveis,uma vez que a unica ocorrencia livre de x1 em ϕ nao se encontrano alcance de qualquer quantificador.
c) x2 nao e substituıvel por x1 + s(x2) em ϕ sem captura devariaveis, pois x2 tem uma ocorrencia livre no alcance doquantificador ∀x1
e x1 ∈ VAR(x1 + s(x2)).
d) Em ϕ existem duas ocorrencias livres de x2. Uma dessasocorrencias esta no alcance de um unico quantificador, ∀x1
. Aoutra ocorrencia nao esta no alcance de nenhum quantificador.Logo, x2 e substituıvel por um L-termo t em ϕ sem captura devariaveis se e so se x1 6∈ VAR(t).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 21/75
Sintaxe do Cálculo de Predicados
Observacao: Observe que mesmo quando uma variavel x nao esubstituıvel por um L-termo t numa L-formula ϕ sem captura devariaveis, a operacao de substituicao de x por t em ϕ encontra-sedefinida. Por exemplo, x2 nao e livre para substituicao por x1 + s(x2)em
ϕ = ∀x1((x1 < x2) ∨ ¬(x1 < x2)),
no entanto, a LArit-formula resultante da substituicao de x2 porx1 + s(x2) em ∀x1
(x1 < x2) ∨ ¬(x1 < x2)) encontra-se definida e eigual a
∀x1(x1 < x1 + s(x2)) ∨ ¬(x1 < x1 + s(x2))).
Contudo, note que a primeira ocorrencia da variavel x2 em ϕ, que eralivre, foi substituıda pelo termo x1 + s(x2), cuja ocorrencia de x1
passou a estar ligada ao quantificador ∀x1.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 22/75
Sintaxe do Cálculo de Predicados
Proposicao 3.30 Dadas uma L-formula ϕ e uma variavel x e dadoum L-termo t,
x 6∈ LIV(ϕ) =⇒ ϕ[t/x] = ϕ.
Dem: Por inducao estrutural em ϕ.
a) Caso ϕ = ⊥. Entao, ϕ[t/x] = ⊥[t/x](1)= ⊥ = ϕ.
Justificacoes
(1) Definicao de substituicao.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 23/75
Sintaxe do Cálculo de Predicados
b) Caso ϕ = R(t1, ..., tn), com R um sımbolo de relacao, n-ario, et1, ..., tn ∈ TL. Uma vez que x 6∈ LIV(ϕ) segue que, para todo1 ≤ i ≤ n, x 6∈ VAR(ti); de outra forma terıamos x ∈ LIV(ϕ), umacontradicao. Portanto, aplicando a Proposicao 3.14, para todo1 ≤ i ≤ n,ti[t/x] = ti. Logo:
ϕ[t/x] = R(t1, ..., tn)[t/x](1)= R(t1[t/x], ..., tn[t/x])
(2)= R(t1, ..., tn) = ϕ.
Justificacoes
(1) Definicao de substituicao.
(2) Para todo 1 ≤ i ≤ n, ti[t/x] = ti.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 24/75
Sintaxe do Cálculo de Predicados
c) Caso ϕ = Qyϕ1, com Q ∈ {∃,∀}, y ∈ V e ϕ1 ∈ FL.
Suponha-se, por hipotese de inducao, que se x 6∈ LIV(ϕ1), entaoϕ1[t/x] = ϕ1.
Caso x = y. Entao:
ϕ[t/x] = (Qyϕ1)[t/x](1)= Qyϕ1 = ϕ.
Justificacoes
(1) Definicao de substituicao.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 25/75
Sintaxe do Cálculo de Predicados
Caso x 6= y. Entao:
ϕ[t/x] = (Qyϕ1)[t/x](1)= Qyϕ1[t/x]
(2)= Qyϕ1 = ϕ.
Justificacoes
(1) Definicao de substituicao.
(2) Por hipotese, x 6∈ LIV(ϕ). Como LIV(ϕ1) ⊆ LIV(ϕ) ∪ {y} e
x 6= y, segue-se que x 6∈ LIV(ϕ1). Logo, por hipotese de inducao,
ϕ1[t/x] = ϕ1.
d) Os restantes casos sao deixados como exercıcio.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 26/75
Sintaxe do Cálculo de Predicados
Definicao 3.31 Uma L-formula ϕ diz-se uma L-sentenca, ou umaL-formula fechada, quando nao tem ocorrencias livres de variaveis,i.e., LIV(ϕ) = ∅.
Proposicao 3.32 Sejam ϕ uma L-sentenca, x uma variavel e t umL-termo. Entao, ϕ[t/x] = ϕ.
Dem: Imediata, a partir da proposicao anterior.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 27/75
Semântica do Cálculo de Predicados
Definicao 3.33 Uma L-estrutura E e um par (D, ) tal que :
a) D e um conjunto nao vazio, chamado o domınio de E e notadopor dom(E);
b) e uma funcao de domınio F ∪R, chamada a funcaointerpretacao de E, tal que :
• para cada constante c de L, faz corresponder um elemento cde D;
• para cada sımbolo de funcao f de L, de aridade n ≥ 1, faz
corresponder uma funcao f : Dn −→ D, n-aria;
• para cada sımbolo de relacao R de L, de aridade n, faz
corresponder uma relacao R ⊆ Dn, n-aria.
Para cada sımbolo s ∈ F ∪R, s e chamada a interpretacao de sem E.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 28/75
Semântica do Cálculo de Predicados
Exemplo 3.34
a) Seja EArit = (N0, ), onde:
• 0 e o numero natural zero;
• s e a funcao de sucessor em N0, i.e., s e a funcao
N0 −→ N0
n 7→ n+ 1
;
• + e a funcao de adicao em N0;
• × e a funcao de multiplicacao em N0;
• = e a relacao de igualdade em N0;
• < e a relacao de menor do que em N0.
Entao, EArit e uma LArit-estrutura.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 29/75
Semântica do Cálculo de Predicados
Exemplo 3.34
b) E tambem uma LArit-estrutura o par ({a, b}, ), onde:
• 0 = a;
• s e a funcao {a, b} −→ {a, b}
x 7→ x
;
• + e a funcao {a, b} × {a, b} −→ {a, b}
(x, y) 7→ a
;
• × e a funcao {a, b} × {a, b} −→ {a, b}
(x, y) 7→ b
;
• = = {(a, a), (b, b)};
• < = {(a, b)}.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 30/75
Semântica do Cálculo de Predicados
Definicao 3.35 Uma funcao a : V −→ dom(E), do conjunto dasvariaveis para o domınio de uma L-estrutura E, e chamada umaatribuicao em E.
Exemplo 3.36 A funcao
aind : V −→ N0
xi 7→ i
e uma atribuicao em EArit.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 31/75
Semântica do Cálculo de Predicados
Definicao 3.37 O valor de um L-termo t para uma atribuicao anuma L-estrutura E = (D, ), que notamos por t[a]E ou,simplesmente, por t[a] (quando e claro qual a estrutura que deve serconsiderada) e um elemento de D definido, por recursao estrutural emt, como:
a) Para todo x ∈ V, x[a] = a(x);
b) Para todo c ∈ C, c[a] = c;
c) para todo o sımbolo de funcao f , de aridade n ≥ 1, e para todot1, ..., tn ∈ TL,
f(t1, ..., tn)[a] = f(t1[a], ..., tn[a]).
Exemplo 3.38 O valor do LArit-termo s(x0) × (x0 + x2) para a
atribuicao aind, na LArit-estrutura EArit, e
(s(x0) × (x0 + x2))[aind] = s(x0)[a
ind]× (x0 + x2)[aind]
= s(x0[aind])× (x0[a
ind] +x2[aind]) = (0 + 1)× (0+2) = 2.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 32/75
Semântica do Cálculo de Predicados
Proposicao 3.39 Dado um L-termo t e dadas atribuicoes a1 e a2
numa L-estrutura E = (D, ),
(para todo x ∈ VAR(t), a1(x) = a2(x)) =⇒ t[a1] = t[a2].
Dem: Por inducao estrutural em t.
a) Caso t seja uma variavel. Entao, t ∈ VAR(t). Logo, por hipotese,a1(t) = a2(t) (∗). Assim,
t[a1](1)= a1(t)
(∗)= a2(t)
(1)= t[a2].
Justificacoes
(1) Definicao de valor de um termo para uma atribuicao.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 33/75
Semântica do Cálculo de Predicados
b) Caso t seja uma constante. Entao,
t[a1](1)= t
(1)= t[a2].
Justificacoes
(1) Definicao de valor de um termo para uma atribuicao.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 34/75
Semântica do Cálculo de Predicados
c) Caso t seja da forma f(t1, ..., tn) (com f um sımbolo de funcao dearidade n ≥ 1). Entao,
t[a1] = f(t1, ..., tn)[a1](1)= f(t1[a1], ..., tn[a1])
(2)= f(t1[a2], ..., tn[a2])
(1)= f(t1, ..., tn)[a2] = t[a2].
Justificacoes
(1) Definicao de valor de um termo para uma atribuicao.
(2) Para 1 ≤ i ≤ n, como VAR(ti) ⊆ VAR(t), da hipotese segue-
se que: ∀x∈VAR(ti) a1(x) = a2(x). Logo, por hipotese de
inducao,∀1≤i≤n ti[a1] = ti[a2].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 35/75
Semântica do Cálculo de Predicados
De a), b) e c), por inducao estrutural em L-termos, pode agoraconcluir-se que, para todo t ∈ TL,
(para todo x ∈ VAR(t), a1(x) = a2(x)) =⇒ t[a1] = t[a2].
Notacao: Sejam a uma atribuicao numa L-estrutura E, d ∈ dom(E)
e x uma variavel. Escrevemos a
(
x
d
)
para a atribuicao tal que, para
todo y ∈ V ,
a
(
x
d
)
(y) =
d se y = x
a(y) se y 6= x
.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 36/75
Semântica do Cálculo de Predicados
Proposicao 3.40 Sejam t0 e t1 L-termos e seja a uma atribuicaonuma L-estrutura. Entao,
t0[t1/x][a] = t0
[
a
(
x
t1[a]
)]
.
Dem: Por inducao estrutural em t0. (Exercıcio.)
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 37/75
Semântica do Cálculo de Predicados
Definicao 3.41 O valor logico de uma L-formula ϕ numaL-estrutura E = (D, ) para uma atribuicao a em E, quenotamos por ϕ[a]E ou, simplesmente, por ϕ[a] (quando e claro qual aestrutura que deve ser considerada) e um elemento do conjunto {0, 1}definido, por recursao em ϕ, como:
a) ⊥[a] = 0;
b) R(t1, ..., tn)[a] = 1 sse (t1[a], ..., tn[a]) ∈ R, para todo o sımbolode relacao R de aridade n e para todo t1, ..., tn ∈ AtL;
c) (¬ϕ1)[a] = 1 − ϕ1[a], para todo ϕ1 ∈ FL;
d) (ϕ1 ∧ ϕ2)[a] = min(ϕ1[a], ϕ2[a]), para todo ϕ1, ϕ2 ∈ FL;
e) (ϕ1 ∨ ϕ2)[a] = max(ϕ1[a], ϕ2[a]), para todo ϕ1, ϕ2 ∈ FL;
f) (ϕ1 → ϕ2)[a] = 0 sse ϕ1[a] = 1 e ϕ2[a] = 0, para todoϕ1, ϕ2 ∈ FL;
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 38/75
Semântica do Cálculo de Predicados
g) (ϕ1 ↔ ϕ2)[a] = 1 sse ϕ1[a] = ϕ2[a], para todo ϕ1, ϕ2 ∈ FL;
h) (∃xϕ1)[a] = 1 sse existe d ∈ D tal que ϕ1
[
a
(
x
d
)]
= 1
sse max
{
ϕ1
[
a
(
x
d
)]
: d ∈ D
}
= 1,
para todo x ∈ V e para todo ϕ1 ∈ FL;
i) (∀xϕ1)[a] = 1 sse para todo d ∈ D, ϕ1
[
a
(
x
d
)]
= 1
sse min
{
ϕ1
[
a
(
x
d
)]
: d ∈ D
}
= 1,
para todo x ∈ V e para todo ϕ1 ∈ FL.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 39/75
Semântica do Cálculo de Predicados
Exemplo 3.42 O valor logico da LArit-formula
∃x1 ∃x2 (x3 + x2 = s(s(0)) × x1),
em EArit, para a atribuicao aind, e 1, pois a seguinte proposicao daAritmetica e verdadeira,
∃n1∈N0∃n2∈N0
3 + n2 = 2 × n1
Definicao 3.43 Dizemos que uma L-estrutura E satisfaz umaL-formula ϕ para uma atribuicao a em E, e escrevemos E |= ϕ[a],quando o valor logico de ϕ em E para a e 1. Dizemos que aL-estrutura E nao satisfaz ϕ para a atribuicao a, e escrevemosE 6|= ϕ[a], quando o valor logico de ϕ em E para a e 0.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 40/75
Semântica do Cálculo de Predicados
Proposicao 3.44 Sejam E uma L-estrutura e a uma atribuicao emE. Entao:
a) E |= ∃xϕ[a] sse existe d ∈ dom(E) tal que E |= ϕ
[
a
(
x
d
)]
;
b) E |= ∀xϕ[a] sse para todo d ∈ dom(E), E |= ϕ
[
a
(
x
d
)]
;
c) E 6|= ∃xϕ[a] sse para todo d ∈ dom(E) E 6|= ϕ
[
a
(
x
d
)]
;
d) E 6|= ∀xϕ[a] sse existe d ∈ dom(E), E 6|= ϕ
[
a
(
x
d
)]
.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 41/75
Semântica do Cálculo de Predicados
Dem: Imediata, a partir da definicao de valor logico de L-formulas.Por exemplo:
E 6|= ∃xϕ[a] sse ∃xϕ[a]E = 0
sse para todo d ∈ dom(E), ϕ
[
a
(
x
d
)]
E
= 0
sse para todo d ∈ dom(E), E 6|= ϕ
[
a
(
x
d
)]
. �
Exemplo 3.45 Seja ϕ a LArit-formula
∀x1(¬(x1 = x0) → ∃x2
(s(x2) = x1)).
Entao
EArit |= ∀x1(¬(x1 = x0) → ∃x2
(s(x2) = x1))[aind]
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 42/75
Semântica do Cálculo de Predicados
sse para todo n1 ∈ N0,
EArit |= (¬(x1 = x0) → ∃x2(s(x2) = x1))
[
aind
(
x1
n1
)]
sse para todo n1 ∈ N0,
EArit 6|= ¬(x1 = x0)
[
aind
(
x1
n1
)]
ou EArit |= ∃x2(s(x2) = x1)
[
aind
(
x1
n1
)]
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 43/75
Semântica do Cálculo de Predicados
sse para todo n1 ∈ N0,
EArit |= (x1 = x0)
[
aind
(
x1
n1
)]
ou existe n2 ∈ N0 tal que EArit |= (s(x2) = x1)
[
aind
(
x1
n1
)(
x2
n2
)]
sse para todo n1 ∈ N0,
n1 = 0 ou existe n2 ∈ N0 tal que n2 + 1 = n1
Assim, uma vez que a ultima proposicao e verdadeira, temos que
EArit satisfaz ϕ para aind ou, por outras palavras, o valor logico de ϕ
em EArit para aind e 1.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 44/75
Semântica do Cálculo de Predicados
Proposicao 3.46 Seja ϕ uma L-formula e sejam a1 e a2 atribuicoesnuma L-estrutura E.
a) Se a1(x) = a2(x) para todo x ∈ LIV(ϕ), entao E |= ϕ[a1] sseE |= ϕ[a2].
b) Se x 6∈ LIV(ϕ), entao E |= ϕ[a1] sse para todo d ∈ dom(E),
E |= ϕ
[
a1
(
x
d
)]
.
c) Se ϕ e uma L-sentenca, entao E |= ϕ[a1] sse E |= ϕ[a2].
Dem:
a) Por inducao estrutural em ϕ. (Exercıcio.)
b) e c) Exercıcio. (Sugestao: Aplique a alınea a).) �
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 45/75
Semântica do Cálculo de Predicados
Proposicao 3.47 Sejam ϕ uma L-formula, E = (D, ) umaL-estrutura, a uma atribuicao em E e x uma variavel substituıvel porum L-termo t em ϕ. Entao,
E |= ϕ[t/x][a] sse E |= ϕ
[
a
(
x
t[a]
)]
.
Dem: a) Caso x 6∈ LIV(ϕ),
E |= ϕ[t/x][a](1)sse E |= ϕ[a]
(2)sse E |= ϕ
[
a
(
x
t[a]
)]
.
Justificacoes
(1) Da Proposicao 3.30, por x 6∈ LIV(ϕ), ϕ[t/x] = ϕ.
(2) Como x 6∈ LIV(ϕ) e t[a] ∈ dom(E), por (b) da proposicao anterior,
E |= ϕ[a] sse E |= ϕ
a
x
t[a]
.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 46/75
Semântica do Cálculo de Predicados
b) Caso x ∈ LIV(ϕ), a demonstracao segue por inducao estrutural emϕ.
1) ϕ 6= ⊥, de outra forma x 6∈ LIV(ϕ).
2) Caso ϕ = R(t1, ..., tn), com R sımbolo de relacao n-ario, et1, ..., tn ∈ TL. Entao:
E |= R(t1, ..., tn)
[
a
(
x
t[a]
)]
(1)sse
(
t1[a
(
x
t[a]
)
], ..., tn
[
a
(
x
t[a]
)])
∈ R
(2)sse (t1[t/x][a], ..., tn[t/x][a]) ∈ R(1)sse E |= R(t1[t/x], ..., tn[t/x])[a](3)sse E |= R(t1, ..., tn)[t/x][a].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 47/75
Semântica do Cálculo de Predicados
Justificacoes
(1) Definicao de satisfacao.
(2) Pela Proposicao 3.40, para todo 1 ≤ i ≤ n, ti
a
x
t[a]
= [t/x]ti[a]
(3) Definicao de substituicao.
3) Caso ϕ = ∀yϕ1. Entao, y 6= x (de outra forma x 6∈ LIV(ϕ)) e
y 6∈ VAR(t) (de outra forma x nao seria substituıvel por t em ϕ).Assim,
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 48/75
Semântica do Cálculo de Predicados
E |= (∀yϕ1)[t/x][a]
(1)sse E |= ∀yϕ1[t/x][a]
(2)sse para todo d ∈ dom(E), E |= ϕ1[t/x]
[
a
(
y
d
)]
(3)sse para todo d ∈ dom(E), E |= ϕ1
a
(
y
d
)
x
t
a
y
d
(4)sse para todo d ∈ dom(E), E |= ϕ1
[
a
(
x
t[a]
)(
y
d
)]
(2)sse E |= ∀yϕ1
[
a
(
x
t[a]
)]
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 49/75
Semântica do Cálculo de Predicados
Justificacoes
(1) Definicao de substituicao.
(2) Definicao de satisfacao.
(3) Hipotese de inducao.
(4) Como y 6= x,
a
x
t[a]
y
d
= a
y
d
x
t[a]
.
Da Proposicao 3.40, por y 6∈ VAR(t), t[a] = t
a
y
d
.
Logo,
a
x
t[a]
y
d
= a
y
d
x
t
a
y
d
.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 50/75
Semântica do Cálculo de Predicados
4) Os restantes casos sao deixados como exercıcio.�
Definicao 3.48 Dizemos que uma L-formula ϕ e valida numaL-estrutura E, e escrevemos E |= ϕ, quando, para toda a atribuicaoa em E, E |= ϕ[a]. Utilizamos a notacao E 6|= ϕ quando ϕ nao evalida em E, i.e., quando existe uma atribuicao a em E tal queE 6|= ϕ[a].
Definicao 3.49 Dizemos que uma L-formula ϕ e (universalmente)valida, e escrevemos |= ϕ, quando ϕ e valida em todas asL-estruturas. Utilizamos a notacao 6|= ϕ quando ϕ nao e(universalmente) valida, i.e., quando existe uma L-estrutura E talque E 6|= ϕ.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 51/75
Semântica do Cálculo de Predicados
Definicao 3.50 Dizemos que uma L-formula ϕ e logicamenteequivalente a uma L-formula ψ, escrevendo ϕ⇔ ψ, quando|= ϕ↔ ψ.
Proposicao 3.51 Dadas L-formulas ϕ e ψ e dadas variaveis x e y,sao validas as proposicoes que se seguem.
a) ∀xϕ⇔ ¬∃x¬ϕ b) ∃xϕ⇔ ¬∀x¬ϕ
c) ¬∀xϕ⇔ ∃x¬ϕ d) ¬∃xϕ⇔ ∀x¬ϕ
e) ∀x(ϕ ∧ ψ) ⇔ ∀xϕ ∧ ∀xψ f) ∃x(ϕ ∨ ψ) ⇔ ∃xϕ ∨ ∃xψ
g) |= (∀xϕ ∨ ∀xψ) → ∀x(ϕ ∨ ψ) h) |= ∃x(ϕ ∧ ψ) → (∃xϕ ∧ ∃xψ)
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 52/75
Semântica do Cálculo de Predicados
i) 6|= ∀x(ϕ ∨ ψ) → (∀xϕ ∨ ∀xψ) j) 6|= (∃xϕ ∧ ∃xψ) → ∃x(ϕ ∧ ψ)
k) ∀x∀yϕ⇔ ∀y∀xϕ l) ∃x∃yϕ⇔ ∃y∃xϕ
m) |= ∃x∀yϕ→ ∀y∃xϕ n) 6|= ∀x∃yϕ→ ∃y∀xϕ
o) Qxϕ⇔ ϕ se x 6∈ LIV(ϕ) (Q ∈ {∃,∀})
p) ∀xϕ⇔ ∀yϕ[y/x] se y 6∈ LIV(ϕ) e x e substituıvel por y em ϕ
sem captura de variaveis
q) ∃xϕ⇔ ∃yϕ[y/x] se y 6∈ LIV(ϕ) e x e substituıvel por y em ϕ
sem captura de variaveis
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 53/75
Semântica do Cálculo de Predicados
Dem: a) Sejam L uma linguagem, E uma L-estrutura e a umaatribuicao em E. (Queremos demonstrar que E |= ∀xϕ[a] sseE |= ¬∃x¬ϕ[a].)
E |= ∀xϕ[a](1)sse para todo d ∈ dom(E) E |= ϕ[a
(
x
d
)
]
(2)sse para todo d ∈ dom(E) E 6|= ¬ϕ[a
(
x
d
)
]
(3)sse E 6|= ∃x¬ϕ[a]
(2)sse E |= ¬∃x¬ϕ[a]
Justificacoes
(1) Por (b) da Proposicao 3.44.
(2) ∀ψ∈FLE |= ψ[a] sse E 6|= ¬ψ[a] (Exercıcio).
(3) Por (c) da Proposicao 3.44.
(4) ∀ψ∈FLE 6|= ψ[a] sse E |= ¬ψ[a] (Exercıcio).
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 54/75
Semântica do Cálculo de Predicados
n) Seja L uma linguagem contendo um sımbolo R de relacao, binario.Seja E uma L-estrutura de domınio {a, b}, onde a interpretacao de Re o conjunto {(a, b), (b, a)}. Entao,
E |= ∀x0∃x1
R(x0, x1),
mas
E 6|= ∃x1∀x0
R(x0, x1) (Porque?).
Logo, E 6|= ∀x0∃x1
R(x0, x1) ↔ ∃x1∀x0
R(x0, x1).
A demonstracao das restantes proposicoes e deixada como exercıcio.�
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 55/75
Semântica do Cálculo de Predicados
Definicao 3.52 Uma L-formula ψ e uma instancia de uma formulaϕ do Calculo Proposicional quando existe uma enumeracaop′1, ..., p
′n de VAR(ϕ) e existem L-formulas ψ1, ..., ψn tais que
ψ = ϕ[ψ1/p′1; ...;ψn/p
′n], ou seja, ψ e a L-formula obtida de ϕ
substituindo, em simultaneo, cada p′i por ψi.
Exemplo 3.53 A LArit-formula
(x0 = x1) → (∀x0∃x1
(x0 + x1 = 0) → (x0 = x1))
e uma instancia da formula p0 → (p1 → p0) do Calculo Proposicional,pois:
(x0 = x1) → (∀x0∃x1
(x0 + x1 = 0) → (x0 = x1))
= (p0 → (p1 → p0))[(x0 = x1)/p0;∀x0∃x1
(x0 + x1 = 0)/p1].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 56/75
Semântica do Cálculo de Predicados
Proposicao 3.54 Se uma L-formula ψ e uma instancia de umatautologia do Calculo Proposicional, entao ψ e valida em qualquerL-estrutura.
Exemplo 3.55 A LArit-formulaϕ = ((x0 = x1) → (∀x0
∃x1(x0 + x1 = 0) → (x0 = x1))) e, como
vimos no exemplo anterior, uma instancia de p0 → (p1 → p0). Assim,sendo p0 → (p1 → p0) uma tautologia, podemos, pela proposicaoanterior, concluir que ϕ e uma formula universalmente valida.
Observacao: Nem todas as L-formulas universalmente validas saoinstancias de tautologias do Calculo Proposicional. Por exemplo, aLArit-formula ∀x0
((x0 = 0) ∨ ¬(x0 = 0)) e valida em todas asLArit-estruturas, no entanto, esta formula nao e instancia denenhuma tautologia, pois as unicas formulas do Calculo Proposicionaldas quais esta formula e uma instancia sao as variaveis proposicionais,que, como sabemos, nao sao tautologias.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 57/75
Semântica do Cálculo de Predicados
Definicao 3.56 Dizemos que um par (E, a), em que E e umaL-estrutura e a e uma atribuicao em E, e uma realizacao de umconjunto Γ de L-formulas quando, para todo ϕ ∈ Γ, E |= ϕ[a].
Exemplo 3.57 O par (EArit, aind) e uma realizacao do conjunto
{∀x0(x0 × x1 = x0),∀x0
∃x1(x0 < x1)}
de LArit-formulas, mas nao e uma realizacao do conjunto
{∀x0(x0 × x1 = x0),∀x0
(x0 < x1)}
de LArit-formulas.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 58/75
Semântica do Cálculo de Predicados
Definicao 3.58 Um conjunto Γ de L-formulas diz-sesemanticamente consistente, ou realizavel, quando existe umarealizacao de Γ. Caso contrario, Γ diz-se semanticamenteinconsistente.
Exemplo 3.59
a) O conjunto
Γ = {∀x0(x0 × x1 = x0),∀x0
∃x1(x0 < x1)},
de LArit-formulas, e semanticamente consistente. Por exemplo,
(EArit, aind) e uma realizacao de Γ.
b) O conjunto
{∀x0(x0 = x0),¬(0 = 0)},
de LArit-formulas, e semanticamente inconsistente. (Exercıcio.)
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 59/75
Semântica do Cálculo de Predicados
Definicao 3.60 Uma L-estrutura E e um modelo de um conjuntoΓ de L-formulas quando, para toda a atribuicao a em E, (E, a)realiza Γ ou, por outras palavras, quando toda a L-formula de Γ evalida em E.
Exemplo 3.61 EArit e um modelo do conjunto formado pelasseguintes L-sentencas:
∀x0¬(0 = s(x0)); ∀x0
¬(s(x0) < 0);
∀x0(x0 + 0 = x0); ∀x0
(x0 × 0 = 0);
∀x0∀x1
(s(x0) × x1 = (x0 × x1) + x1);
∀x0∀x1
(s(x0) + x1 = s(x0 + x1));
∀x0∀x1
((s(x0) = s(x1)) → (x0 = x1));
∀x0∀x1
((x0 < s(x1)) → ((x0 < x1) ∨ (x0 = x1))).
A axiomatica de Peano para a Aritmetica e constituıda pelas formulasacima descritas, juntamente com um princıpio de inducao nosnaturais.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 60/75
Semântica do Cálculo de Predicados
Proposicao 3.62 Sejam Γ um conjunto de L-sentencas, E umaL-estrutura e a uma atribuicao em E. Entao, E e um modelo de Γ see somente se (E, a) e uma realizacao de Γ.
Dem: Exercıcio.
Definicao 3.63 Dizemos que uma L-formula ϕ e umaconsequencia semantica de um conjunto Γ de L-formulas, eescrevemos Γ |= ϕ, quando, para toda a L-estrutura E e para toda aatribuicao a em E, se (E, a) e uma realizacao de Γ, entao E |= ϕ[a].
Exemplo 3.64 A LArit-formula 0 = 0 e uma consequencia semanticado conjunto Γ = {∀x0
(x0 = x0)} de LArit-formulas, pois se (E, a) euma realizacao de Γ, entao, e designando a funcao interpretacao de E
por , ∀n0∈dom(E)(n0, n0) ∈ = e assim, em particular, (0, 0) ∈ =,
donde E |= (0 = 0)[a].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 61/75
Semântica do Cálculo de Predicados
Proposicao 3.65 Sejam Γ um conjunto de L-formulas, ϕ umaL-formula, t um L-termo e x ∈ V .
a) Se Γ |= ∀xϕ e x e substituıvel por t em ϕ sem captura devariaveis, entao Γ |= ϕ[t/x].
b) Se Γ |= ϕ e x 6∈ LIV(Γ) (i.e., para todo ψ ∈ Γ, x 6∈ LIV(ψ)), entaoΓ |= ∀xϕ.
c) Se Γ |= ϕ[t/x] e x e substituıvel por t em ϕ sem captura devariaveis, entao Γ |= ∃xϕ.
d) Se Γ |= ∃xϕ, Γ, ϕ[y/x] |= ψ e y 6∈ LIV(Γ ∪ {ψ}), entao Γ |= ψ.
Dem: a) Suponhamos que (E, a) e uma realizacao de Γ. (Queremosdemonstrar que: E |= ϕ[t/x][a].) Entao, pela hipotese, E |= ∀xϕ[a].Assim, por definicao de satisfacao, para todo d ∈ dom(E),
E |= ϕ[a
(
x
d
)
]. Donde, em particular, E |= ϕ[a
(
x
t[a]
)
], pois
t[a] ∈ dom(E). Logo, como por hipotese x e substituıvel por t em ϕsem captura de variaveis, aplicando a Proposicao 3.47, E |= ϕ[t/x][a].
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 62/75
Semântica do Cálculo de Predicados
b) Suponhamos que (E, a) e uma realizacao de Γ. (Queremosdemonstrar que: E |= ∀xϕ[a].) Por hipotese, x 6∈ LIV(Γ). Logo, de(b) da Proposicao 3.46, para toda a L-formula ψ no conjunto Γ,
E |= ψ[a] sse para todo d ∈ dom(E), E |= ψ[a
(
x
d
)
]. Assim, uma
vez que (E, a) e uma realizacao de Γ, para todo o elemento d do
domınio de E, (E, a
(
x
d
)
) e uma realizacao de Γ. Logo, como por
hipotese Γ |= ϕ, para todo o elemento d do domınio de E,
E |= ϕ[a
(
x
d
)
]. Donde, por definicao de satisfacao, E |= ∀xϕ[a].
c) e d) Exercıcio.�
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 63/75
Dedução Natural para o Cálculo de Predicados
Definicao 3.66 A coleccao de regras de inferencia para o SistemaFormal de Deducao Natural para o Calculo de Predicados (DNCP) eformada por todas as regras de inferencia do sistema DNP e pelasseguintes regras para os quantificadores
Eliminacao Introducao
∀xϕ
ϕ[t/x]E ∀ (a)
D
ϕ
∀xϕI ∀ (b)
(a) x e substituıvel por t em ϕ (b) x nao ocorre livre nas hipote-
sem captura de variaveis ses nao canceladas de D
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 64/75
Dedução Natural para o Cálculo de Predicados
Eliminacao Introducao
∃xϕ
ϕ��
D
ψ
ψE ∃ (c)
ϕ[t/x]
∃xϕI ∃ (d)
(c) x nao ocorre livre nas hipoteses (d) x e substituıvel por t em
nao canceladas de D distintas de ϕ ϕ sem captura de variaveis
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 65/75
Dedução Natural para o Cálculo de Predicados
Quando o tipo de linguagem L inclui o sımbolo de relacao deigualdade, permitimos ainda as seguintes regras para a igualdade:
t = t reflexividadet = t′
t′ = tcomutatividade
t = t′ t′ = t′′
t = t′′transitividade
t = t′
t′′[t/x] = t′′[t′/x]substituicao em termos
t = t′ ϕ[t/x]
ϕ[t′/x]substituicao em formulas
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 66/75
Dedução Natural para o Cálculo de Predicados
As varias nocoes relacionadas com derivacoes no contexto de formulasdo Calculo Proposicional sao aplicaveis a derivacoes de formulas doCalculo de Predicados.
Exemplo 3.67
x0 = x0reflexividade
∀x0(x0 = x0)I ∀ (a)
(a) Nao ha hipoteses por cancelar em x0 = x0 , logo x0 nao ocorre
livre em hipoteses nao canceladas da derivacao x0 = x0 .
A derivacao anterior tem como conclusao a formula ∀x0(x0 = x0) enao tem hipoteses por cancelar, logo trata-se de uma derivacao de∀x0(x0 = x0), ou seja, a formula ∀x0(x0 = x0) e um teorema.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 67/75
Dedução Natural para o Cálculo de Predicados
Exemplo 3.68
∀xϕ��
ϕ[x/x]E ∀ (a)
∃xϕI ∃ (a)
∀xϕ→ ∃xϕI →
(a) Toda a variavel x e substituıvel por x em qualquer L-formula ϕsem captura de variaveis.
Exemplo 3.69
∃xϕ��2
ϕ��1
ϕ E ∃ (1)
∀xϕI ∀
∃xϕ→ ∀xϕI → (2)
Nao e necessariamente uma derivacao pois na aplicacao da regra E ∃podemos ter ocorrencias livres de x em ϕ.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 68/75
Dedução Natural para o Cálculo de Predicados
Exemplo 3.70
∀x2 ∃x1 x2 < x1
∃x1 x1 < x1E ∀
Nao e uma derivacao, uma vez que x2 nao e livre para substituicaopor x1 em ∃x1 x2 < x1.
Exemplo 3.71
x0 = x1��(1)
x2 + x0 = x2 + x1substituicao em termos
(x0 = x1) → (x2 + x0 = x2 + x1)I → (1)
∀x2((x0 = x1) → (x2 + x0 = x2 + x1))I ∀ (a)
∀x1∀x2((x0 = x1) → (x2 + x0 = x2 + x1))I ∀ (a)
∀x0∀x1∀x2((x0 = x1) → (x2 + x0 = x2 + x1))I ∀ (a)
(a) A variavel nao ocorre livre nas hipoteses nao canceladas daderivacao da premissa.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 69/75
Dedução Natural para o Cálculo de Predicados
Proposicao 3.72 Sejam Γ um conjunto de L-formulas e ϕ,ψL-formulas. Entao sao validas as seguintes proposicoes:
1. Se Γ ⊢ ϕ e x 6∈ LIV(Γ), entao Γ ⊢ ∀xϕ.
2. Se Γ ⊢ ∀xϕ e x e substituıvel por x em ϕ sem captura devariaveis, entao Γ ⊢ ϕ[t/x].
3. Se Γ ⊢ ϕ[t/x] e x e substituıvel por t em ϕ sem captura devariaveis, entao Γ ⊢ ∃xϕ.
4. Se Γ ⊢ ∃xϕ e Γ, ϕ ⊢ ψ e x 6∈ LIV(Γ ∪ {ψ}), entao Γ ⊢ ψ.
Dem: 4) Suponha-se que Γ ⊢ ∃xϕ, que Γ, ϕ ⊢ ψ e quex 6∈ LIV(Γ ∪ {ψ}). Da primeira hipotese segue que existe umaderivacao D de ∃xϕ a partir de Γ, da segunda hipotese segue queexiste uma derivacao D′ de ψ a partir de Γ ∪ {ψ}.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 70/75
Dedução Natural para o Cálculo de Predicados
Assim,
Γ
D
∃xϕ
Γ, ϕ��
D′
ψ
ψE ∃
e uma derivacao de ψ a partir de Γ (note-se que a aplicacao da regraE ∃ e correcta, uma vez que que x 6∈ LIV(Γ ∪ {ψ}), ou seja x naoocorre livre nem em ψ nem nas hipoteses nao canceladas de D′
distintas de ϕ). Logo Γ ⊢ ψ. �
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 71/75
Dedução Natural para o Cálculo de Predicados
Proposicao 3.73 Seja L um tipo de linguagem com o sımbolo derelacao de igualdade. Entao sao teoremas as seguintes L-formulas:
1. ∀x (x = x);
2. ∀x∀y (x = y → y = x);
3. ∀x∀y ∀z (x = y ∧ y = z → x = z);
4. ∀x∀y (x = y → t[x/z] = t[y/z]);
5. ∀x∀y (x = y ∧ ϕ[x/z] → ϕ[y/z]).
Dem: (1)
x = x reflexividade
∀x (x = x)I ∀ (a)
(a) x nao ocorre livre nas hipoteses nao canceladas de x = x .
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 72/75
Dedução Natural para o Cálculo de Predicados
(5)
x = y ∧ ϕ[x/z]��x = y E ∧
x = y ∧ ϕ[x/z]��
ϕ[x/z]E ∧
ϕ[y/z]substituicao-formulas
x = y ∧ ϕ[x/z] → ϕ[y/z]I →
∀y (x = y ∧ ϕ[x/z] → ϕ[y/z])I ∀ (a)
∀x∀y (x = y ∧ ϕ[x/z] → ϕ[y/z])I ∀ (a)
(a) A variavel nao ocorre livre na derivacao da premissa.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 73/75
Dedução Natural para o Cálculo de Predicados
Ha semelhanca do que sucede com o sistema DNP, o Sistema Formalde Deducao Natural para o Calculo de Predicados e, tambem, umsistema completo e correcto. De facto, prova-se serem validos osseguintes resultados:
Teorema 3.74 (da Completude) Sejam Γ um conjunto de L-formulase ϕ uma L-formula. Entao
Γ |= ϕ⇒ Γ ⊢ ϕ.
Teorema 3.75 (da Correccao) Sejam Γ um conjunto de L-formulas eϕ uma L-formula. Entao
Γ ⊢ ϕ⇒ Γ |= ϕ.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 74/75
Dedução Natural para o Cálculo de Predicados
Teorema 3.76 (da Adequacao) Sejam Γ um conjunto de L-formulase ϕ uma L-formula. Entao
Γ ⊢ ϕ⇔ Γ |= ϕ.
Calculo de Predicados de Primeira-Ordem da Logica Classica – p. 75/75