Theory Adequacy

theory Adequacy
imports ResourcedAdequacy "Denotational-Related"
begin

theorem adequacy:
  assumes "e⟧⇘Γ "
  shows " Δ v. Γ : e ⇓⇘SΔ : v"
proof-
  have "Γ ◃▹* 𝒩⦃Γ" by (rule heaps_similar)
  hence  "e⟧⇘Γ◃▹ (𝒩⟦e⟧⇘𝒩⦃Γ)C" by (rule denotational_semantics_similar)
  from bot_or_not_bot[OF this] assms
  have "(𝒩⟦e⟧⇘𝒩⦃Γ)C  " by metis
  thus ?thesis by (rule resourced_adequacy)
qed

end