Cálculo de Predicados de Primeira-Ordem da Lógica...

75
Cálculo de Predicados de Primeira-Ordem da Lógica Clássica L´ogicaCC Departamento de Matem´ atica Universidade do Minho, Braga 2009 /2010 alculo de Predicados de Primeira-Ordem da L´ ogica Cl´ assica – p. 1/7

Transcript of Cálculo de Predicados de Primeira-Ordem da Lógica...

Page 1: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 2: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 3: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 4: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 5: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 6: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 7: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 8: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 9: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 10: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 11: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 12: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 13: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 14: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 15: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 16: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 17: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 18: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 19: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 20: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 21: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 22: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 23: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 24: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 25: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 26: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 27: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 28: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 29: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 30: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 31: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 32: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 33: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 34: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 35: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 36: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 37: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 38: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 39: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 40: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 41: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 42: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 43: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 44: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 45: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 46: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 47: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 48: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 49: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 50: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 51: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 52: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 53: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 54: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 55: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 56: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 57: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 58: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 59: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 60: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 61: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 62: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 63: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 64: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 65: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 66: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 67: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 68: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 69: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 70: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 71: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 72: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 73: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 74: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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

Page 75: Cálculo de Predicados de Primeira-Ordem da Lógica …necc.di.uminho.pt/wiki/lib/exe/fetch.php?media=ap:2ano:log:ap_log... · Sintaxe do Cálculo de Predicados Caso nada seja dito

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