![Loading...](https://link.springer.com/static/c4a417b97a76cc2980e3c25e2271af3129e08bbe/images/pdf-preview/spacer.gif)
-
Chapter and Conference Paper
An Efficient Composition of Bidirectional Programs by Memoization and Lazy Update
Bidirectional transformations (BX) are a solution to the view update problem and widely used for synchronizing data. The semantics and correctness of bidirectional programs have been investigated intensively d...
-
Chapter and Conference Paper
A Counterexample-Guided Debugger for Non-recursive Datalog
The Datalog language is used in many potential applications including database queries, program analysis, bidirectional transformations, and so forth. In practice, such a Datalog program is expected to be well...
-
Chapter and Conference Paper
A Clear Picture of Lens Laws
A lens is an optical device which refracts light. Properly adjusted, it can be used to project sharp images of objects onto a screen—a principle underlying photography as well as human vision. Striving for cla...
-
Chapter and Conference Paper
Generate, Test, and Aggregate
MapReduce, being inspired by the map and reduce primitives available in many functional languages, is the de facto standard for large scale data-intensive parallel programming. Although it has succeeded in pop...
-
Chapter and Conference Paper
Toward Bidirectionalization of ATL with GRoundTram
ATL is a language for describing model transformations currently in uni-direction. In our previous work we have shown that transformations of graph structures given in some form can be bidirectionalized and ha...
-
Chapter and Conference Paper
Program Calculation in Coq
Program calculation, being a programming technique that derives programs from specification by means of formula manipulation, is a challenging activity. It requires human insights and creativity, and needs sys...
-
Chapter and Conference Paper
Context-Preserving XQuery Fusion
XQuery is a DBPL for querying XML databases. The semantics of XQuery is context sensitive and requires preservation of document order. In this paper, we propose, as far as we are aware, the first XQuery fusion...
-
Chapter and Conference Paper
Generating Synchronization Engines between Running Systems and Their Model-Based Views
The key point to leverage model-based techniques on runtime system management is to ensure the correct synchronization between the running system and its model-based view. In this paper, we present a generativ...
-
Chapter and Conference Paper
A Grammar-Based Approach to Invertible Programs
Program inversion has many applications such as in the implementation of serialization/deserialization and in providing support for redo/undo, and has been studied by many researchers. However, little attentio...
-
Chapter and Conference Paper
Swap** Arguments and Results of Recursive Functions
Many useful calculation rules, such as fusion and tupling, rely on well-structured functions, especially in terms of inputs and outputs. For instance, fusion requires that well-produced outputs should be conne...
-
Chapter and Conference Paper
Maximum Marking Problems with Accumulative Weight Functions
We present a new derivation of efficient algorithms for a class of optimization problems called maximum marking problems. We extend the class of weight functions used in the specification to allow for weight f...
-
Chapter and Conference Paper
PType System: A Featherweight Parallelizability Detector
Parallel programming is becoming an important cornerstone of general computing. In addition, type systems have significant impact on program analysis. In this paper, we demonstrate an automated type-based syst...
-
Chapter and Conference Paper
An Injective Language for Reversible Computation
Erasure of information incurs an increase in entropy and dissipates heat. Therefore, information-preserving computation is essential for constructing computers that use energy more effectively. A more recent m...
-
Chapter and Conference Paper
An Algebraic Approach to Bi-directional Updating
In many occasions would one encounter the task of maintaining the consistency of two pieces of structured data that are related by some transform — synchronising bookmarks in different web browsers, the source...
-
Chapter and Conference Paper
An Accumulative Parallel Skeleton for All
Parallel skeletons intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the parallelization process simpler. How...
-
Chapter and Conference Paper
Generation of Efficient Programs for Solving Maximum Multi-marking Problems
Program generation has seen an important role in a wide range of software development processes, where effective calculation rules are critical. In this paper, we propose a more general calculation rule for ge...
-
Chapter and Conference Paper
Calculating a New Data Mining Algorithm for
The general goal of data mining is to extract interesting correlated information from large collection of data. A key computationally-intensive subproblem of data mining involves finding frequent sets in order...
-
Chapter and Conference Paper
Deriving Parallel Codes via Invariants
Systematic parallelization of sequential programs remains a major challenge in parallel computing. Traditional approaches using program schemes tend to be narrower in scope, as the properties which enable para...
-
Chapter and Conference Paper
Cheap tupling in calculational form