Hey, I had two separate questions. (When I say Z*(n) I'm denoting the multiplicative group of integers mod n, namely, the units of Z(n)) First off, I know that if n is prime, that Z*(n) is cyclic. But this is not a biconditional statement. Is there any theorem which tells me conditions under which Z*(n) is not cyclic? I can't just say n is not prime so Z*(n) is not cyclic. Right? Second question - if I know that Z*(n) is cyclic, then I know it has a generator. But other than going through each and every element and multiplying them out, is there an efficient way to find out which elements are generators? Also, in the case that Z*(n) isn't cyclic (like say Z*(12)) is there a way to find which element has the highest order? If anyone can point me to the proper theorems, I would be extremely grateful!