Homework - Prove that a given set is a group I have a homework question and I don't know how to approach this exercise.
The exercise is the following:

Let's suppose $G$ is a set with binary function * defined for its members, which is:
  
  
*
  
*closings;
  
*associative;
  
*there's $e\in G$, so that $a\star e=a$ where $a\in G$;
  
*for each $a\in G$, there's a $b\in G$ so that $a\star b=e$.
  
  
  Prove that $G$ is a group.

I have no Idea how  approach this exercise.
pay attention that 3,4 are Noncommutative.
 A: First, let $a\in G$. By (4), there exists $b\in G$ such that $a*b=e$. Moreover, again by (4), there exists $c\in G$ such that $b*c=e$. Then:
$$a=a*e=a*(b*c)=(a*b)*c=e*c$$
And thus
$$b*a=b*(e*c)=(b*e)*c=b*c=e$$
Which proves the second direction of (4).
This proof is independent of the finiteness of $G$.
Now you should be able to complete the proof (you still need to show that $e*a=a$)
A: This result is true if $G$ is a finite set, indeed:
Fix $a\in G$ and define $\varphi_a:G\to G$, $x\mapsto x*a$ then if $\varphi_a(x)=x*a=\varphi_a(y)=y*a$ then multiply on RHS by $b$ and we find $x=y$ hence $\varphi_a$ is injective and by finite cardinality of $G$, $\varphi_a$ is bijective.
Now there's $b'\in G$ such that $\varphi_a(b')=b'*a=e$ and multiply on the RHS by $b$ we find $b'=b$ so $b*a=a*b=e$
Finaly there's $e'$ such that $\varphi_a(e')=e'*a=a$ then we multiply on the RHS by $b$ and we have $e'=e$ so $e*a=a*e=a$.
A: By assumption, $e$ is a right-neutral element for $*$ and, given $a\in G$, the element $a'\in G$ such that $a*a'=e$ is a right-inverse for $a$.
All what you have to prove is that $e$ is also a left-neutral element and that $a'$ is also a left inverse of $a$.
From $a*a'=e$ you can deduce:
$$e*(a*a')=e*e=e$$
and by associativity
$$(e*a)*a'=e=a*a'$$
Let $a''$ be the right-inverse of $a'$. Then 
$$[(e*a)*a']*a''=(a*a')*a''$$
Thus
$$(e*a)*(a'*a'')=a*(a'*a'')$$
$$(e*a)*e=a*e$$
$$e*a=a$$
Again from $a*a'=e$ you deduce
$$a'*(a*a')=a'*e$$
$$(a'*a)*a'=a'$$
$$[(a'*a)*a']*a''=a'*a''$$
$$(a'*a)*(a'*a'')=e$$
$$(a'*a)*e=e$$
$$a'*a=e$$
