Electrical Engineering and Computer Science Technical ReportsCopyright (c) 2014 Syracuse University All rights reserved.
http://surface.syr.edu/eecs_techreports
Recent documents in Electrical Engineering and Computer Science Technical Reportsen-usWed, 29 Oct 2014 17:33:54 PDT3600MetaProlog Design and Implementation
http://surface.syr.edu/eecs_techreports/181
http://surface.syr.edu/eecs_techreports/181Thu, 24 May 2012 06:52:59 PDT
Many researchers in the area of logic programming have recognized the limits of logic languages such as Prolog and suggested a meta level approach as an alternative. Some of the main drawbacks cited are the control strategy, the presence of a single database, and the ad hoc extensions to the base logic programming paradigm to allow the dynamic modification of the database. The MetaProlog language, which includes Prolog and some of its metalanguage, deals with some of these problems. In this paper, the design and implementation of MetaProlog are described and the changes to the Warren Abstract Machine (WAM) on which it is based are detailed. Familiarity with the WAM is assumed.
]]>
Hamid BachaBenchmarking the CM-5 for Image Processing Applications
http://surface.syr.edu/eecs_techreports/180
http://surface.syr.edu/eecs_techreports/180Mon, 07 May 2012 07:01:16 PDT
This paper presents benchmarking results for image processing algorithms on the Connection Machine model CM-5 and compares them with the results from the CM-2 and the Sun-4. Image processing algorithms with varying communication and computational requirements were implemented, tested and timed. The performance and the scalabilty of the CM-5 were analyzed and compared with that of the CM-2.
]]>
Ravi V. Shankar et al.Conceptual Background for Symbolic Computation
http://surface.syr.edu/eecs_techreports/179
http://surface.syr.edu/eecs_techreports/179Mon, 07 May 2012 07:01:14 PDT
This paper is a tutorial which examines the three major models of computation--the Turing Machine, Combinators, and Lambda Calculus--with respect to their usefulness to practical engineering of computing machines. While the classical von Neumann architecture can be deduced from the Turing Machine model, and Combinator machines have been built on an experimental basis, no serious attempts have been made to construct a Lambda Calculus machine. This paper gives a basic outline of how to incorporate a Lambda Calculus capability into a von Neumann type architecture, maintaining full backward compatibility and at the same time making optimal use of its advantages and technological maturity for the Lambda Calculus capability.
]]>
Klaus BerklingA Declarative Foundation of λProlog with Equality
http://surface.syr.edu/eecs_techreports/178
http://surface.syr.edu/eecs_techreports/178Mon, 07 May 2012 07:01:12 PDT
We build general model-theoretic semantics for higher-order logic programming languages. Usual semantics for first-order logic is two-level: i.e., at a lower level we define a domain of individuals, and then, we define satisfaction of formulas with respect to this domain. In a higher-order logic which includes the propositional type in its primitive set of types, the definition of satisfaction of formulas is mutually recursive with the process of evaluation of terms. As result of this in higher-order logic it is extremely difficult to define an effective semantics. For example to define T p operator for logic program P, we need a fixed domain without regard to interpretations. In usual semantics for higher-order logic, domain is dependent on interpretations. We overcome this problem and argue that our semantics provides a more suitable declarative basis for higher-order logic programming than the usual general model semantics. We develop a fix point semantics based on our model. We also show that a quotient of the domain of our model can be the domain of a model for higher-order logic programs with equality.
]]>
Mino BaiFault-Detection in Networks
http://surface.syr.edu/eecs_techreports/177
http://surface.syr.edu/eecs_techreports/177Mon, 07 May 2012 07:01:11 PDT
To find broken links in networks we use the cut-set space. Information on which nodes can talk, or not, to which other nodes allows reduction of the problem to that of decoding the cut-set code of a graph. Special classes of such codes are known to have polynomial-time decoding algorithms. We present a simple algorithm to achieve the reduction and apply it in two examples.
]]>
H. F. Mattson JrA Non-Deterministric Parallel Sorting Algorithm
http://surface.syr.edu/eecs_techreports/176
http://surface.syr.edu/eecs_techreports/176Mon, 07 May 2012 07:01:09 PDT
A miniswap Si,1 ≤ i < n, compares two adjacent keys Пi, Пi+1 in the sequence (П1, ... , Пn), and transposes them if they are out of order. A full sweep is any composition of all n - 1 possible miniswaps. We prove that the composition of any n- 1 full sweeps is a sorting function.
]]>
Xue Shirley Li et al.Embedding Data Mappers with Distributed Memory Machine Compilers
http://surface.syr.edu/eecs_techreports/175
http://surface.syr.edu/eecs_techreports/175Mon, 07 May 2012 07:01:07 PDT
In scalable multiprocessor systems, high performance demands that computational load be balanced evenly among processors and that interprocessor communication be limited as much as possible. Compilation techniques for achieving these goals have been explored extensively in recent years [3, 9, 11, 13, 17, 18]. This research has produced a variety of useful techniques, but most of it has assumed that the programmer specifies the distribution of large data structures among processor memories. A few projects have attempted to automatically derive data distributions for regular problems [12, 10, 8, 1]. In this paper, we study the more challenging problem of automatically choosing data distributions for irregular problems.
]]>
Ravi Ponnusamy et al.A Probabilistic Analysis of a Locality Maintaining Load Balancing Algorithm
http://surface.syr.edu/eecs_techreports/174
http://surface.syr.edu/eecs_techreports/174Mon, 07 May 2012 07:01:06 PDT
This paper presents a simple load balancing algorithm and its probabilistic analysis. Unlike most of the previous load balancing algorithms, this algorithm maintains locality. We show that the cost of this load balancing algorithm is small for practical situations and discuss some interesting applications for data remapping.
]]>
Kishan Mehrotra et al.General Model Theoretic Semantics for Higher-Order Horn Logic Programming
http://surface.syr.edu/eecs_techreports/173
http://surface.syr.edu/eecs_techreports/173Mon, 07 May 2012 07:01:04 PDT
We introduce model-theoretic semantics [6] for Higher-Order Horn logic programming language. One advantage of logic programs over conventional non-logic programs has been that the least fixpoint is equal to the least model, therefore it is associated to logical consequence and has a meaningful declarative interpretation. In simple theory of types [9] on which Higher-Order Horn logic programming language is based, domain is dependent on interpretation [10]. To define T p operator for a logic program P, we need a fixed domain without regard to interpretation which is usually taken to be a set of atomic propositions. We build a semantics where we can fix a domain while changing interpretations. We also develop a fixpoint semantics based on our model, and show that we can get the least fixpoint which is the least model. Using this fixpoint we prove the completeness of the interpreter of our language in [14].
]]>
Mino Bai et al.Designing Efficient Maximum-Likelihood Soft-Decision Decoding Algorithms for Linear Block Codes Using Algorithm A*
http://surface.syr.edu/eecs_techreports/172
http://surface.syr.edu/eecs_techreports/172Mon, 07 May 2012 07:01:02 PDT
In this report we present a class of efficient maximum-likelihood soft-decision decoding algorithms for linear block codes. The approach used here is to convert the decoding problem into a search problem through a graph which is a trellis for an equivalent code of the transmitted code. Algorithm A*, which uses a priority-first search strategy, is employed to search through this graph. This search is guided by an evaluation function f defined to take advantage of the information provided by the received vector and the inherent properties of the transmitted code. This function f is used to drastically reduce the search space and to make the decoding efforts of this decoding algorithm adaptable to the noise level. For example, simulation results for the (128,64) binary extended BCH code indicate that for most real channels the proposed decoding algorithm is at least fifteen orders of magnitude more efficient in time and in space than that proposed by Wolf. Simulation results for the (104, 52) binary extended quadratic residue code are also given. These simulation results indicate that the use of Algorithm A* for decoding has resulted not only in an efficient soft-decision decoding algorithm for hitherto intractable linear block codes, but an algorithm which is in fact optimal as well.
]]>
Yunghsiang S. Han et al.Parallel Monte Carlo Trials
http://surface.syr.edu/eecs_techreports/171
http://surface.syr.edu/eecs_techreports/171Mon, 07 May 2012 07:01:00 PDT
The best results of Monte Carlo methods are generally obtained by performing the same computation many times with different random numbers. We develop a generic algorithm for parallel execution of Monte Carlo trials on a multicomputer. The generic algorithm has been adapted for simulated annealing and primality testing by simple substitutions of data types and procedures. The performance of the parallel algorithms was measured on a Computing Surface.
]]>
Per Brinch HansenSimulated Annealing
http://surface.syr.edu/eecs_techreports/170
http://surface.syr.edu/eecs_techreports/170Mon, 07 May 2012 07:00:58 PDT
This tutorial describes simulated annealing, an optimization method based on the principles of statistical mechanics. Simulated annealing finds near-optimal solutions to optimization problems that cannot be solved exactly because they are NP-complete. The method is illustrated by a Pascal algorithm for the traveling salesperson problem. The performance of the algorithm was measured on a Computing Surface.
]]>
Per Brinch HansenPrimality Testing
http://surface.syr.edu/eecs_techreports/169
http://surface.syr.edu/eecs_techreports/169Mon, 07 May 2012 07:00:56 PDT
This tutorial describes the Miller-Rabin method for testing the primality of large integers. The method is illustrated by a Pascal algorithm. The performance of the algorithm was measured on a Computing Surface.
]]>
Per Brinch HansenNumerical Solution of Laplace's Equation
http://surface.syr.edu/eecs_techreports/168
http://surface.syr.edu/eecs_techreports/168Mon, 07 May 2012 07:00:55 PDT
This tutorial discusses Laplace's equation for steady state heat flow in a two-dimensional region with fixed temperatures on the boundaries. The equilibrium temperatures are computed for a square grid using successive overrelaxation with parity ordering of the grid elements. The numerical method is illustrated by a Pascal algorithm. We assume that the reader is familiar with elementary calculus.
]]>
Per Brinch HansenParallel Cellular Automata: A Model Program for Computational Science
http://surface.syr.edu/eecs_techreports/167
http://surface.syr.edu/eecs_techreports/167Mon, 07 May 2012 07:00:53 PDT
We develop a model program for parallel execution of cellular automata on a multicomputer. The model program is then adapted for simulation of forest fires and numerical solution of Laplace's equation for stationary heat flow. The performance of the parallel program is analyzed and measured on a Computing Surface configured as a matrix of transputers with distributed memory.
]]>
Per Brinch HansenMultiple-Length Division Revisited: A Tour of the Minefield
http://surface.syr.edu/eecs_techreports/166
http://surface.syr.edu/eecs_techreports/166Mon, 07 May 2012 07:00:51 PDT
Long division of natural numbers plays a crucial role in Cobol arithmetic, cryptography, and primality testing. Only a handful of textbooks discuss the theory and practice of long division, and none of them do it satisfactorily. This tutorial attempts to fill this surprising gap in the literature on computer algorithms. We illustrate the subtleties of long division by examples, define the problem concisely, summarize the theory, and develop a complete Pascal algorithm using a consistent terminology.
]]>
Per Brinch HansenAll-to-Many Communication Avoiding Node Contention
http://surface.syr.edu/eecs_techreports/165
http://surface.syr.edu/eecs_techreports/165Mon, 07 May 2012 07:00:49 PDT
In this paper we present several algorithms for all-too-many personalized communications which avoid node contention.
]]>
Sanjay Ranka et al.Genetic Algorithms for Stochastic Flow Shop No Wait Scheduling
http://surface.syr.edu/eecs_techreports/164
http://surface.syr.edu/eecs_techreports/164Mon, 07 May 2012 07:00:48 PDT
ln this paper we present Genetic Algorithms - evolutionary algorithms based on an analogy with natural selection and survival of the fittest - applied to an NP Complete combinatorial optimization problem: minimizing the makespan of a Stochastic Flow Shop No Wait (FSNW) schedule. This is an important optimization criteria in real-world situations and the problem itself is of practical significance. We restrict our applications to the three machine flow shop no wait problem which is known to be NP complete. The stochastic hypothesis is that the processing times of jobs are described by normally distributed random variables. We discuss how this problem may be translated into a TSP problem by using the start interval concept. Genetic algorithms, both sequential and parallel are then applied to search the solution space and we present the algorithms and empirical results.
]]>
Harpal Maini et al.Binary Resolution in Surface Reasoning
http://surface.syr.edu/eecs_techreports/163
http://surface.syr.edu/eecs_techreports/163Mon, 07 May 2012 07:00:46 PDT
Intuition suggests the hypothesis that everyday human reasoning is conducted in the written or spoken natural language, rather than in some disparate representation into which the surface language is translated. An examination of human reasoning reveals patterns of inference that parallel binary resolution. But any standard implementation of resolution requires Skolemization. Skolemization would seem an unlikely component of human reasoning. This appears to contradict the hypothesis that human reasoning takes place at the surface. To reconcile these observations, this paper develops a new rule of inference, which operates on surface expressions directly. This rule is shown to produce results which exactly parallel those produced by Skolemization and resolution. It extends the notion of 'surface reasoning' that was defined in previous papers. Several examples are given to illustrate its use in surface reasoning.
]]>
William C. PurdyA Generalization of the Trie Data Structure
http://surface.syr.edu/eecs_techreports/162
http://surface.syr.edu/eecs_techreports/162Mon, 07 May 2012 07:00:44 PDT
Tries, a form of string-indexed look-up structure, are generalized to permit indexing by terms built according to an arbitrary signature. The construction is parametric with respect to the type of data to be stored as values; this is essential, because the recursion which defines tries appeals from one value type to others. "Trie" (for any fixed signature) is then a functor, and the corresponding look-up function is a natural isomorphism. The trie functor is in principle definable by the "initial fixed point" semantics of Smyth and Plotkin. We simplify the construction, however, by introducing the "category-cpo", a class of category within which calculations can retain some domain-theoretic flavor. Our construction of tries extends easily to many-sorted signatures.
]]>
Richard H. Connelly et al.