1+1 valores

Propaganda
Lógica Computacional
LEI FCT UNL, 2o Semestre 2010/2011
Resolução do Teste 3 Tipo
Duração: 2h00m
Grupo I
(1+1 valores)
Represente as seguintes afirmações em lógica de primeira ordem:
1. Há quadrados perfeitos pares e ı́mpares.
Solução: ∃x (QuadrPerf(x) ∧ Par(x)) ∧ ∃x (QuadrPerf(x) ∧ Impar(x))
2. Há mais que dois testes nesta cadeira.
Solução: ∃x∃y∃z (Teste(x, C) ∧ Teste(y, C) ∧ Teste(z, C) ∧ x 6= y ∧ x 6= z ∧ y 6= z)
Grupo II
(3+3 valores)
Sejam x, y, z ∈ X e a ∈ SF0 . Considere ainda a seguinte fórmula.
def
ϕ = ∀x Q(f (x), g(y, a)) → ∃zM (z, f (x))
1. Calcule os conjuntos das variáveis livre e mudas da fórmula.
Solução: calculam-se recursivamente os conjuntos VL(ϕ) e VM(ϕ).
VL(ϕ) = VL(∀x Q(f (x), g(y, a))) ∪ VL(∃zM (z, f (x)))
= VL(Q(f (x), g(y, a))) \ {x} ∪ VL(M (z, f (x))) \ {z}
= (V(f (x)) ∪ V(g(y, a))) \ {x} ∪ (V(z) ∪ V(f (x))) \ {z}
= (V(x) ∪ V(y) ∪ V(a)) \ {x} ∪ ({z} ∪ V(x)) \ {z}
= ({x} ∪ {y} ∪ ∅) \ {x} ∪ ({z} ∪ {x}) \ {z}
= {y} ∪ {x}
= {x, y}
VM(ϕ) = VM(∀x Q(f (x), g(y, a))) ∪ VM(∃zM (z, f (x)))
= {x} ∪ VM(Q(f (x), g(y, a))) ∪ {z} ∪ VM(M (z, s(x)))
= {x} ∪ ∅ ∪ {z} ∪ ∅
= {x, z}
2. Se cada termo em baixo for livre na fórmula para a variável referida, encontre a nova
fórmula que resulta da substituição dessa variável por esse termo.
(a) Seja t = q(y), sendo a variável y.
Solução: como t é livre para y em ϕ, pois V(t) ∩ VM(ϕ) = ∅, então
ϕ{t/y} = ∀x Q(f (x), g(q(y), a)) → ∃zM (z, f (x))
(b) t = q(x), sendo a variável y.
Solução: como t não é livre para y em ϕ, pois x ∈ V(t) ∩ VM(ϕ), não se deve
substituir y por t em ϕ.
Grupo III
(3+3+3 valores)
Considere a assinatura Σ = (SF, SP ) onde:
• SF0 = {zero}, SF1 = {suc}, SF2 = {⊕, ⊗} e;
• SP2 = {Eq}.
Considere também a estrutura de interpretação Nat = (N0 , I), sendo:
• I(zero) = 0;
• I(suc) : N0 → N0 tal que I(suc)(n) = n + 1;
• I(⊕) : N20 → N0 tal que I(⊕)(n, m) = n + m;
• I(⊗) : N20 → N0 tal que I(⊗)(n, m) = n × m;
• I(Eq) : N20 → {0, 1} tal que I(Eq)(n, m) = 1 se n = m e I(Eq)(n, m) = 0 caso
contrário.
Verifique semanticamente se:
1. Nat |= ∀x ∃y Eq(⊗(suc(zero), x), ⊕(y, x))
Solução: tem que se mostrar que para qualquer atribuição ρ se tem que
Nat, ρ |= ∀x ∃y Eq(⊗(suc(zero), x), ⊕(y, x))
i.e., para qualquer n ∈ N0 encontra-se um m ∈ N0 tal que
Nat, ρ[x := n][y := m] |= Eq(⊗(suc(zero), x), ⊕(y, x))
Seja m = 0.
ρ[x:=n][y:=0]
I(Eq)([[⊗(suc(zero), x)]]Nat
ρ[x:=n][y:=0]
, [[⊕(y, x)]]Nat
)=
ρ[x:=n][y:=0]
ρ[x:=n][y:=0]
ρ[x:=n][y:=0]
ρ[x:=n][y:=0]
(I(⊗)([[suc(zero)]]Nat
, [[x]]Nat
) = I(⊕)([[y]]Nat
, [[x]]Nat
))
ρ[x:=n][y:=0]
((I(suc)([[zero]]Nat
) × ρ[x := n][y := 0](x)) = (ρ[x := n][y := 0](y) + ρ[x := n][y := 0](x)))
=
=
(((I(zero) + 1) × n) = (0 + n)) =
(((0 + 1) × n) = n) =
(n = n) =
1
2. {∃x P (x) ∧ ∃x Q(x)} |= ∃x (P (x) ∧ Q(x))
Solução: considere-se a estrutura de interpretação M = (N0 , I) sendo I(P )(n) = 1 se
n > 3 e I(Q) : N0 → {0, 1} tal que I(Q)(n) = 1 se n < 3. Para qualquer atribuição ρ
tem-se que M, ρ ∃x P (x) ∧ ∃x Q(x):
(a) M, ρ ∃x P (x), uma vez que M, ρ[x := 4] P (x), pois
I(P )(ρ[x := 4](x)) = I(P )(4) = 1
(b) M, ρ ∃x Q(x), uma vez que M, ρ[x := 2] P (x), pois
I(Q)(ρ[x := 2](x)) = I(Q)(2) = 1
No entanto, M, ρ 6 ∃x (P (x) ∧ Q(x)), pois não é verdade que para existe n ∈ N0 tal
que M, ρ[x := n] P (x) e M, ρ[x := n] Q(x). Conclui-se então que
{∃x P (x) ∧ ∃x Q(x)} 6|= ∃x (P (x) ∧ Q(x))
3. ∃x (ϕ → ψ) ≡ ∀x ϕ → ∃x ψ
Solução: como a equivalência lógica é uma congruência, a equivalência em causa prova-se
da seguinte forma.
∃x (ϕ → ψ) ≡ ∃x (¬ϕ ∨ ψ)
(pois ψ → ϕ ≡ ¬ψ ∨ ϕ)
≡ ∃x ¬ϕ ∨ ∃x ψ
(pois ∃x (ϕ ∨ ψ) ≡ ∃x ϕ ∨ ∃x ψ)
≡ ¬∀x ϕ ∨ ∃x ψ
(pois ∃x ¬ϕ ≡ ¬∀x ϕ)
≡ ∀x ϕ → ∃x ψ
(pois ¬ϕ ∨ ψ ≡ ϕ → ψ)
Grupo IV
(1+2 valores)
1. Considere que dada assinatura é tal que f ∈ SF1 , e seja x ∈ X. A expressão ∀x f (x) é
uma fórmula da Lógica de primeira ordem? Justifique.
Solução: a expressão dada é uma fórmula, se f (x) o for. Mas trata-se de uma função,
pois f ∈ SF1 , não de um predicado, logo não é uma fórmula.
2. Mostre que o conjunto das variáveis de um termo (concreto) de primeira ordem é finito.
Solução: prova-se por indução na estrutura dos termos.
• Caso t = a, para a ∈ SF0 ; por definição, V(t) = V(a) = ∅, que é finito.
• Caso t = x, para x ∈ X; por definição, V(t) = V(x) = {x}, que é finito.
X n
• Caso t = f (t1 , . . . , tn ), para f ∈ SF
S n e {t1 , . . . , tn } ⊆ (TΣ ) , com n ≥ 0; por definição, V(t) = V(f (t1 , . . . , tn )) = i∈{1,...,n} V(ti ), e como por hipótese de indução
cada V(ti ) é finito, também o é a união indicada.
Download