A Logical Approach to Data-Aware Automated Sequence Generation

  • Sylvain Hallé
  • Roger Villemaire
  • Omar Cherkaoui
  • Rudy Deca
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7050)


Automated sequence generation can be loosely defined as the algorithmic construction of a sequence of objects satisfying a set of constraints formulated declaratively. A variety of scenarios, ranging from self-configuration of network devices to automated testing of web services, can be described as automated sequence generation problems. In all these scenarios, the sequence of valid objects and their data contents are interdependent. Despite these similarities, most existing solutions for these scenarios consist of ad hoc, domain-specific tools. This paper stems from the observation that, when such “data-aware” constraints are expressed using mathematical logic, automated sequence generation becomes a case of satisfiability solving. This approach presents the advantage that, for many logical languages, existing satisfiability solvers can be used off-the-shelf. The paper surveys three logics suitable to express real-world data-aware constraints and discusses the practical implications, with respect to automated sequence generation, of some of their theoretical properties.


Linear Temporal Logic Network Device Virtual Private Network Kripke Structure Autonomic Computing 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Proceedings of the 20th Conference on Systems Administration (LISA 2006), Washington, D.C., USA, December 3-8. USENIX (2006)Google Scholar
  2. 2.
  3. 3.
    soapUI: the web services testing tool (2009),
  4. 4.
    Cisco IOS switching services command reference, release 12.3 (2010),
  5. 5.
    Allen, J.F.: Maintaining knowledge about temporal intervals. Communications of the ACM 26(11), 832–843 (1983)CrossRefzbMATHGoogle Scholar
  6. 6.
    Alonso, G., Casati, F., Kuno, H., Machiraju, V.: Web Services, Concepts, Architectures and Applications. Springer, Heidelberg (2004)zbMATHGoogle Scholar
  7. 7.
    Andréka, H., van Benthem, J., Németi, I.: Modal languages and bounded fragments of predicate logic. Journal of Philosophical Logic (27), 217–274 (1998)Google Scholar
  8. 8.
    Arnold II, T.R.: Visual Test 6 Bible. Wiley (1998)Google Scholar
  9. 9.
    Barringer, H., Goldberg, A., Havelund, K., Sen, K.: Rule-Based Runtime Verification. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 44–57. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Barringer, H., Rydeheard, D., Havelund, K.: Rule systems for run-time monitoring: From Eagle to RuleR. Journal of Logic and Computation (2008)Google Scholar
  11. 11.
    Börger, E., Grädel, E., Gurevich, Y.: The Classical Decision Problem. Perspectives in Mathematical Logic. Springer, Heidelberg (1997)CrossRefzbMATHGoogle Scholar
  12. 12.
    Burgess, M., Couch, A.: Modeling next generation configuration management tools. In: LISA [1], pp. 131–147Google Scholar
  13. 13.
    Christensen, E., Curbera, F., Meredith, G., Weerawarana, S.: Web services description language (WSDL) 1.1, W3C note (2001)Google Scholar
  14. 14.
    Cimatti, A., Clarke, E.M., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    Claessen, K., Sörensson, N.: New techniques that improve MACE-style model finding. In: Proc. of Workshop on Model Computation, MODEL (2003)Google Scholar
  16. 16.
    Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press (2000)Google Scholar
  17. 17.
    Daniel, F., Pernici, B.: Insights into web service orchestration and choreography. Int. Journal of E-Business Research 2(1), 58–77 (2006)CrossRefGoogle Scholar
  18. 18.
    Daniele, M., Giunchiglia, F., Vardi, M.Y.: Improved Automata Generation for Linear Temporal Logic. In: Halbwachs, N., Peled, D. (eds.) CAV 1999. LNCS, vol. 1633, pp. 249–260. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  19. 19.
    Demri, S., Jensen, C.S. (eds.): 15th International Symposium on Temporal Representation and Reasoning, TIME 2008, Université du Québec à Monteéal, Canada, June 16-18. IEEE Computer Society (2008)Google Scholar
  20. 20.
    Desai, N., Bradshaw, R., Lueninghoener, C.: Directing change using Bcfg2. In: LISA [1], pp. 215–220Google Scholar
  21. 21.
    Deutsch, A., Sui, L., Vianu, V.: Specification and verification of data-driven web services. In: Deutsch, A. (ed.) PODS, pp. 71–82. ACM (2004)Google Scholar
  22. 22.
    Dixon, C., Fisher, M., Konev, B., Lisitsa, A.: Practical first-order temporal reasoning. In: Demri, Jensen (eds.) [19], pp. 156–163Google Scholar
  23. 23.
    Duret-Lutz, A., Poitrenaud, D.: Spot: An extensible model checking library using transition-based generalized büchi automata. In: DeGroot, D., Harrison, P.G., Wijshoff, H.A.G., Segall, Z. (eds.) MASCOTS, pp. 76–83. IEEE Computer Society (2004)Google Scholar
  24. 24.
    Gaïti, D., Pujolle, G., Salaun, M., Zimmermann, H.: Autonomous Network Equipments. In: Stavrakakis, I., Smirnov, M. (eds.) WAC 2005. LNCS, vol. 3854, pp. 177–185. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  25. 25.
    Gerth, R., Peled, D., Vardi, M.Y., Wolper, P.: Simple on-the-fly automatic verification of linear temporal logic. In: Dembinski, P., Sredniawa, M. (eds.) PSTV. IFIP Conference Proceedings, vol. 38, pp. 3–18. Chapman & Hall (1995)Google Scholar
  26. 26.
    Grädel, E.: On the restraining power of guards. Journal of Symbolic Logic 64(1), 1719–1742 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Grädel, E., Kolaitis, P.G., Libkin, L., Marx, M., Spencer, J., Vardi, M.Y., Venema, Y., Weinstein, S.: Finite Model Theory and Its Applications. Texts in Theoretical Computer Science. An EATCS Series. Springer, Heidelberg (2007)zbMATHGoogle Scholar
  28. 28.
    Hallé, S.: Automated Generation of Web Service Stubs Using LTL Satisfiability Solving. In: Bravetti, M., Bultan, T. (eds.) WS-FM 2010. LNCS, vol. 6551, pp. 42–55. Springer, Heidelberg (2011)Google Scholar
  29. 29.
    Hallé, S.: Causality in message-based contract violations: A temporal logic “whodunit”. In: EDOC, pp. 171–180. IEEE Computer Society (2011)Google Scholar
  30. 30.
    Hallé, S., Deca, R., Cherkaoui, O., Villemaire, R., Puche, D.: A Formal Validation Model for the Netconf Protocol. In: Sahai, A., Wu, F. (eds.) DSOM 2004. LNCS, vol. 3278, pp. 147–158. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  31. 31.
    Hallé, S., Hughes, G., Bultan, T., Alkhalaf, M.: Generating Interface Grammars from WSDL for Automated Verification of Web Services. In: Baresi, L., Chi, C.-H., Suzuki, J. (eds.) ICSOC-ServiceWave 2009. LNCS, vol. 5900, pp. 516–530. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  32. 32.
    Hallé, S., Villemaire, R.: Runtime monitoring of message-based workflows with data. In: EDOC, pp. 63–72. IEEE Computer Society (2008)Google Scholar
  33. 33.
    Hallé, S., Villemaire, R.: XML Methods for Validation of Temporal Properties on Message Traces with Data. In: Meersman, R., Tari, Z. (eds.) OTM 2008. LNCS, vol. 5331, pp. 337–353. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  34. 34.
    Hallé, S., Villemaire, R., Cherkaoui, O.: Specifying and validating data-aware temporal web service properties. IEEE Trans. Software Eng. 35(5), 669–683 (2009)CrossRefGoogle Scholar
  35. 35.
    Hallé, S., Villemaire, R., Cherkaoui, O.: Logical methods for self-configuration of network devices. In: Formal and Practical Aspects of Autonomic Computing and Networking: Specification, Development and Verification, pp. 189–216 (2011)Google Scholar
  36. 36.
    Hinnelund, P.: Autonomic computing. Master’s thesis, School of Computer Science and Engineering, Royal Institute of Engineering (March 2004)Google Scholar
  37. 37.
    Hodkinson, I.M.: Loosely guarded fragment of first-order logic has the finite model property. Studia Logica 70, 205–240 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  38. 38.
    Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley Professional (2003)Google Scholar
  39. 39.
    Hughes, G., Bultan, T., Alkhalaf, M.: Client and server verification for web services using interface grammars. In: Bultan, T., Xie, T. (eds.) TAV-WEB, pp. 40–46. ACM (2008)Google Scholar
  40. 40.
    Jackson, D., Schechter, I., Shlyakhter, I.: Alcoa: the Alloy constraint analyzer. In: ICSE, pp. 730–733 (2000)Google Scholar
  41. 41.
    Josephraj, J.: Web services choreography in practice (2005),
  42. 42.
    Kautz, H.A., Selman, B.: Planning as satisfiability. In: ECAI, pp. 359–363 (1992)Google Scholar
  43. 43.
    Khurshid, S., Marinov, D.: TestEra: Specification-based testing of Java programs using SAT. Automated Software Engineering Journal 11(4) (2004)Google Scholar
  44. 44.
    Kupferman, O.: Augmenting Branching Temporal Logics with Existential Quantification Over Atomic Propositions. In: Wolper, P. (ed.) CAV 1995. LNCS, vol. 939, pp. 325–338. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  45. 45.
    Löwenheim, L.: Uber möglichkeiten im relativkalkül. Math. Annalen 76, 447–470 (1915)MathSciNetCrossRefzbMATHGoogle Scholar
  46. 46.
    Lutz, C., Wolter, F., Zakharyaschev, M.: Temporal description logics: A survey. In: Demri, Jensen (eds.) [19], pp. 3–14Google Scholar
  47. 47.
    Martin, D., Burstein, M., Hobbs, J., Lassila, O., McDermott, D., McIlraith, S., Narayanan, S., Paolucci, M., Parsia, B., Payne, T., Sirin, E., Srinivasan, N., Sycara, K.: OWL-S: Semantic markup for web services (2008),
  48. 48.
    Martin, E., Basu, S., Xie, T.: Automated testing and response analysis of web services. In: ICWS, pp. 647–654. IEEE Computer Society (2007)Google Scholar
  49. 49.
    McCune, W.: A davis-putnam program and its application to finite first-order model search: Quasigroup existence problems. Technical report, Argonne National Laboratory (1994)Google Scholar
  50. 50.
    Mendelson, E.: Introduction to Mathematical Logic, 4th edn. Springer, Heidelberg (1997)zbMATHGoogle Scholar
  51. 51.
    Narain, S.: Towards a foundation for building distributed systems via configuration (2004) (retrieved February 11, 2010)Google Scholar
  52. 52.
    Narain, S.: Network configuration management via model finding. In: LISA, pp. 155–168. USENIX (2005)Google Scholar
  53. 53.
    Narayanan, S., McIlraith, S.A.: Simulation, verification and automated composition of web services. In: WWW, pp. 77–88 (2002)Google Scholar
  54. 54.
    Parashar, M., Hariri, S.: Autonomic Computing: An Overview. In: Banâtre, J.-P., Fradet, P., Giavitto, J.-L., Michel, O. (eds.) UPP 2004. LNCS, vol. 3566, pp. 257–269. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  55. 55.
    Pepelnjak, I., Guichard, J.: MPLS VPN Architectures. Cisco Press (2001)Google Scholar
  56. 56.
    Pnueli, A.: The temporal logic of programs. In: FOCS, pp. 46–57. IEEE (1977)Google Scholar
  57. 57.
    Rao, J., Su, X.: A Survey of Automated Web Service Composition Methods. In: Cardoso, J., Sheth, A.P. (eds.) SWSWPC 2004. LNCS, vol. 3387, pp. 43–54. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  58. 58.
    Rensink, A.: Model Checking Quantified Computation Tree Logic. In: Baier, C., Hermanns, H. (eds.) CONCUR 2006. LNCS, vol. 4137, pp. 110–125. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  59. 59.
    Rosen, E.C., Rekhter, Y.: BGP/MPLS VPNs (RFC 2547) (March 1999)Google Scholar
  60. 60.
    Rozier, K.Y., Vardi, M.Y.: LTL Satisfiability Checking. In: Bošnački, D., Edelkamp, S. (eds.) SPIN 2007. LNCS, vol. 4595, pp. 149–167. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  61. 61.
    Tanenbaum, A.S.: Computer Networks, 4th edn. Prentice Hall (2002)Google Scholar
  62. 62.
    Trakhtenbrot, B.A.: Impossibility of an algorithm for the decision problem in finite classes. Doklady Akademii Nauk SSSR (70), 569–572 (1950)Google Scholar
  63. 63.
    von Bochmann, G.: Hardware specification with temporal logic: En example. IEEE Trans. Computers 31(3), 223–231 (1982)MathSciNetCrossRefzbMATHGoogle Scholar
  64. 64.
    Zhang, J., Zhang, H.: System Description: Generating Models by SEM. In: McRobbie, M.A., Slaney, J.K. (eds.) CADE 1996. LNCS, vol. 1104, pp. 308–312. Springer, Heidelberg (1996)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Sylvain Hallé
    • 1
  • Roger Villemaire
    • 2
  • Omar Cherkaoui
    • 2
  • Rudy Deca
    • 2
  1. 1.Université du Québec à ChicoutimiCanada
  2. 2.Université du Québec à MontréalCanada

Personalised recommendations