Skip to main content

and
  1. No Access

    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...

    Kanae Tsushima, Bach Nguyen Trong, Robert Glück in Functional and Logic Programming (2020)

  2. No Access

    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...

    Sebastian Fischer, Zhenjiang Hu, Hugo Pacheco in Mathematics of Program Construction (2015)

  3. No Access

    Chapter and Conference Paper

    Validity Checking of Putback Transformations in Bidirectional Programming

    A bidirectional transformation consists of pairs of transformations —a forward transformation get produces a target view from a source, while a putback transformation put puts back modifications on the view to th...

    Zhenjiang Hu, Hugo Pacheco, Sebastian Fischer in FM 2014: Formal Methods (2014)

  4. No Access

    Book and Conference Proceedings

    Theory and Practice of Model Transformations

    5th International Conference, ICMT 2012, Prague, Czech Republic, May 28-29, 2012. Proceedings

    Zhenjiang Hu, Juan de Lara in Lecture Notes in Computer Science (2012)

  5. No Access

    Chapter and Conference Paper

    Marker-Directed Optimization of UnCAL Graph Transformations

    Buneman et al. proposed a graph algebra called UnCAL (Unstructured CALculus) for compositional graph transformations based on structural recursion, and we have recently applied to model transformations. The co...

    Soichiro Hidaka, Zhenjiang Hu in Logic-Based Program Synthesis and Transfor… (2012)

  6. 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...

    Kento Emoto, Sebastian Fischer, Zhenjiang Hu in Programming Languages and Systems (2012)

  7. No Access

    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...

    Isao Sasano, Zhenjiang Hu, Soichiro Hidaka in Theory and Practice of Model Transformatio… (2011)

  8. No Access

    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...

    Julien Tesson, Hideki Hashimoto in Algebraic Methodology and Software Technol… (2011)

  9. No Access

    Chapter and Conference Paper

    Gradual Refinement

    Pattern matching is advantageous for understanding and reasoning about function definitions, but it tends to tightly couple the interface and implementation of a datatype. Significant effort has been invested ...

    Meng Wang, Jeremy Gibbons, Kazutaka Matsuda in Mathematics of Program Construction (2010)

  10. No Access

    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...

    Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu in Mathematics of Program Construction (2006)

  11. No Access

    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...

    Isao Sasano, Mizuhito Ogawa, Zhenjiang Hu in Theoretical Aspects of Computing – ICTAC 2005 (2005)

  12. No Access

    Chapter and Conference Paper

    An Efficient Staging Algorithm for Binding-Time Analysis

    Binding-Time Analysis (BTA) is one of the compile-time program analyses which is a general framework for program optimization and program generation [1]. The task of BTA is to divide a source program into two ...

    Takuma Murakami, Zhenjiang Hu in Logic Based Program Synthesis and Transfor… (2004)

  13. No Access

    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...

    Dana N. Xu, Siau-Cheng Khoo, Zhenjiang Hu in Programming Languages and Systems (2004)

  14. No Access

    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...

    Shin-Cheng Mu, Zhenjiang Hu, Masato Takeichi in Mathematics of Program Construction (2004)

  15. No Access

    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...

    Shin-Cheng Mu, Zhenjiang Hu, Masato Takeichi in Programming Languages and Systems (2004)

  16. No Access

    Chapter and Conference Paper

    Deterministic Higher-Order Patterns for Program Transformation

    Higher-order patterns, together with higher-order matching, enable concise specification of program transformation, and have been implemented in several program transformation systems. However,higher-order mat...

    Tetsuo Yokoyama, Zhenjiang Hu in Logic Based Program Synthesis and Transfor… (2004)

  17. 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...

    Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi in Programming Languages and Systems (2002)

  18. No Access

    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...

    Isao Sasano, Zhenjiang Hu, Masato Takeichi in Semantics, Applications, and Implementatio… (2001)

  19. No Access

    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...

    Wei-Ngan Chin, Siau-Cheng Khoo, Zhenjiang Hu, Masato Takeichi in Static Analysis (2000)

  20. No Access

    Chapter and Conference Paper

    Cheap tupling in calculational form

    Zhenjiang Hu, Hideya Iwasaki in Programming Languages: Implementations, Lo… (1996)