Systematic software development using VDM
Systematic software development using VDM
Proc. of the European symposium on programming on ESOP 86
Programming from specifications
Programming from specifications
All recursive types defined using products and sums can be implemented using pointers
AUSCRYPT '90 Proceedings of the international conference on cryptology on Algebraic logic and universal algebra in computer science
Conceptual mathematics: a first introduction to categories
Conceptual mathematics: a first introduction to categories
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Algebra of programming
A calculational approach to mathematical induction
Theoretical Computer Science
The Unified Modeling Language user guide
The Unified Modeling Language user guide
Modelling systems: practical tools and techniques in software development
Modelling systems: practical tools and techniques in software development
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Communications of the ACM
Data Refinement: Model-Oriented Proof Methods and Their Comparison
Data Refinement: Model-Oriented Proof Methods and Their Comparison
Fork Algebras in Algebra, Logic and Computer Science
Fork Algebras in Algebra, Logic and Computer Science
Separation Logic: A Logic for Shared Mutable Data Structures
LICS '02 Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science
Polynomial Relators (Extended Abstract)
AMAST '91 Proceedings of the Second International Conference on Methodology and Software Technology: Algebraic Methodology and Software Technology
Calculating with Concepts: a Technique for the Development of Business Process Support
Workshop of the pUML-Group held together with the «UML»2001 on Practical UML-Based Rigorous Development Methods - Countering or Integrating the eXtremists
Advanced Functional Programming, Second International School-Tutorial Text
FUNCTIONAL PEARL: Unfolding pointer algorithms
Journal of Functional Programming
Deriving a lazy abstract machine
Journal of Functional Programming
Safety of abstract interpretations for free, via logical relations and Galois connections
Science of Computer Programming - Special issue on mathematics of program construction (MPC 2002)
A programmable editor for developing structured documents based on bidirectional transformations
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Two-level types and parameterized modules
Journal of Functional Programming
Theory of Relational Databases
Theory of Relational Databases
Relational lenses: a language for updatable views
Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem
ACM Transactions on Programming Languages and Systems (TOPLAS) - Special issue on POPL 2005
Transformation of structure-shy programs: applied to XPath queries and strategic functions
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Boomerang: resourceful lenses for string data
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Relational Model for Confined Separation Logic
TASE '08 Proceedings of the 2008 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering
Calculating Invariants as Coreflexive Bisimulations
AMAST 2008 Proceedings of the 12th international conference on Algebraic Methodology and Software Technology
Strategic term rewriting and its application to a VDM-SL to SQL conversion
FM'05 Proceedings of the 2005 international conference on Formal Methods
Pointfree factorization of operation refinement
FM'06 Proceedings of the 14th international conference on Formal Methods
Type-safe two-level data transformation
FM'06 Proceedings of the 14th international conference on Formal Methods
The transformational approach to database engineering
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
Coupled schema transformation and data conversion for XML and SQL
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
Bidirectional Transformations: A Cross-Discipline Perspective
ICMT '09 Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations
Matrices as arrows!: a biproduct approach to typed linear algebra
MPC'10 Proceedings of the 10th international conference on Mathematics of program construction
Recovering grammar relationships for the Java Language Specification
Software Quality Control
Type-safe evolution of spreadsheets
FASE'11/ETAPS'11 Proceedings of the 14th international conference on Fundamental approaches to software engineering: part of the joint European conferences on theory and practice of software
Relations as executable specifications: taming partiality and non-determinism using invariants
RAMiCS'12 Proceedings of the 13th international conference on Relational and Algebraic Methods in Computer Science
Typing linear algebra: A biproduct-oriented approach
Science of Computer Programming
Hi-index | 0.00 |
This paper addresses the foundations of data-model transformation. A catalog of data mappingsis presented which includes abstraction and representation relations and associated constraints. These are justified in an algebraic style via the pointfree-transform, a technique whereby predicates are lifted to binary relation terms (of the algebra of programming) in a two-level style encompassing both data and operations. This approach to data calculation, which also includes transformation of recursive data models into "flat" database schemes, is offered as alternative to standard database design from abstract models. The calculus is also used to establish a link between the proposed transformational style and bidirectional lensesdeveloped in the context of the classical view-update problem.