# HG changeset patch # User haftmann # Date 1163606739 -3600 # Node ID c4f79922bc81faa30b50abd83f027cf2428ac07b # Parent a0561695167a9258d3cf25784ed3d352b344559d added interpretation diff -r a0561695167a -r c4f79922bc81 src/HOL/LOrder.thy --- a/src/HOL/LOrder.thy Wed Nov 15 17:05:38 2006 +0100 +++ b/src/HOL/LOrder.thy Wed Nov 15 17:05:39 2006 +0100 @@ -90,6 +90,22 @@ lemma join_unique: "(is_join j) = (j = join)" by (insert is_join_join, auto simp add: is_join_unique) +interpretation lattice: + lattice ["op \ \ 'a\lorder \ 'a \ bool" "op <" meet join] +proof unfold_locales + fix x y z :: "'a\lorder" + from is_meet_meet have "is_meet meet" by blast + note meet = this is_meet_def + from meet show "meet x y \ x" by blast + from meet show "meet x y \ y" by blast + from meet show "x \ y \ x \ z \ x \ meet y z" by blast + from is_join_join have "is_join join" by blast + note join = this is_join_def + from join show "x \ join x y" by blast + from join show "y \ join x y" by blast + from join show "y \ x \ z \ x \ join y z \ x" by blast +qed + lemma meet_left_le: "meet a b \ (a::'a::meet_semilorder)" by (insert is_meet_meet, auto simp add: is_meet_def)