src/HOL/Algebra/Group.thy
changeset 21041 60e418260b4d
parent 20318 0e0ea63fe768
child 22063 717425609192
     1.1 --- a/src/HOL/Algebra/Group.thy	Sun Oct 15 12:16:20 2006 +0200
     1.2 +++ b/src/HOL/Algebra/Group.thy	Mon Oct 16 10:27:54 2006 +0200
     1.3 @@ -685,7 +685,7 @@
     1.4  text_raw {* \label{sec:subgroup-lattice} *}
     1.5  
     1.6  theorem (in group) subgroups_partial_order:
     1.7 -  "partial_order (| carrier = {H. subgroup H G}, le = op \<subseteq> |)"
     1.8 +  "partial_order {H. subgroup H G} (op \<subseteq>)"
     1.9    by (rule partial_order.intro) simp_all
    1.10  
    1.11  lemma (in group) subgroup_self:
    1.12 @@ -730,22 +730,23 @@
    1.13  qed
    1.14  
    1.15  theorem (in group) subgroups_complete_lattice:
    1.16 -  "complete_lattice (| carrier = {H. subgroup H G}, le = op \<subseteq> |)"
    1.17 -    (is "complete_lattice ?L")
    1.18 +  "complete_lattice {H. subgroup H G} (op \<subseteq>)"
    1.19 +    (is "complete_lattice ?car ?le")
    1.20  proof (rule partial_order.complete_lattice_criterion1)
    1.21 -  show "partial_order ?L" by (rule subgroups_partial_order)
    1.22 +  show "partial_order ?car ?le" by (rule subgroups_partial_order)
    1.23  next
    1.24 -  have "greatest ?L (carrier G) (carrier ?L)"
    1.25 -    by (unfold greatest_def) (simp add: subgroup.subset subgroup_self)
    1.26 -  then show "\<exists>G. greatest ?L G (carrier ?L)" ..
    1.27 +  have "order_syntax.greatest ?car ?le (carrier G) ?car"
    1.28 +    by (unfold order_syntax.greatest_def)
    1.29 +      (simp add: subgroup.subset subgroup_self)
    1.30 +  then show "\<exists>G. order_syntax.greatest ?car ?le G ?car" ..
    1.31  next
    1.32    fix A
    1.33 -  assume L: "A \<subseteq> carrier ?L" and non_empty: "A ~= {}"
    1.34 +  assume L: "A \<subseteq> ?car" and non_empty: "A ~= {}"
    1.35    then have Int_subgroup: "subgroup (\<Inter>A) G"
    1.36      by (fastsimp intro: subgroups_Inter)
    1.37 -  have "greatest ?L (\<Inter>A) (Lower ?L A)"
    1.38 -    (is "greatest ?L ?Int _")
    1.39 -  proof (rule greatest_LowerI)
    1.40 +  have "order_syntax.greatest ?car ?le (\<Inter>A) (order_syntax.Lower ?car ?le A)"
    1.41 +    (is "order_syntax.greatest _ _ ?Int _")
    1.42 +  proof (rule order_syntax.greatest_LowerI)
    1.43      fix H
    1.44      assume H: "H \<in> A"
    1.45      with L have subgroupH: "subgroup H G" by auto
    1.46 @@ -754,17 +755,18 @@
    1.47      from groupH have monoidH: "monoid ?H"
    1.48        by (rule group.is_monoid)
    1.49      from H have Int_subset: "?Int \<subseteq> H" by fastsimp
    1.50 -    then show "le ?L ?Int H" by simp
    1.51 +    then show "?le ?Int H" by simp
    1.52    next
    1.53      fix H
    1.54 -    assume H: "H \<in> Lower ?L A"
    1.55 -    with L Int_subgroup show "le ?L H ?Int" by (fastsimp intro: Inter_greatest)
    1.56 +    assume H: "H \<in> order_syntax.Lower ?car ?le A"
    1.57 +    with L Int_subgroup show "?le H ?Int"
    1.58 +      by (fastsimp simp: order_syntax.Lower_def intro: Inter_greatest)
    1.59    next
    1.60 -    show "A \<subseteq> carrier ?L" by (rule L)
    1.61 +    show "A \<subseteq> ?car" by (rule L)
    1.62    next
    1.63 -    show "?Int \<in> carrier ?L" by simp (rule Int_subgroup)
    1.64 +    show "?Int \<in> ?car" by simp (rule Int_subgroup)
    1.65    qed
    1.66 -  then show "\<exists>I. greatest ?L I (Lower ?L A)" ..
    1.67 +  then show "\<exists>I. order_syntax.greatest ?car ?le I (order_syntax.Lower ?car ?le A)" ..
    1.68  qed
    1.69  
    1.70  end