First-Order Dynamic Logic for Compensable Processes

  • Roberto Bruni
  • Carla Ferreira
  • Anne Kersten Kauer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7274)


Compensable programs offer a convenient paradigm to deal with long-running transactions, because they offer a structured and modular approach to the composition of distributed transactional activities, like services. The basic idea is that each activity has its own compensation and that the compensable program fixes the order of execution of such activities. The main problem is how to guarantee that if one or even many faults occur then the compensations are properly executed so to reach a consistent configuration of the system. We propose a formal model for such problems based on a concurrent extension of dynamic logic that allows us to distill the hypothesis under which the correctness of compensable programs can be ensured. The main result establishes that if basic activities have a correct compensation we can show the correctness of any compound compensable program. Moreover, we can use dynamic logic to reason about behavioural and transactional properties of programs.


Basic Activity Parallel Composition Concurrent Program Deontic Logic Dynamic Logic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Benevides, M.R.F., Schechter, L.M.: A Propositional Dynamic Logic for CCS Programs. In: Hodges, W., de Queiroz, R. (eds.) WOLLIC 2008. LNCS (LNAI), vol. 5110, pp. 83–97. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Bravetti, M., Zavattaro, G.: On the expressive power of process interruption and compensation. Math. Struct. in Comput. Sci. 19(3), 565–599 (2009)MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Broersen, J.: Modal Action Logics for Reasoning about Reactive Systems. PhD thesis, Faculteit der Exacte Wetenschappen, Vrije Universiteit Amsterdam (2003)Google Scholar
  4. 4.
    Broersen, J., Wieringa, R., Meyer, J.-J.: A fixed-point characterization of a deontic logic of regular action. Fundamenta Informaticae 48(2-3), 107–128 (2001)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Bruni, R., Melgratti, H., Montanari, U.: Nested Commits for Mobile Calculi: Extending Join. In: Levy, J.-J., Mayr, E.W., Mitchell, J.C. (eds.) TCS 2004. IFIP AICT, vol. 155, pp. 563–576. Kluwer Academics (2004)Google Scholar
  6. 6.
    Bruni, R., Melgratti, H., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Palsberg, J., Abadi, M. (eds.) POPL 2005, pp. 209–220. ACM (2005)Google Scholar
  7. 7.
    Butler, M., Ferreira, C.: A Process Compensation Language. In: Grieskamp, W., Santen, T., Stoddart, B. (eds.) IFM 2000. LNCS, vol. 1945, pp. 61–76. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  8. 8.
    Butler, M., Hoare, C., Ferreira, C.: A Trace Semantics for Long-Running Transactions. In: Abdallah, A.E., Jones, C.B., Sanders, J.W. (eds.) Communicating Sequential Processes. The First 25 Years. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Caires, L., Ferreira, C., Vieira, H.: A Process Calculus Analysis of Compensations. In: Kaklamanis, C., Nielson, F. (eds.) TGC 2008. LNCS, vol. 5474, pp. 87–103. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Castro, P., Maibaum, T.S.E.: Deontic action logic, atomic boolean algebras and fault-tolerance. Journal of Applied Logic 7(4), 441–466 (2009)MathSciNetzbMATHCrossRefGoogle Scholar
  11. 11.
    Danos, V., Krivine, J.: Reversible Communicating Systems. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 292–307. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  12. 12.
    de Vries, E., Koutavas, V., Hennessy, M.: Communicating Transactions - (Extended Abstract). In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 569–583. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  13. 13.
    Eisentraut, C., Spieler, D.: Fault, Compensation and Termination in WS-BPEL 2.0 — A Comparative Analysis. In: Bruni, R., Wolf, K. (eds.) WS-FM 2008. LNCS, vol. 5387, pp. 107–126. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  14. 14.
    Harel, D.: First-Order Dynamic Logic. LNCS, vol. 68. Springer, Heidelberg (1979)zbMATHCrossRefGoogle Scholar
  15. 15.
    Harel, D., Kozen, D., Tiuryn, J.: Dynamic logic. In: Handbook of Philosophical Logic, pp. 497–604. MIT Press (1984)Google Scholar
  16. 16.
    Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)CrossRefGoogle Scholar
  17. 17.
    Lanese, I., Mezzina, C.A., Stefani, J.-B.: Reversing Higher-Order Pi. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 478–493. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Lucchi, R., Mazzara, M.: A pi-calculus based semantics for WS-BPEL. J. Log. Algebr. Program. 70(1), 96–118 (2007)MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    Mazzara, M., Lanese, I.: Towards a Unifying Theory for Web Services Composition. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 257–272. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  20. 20.
    Meyer, J.-J.: A different approach to deontic logic: Deontic logic viewed as a variant of dynamic logic. Notre Dame Journal of Formal Logic 29, 109–136 (1988)MathSciNetzbMATHCrossRefGoogle Scholar
  21. 21.
  22. 22.
    Papadimitriou, C.H.: The serializability of concurrent database updates. J. ACM 26(4), 631–653 (1979)MathSciNetzbMATHCrossRefGoogle Scholar
  23. 23.
    Peleg, D.: Concurrent dynamic logic. J. ACM 34, 450–479 (1987)MathSciNetzbMATHCrossRefGoogle Scholar
  24. 24.
    Van Der Meyden, R.: The dynamic logic of permission. Journal of Logic and Computation 6, 465–479 (1996)MathSciNetzbMATHCrossRefGoogle Scholar
  25. 25.
    Vaz, C., Ferreira, C.: Towards Compensation Correctness in Interactive Systems. In: Laneve, C., Su, J. (eds.) WS-FM 2009. LNCS, vol. 6194, pp. 161–177. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  26. 26.
    Vaz, C., Ferreira, C., Ravara, A.: Dynamic Recovering of Long Running Transactions. In: Kaklamanis, C., Nielson, F. (eds.) TGC 2008. LNCS, vol. 5474, pp. 201–215. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  27. 27.
    Von Wright, G.: I. deontic logic. Mind LX(237), 1–15 (1951)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2012

Authors and Affiliations

  • Roberto Bruni
    • 1
  • Carla Ferreira
    • 2
  • Anne Kersten Kauer
    • 3
  1. 1.Department of Computer ScienceUniversity of PisaItaly
  2. 2.CITI / Departamento de Informática, Faculdade de Ciências e TecnologiaUniversidade Nova de LisboaPortugal
  3. 3.IMT Institute for Advanced StudiesLuccaItaly

Personalised recommendations