Given an infinite cardinal $\kappa,$ is there some nice way to construct $2^\kappa$ non-isomorphic groups of that cardinality? In the answer to [this stackexchange question](https://math.stackexchange.com/questions/119642/how-many-non-isomorphic-abelian-groups-of-order-kappa-are-there-for-kappa), there is a fairly high-powered argument to show that that many (abelian) groups do exist, but it seems shocking that there is not a direct construction, like there is for $\aleph\_0.$ (by the way, I doubt that allowing arbitrary, instead of just abelian, groups helps that much, but one never knows.) This question came from a conversation with our own @Joel David Hamkins.



counting non-isomorphic groups of a given cardinality
If you just want a direct construction which avoids nontrivial set theory such as stationary sets etc., how about this?


Step One: For each subset $S \subseteq \kappa$, let $M(S)$ be the structure $\langle \kappa; < , S \rangle$, where $S$ is regarded as a unary relation. Obviously, if $S \neq T$, then $M(S)$ and $M(T)$ are non-isomorphic. 


Step Two: For each subset $S \subseteq \kappa$, encode $M(S)$ into a corresponding graph $\Gamma(S)$ so that if $S \neq T$, then $\Gamma(S)$ and $\Gamma(T)$ are non-isomorphic. (This is an easy exercise.)


Step Three: For each subset $S \subseteq \kappa$, encode the graph $\Gamma(S)$
into a suitable group $G(S)$ with generators $\Gamma(S)$ and relations $R(S)$ which encode the adjacency relation. (This can be done using small cancellation theory.)


