Abstract:A multiparty session formalises a set of concurrent communicating participants. We propose a type system for multiparty sessions where some communications between participants can be ignored. This allows us to type some sessions with global types representing interesting protocols, which have no type in the standard type systems. Our type system enjoys Subject Reduction, Session Fidelity and "partial" Lock-freedom. The last property ensures the absence of locks for participants with non ignored communications. A sound and complete type inference algorithm is also discussed.
What problem does this paper attempt to address?
The problem that this paper attempts to solve is: in multiparty sessions, how to design a type system so that the communication between some parties can be ignored while ensuring the P - excluded Lock - freedom of the system. Specifically, the author proposes a multiparty session type system of partial types, which allows certain protocols to be typed while these protocols cannot be typed in the standard type system. In addition, this system also ensures Subject Reduction, Session Fidelity and P - excluded Lock - freedom.
### Main problem summary:
1. **Communication omission in multiparty sessions**: How to design a type system so that the communication between some parties can be ignored.
2. **P - excluded Lock - freedom**: How to ensure that the communication of other parties will not fall into a deadlock or locked state when some parties are ignored.
### Background and motivation:
- In multiparty distributed systems, it is very important to ensure that the overall behavior of the system conforms to the given communication protocol, and to avoid type errors and ensure good communication properties (such as lock - freedom).
- The standard multiparty session type system (MPST) requires that the communication of all parties must strictly follow the global type, which is too strict in some cases and limits the flexibility of the system.
- For example, in some client / server scenarios, some servers may handle an infinite number of requests, resulting in the communication of some specific parties (such as servers) eventually no longer needing to continue, but this does not affect the normal communication of other parties.
### Solution:
- A multiparty session type system of partial types is proposed, which allows some communications to be ignored.
- The concept of P - excluded Lock - freedom is introduced, that is, for a certain set of parties \( P \), the system ensures that the parties not in \( P \) will not fall into a locked state.
- In this way, the communication of key parties can be ensured to proceed smoothly while maintaining the flexibility of the system.
### Technical contributions:
- A new type system is designed, which can derive judgments in the form of \( G\vdash_P M \), where \( G \) is the global type, \( M \) is the multiparty session, and \( P \) is the set of ignored parties.
- Several important properties of this type system are proved, including Subject Reduction, Session Fidelity and P - excluded Lock - freedom.
- The correctness and completeness of a type inference algorithm for the partial type system are discussed.
### Example:
The paper shows how to use the multiparty session type system of partial types to describe and analyze complex communication scenarios through an example of a social network. In this example, user \( p \) needs to request the administrator \( u \) to upgrade the communication permission, and the administrator decides whether to grant the permission according to certain rules. Once \( p \) obtains a higher communication permission, it can communicate at a more advanced level with other user \( q \). At this time, the administrator \( u \) no longer needs to continue processing \( p \)'s request, but the communication of other users can still proceed smoothly.
Through this partial - type type system, complex multiparty communication protocols can be described and verified more flexibly, while ensuring that the communication of key parties will not fall into a locked state.