Skip to main content

Snapshot Generation in a Constructive Object-Oriented Modeling Language

  • Conference paper
Book cover Logic-Based Program Synthesis and Transformation (LOPSTR 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4915))

Abstract

CooML is an object-oriented modeling language where specifications are theories in a constructive logic designed to handle incomplete information. In this logic we view snapshots as a formal counterpart of object populations, which are associated with specifications via the constructive interpretation of logical connectives. In this paper, we introduce the “snapshot semantics” of CooML and we describe a snapshot generation (SG) algorithm, which can be applied to validate specifications in the spirit of OCL-like constraints over UML models. Differently from the latter and from the standard BHK semantics, the logic allows us to exploit a notion of partial validation that is appropriate to encodings characterised by incomplete information. SG is akin to model generation in answer set programming. We show that the algorithm is sound and complete so that its successful termination implies consistency of the system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Baral, C.: Knowledge Representation, Reasoning and Declarative Problem Solving. In: CUP (2003)

    Google Scholar 

  2. Batory, D.S.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  3. Boronat, A., Oriente, J., Gómez, A., Ramos, I., Carsí, J.Á.: An algebraic specification of generic OCL queries within the eclipse modeling framework. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 316–330. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  4. Bouquet, F., Dadeau, F., Legeard, B., Utting, M.: JML-testing-tools: A symbolic animator for JML specifications using CLP. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 551–556. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  5. Buccafurri, F., et al.: Strong and weak constraints in disjunctive Datalog. In: Dix et al. [6]. pp. 2–17

    Google Scholar 

  6. Dix, J., Furbach, U., Nerode, A. (eds.): LPNMR 1997. LNCS, vol. 1265. Springer, Heidelberg (1997)

    Google Scholar 

  7. Fruewirth, T., Abdennadher, S.: Essentials of Constraint Programming. Springer, New York (2003)

    Book  MATH  Google Scholar 

  8. Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL models in USE by automatic snapshot generation. Software and System Modeling 4(4), 386–398 (2005)

    Article  Google Scholar 

  9. Guttag, J.V., Horning, J.J.: Larch: languages and tools for formal specification. Springer, New York (1993)

    Book  MATH  Google Scholar 

  10. Jackson, D., Wing, J.: Lightweight formal method. IEEE Computer, Los Alamitos (1996)

    Google Scholar 

  11. Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. Prentice Hall, Upper Saddle River, NJ (2004)

    Google Scholar 

  12. Leavens, G.T., Baker, A.L., Ruby, C.: Preliminary design of JML: A behavioral interface specification language for Java. SIGSOFT Softw. Eng. Notes 31(3), 1–38 (2006)

    Article  Google Scholar 

  13. Leone, N., et al.: The DLV system for knowledge representation and reasoning. ACM Trans. Comput. Log. 7(3), 499–562 (2006)

    Article  MathSciNet  Google Scholar 

  14. Marek, V.W., Niemelä, I., Truszczyński, M.: Logic programs with monotone cardinality atoms. In: Lifschitz, V., Niemelä, I. (eds.) LPNMR 2004. LNCS (LNAI), vol. 2923, pp. 154–166. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  15. Miglioli, P., Moscato, U., Ornaghi, M., Usberti, G.: A constructivism based on classical truth. Notre Dame Journal of Formal Logic 30(1), 67–90 (1989)

    Article  MathSciNet  MATH  Google Scholar 

  16. Neema, S., Sztipanovits, J., Karsai, G., Butts, K.: Constraint-based design-space exploration and model synthesis. In: Alur, R., Lee, I. (eds.) EMSOFT 2003, vol. 2855, pp. 290–305. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  17. Niemelä, I., Simons, P.: Smodels - an implementation of the stable model and well-founded semantics for normal lp. In: Dix et al. [6]. pp. 421–430

    Google Scholar 

  18. Offutt, J., Abdurazik, A.: Generating tests from UML specifications. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 416–429. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  19. Ornaghi, M., Benini, M., Ferrari, M., Fiorentini, C., Momigliano, A.: A constructive object oriented modeling language for information systems. ENTCS 153(1), 67–90 (2006)

    Google Scholar 

  20. Ornaghi, M., Fiorentini, C.: Answer set semantics vs. information term semantics. In: Informal Proceedings of ASP 2007: Answer Set Programming: Advances in Theory and Implementation, http://cooml.dsi.unimi.it/papers/asp.pdf

  21. Przymusinski, T.C.: Well-founded and stationary models of logic programs. Ann. Math. Artif. Intell. 12(3–4), 141–187 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  22. Troelstra, A.S.: From constructivism to computer science. TCS 211(1–2), 233–252 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  23. Warmer, J., Kleppe, A.: The Object Constraint Language: Precise Modelling with UML. In: Object Technology Series, Addison-Wesley, Reading, MA (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ferrari, M., Fiorentini, C., Momigliano, A., Ornaghi, M. (2008). Snapshot Generation in a Constructive Object-Oriented Modeling Language. In: King, A. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2007. Lecture Notes in Computer Science, vol 4915. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78769-3_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-78769-3_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-78768-6

  • Online ISBN: 978-3-540-78769-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics