Theory logics_operators

theory logics_operators
  imports conditions_positive
begin

subsection ‹Converting between topological operators›

text‹We verify minimal conditions under which operators resulting from conversion functions coincide.›

text‹Conversions between interior, closure and exterior are straightforward and hold without restrictions: 
  Interior and closure are each other duals. Exterior is the complement of closure.
  We focus here on conversions involving the border and frontier operators.›

text‹Interior operator as derived from border.›
definition Int_br::"('w σ'w σ)('w σ'w σ)" ("B") 
  where "B   λA. A  ( A)"
text‹Interior operator as derived from frontier.›
definition Int_fr::"('w σ'w σ)('w σ'w σ)" ("F") 
  where "F   λA. A  ( A)"
text‹Closure operator as derived from border.›
definition Cl_br::"('w σ'w σ)('w σ'w σ)" ("𝒞B") 
  where "𝒞B   λA. A  (A)"
text‹Closure operator as derived from frontier.›
definition Cl_fr::"('w σ'w σ)('w σ'w σ)" ("𝒞F") 
  where "𝒞F   λA. A  ( A)"
text‹Frontier operator as derived from interior.›
definition Fr_int::"('w σ'w σ)('w σ'w σ)" ("I") 
  where "I   λA. ( A  (A))"
text‹Frontier operator as derived from closure.›
definition Fr_cl::"('w σ'w σ)('w σ'w σ)" ("C") 
  where "C 𝒞  λA. (𝒞 A)  𝒞(A)"
text‹Frontier operator as derived from border.›
definition Fr_br::"('w σ'w σ)('w σ'w σ)" ("B") 
  where "B   λA.  A  (A)"
text‹Border operator as derived from interior.›
definition Br_int::"('w σ'w σ)('w σ'w σ)" ("I") 
  where "I   λA. A  ( A)"
text‹Border operator as derived from closure.›
definition Br_cl::"('w σ'w σ)('w σ'w σ)" ("C")  
  where "C 𝒞  λA. A  𝒞(A)"
text‹Border operator as derived from frontier.›
definition Br_fr::"('w σ'w σ)('w σ'w σ)" ("F") 
  where "F   λA. A  ( A)"

text‹Inter-definitions involving border or frontier do not hold without restrictions.›
lemma " = C (𝒞B )" nitpick oops ―‹ countermodel ›
lemma " = I (B )" nitpick oops ―‹ countermodel ›
lemma " = F (B )" nitpick oops ―‹ countermodel ›
lemma " = C (𝒞F )" nitpick oops ―‹ countermodel ›
lemma " = I (F )" nitpick oops ―‹ countermodel ›
lemma " = B (F )" nitpick oops ―‹ countermodel ›

lemma "𝒞 = 𝒞B (C 𝒞)" nitpick oops ―‹ countermodel ›
lemma "𝒞 = 𝒞F (C 𝒞)" nitpick oops ―‹ countermodel ›
lemma " = B (C )" nitpick oops ―‹ countermodel ›
lemma " = F (C )" nitpick oops ―‹ countermodel ›


text‹Inter-definitions involving border or frontier always assume the second Kuratowski condition 
  (or its respective counterpart: C2, I2, B2 or F2).›
abbreviation "C2 φ  EXPN φ"
abbreviation "I2 φ  CNTR φ"
abbreviation "B2 φ  CNTR φ"
abbreviation "F2 φ  A. φ(A) = φ A"

lemma "B2    = C (𝒞B )" unfolding CNTR_def Br_cl_def Cl_br_def conn order by metis
lemma "B2    = I (B )" unfolding CNTR_def Br_int_def Int_br_def conn order by metis
lemma "B2    = F (B )" unfolding CNTR_def Br_fr_def Fr_br_def conn order by metis
lemma "F2    = C (𝒞F )" unfolding Cl_fr_def Fr_cl_def conn order by metis
lemma "F2    = I (F )" unfolding Int_fr_def Fr_int_def conn order by metis
lemma "F2    = B (F )" unfolding Br_fr_def Fr_br_def conn order by metis

lemma "C2 𝒞  𝒞 = 𝒞B (C 𝒞)" unfolding EXPN_def Br_cl_def Cl_br_def conn order by metis
lemma "C2 𝒞  𝒞 = 𝒞F (C 𝒞)" unfolding EXPN_def Fr_cl_def Cl_fr_def conn order by metis
lemma "I2    = B (I )" unfolding CNTR_def Int_br_def Br_int_def conn order by metis
lemma "I2    = F (I )" unfolding CNTR_def Int_fr_def Fr_int_def conn order by metis

end