Usando as dez inferências do Sistema de Dedução Natural, comprova as leis de DeMorgan .
As regras da dedução natural
Introdução à Negação:
{(P → Q), (P → ¬Q)} ⊢ ¬P
Eliminação de Negação:
{(¬P → Q), (¬P → ¬Q)} ⊢ P
E Introdução:
{P, Q} ⊢ P ʌ Q
E eliminação:
P ʌ Q ⊢ {P, Q}
Ou Introdução:
P ⊢ {(P ∨ Q),(Q ∨ P)}
Ou eliminação:
{(P ∨ Q), (P → R), (Q → R)} ⊢ R
Iff Introdução:
{(P → Q), (Q → P)} ⊢ (P ≡ Q)
Eliminação Iff:
(P ≡ Q) ⊢ {(P → Q), (Q → P)}
Se Introdução:
(P ⊢ Q) ⊢ (P → Q)
Se Eliminação:
{(P → Q), P} ⊢ Q
Estrutura de prova
Cada declaração em sua prova deve ser o resultado de uma das dez regras aplicadas a algumas proposições derivadas anteriormente (sem lógica circular) ou de uma suposição (descrita abaixo). Cada regra opera em algumas proposições no lado esquerdo do ⊢
(operador de conseqüência lógica) e cria qualquer número de proposições no lado direito. A introdução ao If funciona de maneira um pouco diferente do restante dos operadores (descrito em detalhes abaixo). Opera através de uma declaração que é o consequente lógico de outra.
Exemplo 1
Você tem as seguintes instruções:
{(P → R), Q}
Você pode usar E Introdução para fazer:
(P → R) ʌ Q
Exemplo 2
Você tem as seguintes instruções:
{(P → R), P}
Você pode usar If Elimination para fazer:
R
Exemplo 3
Você tem as seguintes instruções:
(P ʌ Q)
Você pode usar And Elimination para fazer:
P
ou fazer:
Q
Propagação da Suposição
Você pode, a qualquer momento, assumir qualquer afirmação que desejar. Qualquer declaração derivada dessas suposições será "dependente" delas. As declarações também dependerão das suposições nas quais as declarações dos pais se baseiam. A única maneira de eliminar suposições é por If Introduction. Para Se introdução, você começa com uma Declaração Q
que depende de uma declaração P
e termina com (P → Q)
. A nova declaração é dependente de cada suposição Q
baseia-se em , exceto para a assunção P
. Sua declaração final não deve se basear em suposições.
Especificidades e pontuação
Você construirá uma prova para cada uma das duas leis de DeMorgan usando apenas as 10 inferências do Cálculo de dedução natural.
As duas regras são:
¬(P ∨ Q) ≡ ¬P ʌ ¬Q
¬(P ʌ Q) ≡ ¬P ∨ ¬Q
Sua pontuação é o número de inferências usadas mais o número de suposições feitas. Sua declaração final não deve se basear em nenhuma hipótese (ou seja, deve ser um teorema).
Você é livre para formatar sua prova como achar melhor.
Você pode transportar qualquer lema de uma prova para outra sem nenhum custo para pontuar.
Prova de exemplo
Vou provar isso (P and not(P)) implies Q
(Cada ponto de marcador é +1)
Assumir
not (Q)
Assumir
(P and not(P))
Usando And Elim em
(P and not(P))
derivar{P, not(P)}
Uso e introdução sobre
P
enot(Q)
derivar(P and not(Q))
Use And Elim na declaração derivada para fazer
P
A nova P
proposição é diferente da outra que derivamos anteriormente. Ou seja, é dependente das suposições not(Q)
e (P and not(P))
. Considerando que a declaração original era apenas dependente (P and not(P))
. Isso nos permite fazer:
Se Introdução à
P
introduçãonot(Q) implies P
(ainda dependente da(P and not(P))
suposição)Use And Introduction
not(P)
enot(Q)
(da etapa 3) para derivar(not(P) and not(Q))
Use And Elim na declaração que você derivou para fazer
not(P)
(agora dependentenot(Q)
)Se Introdução sobre a nova
not(P)
introduçãonot(Q) implies not(P)
Agora vamos usar a eliminação da negação
not(Q) implies not(P)
enot(Q) implies P
derivarQ
Isso Q
depende apenas da suposição de (P and not(P))
que podemos concluir a prova com
- Se a introdução
Q
deriva(P and not(P)) implies Q
Esta prova marca um total de 11.
⊢
(o símbolo também não é exibido para mim no celular).
(P ⊢ (Q ⊢ R)) ⊢ (Q ⊢ (P ⊢ R))
(neste caso, ¬Q ⊢ ((P ʌ ¬P) ⊢ P)
to (P ʌ ¬P) ⊢ (¬Q ⊢ P)
foi usado).
(assume (P/\~P); P,~P by and-elim; (assume ~Q; P by assumption; ~P by assumption); ~Q->P by impl-intro; ~Q->~P by impl-intro; Q by neg-elim); P/\~P->Q by impl-intro
para obter uma pontuação de 9?