Since P is closed it means that it does not communicate with any context C[·] it is inserted in means that reductions have occurred either in the catalyser C or in P, separately. Let now Since P is lock-free, by definition P ? * P i and for some n ? i, P i ? * P n and P n has both action and co-action on some channels ,
In particular, this holds also for the empty catalyser Here we can assume, without any loss of generality (the other cases are trivial) that R is an input or an output process. Furthermore, we know that there existy} R ? for some x and y such that (?xy) is a restriction in Since P is closed, P i is also closed and this means that it does not communicate with any catalyser it is inserted in means that reductions have occurred either in the catalyser C ? or in E[R], separately, Notice that R is part of E[R] ? P i , and since R occurs in the redex E ? [R][R ? ] together with its counterpart R ? , it means that P i ? * P n where P n is a subprocess of E ? [R][R ? ], and the communication occurs over (?xy). We conclude by applying the definition of lock-freedom. It follows as a corollary from Theorems 14.3.1 and 14.3.2 that the lockfreedom and progress properties coincide for closed terms ,
A system for compositional verification of asynchronous objects, Science of Computer Programming, vol.77, issue.12, pp.1289-1309, 2012. ,
DOI : 10.1016/j.scico.2010.08.003
Analysis of May-Happen-in-Parallel in Concurrent Objects, FMOODS/FORTE, pp.35-51, 2012. ,
DOI : 10.1007/978-3-642-30793-5_3
Osgi Service Platform, Release 3, 2003. ,
Foundations of Multithreaded, Parallel, and Distributed Programming, 2000. ,
The Lambda Calculus: Its Syntax and Semantics, 1984. ,
Managing Dynamic Reconfiguration in Component-Based Systems, Proceedings of the 2nd European conference on Software Architecture, EWSA'05, pp.1-17, 2005. ,
DOI : 10.1007/11494713_1
On Duality Relations for Session Types, 2014. ,
DOI : 10.1007/978-3-662-45917-1_4
Using higher-order contracts to model session types. CoRR, abs, 1310. ,
DOI : 10.2168/lmcs-12(2:10)2016
URL : http://arxiv.org/abs/1310.6176
Global Progress in Dynamically Interleaved Multiparty Sessions, In CONCUR, pp.418-433, 2008. ,
DOI : 10.1007/978-3-540-85361-9_33
Coyote: a system for constructing fine-grain configurable communication services, ACM Transactions on Computer Systems, vol.16, issue.4, 1998. ,
DOI : 10.1145/292523.292524
A calculus for concurrent objects, In CONCUR, pp.655-670, 1996. ,
DOI : 10.1007/3-540-61604-7_82
A complete guide to the future, Proc. 16th European Symposium on Programming, pp.316-330, 2007. ,
The fractal component model and its support in java. Software -Practice and Experience, pp.11-12, 2006. ,
Behavioral Polymorphism and Parametricity in Session-Based Communication, ESOP, pp.330-349, 2013. ,
DOI : 10.1007/978-3-642-37036-6_19
Session Types as Intuitionistic Linear Propositions, In CONCUR, pp.222-236, 2010. ,
DOI : 10.1007/978-3-642-15375-4_16
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.170.96
Conversation types, ESOP'09, pp.285-300, 2009. ,
Amalgamating sessions and methods in object-oriented languages with generics, Ornela Dardha, and Fabrizio Montesi. Progress as compositional lock-freedom. To appear in Proc. of COORDINATION 2014, pp.142-167, 2009. ,
DOI : 10.1016/j.tcs.2008.09.016
A Graphical Approach to Progress for Structured Communication in Web Services, Proc. of ICE'10, pp.13-27, 2010. ,
DOI : 10.4204/EPTCS.38.4
Structured Communication-Centred Programming for Web Services, Proc. of ESOP, pp.2-17, 2007. ,
DOI : 10.1007/978-3-540-71316-6_2
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.107.902
Deadlock-freedom-by-design: multiparty asynchronous global programming, POPL, pp.263-274, 2013. ,
URL : https://hal.archives-ouvertes.fr/hal-00909320
Types for the Ambient Calculus, Information and Computation, vol.177, issue.2, pp.160-194, 2002. ,
DOI : 10.1016/S0890-5401(01)93121-9
Mobile ambients, Theoretical Computer Science, vol.240, issue.1, pp.177-213, 2000. ,
DOI : 10.1016/S0304-3975(99)00231-5
URL : http://doi.org/10.1016/s0304-3975(99)00231-5
Asynchronous and deterministic objects, ACM SIGPLAN Notices, vol.39, issue.1, pp.123-134, 2004. ,
DOI : 10.1145/982962.964012
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.2.9095
Ownership types for flexible alias protection, OOPSLA, pp.48-64, 1998. ,
Global progress for dynamically interleaved multiparty sessions (long version), 2008. ,
Weak and strong fairness in CCS, Information and Computation, vol.73, issue.3, pp.207-244, 1987. ,
DOI : 10.1016/0890-5401(87)90013-7
A generic component model for building systems software, Proc. IASTED Software Engineering and Applications (SEA'04), 2004. ,
DOI : 10.1145/1328671.1328672
A type system for components, SEFM, pp.167-181, 2013. ,
URL : https://hal.archives-ouvertes.fr/hal-00909310
Session types revisited, PPDP, pp.139-150, 2012. ,
DOI : 10.1145/2370776.2370794
URL : https://hal.archives-ouvertes.fr/hal-00909389
Semantic subtyping for objects and classes, pp.66-82, 2013. ,
URL : https://hal.archives-ouvertes.fr/hal-00909299
Full abstraction in a subtyped picalculus with linear types, CONCUR'11, pp.280-296, 2011. ,
Ensuring termination by typability, Information and Computation, vol.204, issue.7, pp.1045-1082, 2006. ,
DOI : 10.1016/j.ic.2006.03.002
URL : https://hal.archives-ouvertes.fr/hal-00159679
Dynamic multirole session types, Proc. of POPL, pp.435-446, 2011. ,
Sessions and Session Types: An Overview, Proc. of the 6th International Workshop on Web Service and Formal Methods (WS-FM'09), 2009. ,
DOI : 10.1007/978-3-642-14458-5_1
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.212.5293
On Progress for Structured Communications, TGC, pp.257-275, 2007. ,
DOI : 10.1007/978-3-540-78663-4_18
Bounded Session Types for Object Oriented Languages, FMCO, pp.207-245, 2006. ,
DOI : 10.1007/978-3-540-74792-5_10
Session Types for Object-Oriented Languages, Proc. of the 20th European Conference on Object-Oriented Programming, pp.328-352, 2006. ,
DOI : 10.1007/11785477_20
A Distributed Object-Oriented Language with Session Types, TGC, pp.299-318, 2005. ,
DOI : 10.1007/11580850_16
Handbook of theoretical computer science chapter Temporal and modal logic Semantic casts: Contracts and structural subtyping in a nominal world, ECOOP, pp.995-1072, 1990. ,
Subtyping for session types in the pi calculus, Acta Informatica, vol.Analysis, issue.1, pp.191-225, 2005. ,
DOI : 10.1007/s00236-005-0177-z
Bounded polymorphism in session types, Mathematical Structures in Computer Science, vol.715, issue.05, pp.895-930, 2008. ,
DOI : 10.1145/337244.337261
Session Types as Generic Process Types, PLACES'08, 2008. ,
DOI : 10.4204/EPTCS.160.9
URL : https://hal.archives-ouvertes.fr/hal-01102349
António Ravara, and Vasco Thudichum Vasconcelos . Modular session types for objects. CoRR, abs/1205, 2012. ,
Linear type theory for asynchronous session types, J. Funct. Program, vol.20, issue.1, pp.19-50, 2010. ,
Deadlock Analysis of Concurrent Objects: Theory and Practice, In IFM, pp.394-411, 2013. ,
DOI : 10.1007/978-3-642-38613-8_27
URL : https://hal.archives-ouvertes.fr/hal-00909311
Lock Analysis for an Asynchronous Object Calculus. Presented at ICTCS. Available at http://www.cs. unibo.it, p.2012 ,
Whiteoak, ACM SIGPLAN Notices, vol.43, issue.10, pp.73-90, 2008. ,
DOI : 10.1145/1449955.1449771
Towards a unified approach to encodability and separation results for process calculi, In CONCUR, pp.492-507, 2008. ,
Scala Actors: Unifying thread-based and event-based programming, Theoretical Computer Science, vol.410, issue.2-3, 2008. ,
DOI : 10.1016/j.tcs.2008.09.019
URL : http://doi.org/10.1016/j.tcs.2008.09.019
Monitors: an operating system structuring concept, Communications of the ACM, vol.17, issue.10, pp.549-557, 1974. ,
DOI : 10.1145/355620.361161
The geneva convention ? on the treatment of object aliasing, 1992. ,
Language primitives and type discipline for structured communication-based programming, ESOP'98, pp.22-138, 1998. ,
DOI : 10.1007/BFb0053567
Multiparty asynchronous session types, Proc. of POPL, pp.273-284, 2008. ,
A generic type system for the Pi-calculus, Theoretical Computer Science, vol.311, issue.1-3, pp.121-163, 2004. ,
DOI : 10.1016/S0304-3975(03)00325-6
Featherweight Java: a minimal core calculus for Java and GJ, ACM Transactions on Programming Languages and Systems, vol.23, issue.3, pp.396-450, 2001. ,
DOI : 10.1145/503502.503505
ABS: A Core Language for Abstract Behavioral Specification, FMCO'10, pp.142-164, 2012. ,
DOI : 10.2498/cit.2002.01.01
An asynchronous communication model for distributed concurrent objects. Software and System Modeling, pp.39-58, 2007. ,
Creol: A type-safe object-oriented model for distributed concurrent systems, Theoretical Computer Science, vol.365, issue.1-2, pp.23-66, 2006. ,
DOI : 10.1016/j.tcs.2006.07.031
A partially deadlock-free typed process calculus, ACM Transactions on Programming Languages and Systems, vol.20, issue.2, pp.436-482, 1998. ,
DOI : 10.1145/276393.278524
Type Systems for Concurrent Processes: From Deadlock-Freedom to Livelock-Freedom, Time-Boundedness, IFIP TCS, pp.365-389, 2000. ,
DOI : 10.1007/3-540-44929-9_27
A Type System for Lock-Free Processes, 66] Naoki Kobayashi 10th Anniversary Colloquium of UNU/IIST, pp.122-159, 2002. ,
DOI : 10.1016/S0890-5401(02)93171-8
Type-based information flow analysis for the pi-calculus ,
A New Type System for Deadlock-Free Processes, In CONCUR, pp.233-247, 2006. ,
DOI : 10.1007/11817949_16
Type systems for concurrent programs. Extended version of, 2007. ,
DOI : 10.1007/978-3-540-40007-3_26
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.105.24
Linear types and ?-calculus, POPL, pp.358-371, 1996. ,
An Implicitly-Typed Deadlock-Free Process Calculus, In CONCUR, pp.489-503, 2000. ,
DOI : 10.1007/3-540-44618-4_35
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.12.3615
A hybrid type system for lockfreedom of mobile processes, ACM Trans. Program. Lang. Syst, vol.32, issue.5, 2010. ,
The click modular router, ACM Transactions on Computer Systems, vol.18, issue.3, pp.263-297, 2000. ,
DOI : 10.1145/354871.354874
Modeling dynamic reconfigurations in Reo using high-level replacement systems, Science of Computer Programming, vol.76, issue.1, pp.23-36, 2011. ,
DOI : 10.1016/j.scico.2009.10.006
An object groupbased component model, pp.64-78, 2012. ,
DOI : 10.1007/978-3-642-34026-0_6
URL : https://hal.archives-ouvertes.fr/hal-00909382
A Component Model for the ABS Language, Proceedings of the 9th international conference on Formal Methods for Components and Objects, FMCO, pp.165-183, 2011. ,
DOI : 10.1007/3-540-45694-5_20
Oz/K, Proceedings of the 6th international conference on Generative programming and component engineering , GPCE '07, pp.43-52, 2007. ,
DOI : 10.1145/1289971.1289980
URL : https://hal.archives-ouvertes.fr/inria-00149612
Polymorphic effect systems, Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '88, pp.47-57, 1988. ,
DOI : 10.1145/73560.73564
Integrating Nominal and Structural Subtyping, ECOOP, pp.260-284, 2008. ,
DOI : 10.1007/978-3-540-70592-5_12
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.124.7120
Is Structural Subtyping Useful? An Empirical Study, ESOP, pp.95-111, 2009. ,
DOI : 10.1007/978-3-642-00590-9_8
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.150.3105
A Calculus of Communicating Systems, Lecture Notes in Computer Science, vol.92, 1980. ,
DOI : 10.1007/3-540-10235-3
Communication and Concurrency, 1989. ,
Communicating and Mobile Systems: the ?-Calculus, 1999. ,
Appia, a flexible protocol kernel supporting multiple coordinated channels, Proceedings 21st International Conference on Distributed Computing Systems, 2001. ,
DOI : 10.1109/ICDSC.2001.919005
Programming Services with Correlation Sets, ICSOC, pp.125-141, 2011. ,
DOI : 10.1007/978-3-540-68265-3_13
Service-Oriented Programming with Jolie, Web Services Foundations, pp.81-107 ,
DOI : 10.1007/978-1-4614-7518-7_4
URL : https://hal.archives-ouvertes.fr/hal-00909323
A Model of Evolvable Components, TGC, pp.153-171, 2010. ,
DOI : 10.1007/978-3-642-15640-3_11
Two Session Typing Systems for Higher-Order Mobile Processes, TLCA, pp.321-335, 2007. ,
DOI : 10.1007/978-3-540-73228-0_23
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.67.1378
History's worst software bugs, 2005. ,
Nominal and Structural Subtyping in Component-Based Programming., The Journal of Object Technology, vol.7, issue.1, pp.121-145, 2008. ,
DOI : 10.5381/jot.2008.7.1.a4
From Lock Freedom to Progress Using Session Types, Proc. of PLACES, 2013. ,
DOI : 10.4204/EPTCS.137.2
Recursion vs replication in process calculi: Expressiveness. Bulletin of the European Association for Theoretical Computer Science, pp.105-125, 2005. ,
URL : https://hal.archives-ouvertes.fr/inria-00201158
Linear Logical Relations for Session-Based Concurrency, ESOP'12, pp.539-558, 2012. ,
DOI : 10.1007/978-3-642-28869-2_27
Types and programming languages, 2002. ,
Typing and subtyping for mobile processes, LICS'93, pp.376-385, 1993. ,
An Interpretation of Typed Objects into Typed??-Calculus, Information and Computation, vol.143, issue.1, pp.34-73, 1998. ,
DOI : 10.1006/inco.1998.2711
URL : https://hal.archives-ouvertes.fr/inria-00073696
Termination of processes, Mathematical Structures in Computer Science, vol.16, issue.01, pp.1-39, 2006. ,
DOI : 10.1017/S0960129505004810
The ?-calculus: a Theory of Mobile Processes, 2001. ,
JCoBox: Generalizing Active Objects to Concurrent Components, Proceedings of the 24th European conference on Object-oriented programming, ECOOP, pp.275-299, 2010. ,
DOI : 10.1007/978-3-642-14107-2_13
Component Software, 2002. ,
An interaction-based language and its typing system, PARLE'94, pp.398-413, 1994. ,
DOI : 10.1007/3-540-58184-7_118
Functions as sessiontyped processes, FoSSaCS'12, pp.346-360, 2012. ,
Typing the behavior of software components using session types, Fundam. Inform, vol.73, issue.4, pp.583-598, 2006. ,
Session Types for Functional Multithreading, Proc. of the 15th International Conference on Concurrency Theory, pp.497-511, 2004. ,
DOI : 10.1145/363911.363923
Fundamentals of session types, Information Computation, vol.217, pp.52-70, 2012. ,
Fundamentals of session types, SFM, pp.158-186, 2009. ,
Type checking a multithreaded functional language with session types, Theoretical Computer Science, vol.368, issue.1-2, pp.64-87, 2006. ,
DOI : 10.1016/j.tcs.2006.06.028
The Conversation Calculus: A Model of Service-Oriented Computation, ESOP'08, pp.269-283, 2008. ,
DOI : 10.1007/978-3-540-78739-6_21
Propositions as sessions Safe futures for java, ICFP OOPSLA, pp.273-286, 2005. ,
Location types for safe distributed objectoriented programming, TOOLS (49), pp.194-210, 2011. ,
DOI : 10.1007/978-3-642-21952-8_15
A syntactic approach to type soundness, Inf. Comput, vol.115, issue.1, pp.38-94, 1994. ,
Strong normalisation in the ??-calculus, Information and Computation, vol.191, issue.2, pp.145-202, 2004. ,
DOI : 10.1016/j.ic.2003.08.004
Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication, Electronic Notes in Theoretical Computer Science, vol.171, issue.4, pp.73-93, 2007. ,
DOI : 10.1016/j.entcs.2007.02.056