Theory MaximalHintikka
theory MaximalHintikka
imports HintikkaTheory
begin
section ‹Maximal Hintikka ›
text ‹This theory formalises maximality of Hintikka sets according to Smullyan's textbook \cite{Smullyan}. Specifically, following \cite{Fitting} (page 55) this theory formalises
the fact that if $\mathcal {C}$ is a propositional consistence property closed by subsets, and $M$
a maximal set belonging to $\mathcal{C}$ then $M$ is a Hintikka set.
›
lemma ext_hintikkaP1:
assumes hip1: "consistenceP 𝒞" and hip2: "M ∈ 𝒞"
shows "∀p. ¬ (atom p ∈ M ∧ (¬.atom p) ∈ M)"
proof -
show ?thesis using hip1 hip2 by(unfold consistenceP_def) simp
qed
text ‹ ›
lemma ext_hintikkaP2:
assumes hip1: "consistenceP 𝒞" and hip2: "M ∈ 𝒞"
shows "FF ∉ M"
proof -
show ?thesis using hip1 hip2 by(unfold consistenceP_def) simp
qed
text ‹ ›
lemma ext_hintikkaP3:
assumes hip1: "consistenceP 𝒞" and hip2: "M ∈ 𝒞"
shows "(¬.TT) ∉ M"
proof -
show ?thesis using hip1 hip2 by(unfold consistenceP_def) simp
qed
text ‹ ›
lemma ext_hintikkaP4:
assumes hip1: "consistenceP 𝒞" and hip2: "maximal M 𝒞" and hip3: "M ∈ 𝒞"
shows "∀F. (¬.¬.F) ∈ M ⟶ F ∈ M"
proof (rule allI impI)+
fix F
assume h1: "(¬.¬.F) ∈ M"
show "F ∈ M"
proof -
have "(¬.¬.F) ∈ M ⟶ M ∪ {F} ∈ 𝒞"
using hip1 hip3 by (unfold consistenceP_def) simp
hence "M ∪ {F} ∈ 𝒞" using h1 by simp
moreover
have "∀M'∈𝒞. M ⊆ M' ⟶ M = M'" using hip2 by (unfold maximal_def)
moreover
have "M ⊆ M ∪ {F}" by auto
ultimately
have "M = M ∪ {F}" by auto
thus "F ∈ M" by auto
qed
qed
text ‹ ›
lemma ext_hintikkaP5:
assumes hip1: "consistenceP 𝒞" and hip2: "maximal M 𝒞" and hip3: "M ∈ 𝒞"
shows "∀F. (FormulaAlfa F) ∧ F ∈ M ⟶ (Comp1 F ∈ M ∧ Comp2 F ∈ M)"
proof (rule allI impI)+
fix F
assume h1: "(FormulaAlfa F) ∧ F ∈ M"
show "Comp1 F ∈ M ∧ Comp2 F ∈ M"
proof -
have "(FormulaAlfa F) ∧ F ∈ M ⟶ M ∪ {Comp1 F, Comp2 F} ∈ 𝒞"
using hip1 hip3 by (unfold consistenceP_def) simp
hence "M ∪ {Comp1 F, Comp2 F} ∈ 𝒞" using h1 by simp
moreover
have "∀M'∈𝒞. M ⊆ M' ⟶ M = M'" using hip2 by (unfold maximal_def)
moreover
have "M ⊆ M ∪ {Comp1 F, Comp2 F}" by auto
ultimately
have "M = M ∪ {Comp1 F, Comp2 F}" by simp
thus "Comp1 F ∈ M ∧ Comp2 F ∈ M" by auto
qed
qed
text ‹ ›
lemma ext_hintikkaP6:
assumes hip1: "consistenceP 𝒞" and hip2: "maximal M 𝒞" and hip3: "M ∈ 𝒞"
shows "∀F. (FormulaBeta F) ∧ F ∈ M ⟶ Comp1 F ∈ M ∨ Comp2 F ∈ M"
proof (rule allI impI)+
fix F
assume h1: "(FormulaBeta F) ∧ F ∈ M"
show "Comp1 F ∈ M ∨ Comp2 F ∈ M"
proof -
have "(FormulaBeta F) ∧ F ∈ M ⟶ M ∪ {Comp1 F} ∈ 𝒞 ∨ M ∪ {Comp2 F} ∈ 𝒞"
using hip1 hip3 by (unfold consistenceP_def) simp
hence "M ∪ {Comp1 F} ∈ 𝒞 ∨ M ∪ {Comp2 F} ∈ 𝒞" using h1 by simp
thus ?thesis
proof (rule disjE)
assume "M ∪ {Comp1 F} ∈ 𝒞"
moreover
have "∀M'∈𝒞. M ⊆ M' ⟶ M = M'" using hip2 by (unfold maximal_def)
moreover
have "M ⊆ M ∪ {Comp1 F}" by auto
ultimately
have "M = M ∪ {Comp1 F}" by simp
hence "Comp1 F ∈ M" by auto
thus "Comp1 F ∈ M ∨ Comp2 F ∈ M" by simp
next
assume "M ∪ {Comp2 F} ∈ 𝒞"
moreover
have "∀M'∈𝒞. M ⊆ M' ⟶ M = M'" using hip2 by (unfold maximal_def)
moreover
have "M ⊆ M ∪ {Comp2 F}" by auto
ultimately
have "M = M ∪ {Comp2 F}" by simp
hence "Comp2 F ∈ M" by auto
thus "Comp1 F ∈ M ∨ Comp2 F ∈ M" by simp
qed
qed
qed
theorem MaximalHintikkaP:
assumes hip1: "consistenceP 𝒞" and hip2: "maximal M 𝒞" and hip3: "M ∈ 𝒞"
shows "hintikkaP M"
proof (unfold hintikkaP_def)
show "(∀P. ¬ (atom P ∈ M ∧ ¬.atom P ∈ M)) ∧
FF ∉ M ∧
¬.TT ∉ M ∧
(∀F. ¬.¬.F ∈ M ⟶ F ∈ M) ∧
(∀F. FormulaAlfa F ∧ F ∈ M ⟶ Comp1 F ∈ M ∧ Comp2 F ∈ M) ∧
(∀F. FormulaBeta F ∧ F ∈ M ⟶ Comp1 F ∈ M ∨ Comp2 F ∈ M)"
using ext_hintikkaP1[OF hip1 hip3]
ext_hintikkaP2[OF hip1 hip3]
ext_hintikkaP3[OF hip1 hip3]
ext_hintikkaP4[OF hip1 hip2 hip3]
ext_hintikkaP5[OF hip1 hip2 hip3]
ext_hintikkaP6[OF hip1 hip2 hip3]
by blast
qed
end