merged
authorhaftmann
Tue, 06 Oct 2009 20:00:08 +0200
changeset 32882 bfb3e24a4936
parent 32881 13b153243ed4 (current diff)
parent 32879 7f5ce7af45fd (diff)
child 32884 a0737458da18
merged
--- a/src/HOL/Complete_Lattice.thy	Tue Oct 06 18:27:00 2009 +0200
+++ b/src/HOL/Complete_Lattice.thy	Tue Oct 06 20:00:08 2009 +0200
@@ -15,21 +15,25 @@
   bot ("\<bottom>")
 
 
+subsection {* Syntactic infimum and supremum operations *}
+
+class Inf =
+  fixes Inf :: "'a set \<Rightarrow> 'a" ("\<Sqinter>_" [900] 900)
+
+class Sup =
+  fixes Sup :: "'a set \<Rightarrow> 'a" ("\<Squnion>_" [900] 900)
+
 subsection {* Abstract complete lattices *}
 
-class complete_lattice = lattice + bot + top +
-  fixes Inf :: "'a set \<Rightarrow> 'a" ("\<Sqinter>_" [900] 900)
-    and Sup :: "'a set \<Rightarrow> 'a" ("\<Squnion>_" [900] 900)
+class complete_lattice = lattice + bot + top + Inf + Sup +
   assumes Inf_lower: "x \<in> A \<Longrightarrow> \<Sqinter>A \<sqsubseteq> x"
      and Inf_greatest: "(\<And>x. x \<in> A \<Longrightarrow> z \<sqsubseteq> x) \<Longrightarrow> z \<sqsubseteq> \<Sqinter>A"
   assumes Sup_upper: "x \<in> A \<Longrightarrow> x \<sqsubseteq> \<Squnion>A"
      and Sup_least: "(\<And>x. x \<in> A \<Longrightarrow> x \<sqsubseteq> z) \<Longrightarrow> \<Squnion>A \<sqsubseteq> z"
 begin
 
-term complete_lattice
-
 lemma dual_complete_lattice:
-  "complete_lattice (op \<ge>) (op >) (op \<squnion>) (op \<sqinter>) \<top> \<bottom> Sup Inf"
+  "complete_lattice Sup Inf (op \<ge>) (op >) (op \<squnion>) (op \<sqinter>) \<top> \<bottom>"
   by (auto intro!: complete_lattice.intro dual_lattice
     bot.intro top.intro dual_preorder, unfold_locales)
       (fact bot_least top_greatest
--- a/src/HOL/GCD.thy	Tue Oct 06 18:27:00 2009 +0200
+++ b/src/HOL/GCD.thy	Tue Oct 06 20:00:08 2009 +0200
@@ -1575,7 +1575,7 @@
 qed
 
 interpretation gcd_lcm_complete_lattice_nat:
-  complete_lattice "op dvd" "%m n::nat. m dvd n & ~ n dvd m" gcd lcm 1 0 GCD LCM
+  complete_lattice GCD LCM "op dvd" "%m n::nat. m dvd n & ~ n dvd m" gcd lcm 1 0
 proof
   case goal1 show ?case by simp
 next