Equivalence relation in construction of Grothendieck group Sorry if this has been asked before but I couldn't find the question I have.
Yesterday I read the wikipedia page for a Grothendieck group. It provided two explicit constructions given a commutative monoid $M$. One construction was taking the cartesion product of $M$, defining an equivalence relation on this cartesion product and defining an operation between the equivalence classes. The equivalence relation says $(m_1,m_2)\sim (n_1,n_2)$ iff $m_1+n_2+k=m_2+n_1+k$ for some $k\in M$. It then notes the element $k$ is necessary because the cancellation doesn't necessarily hold on an arbitrary commutative monoid $M$. I didn't understand this comment.
So I tried to create an example with a commutative monoid that doesn't have the cancellation law. I took $\mathbb{R}$ with multiplication as my operation, and my equivalence relation without the element $k$, so I could see what fails. For any $x,y\in \mathbb{R}$ we have that $x*0=0*y$ where $x$ and $y$ could be different elements. Therefore for any $x,y\in\mathbb{R}$ we have $(x,0)\sim(y,0)$.I saw this prevents us from having an inverse element for the equivalence class of these elements. We have that $[(1,1)]$ is the identity of the "group" and we're suppose to have $[(0,x)]$ be the inverse element of $[(x,0)]$, however $$[(x,0)]*[(0,x)]=[(x*0,0*x)]=[(0*0)]$$
Then I immediately realized everything fails because the relation I use isn't even an equivalence relation. For any $x\in \mathbb{R}$ we have $(x,0)\sim (0,0)$ and $(0,0)\sim(0,x)$ but we don't always have $(x,0)\not\sim(0,x)$.
I still don't see how involving an element $k$ saves all of this though. If I take the equivalence relation defined in the wikipedia instead, then with $k=0$ we do have $(x,0)\sim(0,x)$ since $x*x*0=0*0*0$. But what about the inverse elements then? What would be the inverse of $[(0,x)]$ ? Since now we have that $[(0,x)]=[(x,0)]$. Did I do something wrong? Did I overlook anything?
 A: The idea behind creating a group from a commutative monoid comes from how you can go from the natural numbers to the integers.
For any integer $n\in\mathbb Z$, you have a "positive part" $n^+ := \max(n,0)$ and a "negative part" $n^- := \min(n,0)$, and from this we always have the identity $n = n^+ - n^-$, and both of these will be natural numbers.
Since a number is completely characterised by its positive and negative parts this way, we can instead think of $\mathbb Z$ as a set of ordered pairs $(a,b)$ for $a,b\in\mathbb N$, where the pair $(a,b)$ corresponds to the integer $a-b$.
In this way, addition in $\mathbb Z$ is induced by arithmetic in $\mathbb N$: since $(a-b)+(a'-b') = (a+a')-(b+b')$, the addition on ordered pairs should just be given pointwise.
The only problem remaining now is that there are many pairs that represent the same integer.
We can remedy this by observing that $a-b=a'-b'$ iff $a+b'=a'+b$, so this is how we invoke an equivalence relation on pairs of natural numbers: $(a,b)\sim(a',b')$ iff $a+b'=a'+b$. With all this structure, $(\mathbb N\times\mathbb N)/(\sim)$ will be an abelian group that is isomorphic to $\mathbb Z$.
Now, like the wikipedia article mentioned, we can almost do the same thing for an arbitrary commutative monoid $M$. By starting with ordered pairs $(m,n)\in M\times M$, the intuition is that $(m,n)$ "$=$" $m-n$. The problem, however, is that saying $(m,n)\sim(m',n')$ iff $m+n'=m'+n$ may not be an equivalence relation, and the issue here is in transitivity.
Suppose $(m,n)\sim(m',n')$ and $(m',n')\sim(m'',n'')$, then we have $m+n'=m'+n$ and $m'+n''=m''+n'$. For this to imply $(m,n)\sim(m'',n'')$, we need a cancellation law: this way, we can say
$$
m+n''+m' = m+(m'+n'') = m+(m''+n') = (m+n')+m'' = (m'+n)+m'' = m''+n+m
$$
and so by cancelling $m'$ we deduce $m+n''=m''+n$ and thus $(m,n'')\sim(m'',n)$.
In a general commutative monoid, since we may not have cancellation, we have to adapt the definition to allow us to "put $m'$ there" in my above argument. Therefore, they introduce an element $k$ to serve this role.
Now, let's look at your example of the multiplicative monoid on $\mathbb R$. The goal is to make $\mathbb R$ into a group by providing inverses where we need them. As you noticed, the problem lies in the existence of an annihilator $0$, which is capable of killing everything in $\mathbb R$. Note that in comparison, if we remove $0$, we actually already get a group, called the group of units $\mathbb R^\times$. However, the Grothendieck group aims to not remove any elements of $\mathbb R$, at whatever the cost.
Unfortunately, the cost is everything: the resulting group will be trivial. For any $x,y\in\mathbb R$, we will have $(x,y)\sim(0,0)$ because by setting $k=0$ we get $x\cdot0\cdot0=0\cdot y\cdot0$.
Why? The problem is that inverting $0$ is destructive. Recall that we should think of the ordered pair $(x,y)$ as $xy^{-1}$ (since the operator here is multiplication rather than addition), so let's think about the element $(1,0)$.
We can interpret this element as $0^{-1}$, since it exists to serve as an inverse to $0$ in the Grothendieck group, but since $0\cdot x=0$ for any $x$, having an inverse for zero will give the equations $0 = 0\cdot x = 0^{-1}\cdot 0\cdot x = 1\cdot x=x$, which implies that $x=0$ for all $x$ in the Grothendieck group!
I know this was a very long answer, but I hope this is helpful.
