I am self-studying elementary abstract algebra over the summer, with the book "Abstract Algebra: An Introduction" by Hungerford. It's my first exposure to mathematical proofs (well, short of an introduction in my intro to discrete mathematics), so sometimes I'm not really sure I do everything right in an exercise, and have nobody to ask or verify my work. This is one of those exercises. It's pretty early in the section, and I seemed to have a bit trouble proving it, so I want to ask here if my proof is correct/how I could have made it easier. 1. The problem statement, all variables and given/known data If G is an abelian p-group and (n,p) = 1 prove that the map f: G -> G given by f(a) = na is an isomorphism. 2. Relevant equations 3. The attempt at a solution So what I need to prove in order for f to be an isomorphisms is that; 1. f is a homomorphism 2. f is injective 3. f is surjective Everything below is in custom additive notation. 1. This is trivial, as clearly f(a +b) = n(a + b) = a + b + ... + a + b = a + a + ... + a + b + .... + b = f(a) + f(b). Here I just used that in abelian groups, the operation defined is commutative. 2. Injectivenes I prove by the fact that (n,p) = 1, and since every element a of G has an order that is a power of p, na != 0 if a != 0. Therefore, we see that the kernel of the homomorphism is just the identity element, and a previous result in the book states that this happens if and only if f is injective. 3. Surjective Since for any element b that is in G, we know that the order of b is p^m for some integer m. Also, since (n,p) = 1, we know that (n, p^m) = 1. But that means that we have a solution in x,y to the equation (p^m)x + ny = 1. Multiplying by b I get b(p^m)x + bny = b. Now I use commutative law of the group and rewrite equation into: (bp^m)x + n(by) = b from which it follows that (since the first term becomes 0) n(by) = f(by) = b. It's the last part I'm a bit shaky about. Could someone tell me if this proof is correct, or in what way I should do it differently?