Towards an Algebraic Theory of Bidirectional Transformations

  • Perdita Stevens
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5214)


Bidirectional transformations are important for model-driven development, and are also of wide interest in computer science. In this paper we present early work on an algebraic presentation of bidirectional transformations. In general, a bidirectional transformation must maintain consistency between two models, either of which may be edited, and each of which may incorporate information not represented in the other. Our main focus here is on lenses [2,1,3] which provide a particularly well-understood special case, in which one model is an abstraction of the other, and either the abstraction or the full model may be edited. We show that there is a correspondence between lenses and short exact sequences of monoids of edits. We go on to show that if we restrict attention to invertible edits, very well-behaved lenses correspond to split short exact sequences of groups; this helps to elucidate the structure of the edit groups.


Short Exact Sequence Graph Transformation Algebraic Theory Graph Grammar Transformation Language 
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.
    Bohannon, A., Foster, J.N., Pierce, B.C., Pilkiewicz, A., Schmitt, A.: Boomerang: Resourceful lenses for string data. In: ACM SIGPLAN–SIGACT Symposium on Principles of Programming Languages (POPL), San Francisco, California (January 2008)Google Scholar
  2. 2.
    Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM Transactions on Programming Languages and Systems 29(3), 17 (2007); Preliminary version presented at the Workshop on Programming Language Technologies for XML (PLAN-X) (2004); extended abstract presented at Principles of Programming Languages (POPL) (2005)Google Scholar
  3. 3.
    Foster, J.N., Pilkiewicz, A., Pierce, B.C.: Quotient lenses. In: Proceedings of International Conference on Functional Programming (to appear, 2008),
  4. 4.
    Gottlob, G., Paolini, P., Zicari, R.: Properties and update semantics of consistent views. ACM Trans. Database Syst. 13(4), 486–524 (1988)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Stevens, P.: Bidirectional model transformations in QVT: Semantic issues and open questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Stevens, P.: A landscape of bidirectional model transformations. In: Post-proceedings of GTTSE 2007 (to appear, 2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Perdita Stevens
    • 1
  1. 1.Laboratory for Foundations of Computer Science School of InformaticsUniversity of Edinburgh 

Personalised recommendations