Theory ScottVariant

subsection‹Ultrafilter Analysis of Scott's Variant (Fig.~3 in cite"C85"))›

theory ScottVariant imports 
  HOML 
  MFilter 
  BaseDefs
begin  
text‹Axioms of Scott's variant.›
axiomatization where 
  A1: "X.((¬(𝒫 X))  (𝒫(X)))" and
  A2: "X Y.(((𝒫 X)  (XY))  (𝒫 Y))" and
  A3: "𝒵.((𝒫𝗈𝗌 𝒵)  (X.((X𝒵)  (𝒫 X))))" and
  A4: "X.((𝒫 X)  (𝒫 X))" and
  A5: "𝒫 𝒩ℰ" and
  B:  "φ.(φ  φ)" ―‹Logic KB›

lemma B': "x y. ¬(xry)  (yrx)" using B by fastforce

text‹Necessary existence of a Godlike entity.›
theorem T6: "(E 𝒢)" 
proof -
  have T1: "X.((𝒫 X)  (E X))" using A1 A2 by blast
  have T2: "𝒫 𝒢" by (metis A3 G_def)
  have T3: "(E 𝒢)" using T1 T2 by simp
  have T4: "Ex.((𝒢 x)( 𝒢 x))" unfolding G_def E_def using A1 A4 by metis
  have T5: "((E𝒢)) (E𝒢)" by (smt A5 G_def B' NE_def T4)
  thus ?thesis using T3 by blast qed

text‹Existence of a Godlike entity.›
lemma "E 𝒢" using A1 A2 B' T6 by blast

text‹Consistency› 
lemma True nitpick[satisfy] oops ―‹Model found.›

text‹Modal collapse: holds.›
lemma MC: "Φ.(Φ  Φ)" 
proof - {
    fix w fix Q
    have 1: "x.((𝒢 x w)  (Z.((Z x)  (Ez.((𝒢 z)  (Z z))))) w)" 
      by (metis A1 A4 G_def)
    have 2: "(x. 𝒢 x w)((Q  (Ez.((𝒢 z)  Q))) w)" 
      using 1 by force
    have 3: "(Q  Q) w" using B' T6 2 by blast} 
  thus ?thesis by auto qed

text‹Analysis of positive properties using ultrafilters.›
theorem U1: "UFilter 𝒫"  ―‹Proof found by sledgehammer›
proof - 
  have 1: "(U𝒫)  ¬(𝒫)"  using A1 A2 by blast
  have 2: "φ ψ.(((φ𝒫)(φψ))(ψ𝒫))"  by (smt A2 B' MC)
  have 3: "φ ψ.(((φ𝒫)(ψ𝒫))((φψ)𝒫))" by (metis A1 A2 G_def B' T6)
  have 4: "φ.((φ𝒫)  ((¯φ)𝒫))"  using A1 by blast
  thus ?thesis using 1 2 3 4 by simp qed

lemma L1: "X Y.((XY)  (XY))" by (metis A1 A2 MC)
lemma L2: "X Y.(((𝒫 X)  (XY))  (𝒫 Y))" by (smt A2 B' MC)

text‹Set of supersets of X, we call this HF X.›
abbreviation HF where "HF X  λY.(XY)"

textHF 𝒢› is a filter; hence, HF 𝒢› is Hauptfilter of 𝒢›.› 
lemma F1: "Filter (HF 𝒢)" by (metis A2 B' T6 U1)
lemma F2: "UFilter (HF 𝒢)" by (smt A1 F1 G_def)

text‹T6 follows directly from F1.› 
theorem T6again: "(E 𝒢)" using F1 by simp 
end