Calculation Rules for Warming-up in Fusion Transformation (2008)
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Warm-up transformation is an important preprocess for shortcut fusion. In this paper, we formalize the warm-up transformation by proposing a set of general and powerful calculation rules that can be...
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Abstract. We introduce a class of deterministic higher-order patterns to Template Haskell for supporting declarative transformational programming with more elegant binding of pattern variables....
A Bidirectional Transformation Approach towards Automatic Model Synchronization ⋆ (2008)
Yingfei Xiong, Dongxi Liu, Zhenjiang Hu, Masato Takeichi
Model-driven architecture (MDA) [1] is a discipline in software engineering that relies on models as first class entities and that aims to develop, maintain and evolve software by performing model...
Kazutaka Matsuda, Zhenjiang Hu, Keisuke Nakano, Makoto Hamana, Masato Takeichi
Bidirectional transformation is a pair of transformations: a view function and a backward transformation. A view function maps one data structure called source onto another called view. The...
IO Swapping Leads You There And Back Again (Extended Abstract) ⋆ (2008)
Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi
TABA (“There And Back Again”) [DG02], proposed by Danvy and Goldberg, is a special but powerful programming pattern where a recursive function traverses lists at return time. Their idea is that...
Abstract Automatic Inversion Generates Divide-and-Conquer Parallel Programs (2008)
Kazutaka Morita, Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Divide-and-conquer algorithms are suitable for modern parallel machines, tending to have large amounts of inherent parallelism and working well with caches and deep memory hierarchies. Among others,...
Realizing Bidirectional Graph Transformations From Bidirectional Tree Transformations (2008)
Yingfei Xiong, Zhenjiang Hu, Dongxi Liu, Haiyan Zhao, Hong Mei, Masato Takeichi
Bidirectional transformations are useful to maintain consistency between source data and target data. So far, researchers have proposed several theories and tools for bidirectional transformations on...
Experimentation, Theory (2008)
Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Tree contraction algorithms, whose idea was first proposed by Miller and Reif, are important parallel algorithms to implement efficient parallel programs manipulating trees. Despite their efficiency,...
Domain-Specific Optimization Strategy for Skeleton Programs (2008)
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Abstract. Skeletal parallel programming enables us to develop parallel programs easily by composing ready-made components called skeletons. However, a simplycomposed skeleton program often lacks...
Bidirectionalising Haxml, Shin-cheng Mu, Zhenjiang Hu, Masato Takeichi
A transformation from the source data to a target view is said to be bidirectional if, when the target is altered, the transformation somehow induces a way to reflect the changes back to the source,...
Zhenjiang Hu, Tetsuo Yokoyama, Masato Takeichi
/ * copy all bigger elements from A[1..n] into B[] */ count = 0; for (i=0; i<n; i++) { sumAfter = 0; for (j=i+1; j<n; j++) { sumAfter + = A[j]; if (A[i]> sumAfter)
Documentation, Languages (2008)
Dongxi Liu, Zhenjiang Hu, Masato Takeichi
In the domain of XML authoring, there have been many tools to help users to edit XML documents. These tools make it easier to produce complex documents by using such technologies as syntax-directed...
Calculation Rules for Warming-up in Fusion Transformation (2008)
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Warm-up transformation is an important preprocess for shortcut fusion. In this paper, we formalize the warm-up transformation by proposing several general and powerful calculation rules that can be...
Surrounding Theorem: Developing Parallel Programs for Matrix-Convolutions (2008)
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Abstract. Computations on two-dimensional arrays such as matrices and images are one of the most fundamental and ubiquitous things in computational science and its vast application areas, but...
An Optimal Staging Algorithm (2008)
Takuma Murakami, Zhenjiang Hu, Masato Takeichi
Staging is an alternative approach for binding-time analysis and program specialization, making some pieces of code dynamic. Tim Sheard and Nathan Linger showed a search-based algorithm for automated...
Bidirectionalizing Tree Transformations (2008)
Zhenjiang Hu Kento, Zhenjiang Hu, Kento Emoto, Shin-cheng Mu, Masato Takeichi
A transformation from the source data to a target view is said to be bidirectional if, when the target is altered, the transformation somehow induces a way to reflect the changes back to the source....
An Efficient Staging Algorithm for Binding-Time Analysis (2007)
Takuma Murakami, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
Binding-Time Analysis (BTA) is one of the compile time program analyses which is a general framework for program optimization and program generation [1]. BTA divides a whole program into static and...
A Case Study on a Modular Transformation Strategy (2007)
Zhenjiang Hu, Wei-ngan Chin, Masato Takeichi
Transformational programming is a well-known methodology to derive both correct and efficient programs. But it often requires deep insights to make major jumps during derivation, and so it remains...
Catamorphic Approach to Program Analysis (2007)
Mizuhito Ogawa, Zhenjiang Hu, Isao Sasano, Masato Takeichi
Abstract. This paper proposes a new framework for program analysis that regards them as maximum marking problems: mark the codes of a program under a certain condition such that the number of marked...
Calculation Carrying Programs (2007)
In this paper, we propose a new mechanism called calculation carrying programs that can relax the tension between efficiency and clarity in programming. The idea is to accompany clear programs with...
Segmented Di#usion Theorem (2007)
Zhenjiang Hu, Tomonari Takahashi, Hideya Iwasaki, Masato Takeichi
Abstract--- Skeletal parallel programming ease parallel programming by providing e#cient ready-made skeletons. However, nested use of skeletons are difficult to be implemented in an e#ciently and...
Abstract. Parallel skeletons intend to encourage programmers to build a parallel program from ready-made components for which ecient implementations are known to exist, making the parallelization...
Calculating Accumulations 1 Calculating Accumulations (2007)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
The accumulation strategy consists of generalizing a function over an algebraic data structure by inclusion of an extra parameter, an accumulating parameter, for reusing and propagating intermediate...
Zhenjiang Hu, Wei-ngan Chin, Masato Takeichi
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 nding frequent sets...
An Efficient Staging Algorithm for Binding-Time Analysis (2007)
Takuma Murakami, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
Binding-Time Analysis (BTA) is one of the compile time program analyses which is a general framework for program optimization and program generation [1]. BTA divides a whole program into static and...
An Algebraic Interface for GETA Search Engine (2007)
Takuma Murakami, Zhenjiang Hu, Shingo Nishioka, Akihiko Takano, Masato Takeichi
GETA is a library that implements high performance method for associative computation to be used as a basis of various document processing including searching or clustering. We proposed an algebraic...
Deterministic Higher-order Patterns for Program Transformation (2007)
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Abstract. Higher-order patterns, together with higher-order matching, enable concise specication of program transformation, and have been implemented in several program transformation systems....
Bi-X Core: A General-Purpose Bidirectional Transformation Language (2007)
Dongxi Liu, Keisuke Nakano, Yasushi Hayashi, Zhenjiang Hu, Masato Takeichi, Akimasa Morihata, ...
Bi-X Core is a general-purpose bidirectional transformation language, aiming to implement various systems that need synchronization between their input data and output data. In syntax, Bi-X Core is a...
H.: Towards automatic model synchronization from model transformations (2007)
Yingfei Xiong, Dongxi Liu, Zhenjiang Hu, Haiyan Zhao, Masato Takeichi, Hong Mei
The metamodel techniques and model transformation techniques provide a standard way to represent and transform data, especially the software artifacts in software development. However, after a...
Bidirectionalization transformation based on automatic derivation of view complement function (2007)
Kazutaka Matsuda, Kazutaka Matsuda, Zhenjiang Hu, Zhenjiang Hu, Keisuke Nakano, Keisuke Nakano, ...
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
M.: Domain-specific optimization for skeleton programs involving neighbor elements (2007)
Kento Emoto, Kento Emoto, Kiminori Matsuzaki, Kiminori Matsuzaki, Zhenjiang Hu, Zhenjiang Hu, ...
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
Abstract Bidirectional Interpretation of XQuery (2007)
Dongxi Liu, Zhenjiang Hu, Masato Takeichi
XQuery is a powerful functional language to query XML data. This paper presents a bidirectional interpretation of XQuery to address the problem of updating XML data through materialized XQuery views....
– Updating XML through Materialized XQuery View – (2006)
Bidirectionalizing Xquery, Dongxi Liu, Zhenjiang Hu, Masato Takeichi, Bidirectionalizing Xquery, Dongxi Liu, ...
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
Swapping arguments and results of recursive functions (2006)
Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi
Abstract. 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...
Systematic derivation of tree contraction algorithms (2005)
Kiminori Matsuzaki, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
Abstract. While tree contraction algorithms play an important role in efficient tree computation in parallel, it is difficult to develop such algorithms due to the strict conditions imposed on...
A Compositional Framework for Developing Parallel Programs on Two Dimensional Arrays (2005)
Kento Emoto, Kento Emoto, Zhenjiang Hu, Zhenjiang Hu, Kazuhiko Kakehi, Kazuhiko Kakehi, ...
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
A Compositional Framework for Developing Parallel Programs on Two Dimensional Arrays (2005)
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
Abstract. Computations on two-dimensional arrays such as matrices and images are one of the most fundamental and ubiquitous things in computational science and its vast application areas, but...
Design and implementation of general tree skeletons (2005)
Kiminori Matsuzaki, Kiminori Matsuzaki, Zhenjiang Hu, Zhenjiang Hu, Masato Takeichi, Masato Takeichi
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
An algebraic approach to bi-directional updating (2004)
Shin-cheng Mu, Zhenjiang Hu, Masato Takeichi
Abstract. 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...
Zhenjiang Hu, Shin-cheng Mu, Masato Takeichi
This paper presents a novel editor supporting interactive refinement in the development of structured documents. The user performs a sequence of editing operations on the document view, and the...
❢c World Scientific Publishing Company SYSTEMATIC DERIVATION OF TREE CONTRACTION ALGORITHMS ∗ (2004)
Kiminori Matsuzaki, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
While tree contraction algorithms play an important role in efficient tree computation in parallel, it is difficult to develop such algorithms due to the strict conditions imposed on contracting...
An injective language for reversible computation (2004)
Shin-cheng Mu, Zhenjiang Hu, Masato Takeichi
Abstract. Erasure of information incurs an increase in entropy and dissipates heat. Therefore, information-preserving computation is essential for constructing computers that use energy more...
An Algebraic Approach to Bi-Directional Updating (2004)
Shin-Cheng Mu, Zhenjiang Hu, Masato Takeichi
In many occasions would one encounter the task of maintaining the consistency of two pieces of structured data related by some transform --- synchronise bookmarks in different web browsers, the...
Zhenjiang Hu, Shin-Cheng Mu, Masato Takeichi
This paper presents a novel editor supporting interactive refinement in the development of structured documents. The user performs a sequence of editing operations on the document view, and the...
Deterministic Second-order Patterns (2004)
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Second-order patterns, together with second-order matching, enable concise speci cation of program transformation, and have been implemented in several program transformation systems. However,...
Kiminori Matsuzaki, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
While tree contraction algorithms play an important role in efficient tree computation in parallel, it is difficult to develop such algorithms due to the strict conditions imposed on contracting...
TreeCalc: towards programmable structured documents (2003)
Masato Takeichi, Zhenjiang Hu, Kazuhiko Kakehi, Yasushi Hayashi, Shin-cheng Mu, Keisuke Nakano
A programmable structured document is a structured document with dynamically calculated components that can be specified by users in a functional programming language. TreeCalc, a tree version of...
Parallelization with tree skeletons (2003)
Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Abstract. Trees are useful data structures, but to design efficient parallel programs over trees is known to be more difficult than to do over lists. Although several important tree skeletons have...
Parallelization with tree skeletons (2003)
Kiminori Matsuzaki, Kiminori Matsuzaki, Zhenjiang Hu, Zhenjiang Hu, Masato Takeichi, Masato Takeichi
The METR technical reports are published as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the...
Mathematical Engineering (2003)
Parallelization With Tree, Kiminori Matsuzaki, Kiminori Matsuzaki, Zhenjiang Hu, Zhenjiang Hu, Masato Takeichi, ...
Trees are useful data structures, but to design e#cient parallel programs over trees is known to be more di#cult than to do over lists. Although several important tree skeletons have been proposed to...
Acquiring Vocabulary for Predictive Text Entry (2003)
Through Dynamic Reuse, Kumiko Tanaka-ishii, Daichi Hayakawa, Masato Takeichi
As mobile computing and communications have become popular, predictive text entry systems have become an increasingly important technology. Existing methods still need refinement, though, with...
List Homomorphism with Accumulation (2003)
Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi
This paper introduces accumulation into list homomorphisms for systematic development of both efficient and correct parallel programs. New parallelizable recursive pattern called is given, and...
Parallelization with tree skeletons (2003)
Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Abstract. Trees are useful data structures, but to design efficient parallel programs over trees is known to be more difficult than to do over lists. Although several important tree skeletons have...
Deterministic Second-order Patterns in Program Transformation (2003)
Tetsuo Yokoyama, Zhenjiang Hu, Masato Takeichi
Higher-order patterns, together with higher-order matching, enable concise specification of program transformation, and have been implemented in several program transformation systems. However,...
A compositional framework for mining longest ranges (2002)
Haiyan Zhao, Haiyan Zhao, Zhenjiang Hu, Zhenjiang Hu, Masato Takeichi, Masato Takeichi
This paper proposes a compositional framework for mining interesting range information from huge databases, in which a domain specific query language is provided to specify the range of interest, and...
A compositional framework for mining longest ranges (2002)
Haiyan Zhao, Zhenjiang Hu, Masato Takeichi
Abstract. This paper proposes a compositional framework for discovering interesting range information from huge databases, where a domain specific query language is provided to specify the range of...
Multidimensional searching trees with minimum attribute (2002)
Haiyan Zhao, Zhenjiang Hu, Masato Takeichi
The study of data structures for rapid searching is a fascinating subject of both practical and theoretical interest. This paper proposes a new data structure, called k-d-m tree, to address an ecient...
Implementation of Parallel Tree Skeletons (2002)
On Distributed Systems, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Trees are useful data types, but developing e#cient parallel programs manipulating trees is known to be di#cult, because of their irregular and imbalance structure. Parallel tree skeletons are...
Entering Text with A Four-Button Device (2002)
Kumiko Tanaka-ishii, Yusuke Inutsuka, Masato Takeichi
This paper presents the design of a text-entry device that requires only four buttons. Such a device is applicable as the text interface of portable machines and as an interface for disabled people....
Generation of Efficient Programs for Solving Maximum Multi-Marking Problems (2001)
Isao Sasano, Zhenjiang Hu, Masato Takeichi
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...
Calculating linear time algorithms for solving maximum weightsum problems (2001)
Isao Sasano, Zhenjiang Hu, Masato Takeichi, Mizuhito Ogawa
In this paper, we propose a new method to derive practical linear time algorithms for maximum weightsum problems. A maximum weightsum problem is specified as follows: given a recursive data x, find...
Generation of Efficient Programs for Solving Maximum Multi-Marking Problems (2001)
Isao Sasano, Zhenjiang Hu, Masato Takeichi
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...
Calculation carrying programs: How to code program transformations (invited paper (2000)
In this paper, we propose a new mechanism called calculation carrying programs that can relax the tension between efficiency and clarity in programming. The idea is to accompany clear programs with...
Make it Practical: A Generic Linear-Time Algorithm for Solving Maximum-Weightsum Problems (2000)
Isao Sasano, Zhenjiang Hu, Masato Takeichi, Mizuhito Ogawa
In this paper we propose a new method for deriving a practical linear-time algorithm from the specification of a maximum-weight sum problem: From the elements of a data structure x, find a subset...
Calculating a New Data Mining Algorithm for Market Basket Analysis (2000)
Zhenjiang Hu, Wei-ngan Chin, Masato Takeichi
. The general goal of data mining is to extract interesting correlated information from large collection of data. A key computationallyintensive subproblem of data mining involves finding frequent...
Make it Practical: A Generic Linear-Time Algorithm for Solving Maximum-Weightsum Problems (2000)
Isao Sasano, Zhenjiang Hu, Masato Takeichi, Mizuhito Ogawa
In this paper we propose a new method for deriving a practical linear-time algorithm from the speci cation of a maximum-weightsum problem: From the elements of a data structure x, nd a subset which...
Calculating a new data mining algorithm for market basket analysis (2000)
Zhenjiang Hu, Wei-ngan Chin, Masato Takeichi
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...
Deriving parallel codes via invariants (2000)
Wei-ngan Chin, Siau-cheng Khoo, Zhenjiang Hu, Masato Takeichi
Abstract. Systematic parallelization of sequential programs remains a major challenge in parallel computing. Traditional approaches using program schemestendtobenarrower in scope, as the properties...
Diffusion: Calculating efficient parallel programs (1999)
Zhenjiang Hu, Masato Takeichi, Hideya Iwasaki
Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the...
Calculating an Optimal Homomorphic Algorithm for Bracket Matching (1999)
this paper, we intend to clarify this point by demonstrating a formal derivation of a correct but efficient homomorphic parallel algorithm for a simple language recognition problem known as bracket...
Calculating an Optimal Homomorphic Algorithm for Bracket Matching (1999)
Zhenjiang Hu Masato, Masato Takeichi
this paper, we intend to clarify this point by demonstrating a formal derivation of a correct but efficient homomorphic parallel algorithm for a simple language recognition problem known as bracket...
Calculation Carrying Programs (1999)
this paper, we propose a new mechanism called calculation carrying programs that can relax the tension between efficiency and clarity in programming. The idea is to accompany clear programs with some...
A Case Study on a Modular Transformation Strategy (1999)
Zhenjiang Hu, Wei-ngan Chin, Masato Takeichi
this paper, we show that it is possible to minimize these deep insights. Our thesis is that the high-level transformation techniques such as fusion, tupling, and generalization/accumulation can be...
Calculating an Optimal Homomorphic Algorithm for Bracket Matching (1999)
It is widely recognized that a key problem of parallel computation is in the development of both efficient and correct parallel software. Although many advanced language features and compilation...
Diffusion: Calculating Efficient Parallel Programs (1999)
Zhenjiang Hu, Masato Takeichi, Hideya Iwasaki
Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the...
Towards polytypic parallel programming (1998)
Zhenjiang Hu, Masato Takeichi, Hideya Iwasaki
Data parallelism is currently one of the most successful models for programming massively parallel computers. The central idea is to evaluate a uniform collection of data in parallel by...
Towards Polytypic Parallel Programming (1998)
Zhenjiang Hu Masato, Masato Takeichi, Hideya Iwasaki
this paper, we propose a polytypic framework for developing efficient
Parallelization in Calculational Forms (1998)
Zhenjiang Hu, Masato Takeichi, Wei-ngan Chin
The problems involved in developing efficient parallel programs have proved harder than those in developing efficient sequential ones, both for programmers and for compilers. Although program...
Program Transformation in Calculational Form (1998)
Akihiko Takano, Zhenjiang Hu, Masato Takeichi
Correctness-preserving program transformation has recently received a particular attention for compiler optimization in functional programming [Kelsey and Hudak 1989; Appel 1992; Peyton Jones 1996]....
Towards Manipulation of Mutually Recursive Functions (1998)
Hideya Iwasaki, Zhenjiang Hu, Masato Takeichi
In functional programming, Constructive Algorithmics is one of... In this paper, we shall formalize mutual recursive data types in terms of bifunctors and extend hylomorphisms to describe mutual...
A Calculational Fusion System HYLO (1997)
Yoshiyuki Onoue, Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi, Y. Onoue, Z. Hu, ...
Fusion, one of the most useful transformation tactics for deriving efficient programs, is the process whereby separate pieces of programs are fused into a single one, leading to an efficient program...
A Calculational Framework for Parallelization of Sequential Programs (1997)
this paper, we propose
Enhanced Parallelization via Constraints (1997)
Wei-ngan Chin, Zhenjiang Hu, Masato Takeichi, Akihiko Takano
Systematic parallelization of sequential programs remains a major challenge in parallel computing. Traditional approaches using program schemes are somewhat narrow in scope, as the properties which...
A Modular Derivation Strategy via Fusion and Tupling (1997)
Wei-ngan Chin, Zhenjiang Hu, Masato Takeichi
We show how programming pearls can be systematically derived via fusion, followed by tupling transformations. By focusing on the elimination of intermediate data structures (fusion) followed by the...
A Modular Derivation Strategy via Fusion and Tupling (1997)
Wei-ngan Chin, Zhenjiang Hu, Masato Takeichi
We showhow programming pearls can be systematically derived via fusion, followed by tupling transformations. By focusing on the elimination of intermediate data structures #fusion # followed by the...
A Calculational Framework for Parallelization of Sequential Programs (1997)
Zhenjiang Hu Masato, Masato Takeichi
this paper, we propose
A Calculational Framework for Parallelization of Sequential Programs (1997)
A great deal of effort has been made on systematic ways for parallelizing sequential programs. What seems to be unsatisfactory, however, is that the current approaches are either too general where...
Tupling Calculation Eliminates Multiple Data Traversals (1997)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi, Akihiko Takano
Tupling is a well-known transformation tactic to obtain new efficient recursive functions by grouping some recursive functions into a tuple. It may be applied to eliminate multiple traversals over...
Deriving Structural Hylomorphisms From Recursive Definitions (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper, we propose an algorithm which can automatically turn all practical recursive definitions into structural hylomorphisms making program fusion be easily applied. 1 Introduction
Deriving Structural Hylomorphisms From Recursive Definitions (1996)
Zhenjiang Hu Hideyaiwasaki, Zhenjiang Hu, Masato Takeichi
this paper, we propose an algorithm which can automatically turn all practical recursive definitions into structural hylomorphisms making program fusion be easily applied. 1 Introduction
Cheap Tupling Transformation (1996)
Zhenjiang Hu Hideyaiwasaki, Zhenjiang Hu, Masato Takeichi
this paper, we propose a cheap tupling based on the theory of constructive algorithmics. We give several simple but effective calculational rules, which not only can be successfully applied to...
Formal Derivation of Parallel Program for 2-Dimensional Maximum Segment Sum Problem (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
. It has been attracting much attention to make use of list homomorphisms in parallel programming because they ideally suit the divide-and-conquer parallel paradigm. However, they have been usually...
Cheap Tupling Transformation (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper, we propose a cheap tupling based on the theory of constructive algorithmics. We give several simple but effective calculational rules, which not only can be successfully applied to...
Deriving Structural Hylomorphisms From Recursive Definitions (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
In functional programming, small programs are often glued together to construct a complex program. Program fusion is an optimizing process whereby these small programs are fused into a single one and...
Construction of List Homomorphisms by Tupling and Fusion (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
List homomorphisms are functions which can be efficiently computed in parallel since they ideally suit the divide-and-conquer paradigm. However, some interesting functions, e.g., the maximum segment...
An Extension Of The Acid Rain Theorem (1996)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
Program fusion (or deforestation) is a well-known transformation whereby compositions of several pieces of code are fused into a single one, resulting in an efficient functional program without...
Making Recursions Manipulable by Constructing Medio-types (1995)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper, aiming at manipulating functions defined by
Promotional Transformation on Monadic Programs (1995)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper, we propose a new theory on monadic catamorphism bymoving Fokkinga's assumption on the monad to the condition of a map between monadic algebras so that our theory is valid for...
Promotional Transformation on Monadic Programs (1995)
Zhenjiang Hu Hideya, Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper, we propose a new theory on monadic catamorphism by moving Fokkinga's assumption on the monad to the condition of a map between monadic algebras so that our theory is valid for...
Making Recursions Manipulable by Constructing Medio-types (1995)
Zhenjiang Hu Hideyaiwasaki, Zhenjiang Hu, Masato Takeichi
this paper, aiming at manipulating functions defined by
Catamorphism-Based Transformation of Functional Programs (1994)
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper is to deal with the transformation on accumulations so that more efficient programs can be derived. We formulate accumulations by means of higher order catamorphisms and propose a...
Catamorphism-Based Transformation of Functional Programs (1994)
Zhenjiang Hu Hideya, Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi
this paper
Parallel Execution of Functional Programs on Loosely Coupled Multiprocessor Systems (1993)
Tetsurou Tanaka, Masato Takeichi
It has been suggested that functional programs are suitable for programming parallel computers owing to their inherent parallelism. We propose a parallel evaluation model of functional programs based...
Deriving Parallel Codes via Invariants
Wei-ngan Chin, Siau-cheng Khoo, Zhenjiang Hu, Masato Takeichi
. 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...