Diferencia entre revisiones de «Relación 1»
De Razonamiento automático (2010-11)
Línea 82: | Línea 82: | ||
lemma "¬¬A ⟶ A" | lemma "¬¬A ⟶ A" | ||
− | + | proof | |
+ | assume 1:"¬¬A" | ||
+ | from 1 show "A" by (rule notnotD) | ||
+ | qed | ||
lemma "A ⟶ ¬¬A" | lemma "A ⟶ ¬¬A" | ||
− | + | proof | |
+ | assume 1:"A" | ||
+ | from 1 show "¬¬A" by (rule contrapos_pn) | ||
+ | qed | ||
+ | |||
+ | lemma MT: | ||
+ | assumes 1:"F ⟶ G" and 2:"¬G" | ||
+ | shows "¬F" | ||
+ | proof (rule notI) | ||
+ | assume 3:"F" | ||
+ | from 1 and 3 have 4:"G" by (rule mp) | ||
+ | from 2 and 4 show False by (rule notE) | ||
+ | qed | ||
lemma "(¬A ⟶ B) ⟶ (¬B ⟶ A)" | lemma "(¬A ⟶ B) ⟶ (¬B ⟶ A)" | ||
− | + | proof | |
+ | assume 1:"(¬A ⟶ B)" | ||
+ | show "(¬B ⟶ A)" | ||
+ | proof | ||
+ | assume 2:"¬B" | ||
+ | from 1 2 have 3:"¬¬A" by (rule MT) | ||
+ | from 3 show "A" by (rule notnotD) | ||
+ | qed | ||
+ | qed | ||
lemma "((A ⟶ B) ⟶ A) ⟶ A" | lemma "((A ⟶ B) ⟶ A) ⟶ A" |
Revisión del 18:52 1 feb 2011
header {* 1ª relación de ejercicios *}
theory Relacion_1
imports Main
begin
text {*
---------------------------------------------------------------------
Demostrar los siguientes lemas usando sólo las reglas básicas de
deducción natural de la lógica proposicional.
---------------------------------------------------------------------
*}
lemma I: "A ⟶ A"
by (rule imp_refl)
lemma
assumes 1:"A ∧ B"
shows "B ∧ A"
proof -
from 1 have 2:"A" by (rule conjunct1)
from 1 have 3:"B" by (rule conjunct2)
from 3 2 show "B ∧ A" by (rule conjI)
qed
lemma "A ∧ B ⟶ A ∨ B"
proof
assume "A ∧ B"
hence "A" ..
thus "A ∨ B" ..
qed
lemma
assumes 1:"(A ∨ B) ∨ C"
shows "A ∨ ( B ∨ C)"
proof -
note 1
moreover
{ assume 2: "C"
from 2 have 3:"B ∨ C" by (rule disjI2)
from 3 have "A ∨ (B ∨ C)" by (rule disjI2)}
moreover
{ assume 4: "A ∨ B"
from 4 have "(A ∨ B) ∨ C" by (rule disjI1) }
ultimately show "A ∨ (B ∨ C) " by (simp)
qed
lemma K: "A ⟶ (B ⟶ A)"
oops
lemma "(A ⟶ (B ⟶C)) ⟶ ((A ⟶ B) ⟶ (A ⟶ C))"
proof
assume 1:"A ⟶ (B ⟶ C)"
show "(A ⟶ B) ⟶ (A ⟶C)"
proof
assume 2:"(A ⟶ B)"
show "A ⟶C"
proof
assume 3:"A"
from 2 3 have 4:"B" by (rule mp)
from 1 3 have 5:"B ⟶ C" by (rule mp)
from 5 4 show "C" by (rule mp)
qed
qed
qed
lemma "(A ⟶ B) ⟶ ((B ⟶ C) ⟶ (A ⟶ C))"
proof
assume 1:"(A ⟶ B)"
show "((B ⟶ C) ⟶ (A ⟶ C))"
proof
assume 2:"(B ⟶ C)"
show "(A ⟶ C)"
proof
assume 3:"A"
from 1 3 have 4:"B" by (rule mp)
from 2 4 show "C" by (rule mp)
qed
qed
qed
lemma "¬¬A ⟶ A"
proof
assume 1:"¬¬A"
from 1 show "A" by (rule notnotD)
qed
lemma "A ⟶ ¬¬A"
proof
assume 1:"A"
from 1 show "¬¬A" by (rule contrapos_pn)
qed
lemma MT:
assumes 1:"F ⟶ G" and 2:"¬G"
shows "¬F"
proof (rule notI)
assume 3:"F"
from 1 and 3 have 4:"G" by (rule mp)
from 2 and 4 show False by (rule notE)
qed
lemma "(¬A ⟶ B) ⟶ (¬B ⟶ A)"
proof
assume 1:"(¬A ⟶ B)"
show "(¬B ⟶ A)"
proof
assume 2:"¬B"
from 1 2 have 3:"¬¬A" by (rule MT)
from 3 show "A" by (rule notnotD)
qed
qed
lemma "((A ⟶ B) ⟶ A) ⟶ A"
oops
lemma "A ∨ ¬A"
oops
lemma "(¬(A ∧ B)) = (¬A ∨ ¬B)"
oops
end