A network-conscious ?-calculus and its coalgebraic semantics ?
Traditional process calculi usually abstract away from network details, modeling only communication over shared channels. They, however, seem inadequate to describe new network architectures, such as Software Defined Networks, where programs are allowed to manipulate the infrastructure. In this paper we present the Network Conscious ?-calculus ( NCPi), a proper extension of the ?-calculus with an explicit notion of network: network links and nodes are represented as names, in full analogy with ordinary ?-calculus names, and observations are routing paths through which data is transported. However, restricted links do not appear in the observations, which thus can possibly be as abstract as in the ?-calculus. Then we construct a presheaf-based coalgebraic semantics for NCPi along the lines of TuriPlotkin's approach, by indexing processes with the network resources they use: we give a model for observational equivalence in this context, and we prove that it admits an equivalent nominal automaton (HD-automaton), suitable for verification. Finally, we give a concurrent semantics for NCPi where observations are multisets of routing paths. We show that bisimilarity for this semantics is a congruence, and this property holds also for the concurrent version of the ?-calculus.
?-calculus coalgebras concurrent semantics network-awareness presheaves