I've seen the definition of a group in many different books given as follows:
A group is a nonempty set $G$ and a binary operation $*$, denoted by $(G,*)$ that satisfies the following properties:
- For every $a$, $b$, and $c$ in $G$, $(a*b)*c=a*(b*c)$;
- There exists $e$ in $G$ such that for every $a$ in $G$, $a*e=a$;
- For every $a$ in $G$, there exists $b$ in $G$ such that $a*b=e$.
I would just like to clean this up and put it in predicate logic properly. I have not seen this done in any book. When I try to do this myself, I feel like I'm opening Pandora's box! Here is how I have reasoned about this important definition:
Let $G$ be any nonempty set and form the set containing $G$ as the only element, $\{G\}$. Now let $*$ be set of all functions from $G\times G$ to $G$, so $*=\{\text{all functions } G\times G\rightarrow G\}$. Next, we take the Cartesian product of $\{G\} \times * = \{ (G,*_1), (G,*_2), (G,*_3),\dots\}$. So, basically we have set of ordered pairs where each ordered pair consists of a set and a function. It seems that we are interested in whether or not each ordered pair satisfies the above properties. Actually, it seems that for a particular ordered pair $(G, *_n)$ to be a group, it would only be dependent upon how the function is defined. Depending on the cardinality of $G$, there are many functions from $G\times G\rightarrow G$, and we know that not all of these would be groups, nevertheless, it seems that $(G,*)$ is group if $*$ satisfies the above properties.
So, I've tried to formulate the law of associativity using only ordered pairs. Here is what I have come up with:
For every $a$, $b$, $c$, $x$, $y$, $z$ in $G$ ($*$ is associative iff [$((a,b),x)$ in $*$ and $((x,c),y)$ in $*$ iff $((b,c),z)$ in $*$ and $((a,z),y)$ in $*$])
I know this looks ugly, but since $*$ is really just a set of ordered pairs where the first coordinate is also an ordered pair, I tried to translate For every $a$, $b$, $c$ in $G$, $(a*b)*c=a*(b*c)$ strictly into a statement with ordered pairs.
Anyway, I'm not sure about this formulation. For example, when we want to test if a relation $R$, on $S\times S$ is symmetric, we say for every $a$, $b$ in $S$, $R$ is symmetric iff $(a,b)$ in $R$ implies $(b,a)$ in R. The difference is technically $*$ is a relation on $(G\times G)\times G$ and to test for associativity I said for every $a$, $b$, $c$, $x$, $y$, $z$ in $G$. Can I do this since for symmetry, $R$ was a relation on $S\times S$ where the two sets are equal. On $(G\times G)\times G$ the two sets are not equal, so I don't know if this is correct.
Besides the issue with associativity, I'm not sure how to formulate the last two rules of groups in predicate logic and also I think we should include something about closure, perhaps.
I just want to have one long statement in predicate logic that correctly gives the definition of a group incorporating everything in the English version given above.
Any help would be appreciated. Thanks.