Related papers: Splitting recursion schemes into reversible and cl…
In this study, a recursive solution technique in conjunction with generalized integrating factors is presented and applied to address first and second order linear differential equations. This approach demonstrates practical utility in…
The main way of analyzing the complexity of a program is that of extracting and solving a recurrence that expresses its running time in terms of the size of its input. We develop a method that automatically extracts such recurrences from…
We define a compilation scheme for a constructor-based, strongly-sequential, graph rewriting system which shortcuts some needed steps. The object code is another constructor-based graph rewriting system. This system is normalizing for the…
Reversible computing is a computational paradigm in which computations are deterministic in both the forward and backward direction, so that programs have well-defined forward and backward semantics. We investigate the formal semantics of…
Quantum computers are considered as a part of the family of the reversible, lineary-extended, dynamical systems (Quanputers). For classical problems an operational reformulation is given. A universal algorithm for the solving of classical…
A circular program contains a data structure whose definition is self-referential or recursive. The use of such a definition allows efficient functional programs to be written and can avoid repeated evaluations and the creation of…
The powers of generating functions and its properties are analyzed. A new class of functions is introduced, based on the application of compositions of an integer $n$, called composita. The methods for obtaining reciprocal and reverse…
The computation of matrix functions is a well-studied problem. Of special importance are the exponential and the logarithm of a matrix, where the latter also raises existence and uniqueness questions. This is particularly relevant in the…
Recent work has proposed a promising approach to improving scalability of program synthesis by allowing the user to supply a syntactic template that constrains the space of potential programs. Unfortunately, creating templates often…
Complex functions have multiple uses in various fields of study, so analyze their characteristics it is of extensive interest to other sciences. This work begins with a particular class of rational functions of a complex variable; over this…
A circular program creates a data structure whose computation depends upon itself or refers to itself. The technique is used to implement the classic data structures circular and doubly-linked lists, threaded trees and queues, in a…
We define a class of computable functions over real numbers using functional schemes similar to the class of primitive and partial recursive functions defined by G\"odel and Kleene. We show that this class of functions can also be…
We propose a way to split a given bivariate P-recursive sequence into a summable part and a non-summable part in such a way that the non-summable part is minimal in some sense. This decomposition gives rise to a new reduction-based creative…
The article deals with a kind of recursive function templates in C++, where the recursion is realized corresponding template parameters to achieve better computational performance. Some specialization of these template functions ends the…
In this article, we review the literature on design and analysis of recursive algorithms for reconstructing a time sequence of sparse signals from compressive measurements. The signals are assumed to be sparse in some transform domain or in…
The iterative development process is a framework used to design products and applications across a wide range of domains. It centers around building prototypes, testing them, and updating based on the test results. We discuss how we applied…
The fundamental unit of large scale software construction is the component. A component is the fundamental user interface object in Java. Everything you see on the display in a java application is a component. The ability to let users drag…
Synthesis from examples enables non-expert users to generate programs by specifying examples of their behavior. A domain-specific form of such synthesis has been recently deployed in a widely used spreadsheet software product. In this paper…
We propose the neural programmer-interpreter (NPI): a recurrent and compositional neural network that learns to represent and execute programs. NPI has three learnable components: a task-agnostic recurrent core, a persistent key-value…
The ability to express a program as a hierarchical composition of parts is an essential tool in managing the complexity of software and a key abstraction this provides is to separate the representation of data from the computation. Many…