This section studies the ideals of quotient rings, and defines ring homomorphisms.
Morphisms in general are structure preserving functions between algebraic structures. In this section we study ring homomorphisms.
A ring homomorphism is a function between rings which has the morphism property with respect to both addition and multiplication operation, and maps one (the neutral element of multiplication) in the first ring to one in the second ring.
definition
\( \text{ringHomomor}(f,R,A,M,S,U,V) \equiv f:R\rightarrow S \wedge \text{IsMorphism}(R,A,U,f) \wedge \text{IsMorphism}(R,M,V,f) \) \( \wedge f(\text{ TheNeutralElement}(R,M)) = \text{ TheNeutralElement}(S,V) \)
The next locale defines notation which we will use in this theory. We assume that we have two rings, one (which we will call the origin ring) defined by the triple \((R,A,M)\) and the second one (which we will call the target ring) by the triple \((S,U,V)\), and a homomorphism \(f:R\rightarrow S\).
locale ring_homo
assumes origin: \( \text{IsAring}(R,A,M) \) and target: \( \text{IsAring}(S,U,V) \) and homomorphism: \( \text{ringHomomor}(f,R,A,M,S,U,V) \)
defines \( x + _Ry \equiv A\langle x,y\rangle \)
defines \( ( - _Rx) \equiv \text{GroupInv}(R,A)(x) \)
defines \( x - _Ry \equiv x + _R( - _Ry) \)
defines \( x\cdot _Ry \equiv M\langle x,y\rangle \)
defines \( 0 _R \equiv \text{ TheNeutralElement}(R,A) \)
defines \( 1 _R \equiv \text{ TheNeutralElement}(R,M) \)
defines \( 2 _R \equiv 1 _R + _R1 _R \)
defines \( x^{2^R} \equiv x\cdot _Rx \)
defines \( x + _Sb \equiv U\langle x,b\rangle \)
defines \( ( - _Sx) \equiv \text{GroupInv}(S,U)(x) \)
defines \( x - _Sb \equiv x + _S( - _Sb) \)
defines \( x\cdot _Sb \equiv V\langle x,b\rangle \)
defines \( 0 _S \equiv \text{ TheNeutralElement}(S,U) \)
defines \( 1 _S \equiv \text{ TheNeutralElement}(S,V) \)
defines \( 2 _S \equiv 1 _S + _S1 _S \)
defines \( x^{2^S} \equiv x\cdot _Sx \)
defines \( \sum s \equiv \text{Fold}(A, 0 _R,s) \)
defines \( n\cdot x \equiv \sum \{\langle k,x\rangle .\ k\in n\} \)
We will write \( I\triangleleft R_o \) to denote that \(I\) is an ideal of the ring \(R\). Note that in this notation the \( R_o \) part by itself has no meaning, only the whole \( \triangleleft R_o \) serves as postfix operator.
abbreviation (in ring_homo)
\( I\triangleleft R_o \equiv ring0.\ \text{Ideal}(R,A,M,I) \)
\( I\triangleleft R_t \) means that \(I\) is an ideal of \(S\).
abbreviation (in ring_homo)
\( I\triangleleft R_t \equiv ring0.\ \text{Ideal}(S,U,V,I) \)
\( I\triangleleft _pR_o \) means that \(I\) is a prime ideal of \(R\).
abbreviation (in ring_homo)
\( I\triangleleft _pR_o \equiv ring0.\ \text{primeIdeal}(R,A,M,I) \)
We will write \( I\triangleleft _pR_t \) to denote that \(I\) is a prime ideal of the ring \(S\).
abbreviation (in ring_homo)
\( I\triangleleft _pR_t \equiv ring0.\ \text{primeIdeal}(S,U,V,I) \)
ker denotes the kernel of \(f\) (which is assumed to be a homomorphism between \(R\) and \(S\).
abbreviation (in ring_homo)
\( ker \equiv f^{-1}\{ 0 _S\} \)
The theorems proven in the ring0 context are valid in the ring_homo context when applied to the ring \(R\).
using origin unfolding ring0_def
The theorems proven in the ring0 context are valid in the ring_homo context when applied to the ring \(S\).
using target unfolding ring0_def
A ring homomorphism is a homomorphism both with respect to addition and multiplication.
lemma ringHomHom:
assumes \( \text{ringHomomor}(f,R,A,M,S,U,V) \)
shows \( \text{Homomor}(f,R,A,S,U) \) and \( \text{Homomor}(f,R,M,S,V) \) using assms unfolding ringHomomor_def, Homomor_defSince in the ring_homo locale \(f\) is a ring homomorphism it implies that \(f\) is a function from \(R\) to \(S\).
lemma (in ring_homo) f_is_fun:
shows \( f:R\rightarrow S \) using homomorphism unfolding ringHomomor_defIn the ring_homo context \(A\) is the addition in the first (source) ring \(M\) is the multiplication there and \(U,V\) are the addition and multiplication resp. in the second (target) ring. The next lemma states the all these are binary operations, a trivial, but frequently used fact.
lemma (in ring_homo) AMUV_are_ops:
shows \( A:R\times R\rightarrow R \), \( M:R\times R\rightarrow R \), \( U:S\times S\rightarrow S \), \( V:S\times S\rightarrow S \) using origin, target unfolding IsAring_def, IsAgroup_def, IsAmonoid_def, IsAssociative_defThe kernel is a subset of \(R\) on which the value of \(f\) is zero (of the target ring)
lemma (in ring_homo) kernel_def_alt:
shows \( ker = \{r\in R.\ f(r) = 0 _S\} \) using f_is_fun, func1_1_L14the homomorphism \(f\) maps each element of the kernel to zero of the target ring.
lemma (in ring_homo) image_kernel:
assumes \( x\in ker \)
shows \( f(x) = 0 _S \) using assms, func1_1_L15, f_is_funAs a ring homomorphism \(f\) preserves multiplication.
lemma (in ring_homo) homomor_dest_mult:
assumes \( x\in R \), \( y\in R \)
shows \( f(x\cdot _Ry) = (f(x))\cdot _S(f(y)) \) using assms, origin, target, homomorphism unfolding ringHomomor_def, IsMorphism_defAs a ring homomorphism \(f\) preserves addition.
lemma (in ring_homo) homomor_dest_add:
assumes \( x\in R \), \( y\in R \)
shows \( f(x + _Ry) = (f(x)) + _S(f(y)) \) using homomor_eq, origin, target, homomorphism, assms unfolding IsAring_def, ringHomomor_def, IsMorphism_defFor \(x\in R\) the value of \(f\) is in \(S\).
lemma (in ring_homo) homomor_val:
assumes \( x\in R \)
shows \( f(x) \in S \) using homomorphism, assms, apply_funtype unfolding ringHomomor_defA ring homomorphism preserves taking negative of an element.
lemma (in ring_homo) homomor_dest_minus:
assumes \( x\in R \)
shows \( f( - _Rx) = - _S(f(x)) \) using origin, target, homomorphism, assms, ringHomHom, image_inv unfolding IsAring_defA ring homomorphism preserves substraction.
lemma (in ring_homo) homomor_dest_subs:
assumes \( x\in R \), \( y\in R \)
shows \( f(x - _Ry) = (f(x)) - _S(f(y)) \) using assms, homomor_dest_add, homomor_dest_minus using Ring_ZF_1_L3(1)A ring homomorphism maps zero to zero.
lemma (in ring_homo) homomor_dest_zero:
shows \( f( 0 _R) = 0 _S \) using origin, target, homomorphism, ringHomHom(1), image_neutral unfolding IsAring_defThe kernel of a homomorphism is never empty.
lemma (in ring_homo) kernel_non_empty:
shows \( 0 _R \in ker \) and \( ker\neq 0 \) using homomor_dest_zero, Ring_ZF_1_L2(1), func1_1_L15, f_is_funThe image of the kernel by \(f\) is the singleton \(\{ 0_R\}\).
corollary (in ring_homo) image_kernel_2:
shows \( f(ker) = \{ 0 _S\} \)proofThe inverse image of an ideal (in the target ring) is a normal subgroup of the addition group and an ideal in the origin ring. The kernel of the homomorphism is a subset of the inverse of image of every ideal.
lemma (in ring_homo) preimage_ideal:
assumes \( J\triangleleft R_t \)
shows \( \text{IsAnormalSubgroup}(R,A,f^{-1}(J)) \), \( (f^{-1}(J))\triangleleft R_o \), \( ker \subseteq f^{-1}(J) \)proofKernel of the homomorphism in an ideal.
lemma (in ring_homo) kernel_ideal:
shows \( ker \triangleleft R_o \) using zero_ideal, preimage_ideal(2)The inverse image of a prime ideal by a homomorphism is not the whole ring. Proof by contradiction.
lemma (in ring_homo) vimage_prime_ideal_not_all:
assumes \( J\triangleleft _pR_t \)
shows \( f^{-1}(J) \neq R \)proofEven more, if the target ring of the homomorphism is commutative and the ideal is prime then its preimage is also. Note that this is not true in general.
lemma (in ring_homo) preimage_prime_ideal_comm:
assumes \( J\triangleleft _pR_t \), \( V \text{ is commutative on } S \)
shows \( (f^{-1}(J))\triangleleft _pR_o \)proofWe can replace the assumption that the target ring of the homomorphism is commutative with the assumption that homomorphism is surjective in preimage_prime_ideal_comm above and we can show the same assertion that the preimage of a prime ideal prime.
lemma (in ring_homo) preimage_prime_ideal_surj:
assumes \( J\triangleleft _pR_t \), \( f \in \text{surj}(R,S) \)
shows \( (f^{-1}(J))\triangleleft _pR_o \)proofThe notion of a quotient ring (a.k.a factor ring, difference ring or residue class) is analogous to the notion of quotient group from the group theory.
The next locale ring2 extends the ring0 locale (defined in the Ring_ZF theory) with the assumption that some fixed set \(I\) is an ideal. It also defines some notation related to quotient rings, in particular we define the function (projection) \(f_I\) that maps each element \(r\) of the ring \(R\) to its class \(r_I(\{ r\}\) where \(r_I\) is the quotient group relation defined by \(I\) as a (normal) subgroup of \(R\) with addition.
locale ring2 = ring0 +
assumes idealAssum: \( I\triangleleft R \)
defines \( R_I \equiv \text{QuotientBy}(I) \)
defines \( r_I \equiv \text{QuotientGroupRel}(R,A,I) \)
defines \( f_I \equiv \lambda r\in R.\ r_I\{r\} \)
defines \( A_I \equiv \text{QuotientGroupOp}(R, A, I) \)
defines \( M_I \equiv \text{ProjFun2}(R, qrel, M) \)
The expression \( J\triangleleft R_I \) will mean that \(J\) is an ideal of the quotient ring \(R_I\) (with the quotient addition and multiplication).
abbreviation (in ring2)
\( J\triangleleft R_I \equiv ring0.\ \text{Ideal}(R_I,A_I,M_I,J) \)
In the ring2 The expression \( J\triangleleft _pR_I \) means that \(J\) is a prime ideal of the quotient ring \(R_I\).
abbreviation (in ring2)
\( J\triangleleft _pR_I \equiv ring0.\ \text{primeIdeal}(R_I,A_I,M_I,J) \)
Theorems proven in the ring0 context can be applied to the quotient ring in the ring2 context.
using quotientBy_is_ring, idealAssum, neutral_quotient, one_quotient, two_quotient unfolding ring0_def, ideal_radd_def, ideal_rmin_def, ideal_rsub_def, ideal_rmult_def, ideal_rzero_def, ideal_rone_def, ideal_rtwo_def, ideal_rsqr_def
The quotient map is a homomorphism of rings. This is probably one of the most sophisticated facts in IsarMathlib that Isabelle's simp method proves from 10 facts and 5 definitions.
theorem (in ring2) quotient_fun_homomor:
shows \( \text{ringHomomor}(f_I,R,A,M,R_I,A_I,M_I) \) using ringAssum, idealAssum, ideal_normal_add_subgroup, quotient_map, Ring_ZF_1_L4(3), EquivClass_1_L10, Ring_ZF_1_L2(2), Group_ZF_2_2_L1, ideal_equiv_rel, quotientBy_mul_monoid(1), QuotientBy_def unfolding IsAring_def, Homomor_def, IsMorphism_def, ringHomomor_defThe quotient map is surjective
lemma (in ring2) quot_fun:
shows \( f_I\in \text{surj}(R,R_I) \) using lam_funtype, idealAssum, QuotientBy_def unfolding quotient_def, surj_defThe theorems proven in the ring_homo context are valid in the ring_homo context when applied to the quotient ring as the second (target) ring and the quotient map as the ring homomorphism.
using ringAssum, quotient_ring.ringAssum, quotient_fun_homomor unfolding ring_homo_def
The ideal we divide by is the kernel of the quotient map.
lemma (in ring2) quotient_kernel:
shows \( quot\_homomorphism.\ kernel = I \)proofIf an ideal \(I\) is a subset of the kernel of the homomorphism then the image of the ideal generated by \(I\cup J\), where \(J\) is another ideal, is the same as the image of \(J\). Note that \( J+_II \) notation means the ideal generated by the union of ideals \(J\) and \(J\), see the definitions of sumIdeal and generatedIdeal in the Ring_ZF_2 theory, and also corollary sum_ideals_is_sum_elements for an alternative definition.
theorem (in ring_homo) kernel_empty_image:
assumes \( J\triangleleft R \), \( I \subseteq ker \), \( I\triangleleft R \)
shows \( f(J+_II) = f(J) \), \( f(I+_IJ) = f(J) \)proofIf we have an ideal \(J\) in a ring \(R\), and another ideal \(I\) contained in J, then we can form the quotient ideal J/I whose elements are of the form \(a + I\) where \(a\) is an element of \(J\).
The preimage of an ideal is an ideal, so it applies to the quotient map; but the preimage ideal contains the quotient ideal.
lemma (in ring2) ideal_quot_preimage:
assumes \( J\triangleleft R_I \)
shows \( (f_I^{-1}(J)) \triangleleft R \), \( I \subseteq f_I^{-1}(J) \)proofSince the map is surjective, the image is also an ideal
lemma (in ring_homo) image_ideal_surj:
assumes \( J\triangleleft R_o \), \( f\in \text{surj}(R,S) \)
shows \( (f(J)) \triangleleft R_t \)proofIf the homomorphism is a surjection and given two ideals in the target ring the inverse image of their product ideal is the sum ideal of the product ideal of their inverse images and the kernel of the homomorphism.
corollary (in ring_homo) prime_ideal_quot:
assumes \( J\triangleleft R_t \), \( K\triangleleft R_t \), \( f\in \text{surj}(R,S) \)
shows \( f^{-1}(target\_ring.\ \text{productIdeal}(J, K)) = \) \( origin\_ring.\ \text{sumIdeal}(origin\_ring.\ \text{productIdeal}((f^{-1}(J)),(f^{-1}(K))), ker) \)proofIf the homomorphism is surjective then the product ideal of ideals \(J,K\) in the target ring is the image of the product ideal (in the source ring) of the inverse images of \(J,K\).
corollary (in ring_homo) prime_ideal_quot_2:
assumes \( J\triangleleft R_t \), \( K\triangleleft R_t \), \( f\in \text{surj}(R,S) \)
shows \( target\_ring.\ \text{productIdeal}(J, K) = \) \( f(origin\_ring.\ \text{productIdeal}((f^{-1}(J)), (f^{-1}(K)))) \)proofIf the homomorphism is surjective and an ideal in the source ring contains the kernel, then the image of that ideal is a prime ideal in the target ring.
lemma (in ring_homo) preimage_ideal_prime:
assumes \( J\triangleleft _pR_o \), \( ker \subseteq J \), \( f\in \text{surj}(R,S) \)
shows \( (f(J))\triangleleft _pR_t \)proofThe ideals of the quotient ring are in bijection with the ideals of the original ring that contain the ideal by which we made the quotient.
theorem (in ring_homo) ideal_quot_bijection:
assumes \( f\in \text{surj}(R,S) \)
defines \( idealFun \equiv \lambda J\in target\_ring.\ ideals.\ f^{-1}(J) \)
shows \( idealFun \in \text{bij}(target\_ring.\ ideals,\{K\in \mathcal{I} .\ ker \subseteq K\}) \)proofAssume the homomorphism \(f\) is surjective and consider the function that maps an ideal \(J\) in the target ring to its inverse image \(f^{-1}(J)\) (in the source ring). Then the value of the converse of that function on any ideal containing the kernel of \(f\) is the image of that ideal under the homomorphism \(f\).
theorem (in ring_homo) quot_converse:
defines \( F \equiv \lambda J\in target\_ring.\ ideals.\ f^{-1}(J) \)
assumes \( J\triangleleft R \), \( ker\subseteq J \), \( f\in \text{surj}(R,S) \)
shows \( converse(F)(J) = f(J) \)proofSince the map is surjective, this bijection restricts to prime ideals on both sides.
corollary (in ring_homo) prime_ideal_quot_3:
assumes \( K\triangleleft R_t \), \( f \in \text{surj}(R,S) \)
shows \( K\triangleleft _pR_t \longleftrightarrow ((f^{-1}(K))\triangleleft _pR) \)proofIf the homomorphism is surjective then the function that maps ideals in the target ring to their inverse images (in the source ring) is a bijection between prime ideals in the target ring and the prime ideals containing the kernel in the source ring.
corollary (in ring_homo) bij_prime_ideals:
defines \( F \equiv \lambda J\in target\_ring.\ ideals.\ f^{-1}(J) \)
assumes \( f \in \text{surj}(R,S) \)
shows \( \text{restrict}(F,\{J\in Pow(S).\ J\triangleleft _pR_t\}) \in \) \( \text{bij}(\{J\in Pow(S).\ J\triangleleft _pR_t\}, \{J\in Pow(R).\ ker\subseteq J \wedge (J\triangleleft _pR)\}) \)proofassumes \( f:X\rightarrow Y \)
shows \( f^{-1}(\{y\}) = \{x\in X.\ f(x) = y\} \)assumes \( f:X\rightarrow Y \)
shows \( f^{-1}(A) = \{x\in X.\ f(x) \in A\} \)assumes \( \text{Homomor}(f,G,P,H,F) \), \( g_1\in G \), \( g_2\in G \)
shows \( f(P\langle g_1,g_2\rangle ) = F\langle f(g_1),f(g_2)\rangle \)assumes \( \text{ringHomomor}(f,R,A,M,S,U,V) \)
shows \( \text{Homomor}(f,R,A,S,U) \) and \( \text{Homomor}(f,R,M,S,V) \)assumes \( \text{IsAgroup}(G,P) \), \( \text{IsAgroup}(H,F) \), \( \text{Homomor}(f,G,P,H,F) \), \( g\in G \)
shows \( f( \text{GroupInv}(G,P)(g)) = \text{GroupInv}(H,F)(f(g)) \)assumes \( x\in R \), \( y\in R \)
shows \( f(x + _Ry) = (f(x)) + _S(f(y)) \)assumes \( x\in R \)
shows \( f( - _Rx) = - _S(f(x)) \)assumes \( a\in R \)
shows \( ( - a) \in R \), \( ( - ( - a)) = a \), \( a + 0 = a \), \( 0 + a = a \), \( a\cdot 1 = a \), \( 1 \cdot a = a \), \( a - a = 0 \), \( a - 0 = a \), \( 2 \cdot a = a + a \), \( ( - a) + a = 0 \)assumes \( \text{ringHomomor}(f,R,A,M,S,U,V) \)
shows \( \text{Homomor}(f,R,A,S,U) \) and \( \text{Homomor}(f,R,M,S,V) \)assumes \( \text{IsAgroup}(G,P) \), \( \text{IsAgroup}(H,F) \), \( \text{Homomor}(f,G,P,H,F) \)
shows \( f(\text{ TheNeutralElement}(G,P)) = \text{ TheNeutralElement}(H,F) \)assumes \( f:X\rightarrow Y \), \( A\subseteq X \), \( A\neq \emptyset \), \( \forall x\in A.\ f(x) = c \)
shows \( f(A) = \{c\} \)assumes \( \text{IsAgroup}(G,P) \), \( \text{IsAgroup}(H,F) \), \( \text{Homomor}(f,G,P,H,F) \), \( \text{IsAnormalSubgroup}(H,F,K) \)
shows \( \text{IsAnormalSubgroup}(G,P,f^{-1}(K)) \)assumes \( I\triangleleft R \)
shows \( \text{IsAnormalSubgroup}(R,A,I) \)assumes \( I \triangleleft R \), \( x\in I \), \( y\in R \)
shows \( x\cdot y \in I \), \( y\cdot x \in I \)assumes \( x\in R \), \( y\in R \)
shows \( f(x\cdot _Ry) = (f(x))\cdot _S(f(y)) \)assumes \( a\in R \), \( b\in R \)
shows \( a + b \in R \), \( a - b \in R \), \( a\cdot b \in R \), \( a + b = b + a \)assumes \( I \triangleleft R \)
shows \( 0 \in I \)assumes \( J\triangleleft R_t \)
shows \( \text{IsAnormalSubgroup}(R,A,f^{-1}(J)) \), \( (f^{-1}(J))\triangleleft R_o \), \( ker \subseteq f^{-1}(J) \)assumes \( I\triangleleft R \), \( 1 \in I \)
shows \( I = R \)assumes \( a\in R \), \( b\in R \), \( c\in R \)
shows \( a + b + c = a + (b + c) \), \( a\cdot b\cdot c = a\cdot (b\cdot c) \)assumes \( a\in R \)
shows \( ( - a) \in R \), \( ( - ( - a)) = a \), \( a + 0 = a \), \( 0 + a = a \), \( a\cdot 1 = a \), \( 1 \cdot a = a \), \( a - a = 0 \), \( a - 0 = a \), \( 2 \cdot a = a + a \), \( ( - a) + a = 0 \)assumes \( I \triangleleft R \), \( x\in I \), \( y\in R \)
shows \( x\cdot y \in I \), \( y\cdot x \in I \)assumes \( P\triangleleft _pR \)
shows \( \forall x\in R.\ \forall y\in R.\ (\forall z\in R.\ x\cdot z\cdot y\in P) \longrightarrow x\in P \vee y\in P \)assumes \( J\triangleleft R_t \)
shows \( \text{IsAnormalSubgroup}(R,A,f^{-1}(J)) \), \( (f^{-1}(J))\triangleleft R_o \), \( ker \subseteq f^{-1}(J) \)assumes \( J\triangleleft _pR_t \)
shows \( f^{-1}(J) \neq R \)assumes \( \forall x\in R.\ \forall y\in R.\ (\forall z\in R.\ x\cdot z\cdot y\in P) \longrightarrow x\in P \vee y\in P \), \( P\triangleleft R \), \( P\neq R \)
shows \( P\triangleleft _pR \)assumes \( I\triangleleft R \)
defines \( r \equiv \text{QuotientGroupRel}(R,A,I) \)
shows \( \text{IsAring}( \text{QuotientBy}(I), \text{QuotientGroupOp}(R, A, I), \text{ProjFun2}(R,r, M)) \)assumes \( I\triangleleft R \)
shows \( \text{QuotientGroupRel}(R,A,I)\{ 0 \} = \text{ TheNeutralElement}( \text{QuotientBy}(I), \text{QuotientGroupOp}(R,A,I)) \)assumes \( I\triangleleft R \)
defines \( r \equiv \text{QuotientGroupRel}(R,A,I) \)
shows \( r\{1 \} = \text{ TheNeutralElement}( \text{QuotientBy}(I), \text{ProjFun2}(R,r,M)) \)assumes \( I\triangleleft R \)
defines \( r \equiv \text{QuotientGroupRel}(R,A,I) \)
shows \( r\{ 2 \} = \text{QuotientGroupOp}(R,A,I)\langle r\{1 \},r\{1 \}\rangle \)assumes \( \text{IsAnormalSubgroup}(G,P,H) \)
defines \( r \equiv \text{QuotientGroupRel}(G,P,H) \) and \( q \equiv \lambda x\in G.\ \text{QuotientGroupRel}(G,P,H)\{x\} \)
shows \( \text{Homomor}(q,G,P,G//r, \text{QuotientGroupOp}(G,P,H)) \)assumes \( \text{equiv}(A,r) \) and \( \text{Congruent2}(r,f) \) and \( x\in A \), \( y\in A \)
shows \( \text{ProjFun2}(A,r,f)\langle r\{x\},r\{y\}\rangle = r\{f\langle x,y\rangle \} \)assumes \( \text{IsAmonoid}(G,f) \) and \( \text{equiv}(G,r) \) and \( \text{Congruent2}(r,f) \) and \( F = \text{ProjFun2}(G,r,f) \) and \( e = \text{ TheNeutralElement}(G,f) \)
shows \( r\{e\} = \text{ TheNeutralElement}(G//r,F) \)assumes \( I\triangleleft R \)
shows \( \text{equiv}(R, \text{QuotientGroupRel}(R,A,I)) \)assumes \( I\triangleleft R \)
shows \( \text{Congruent2}( \text{QuotientGroupRel}(R, A, I),M) \) and \( \text{IsAmonoid}( \text{QuotientBy}(I), \text{ProjFun2}(R, \text{QuotientGroupRel}(R,A,I), M)) \)assumes \( \text{IsAnormalSubgroup}(G,P,H) \) and \( a\in G \) and \( r = \text{QuotientGroupRel}(G,P,H) \) and \( \text{ TheNeutralElement}(G//r, \text{QuotientGroupOp}(G,P,H)) = e \)
shows \( r\{a\} = e \longleftrightarrow a\in H \)assumes \( x\in ker \)
shows \( f(x) = 0 _S \)assumes \( I \triangleleft R \)
shows \( I \subseteq R \)assumes \( I \triangleleft R \), \( J \triangleleft R \)
shows \( (I+_IJ) \triangleleft R \)assumes \( f:X\rightarrow Y \) and \( A\subseteq X \)
shows \( f(A) = \{f(x).\ x \in A\} \)assumes \( I \triangleleft R \), \( J \triangleleft R \)
shows \( (A(I \times J)) = I+_IJ \)assumes \( a\in R \)
shows \( ( - a) \in R \), \( ( - ( - a)) = a \), \( a + 0 = a \), \( 0 + a = a \), \( a\cdot 1 = a \), \( 1 \cdot a = a \), \( a - a = 0 \), \( a - 0 = a \), \( 2 \cdot a = a + a \), \( ( - a) + a = 0 \)assumes \( X\subseteq R \)
shows \( X\subseteq \langle X\rangle _I \)assumes \( I\triangleleft R \), \( J\triangleleft R \)
shows \( (I +_I J) = (J +_I I) \)assumes \( \text{IsAgroup}(G,P) \), \( \text{IsAgroup}(H,F) \), \( \text{Homomor}(f,G,P,H,F) \), \( f:G\rightarrow H \), \( \text{IsAsubgroup}(K,P) \)
shows \( \text{IsAsubgroup}(fK,F) \)assumes \( f \in \text{surj}(A,B) \)
shows \( f(A) = B \)assumes \( I\triangleleft R \), \( J\triangleleft R \)
shows \( I\cdot _IJ \subseteq I\cap J \) and \( (I\cdot _IJ)\triangleleft R \) and \( M(I\times J) \subseteq I\cdot _IJ \)assumes \( J\triangleleft R_o \), \( f\in \text{surj}(R,S) \)
shows \( (f(J)) \triangleleft R_t \)assumes \( f:X\rightarrow Y \)
shows \( f^{-1}(A)\subseteq X \)assumes \( I\triangleleft R \), \( J\triangleleft R \)
shows \( I\cdot _IJ \subseteq I\cap J \) and \( (I\cdot _IJ)\triangleleft R \) and \( M(I\times J) \subseteq I\cdot _IJ \)assumes \( f:X\rightarrow Y \), \( x\in A \), \( A\subseteq X \)
shows \( f(x) \in f(A) \)assumes \( X\subseteq I \), \( I \triangleleft R \)
shows \( \langle X\rangle _I \subseteq I \)assumes \( a\in R \)
shows \( ( - a) \in R \), \( ( - ( - a)) = a \), \( a + 0 = a \), \( 0 + a = a \), \( a\cdot 1 = a \), \( 1 \cdot a = a \), \( a - a = 0 \), \( a - 0 = a \), \( 2 \cdot a = a + a \), \( ( - a) + a = 0 \)assumes \( x\in R \), \( y\in R \)
shows \( f(x - _Ry) = (f(x)) - _S(f(y)) \)assumes \( a\in R \), \( b\in R \)
shows \( a + b \in R \), \( a - b \in R \), \( a\cdot b \in R \), \( a + b = b + a \)assumes \( I \triangleleft R \), \( x\in I \), \( y\in I \)
shows \( x + y \in I \)assumes \( a\in R \), \( b\in R \)
shows \( a - b + b = a \), \( a + b - a = b \), \( ( - a) + b + a = b \), \( ( - a) + (b + a) = b \), \( a + (b - a) = b \)assumes \( f:X\rightarrow Y \)
shows \( f(B) \subseteq \text{range}(f) \) and \( f(B) \subseteq Y \)assumes \( J\triangleleft R_t \), \( K\triangleleft R_t \), \( f\in \text{surj}(R,S) \)
shows \( f^{-1}(target\_ring.\ \text{productIdeal}(J, K)) = \) \( origin\_ring.\ \text{sumIdeal}(origin\_ring.\ \text{productIdeal}((f^{-1}(J)),(f^{-1}(K))), ker) \)assumes \( f \in \text{surj}(X,Y) \) and \( A\subseteq Y \)
shows \( f(f^{-1}(A)) = A \)assumes \( J\triangleleft R \), \( I \subseteq ker \), \( I\triangleleft R \)
shows \( f(J+_II) = f(J) \), \( f(I+_IJ) = f(J) \)assumes \( f:X\rightarrow Y \) and \( A\subseteq X \)
shows \( A \subseteq f^{-1}(f(A)) \)assumes \( J\triangleleft R_t \), \( K\triangleleft R_t \), \( f\in \text{surj}(R,S) \)
shows \( target\_ring.\ \text{productIdeal}(J, K) = \) \( f(origin\_ring.\ \text{productIdeal}((f^{-1}(J)), (f^{-1}(K)))) \)assumes \( J\triangleleft R_t \)
shows \( \text{IsAnormalSubgroup}(R,A,f^{-1}(J)) \), \( (f^{-1}(J))\triangleleft R_o \), \( ker \subseteq f^{-1}(J) \)assumes \( f:X\rightarrow Y \)
shows \( f^{-1}(D) \subseteq X \)assumes \( f:X\rightarrow Y \) and \( Y\subseteq Z \)
shows \( f:X\rightarrow Z \)assumes \( f\in \text{surj}(R,S) \)
defines \( idealFun \equiv \lambda J\in target\_ring.\ ideals.\ f^{-1}(J) \)
shows \( idealFun \in \text{bij}(target\_ring.\ ideals,\{K\in \mathcal{I} .\ ker \subseteq K\}) \)assumes \( J\triangleleft _pR_t \), \( f \in \text{surj}(R,S) \)
shows \( (f^{-1}(J))\triangleleft _pR_o \)assumes \( f:X\rightarrow Y \)
shows \( f^{-1}(Y) = X \)assumes \( I\triangleleft R \) and \( J\triangleleft R \)
shows \( I \subseteq I+_IJ \) and \( J \subseteq I+_IJ \) and \( I\cup J \subseteq I+_IJ \)assumes \( K\triangleleft R_t \), \( f \in \text{surj}(R,S) \)
shows \( K\triangleleft _pR_t \longleftrightarrow ((f^{-1}(K))\triangleleft _pR) \)assumes \( f \in \text{bij}(X,Y) \), \( A\subseteq X \), \( y\in Y \)
shows \( y\in f(A) \longleftrightarrow converse(f)(y) \in A \)