  There has been a wide interest in designing distributed algorithms for tiny
robots. In particular, it has been shown that the robots can complete certain
tasks even in the presence of faulty robots. In this paper, we focus on
gathering of all non-faulty robots at a single point in presence of faulty
robots. We propose a wait-free algorithm (i.e., no robot waits for other robot
and algorithm instructs each robot to move in every step, unless it is already
at the gathering location), that gathers all non-faulty robots in
semi-synchronous model without any agreement in the coordinate system and with
weak multiplicity detection (i.e., a robot can only detect that either there is
one or more robot at a location) in the presence of at most $n-1$ faulty robots
for $n\geqslant 3$. We show that the required capability for gathering robots
is minimal in the above model, since relaxing it further makes gathering
impossible to solve.
  Also, we introduce an intermediate scheduling model \textit{ASYNC$_{IC}$}
between the asynchronous ( i.e., no instantaneous movement or computation) and
the semi-synchronous (i.e., both instantaneous movement and computation) as the
asynchronous model with instantaneous computation. Then we propose another
algorithm in \textit{ASYNC$_{IC}$} model for gathering all non-faulty robots
with weak multiplicity detection without any agreement on the coordinate system
in the presence of at most $\lfloor n/2\rfloor-2$ faulty robots for $n\geqslant
7$.
