Linearizability is a consistency condition for concurrent objects (objects 
shared by concurrent processes) that exploits the semantics of abstract 
data types. It provides the illusion that each operation applied by 
concurrent processes takes effect instantaneously at some point between 
the beginning and the end of its execution. When compared with other 
consistency conditions (such as sequential consistency) Linearizability satisfies the
Locality property (i.e, a system is linearizable if each object taken 
individually is linearizable) and the Non-Blocking property (i.e.,
termination of an invoked operation does not depend on other pending 
invocations). Those are noteworthy properties as they allow
concurrent systems to be designed and constructed in a modular fashion.

This paper introduces a consistency condition called Normality that is 
less constraining than Linearizability (in the sense it does not refer to a 
global real-time order) and still satisfies Locality and Non-Blocking. 
As it does not refer to a global real-time, Normality is 
well-suited to objects supported by asynchronous distributed systems and 
can consequently be seen as an adaptation of Linearizability for these systems.