  There exists a broad family of multiparty sessions in which the progress of
one session participant is not unconditional, but depends on the choices
performed by other participants. These sessions fall outside the scope of
currently available session type systems that guarantee progress. In this work
we propose the first type system ensuring that well-typed multiparty sessions,
including those exhibiting the aforementioned dependencies, fairly terminate.
Fair termination is termination under a fairness assumption that disregards
those interactions deemed unfair and therefore unrealistic. Fair termination,
combined with the usual safety properties ensured within sessions, not only is
desirable per se, but it entails progress and enables a compositional form of
static analysis such that the well-typed composition of fairly terminating
sessions results in a fairly terminating program.
