src/HOL/Algebra/Ideal.thy
changeset 26203 9625f3579b48
parent 23464 bc2563c37b1a
child 27611 2c01c0bdb385
equal deleted inserted replaced
26202:51f8a696cd8d 26203:9625f3579b48
    23 apply (rule abelian_group.axioms, rule ring.axioms, rule ideal.axioms, rule ideal_axioms)
    23 apply (rule abelian_group.axioms, rule ring.axioms, rule ideal.axioms, rule ideal_axioms)
    24 done
    24 done
    25 
    25 
    26 lemma (in ideal) is_ideal:
    26 lemma (in ideal) is_ideal:
    27   "ideal I R"
    27   "ideal I R"
    28 by fact
    28 by (rule ideal_axioms)
    29 
    29 
    30 lemma idealI:
    30 lemma idealI:
    31   includes ring
    31   includes ring
    32   assumes a_subgroup: "subgroup I \<lparr>carrier = carrier R, mult = add R, one = zero R\<rparr>"
    32   assumes a_subgroup: "subgroup I \<lparr>carrier = carrier R, mult = add R, one = zero R\<rparr>"
    33       and I_l_closed: "\<And>a x. \<lbrakk>a \<in> I; x \<in> carrier R\<rbrakk> \<Longrightarrow> x \<otimes> a \<in> I"
    33       and I_l_closed: "\<And>a x. \<lbrakk>a \<in> I; x \<in> carrier R\<rbrakk> \<Longrightarrow> x \<otimes> a \<in> I"
    53 locale principalideal = ideal +
    53 locale principalideal = ideal +
    54   assumes generate: "\<exists>i \<in> carrier R. I = Idl {i}"
    54   assumes generate: "\<exists>i \<in> carrier R. I = Idl {i}"
    55 
    55 
    56 lemma (in principalideal) is_principalideal:
    56 lemma (in principalideal) is_principalideal:
    57   shows "principalideal I R"
    57   shows "principalideal I R"
    58 by fact
    58 by (rule principalideal_axioms)
    59 
    59 
    60 lemma principalidealI:
    60 lemma principalidealI:
    61   includes ideal
    61   includes ideal
    62   assumes generate: "\<exists>i \<in> carrier R. I = Idl {i}"
    62   assumes generate: "\<exists>i \<in> carrier R. I = Idl {i}"
    63   shows "principalideal I R"
    63   shows "principalideal I R"
    70   assumes I_notcarr: "carrier R \<noteq> I"
    70   assumes I_notcarr: "carrier R \<noteq> I"
    71       and I_maximal: "\<lbrakk>ideal J R; I \<subseteq> J; J \<subseteq> carrier R\<rbrakk> \<Longrightarrow> J = I \<or> J = carrier R"
    71       and I_maximal: "\<lbrakk>ideal J R; I \<subseteq> J; J \<subseteq> carrier R\<rbrakk> \<Longrightarrow> J = I \<or> J = carrier R"
    72 
    72 
    73 lemma (in maximalideal) is_maximalideal:
    73 lemma (in maximalideal) is_maximalideal:
    74  shows "maximalideal I R"
    74  shows "maximalideal I R"
    75 by fact
    75 by (rule maximalideal_axioms)
    76 
    76 
    77 lemma maximalidealI:
    77 lemma maximalidealI:
    78   includes ideal
    78   includes ideal
    79   assumes I_notcarr: "carrier R \<noteq> I"
    79   assumes I_notcarr: "carrier R \<noteq> I"
    80      and I_maximal: "\<And>J. \<lbrakk>ideal J R; I \<subseteq> J; J \<subseteq> carrier R\<rbrakk> \<Longrightarrow> J = I \<or> J = carrier R"
    80      and I_maximal: "\<And>J. \<lbrakk>ideal J R; I \<subseteq> J; J \<subseteq> carrier R\<rbrakk> \<Longrightarrow> J = I \<or> J = carrier R"
    89   assumes I_notcarr: "carrier R \<noteq> I"
    89   assumes I_notcarr: "carrier R \<noteq> I"
    90       and I_prime: "\<lbrakk>a \<in> carrier R; b \<in> carrier R; a \<otimes> b \<in> I\<rbrakk> \<Longrightarrow> a \<in> I \<or> b \<in> I"
    90       and I_prime: "\<lbrakk>a \<in> carrier R; b \<in> carrier R; a \<otimes> b \<in> I\<rbrakk> \<Longrightarrow> a \<in> I \<or> b \<in> I"
    91 
    91 
    92 lemma (in primeideal) is_primeideal:
    92 lemma (in primeideal) is_primeideal:
    93  shows "primeideal I R"
    93  shows "primeideal I R"
    94 by fact
    94 by (rule primeideal_axioms)
    95 
    95 
    96 lemma primeidealI:
    96 lemma primeidealI:
    97   includes ideal
    97   includes ideal
    98   includes cring
    98   includes cring
    99   assumes I_notcarr: "carrier R \<noteq> I"
    99   assumes I_notcarr: "carrier R \<noteq> I"