  The problem of gathering multiple mobile robots to a single location, is one
of the fundamental problems in distributed coordination between autonomous
robots. The problem has been studied and solved even for robots that are
anonymous, disoriented, memoryless and operate in the semi-synchronous (ATOM)
model. However all known solutions require the robots to be faulty-free except
for the results of [Agmon and Peleg 2006] who solve the gathering problem in
presence of one crash fault. This leaves open the question of whether gathering
of correct robots can be achieved in the presence of multiple crash failures.
We resolve the question in this paper and show how to solve gathering, when any
number of robots may crash at any time during the algorithm, assuming strong
multiplicity detection and chirality. In contrast it is known that for the more
stronger byzantine faults, it is impossible to gather even in a 3-robot system
if one robot is faulty. Our algorithm solves the gathering of correct robots in
the semi-synchronous model where an adversary may stop any robot before
reaching its desired destination. Further the algorithm is self-stabilizing as
it achieves gathering starting from any configuration (except the bivalent
configuration where deterministic gathering is impossible).
