# HG changeset patch # User haftmann # Date 1253809768 -7200 # Node ID de1f7d4da21ac1eeec19eefa1aed115a4e5e182d # Parent b629fbcc53134d2e7193db037ca4ccf5804fae46 added dual for complete lattice diff -r b629fbcc5313 -r de1f7d4da21a src/HOL/Complete_Lattice.thy --- a/src/HOL/Complete_Lattice.thy Thu Sep 24 08:28:27 2009 +0200 +++ b/src/HOL/Complete_Lattice.thy Thu Sep 24 18:29:28 2009 +0200 @@ -10,7 +10,9 @@ less_eq (infix "\" 50) and less (infix "\" 50) and inf (infixl "\" 70) and - sup (infixl "\" 65) + sup (infixl "\" 65) and + top ("\") and + bot ("\") subsection {* Abstract complete lattices *} @@ -24,6 +26,15 @@ and Sup_least: "(\x. x \ A \ x \ z) \ \A \ z" begin +term complete_lattice + +lemma dual_complete_lattice: + "complete_lattice (op \) (op >) (op \) (op \) \ \ Sup Inf" + by (auto intro!: complete_lattice.intro dual_lattice + bot.intro top.intro dual_preorder, unfold_locales) + (fact bot_least top_greatest + Sup_upper Sup_least Inf_lower Inf_greatest)+ + lemma Inf_Sup: "\A = \{b. \a \ A. b \ a}" by (auto intro: antisym Inf_lower Inf_greatest Sup_upper Sup_least) @@ -784,7 +795,9 @@ inf (infixl "\" 70) and sup (infixl "\" 65) and Inf ("\_" [900] 900) and - Sup ("\_" [900] 900) + Sup ("\_" [900] 900) and + top ("\") and + bot ("\") lemmas mem_simps = insert_iff empty_iff Un_iff Int_iff Compl_iff Diff_iff