Constructive characterisations of the must-preorder for asynchrony
Résumé
De Nicola and Hennessy's must-preorder is a contextual refinement which states
that a server q refines a server p if all clients satisfied
by p are also satisfied by q. Owing to the universal
quantification over clients, this definition does not yied a practical proof
method for the must-preorder, and alternative characterisations are necessary
to reason on it.
We present the first characterisations of the must-preorder
that are constructive, supported by a mechanisation in Coq,
and independent from any calculus:
our results pertain to Selinger output-buffered
agents with feedback. This is a class of Labelled Transition Systems
that captures programs that communicate asynchronously via
a shared unordered buffer, as in the asynchronous pi-calculus.
Our results are surprising: the behavioural characterisations
devised for synchronous communication carry over as they stand
to asynchronous communication, if servers are enhanced to act as forwarders,
i.e. they can input any message as long as they
store it back into the shared buffer.
This suggests a technique to port standard characterisations from synchronous to
asynchronous settings.
Mots clés
2012 ACM Subject Classification Program verification Constructive mathematics Operational semantics Keywords and phrases Software Verification Observational equivalence Asynchrony Digital Object Identifier 10.4230/LIPIcs
2012 ACM Subject Classification Program verification
Constructive mathematics
Operational semantics Keywords and phrases Software Verification
Observational equivalence
Asynchrony Digital Object Identifier 10.4230/LIPIcs
Origine | Fichiers produits par l'(les) auteur(s) |
---|---|
licence |