14
Decoupling the Dimensions of a System of Affine Recurrence Equations Yoav Yaacoby Department of Electrical & Computer Engineering University of California Santa Barbara, California 93106 and Peter R. Cappello* Department of Computer Science University of California Santa Barbara, California 93106 Submitted by Abraham Berman ABSTRACT Most work on the problem of synthesizing a systolic array from a system of recurrence equations is restricted to systems of uniform recurrence equations. In this paper, this restriction is relaxed to include systems of a&e recurrence equations. A system of uniform recurrence equations typically can be embedded in space-time so that the distance between a variable and a dependent variable does not depend on the problem size. Systems of afEne recurrence equations which are not uniform do not enjoy this property. However, a method has been presented in another paper for converting a system of a&e recurrence equations to an equivalent system of recur- rence equations that is uniform, except for points near the boundaries of its index sets. In this paper a procedure is presented for decoupling the dimensions of the system of af&e recurrence equations, thereby simplifying the conversion to an equivalent system that is uniform (except for points near the boundaries). *This work was supported by the National Science Foundation under grant MIP89-20598, and the Lawrence Livermore National Laboratories. LINEAR ALGEBRA AND ITS APPLICATIONS 167: 157- 170 (1992) 157 0 Elsevier Science Publishing Co., Inc., 1992 655 Avenue of the Americas, New York, NY 10010 0024-3795/92/$05.00

Decoupling the dimension of a system of affine recurrence equations

  • Upload
    ucsb

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Decoupling the Dimensions of a System of Affine Recurrence Equations

Yoav Yaacoby

Department of Electrical & Computer Engineering

University of California Santa Barbara, California 93106

and

Peter R. Cappello*

Department of Computer Science

University of California

Santa Barbara, California 93106

Submitted by Abraham Berman

ABSTRACT

Most work on the problem of synthesizing a systolic array from a system of

recurrence equations is restricted to systems of uniform recurrence equations. In this

paper, this restriction is relaxed to include systems of a&e recurrence equations. A

system of uniform recurrence equations typically can be embedded in space-time so

that the distance between a variable and a dependent variable does not depend on the

problem size. Systems of afEne recurrence equations which are not uniform do not

enjoy this property. However, a method has been presented in another paper for

converting a system of a&e recurrence equations to an equivalent system of recur-

rence equations that is uniform, except for points near the boundaries of its index sets.

In this paper a procedure is presented for decoupling the dimensions of the system of

af&e recurrence equations, thereby simplifying the conversion to an equivalent system

that is uniform (except for points near the boundaries).

*This work was supported by the National Science Foundation under grant MIP89-20598,

and the Lawrence Livermore National Laboratories.

LINEAR ALGEBRA AND ITS APPLICATIONS 167: 157- 170 (1992) 157

0 Elsevier Science Publishing Co., Inc., 1992

655 Avenue of the Americas, New York, NY 10010 0024-3795/92/$05.00

158 YOAV YAACOBY AND PETER R. CAPPELLO

I. INTRODUCTION

An important property of any VLSI system is physical regularity. Systolic arrays [14, 131 and wavefront arrays [15] h ave an iterative form of physical regularity. Array architecture is suited to VLSI technology; replicating a processing element reduces design cost, and neighbor communication be- tween processing elements reduces operation cost. Leiserson, Rose, and Saxe [17, 161 show how to convert a finite network without zero-delay cycles to an equivalent network that functions systolically (see also [ZS]). Melhem and Rheinboldt [19] give a mathematical model for the verification of systolic networks.

A system of uniform recurrence equations, as defined by Karp, Miller, and Winograd [12, II], maps especially well onto a systolic/wavefront array. This is noted explicitly by Chen and Mead [4] and Quinton [25, 261, for example. Linearly mapping a system of recurrence equation’s index sets into space-time has been pursued by Cappello and Steiglitz [l-3]. Fortes et al. [9] survey seventeen methodologies for the design of systolic arrays. Systematic transla- tion from either a program fragment or a system of uniform recurrence equations to systolic/wavefront arrays has been studied by Moldovan [22, 211, Quinton [25, 261, Miranker and Winkler [20], Delosme and Ipsen [7], and Moldovan and Fortes [23]. Rao [27] introduces and analyzes a class of algo- rithms, called regular iterative algorithms, which contains systolic algorithms.

A system of uniform recurrence equations typically can be mapped linearly into space-time so that interprocessor communication requires only a fixed amount of memory and fixed-length interconnections. There is no such linear mapping into space-time for systems of uffine recurrence equations which are not uniform. Delosme and Ipsen [8] present the first elements of a methodol- ogy for determining systolic array schedules for a two-dimensional system of affine recurrence equations. Choffrut and Culik [5] treat a related problem. They apply a geometric transformation to a systolic array, such that an output can be fed back as an input via physically neighboring connections. They fold the array, eliminating long wires for connections between elements (in a two-dimensional array) that are related by reflections and/or rotations. Yaacoby and Cappello [29] treat systems of alline recurrence equations of any finite dimension. They formulate a “generalized fold” and provide a procedure for converting a system of afRne recurrence equations to an equivalent system that is uniform except for points near its boundaries. These latter systems are called systems of quasiuniform recurrence equations.

In this paper a method is presented which decouples the dimensions of the system before conversion whenever possible, thus simplifying the conversion. Such a decoupling entails finding a similarity transformation that can be

SYSTEM OF AFFINE RECURRENCE EQUATIONS 159

applied to an integer matrix group that partially diagonahzes each matrix in the group. This partial diagonahzation is reminiscent of the Jordan form. The Jordan form however cannot be used for three reasons:

we have a group of matrices, not a single matrix; the similarity matrix must be integer; the transformed matrix group must be integer.

This decoupling also may be useful in other applications.

2. DEFINITIONS

The equations in Example 1 below are an example of a system of recur-

rence equations (SRE).

EXAMPLE 1. l<j(n-1,

l<i<j-1, a,(i, j) = a,(i + 1, j - l), (1)

l<i<j+l, a,(i, j) = a,(i + 1, j)u,(j + 2 - i, j - 1)

+ u,(i, j - 1). (2)

These recurrence equations are used to illustrate some of the following definitions, which are related to an SRE:

Index set: The set of points where an array is computed or used. Domain of cutnputution: The set of points Ci where an array ui is computed

[e.g., C, = {(i, j)) 1 (j Q n - 1, 1 ( i <j + 1) in Equation (2)].

Dependence map: A function hij from the domain of computation of the array

uj to the index set of ui, on which the computation of uj depends [e.g., 6,,(p) = p + (1 0)r in Equation (2)].

Afine dependence: A dependence map of the form Sij( p) = Dij p + dij where Dij E Znx” and dij E Z” [e.g.,

h(p)=(-: :)p+(_;)

in Equation (2)]. In the remainder of this paper, we assume that D, is nonsingular and integer, unless specified otherwise.

Uni$orm dependence: An aifine dependence of the form Sij( p) = p + dij (i.e., Dij = I).

160 YOAV YAACOBY AND PETER R. CAPPELLO

A system of afine [ uni$orm] recurrence equations (SAKE[ SURE]): SRE where the dependence maps are a&e [uniform], and every array is computed in one recurrence equation for its entire domain of computation (e.g., Equa- tions (l), (2) are an SARE).

3. DECOUPLING THE DIMENSIONS OF AN SARE

This section describes how the dimensions of an SARE can be decoupled. This procedure is applied before converting the SARE to a system of quasiuni- form recurrence equations (a system that is uniform except for points near its boundaries [30]). This reduces the dimension of the SARE that needs to be converted.

3.1. Decoupling a Finite Group of Integral Matrices

The following lemma was proved by C. Hermite in 1849 [18].

LEMMA 3.1.1. Let aI, as, . . . , a, be integer’ with greatest common divi-

sor d, (in case all the numbers are zero, define d, = 0). There exists an integral

matrix of determinant d, having a,, as, . . . , a,, as its first row.

The matrix constructed in the proof of the above lemma is almost lower triangular (except for the first row).

The following theorem is useful in decoupling the dimensions in SAREs that can be converted to a system of quasiuniform recurrence equations.

LEMMMA 3.1.2. Let G be a finite group of integral matrices { Di} (i.e., GC GL(n, Z)). If there exists a nonzero vector 7~ E Z n which satisfies

aTDi = rrT v Di E G, then there exists M E Z * Xn such that

1 0 se* 0

M&W’= ?

I 1 Bi vDicG,

0

where Bi~Z(“-l)X(“-‘), and the first row of M is uT.

Proof. Suppose ‘lr is primitive. 2 According to Lemma 3.1.1 there exists a matrix A, having rrT as the first row, whose determinant is 1. Thus A-’ is integral. The first row of AD, A-’ is l,O,O, . . . , 0 for all Di E 6. Also, since all

1 The ai, in general, can he elements of any principal-ideal ring.

2 That is, the greatest common divisor of its components is 1.

SYSTEM OF AFFINE RECURRENCE EQUATIONS 161

matrices are integral, their product is integral. Denote the above product by

1 0

[ I li Bi '

where Zi is a column vector, and Bi is an (n - 1) x (n - 1) submatrix. Since a is fixed for all Di E G, G is reducible [6]. From Maschke’s theorem [24, Theorem 9, p. 141, it follows that G is fully reducible. Thus, there exists a matrix M which satisfies Equation (3). In particular, M = T-‘A, where A is the matrix mentioned above. and

where h is the order of g. From this construction (given in [24]), the first row of M is aT, as needed. Also, M is rational since A is integer, and T-l is rational. By scaling all rows of M except the first, and corresponding columns of M- ' (by a positive integer), one gets an integral M, as needed. The first row of M is still ?yT. Also, the new M and M-' still satisfy Equation (3).

Now, if K is not primitive, construct M' as above for ?r /gcd( mi). Construct M as follows. Multiply the first row of M' by gcd(rJ, so that ?yT will be the first row of M, and divide accordingly the first column of (M')- '. The new M and M-l satisfy Equation (3). n

EXAMPLE 1A. Consider Example 1 given in Section 2. In that example, the dependence maps are

&(i,j) = [-i i](i) + (_F),

G2(iaj) = [h y](j) + (_y),

b(i,j) = [A i](i) + (i),

b(i,j) = [i y](i) + (_:).

The linear parts of the dependence includes the following two matrices:

Da= I, D,

maps generate the group G, which

-1 1 = [ I 0 1’

162 YOAV YAACOBY AND PETER R. CAPPELLO

The vector 7rT = (0 1) is a common left eigenvector of eigenvalue 1 for Da and D,. (This vector is constructed in Example 1B using Procedure 1. See Section 3.2.) The matrix A, from Lemma 3.1.1, is

Its inverse is

A-‘= 0 -1

[ 1 1 0’

We now have

ADoA-'= I, and AD&'=[_; _;]

Thus,

and T-' =

We therefore get the following matrices:

and M-1 = A-IT=

Since we want M to be integer, we multiply its second row by 2 and update M- ' accordingly, obtaining:

M now is an integral matrix whose first row is nT We have

as needed.

SYSTEM OF AFFINE RECURRENCE EQUATIONS 163

THEOREM 3.1. Let G be a finite group of integral m&rices { Di} (i. e., G C

GL( n, 2)). lf there exist k linearly independent vectors ?rl, r2, . . . , rk E Z” which satisfy ?rj’Di = T]? vj, vDi E G, then there exists M E Z nXn such that

MD,M= lkxk o

1 1 0 ‘i vDie G,

nxn

wbe Bi E ZVW-4, and the first k rows of M are TT, xi,. . . , ?r[.

Proof. We prove it by induction on k. For k = 1, the theorem follows from Lemma 3.1.2. Suppose it is true for k = 1. We prove it for k = 1 + 1. By supposition, there exists M, such that

vDi E G, “X”

where B, E Z(“-‘)x(“-‘), and the first 1 rows of M, are xT, xt,. . . , vrf’. Let pT = TT+l l M- ‘, and denote the last n - 1 entries of p by 6. We claim

that 17 # 0. Suppose otherwise. Then since pTM, = XT+,, it follows that ~:+r is a linear combination of the first 1 rows of M,. But these are OFT, xl, . . . , T:. a contradiction; it is given that the 1 + 1 vectors are linearly independent.

Let fi = cfi E Z”-’ (i.e., c scales 6 to be a nonzero integer vector 5). Since { Di} form a finite group, the Bi do too. Using Lemma 3.1.2, construct a matrix A E Z(“-‘-l)x(“-‘) such that

Define Ml + 1 as follows:

0

1 vB. jj.~Z(“-‘-‘)X(“-‘-l)~ (6)

I) I

where A is the matrix as defined above, and 0 is a zero submatrix of dimension (n - 1 - 1) x 1. MI+, is an n x n integer matrix as needed, and its first 1 + 1

rows are the given 1 + 1 vectors. Since the first 1 + 1 rows of MI,, are

164 YOAV YAACOBY AND PETER R. CAPPELLO

eigenvectors of eigenvalue 1 for all Dj in G, the first I + 1 rows of M,,, Di Ml-,’

are [I O]([+rjxn. The last n - 1 - 1 rows are

[0 A] MIDiM;+‘: = [0 A] MIDiM;‘MIM;,‘,

Ml M;+” = [0 AB,] Ml M;+li.

From Equation (6) AB, = giA. Thus,

[0 AR,] Ml M;,l = [ 0 ii A] M, M;+lI

= &[O A] M,M;+‘, = [o ii].

The last equality follows from the fact that [0 AIM, are the last n - 1 - 1

rows of Ml+,, and thus [[0 A] Ml] M;,’ = [0 I]. So we have

MI + 1 Di MC+1 I 0

= [ I 0 iii’

3.2. Decoupling the Dimensions of SAREs

The above theorem can be used to decouple the dimensions of an SARE whenever the SARE can be converted to a system of quasiuniform recurrence equations and the group of the linear parts of its cycle dependence maps3 has common left eigenvectors of an eigenvalue 1. As proved in [31], there is one such vector whenever the SARE has an atIke schedule.

The following procedure finds all left eigenvectors of eigenvalue 1 common to all matrices Dj in a finite group G. We are given that D,, D,, . . . , D, are the generators of G.

PROCEDURE 1 (Find vectors u such that vDi E G, DTv = u). Define the following matrix:

A=

D;- I’

Dl-I

D; - 1 ,k “XR

"A cycle of dependence map is a composition of dependences such that a variable

depends on (a different index value of) itself.

SYSTEM OF AFFINE RECURRENCE EQUATIONS 165

One can see that the required vectors form a basis of the null space of A. Steps 1-3 below determine such a basis:

1

2.

3.

Perform (1) Gauss-Jordan reduction, (2) a possible row and column permu-

tation and (3) deletion of zero rows, on the matrix A. The resulting matrix is of the form

[ ‘mxM El men’

If m = n (i.e., E is empty), then return (no such vector exists). There are n - m independent vectors, for example, the columns of the following matrix:

-E

[ 1 z .

The procedure above requires an exact solution. If all the matrices in the group are integer, then the submatrix e is rational, since Gauss-Jordan

reduction does not introduce irrational numbers. In this case, these vectors can be scaled to integer vectors, and the computer’s exact integer arithmetic can be used. However, as A gets larger, the word size for elements of A also must increase. In case A is small, this presents no problem, as can be seen in the next example.

EXAMPLE 1B. Consider the SARE In Example 1. As mentioned in Exam- ple lA, the linear parts of the dependence maps, which generate a finite group

G, include the following two matrices:

D, = I, -1 1 Di= o 1.

[ 1

The corresponding matrix

A= -21000000T 1 00000000’

After Gauss-Jordan reduction and deleting zero rows we get [ Zlxl El,,,

= (1 0). Taking the column of -“I [ 1

gives u r = (0 1).

4 For notational simplicity, we assume that no column permutation is needed.

166 YOAV YAACOBY AND PETER R. CAPPELLO

Procedure 2 uses the above theorem and procedure to decouple the dimensions of an SARE (which can be converted to a system of quasiuniform recurrence equations [30]).

PROCEDURE 2 (Decouple the dimensions in a SARE).

1. Perform a tree conversion on the SARE.5 2. Invoke Procedure 1 to find all common left eigenvectors for an

eigenvalue 1 of the linear parts of the direct dependence maps (suppose there are k of them).

3. Generate the group using the linear parts of the direct dependence maps as generators.

4. Compute the matrix M as described in the proof of Theorem 3.1. 5. Linearly transform all index sets by M, and update the dependence

maps accordingly. 6. Reduce the dimension by k [delete the first k components of every

index point, the first k components of dij (the translation part of direct dependence hij), and the first k rows and first k columns of every Dij (the linear part of direct dependence 6jj )].

The new dependence maps have dimension which is reduced by k. The conversion of an SARE of reduced dimension [30] is simpler to construct and simpler to apply.

EXAMPLE 1C. Consider the SARE in Example 1. Steps 1-4 in Procedure 2 have been done in Examples 1B and 1A. Step 5 now can be applied to the SARE, resulting in the following SARE: 1 < i < n - 1,

2-i<j(j+ieven)<i-2, a,(i, j) = a,(i - 1, j - 3); (7)

-1 -i<j(j+iodd) <i-3,

a,(i, j) = -a,(i - 1, j - 2)a,(i - 1, -j - 5) + aa(i - 1, j - I). (8)

The dependences in the last dimension are now as follows: u2(j) depends on u3(j - 9, on aa( -j - 5), and on ua(j - 1); as(j) depends on u3( j - 3). It

5A tree conoemion is a procedure that applies affine transformations to the index sets of

the arrays [8, 301.

SYSTEM OF AFFINE RECURRENCE EQUATIONS 167

is now easier to convert the SARE to an equivalent system of quasiuniform recurrence equations [30], because there is one less dimension.

3.3 Generalizations

The above results can be generalized in two ways:

1. Let V= {7rl,..., rk} be a set of linearly independent vectors such that for odd k, vDi E C, rcDi = f ?T:, and for 1 < m < [k /2] and VDi E G either

a T~,,_~D~= +T;,,_~ and rl,,,Di= *?rT,,,, or

8 ( rsm- 1 + jT2,)Qi = +j( *2m_ 1 + j~2,)~.

In this case, there exists an ME Z”‘” such that the first k rows of M are

?r;, . . . ) Tr;, where T( = cxi for some constant c, and

ML&@= (9)

where

The row above the matrix Bi with -t 1 on the diagonal is present only in case k

is odd. The proof of this follows the same arguments as those in the proof of Theorem 3.1, with induction on m (i.e., two vectors are added at a time), and by using Maschke’s theorem as in Lemma 3.1.2, but for a 2 x 2 block.

2. Let V= {*i,.... ok} be a set of linearly independent vectors such that for odd k, vDi E G, rtDi = f vrt, and for 1 < m < L k /2] and vDi E G either

id, (

T a 7r2,,,_rDi = f*,,,_, and rlmDi = +-rl,,, or

~2,,,_1 + j,2,)TDi = Xi,m(?TPm--l +j~&~, where X,,,EC.

In this case, there exists an ME Rnx” such that the first k rows of M are 7r;, . . . , i?i, where xl = C’K( for some constant c, and MDiM-' has the form in Equation (9) with the exception that 0 can be any real Jordan block. The proof of this is based on the real Jordan form [lo], using the same arguments as those in the proof of Theorem 3.1.

168 YOAV YAACOBY AND PETER R. CAPPELLO

In the first case, we preserve the integer entries in D and d (the parts of the afBne dependence map), and the lattice remains in Z”. In the second case, these entries are not necessarily integer, and the lattice is not necessarily in Z”. In this latter case, we thus have to make a linear transformation M-’ at the end of the conversion. Also, in the second case we no longer can work with integer arithmetic.

The above decoupling further simplifies the conversion process, but it is more difficult to find the desired eigenvectors, since we no longer require that they be for the same eigenvalue (i.e., Procedure 1 cannot be used).

REFERENCES

1

2

3

4

5

6

7

8

9

10

Peter R. Cappello, VLSI Architecture for Digital signal Processing, Ph.D. Thesis, Princeton Univ., Princeton, N.J., Oct. 1982. Peter R. Cappello and Kenneth Steiglitz, Unifying VLSI array design with geometric transformations, in Proceedings of the international Conference

on Parallel Processing H. J. Siegel and Leah Siegel eds. Bellaire, Mich., Aug. 1983, pp. 448-457. Peter R. Cappello and Kenneth Steiglitz, Unifying VLSI array design with linear transformations of space-time, in Advances in Computing Research,

Volume 2: VLSl Theory, JAI Press, Greenwich, Conn., 1984, pp. 23-65. Marina C. Chen and Carver Mead, Concurrent algorithms as space-time recursion equations, in VLSI & Modern Signal Processing (S.-Y. Kung, H. J. Whitehouse, and Thomas Kailath, Eds.), Prentice-Hall, Englewood Cliffs, N.J., 1985. C. Choffrutt and K. Culik II, Folding of the plane and the design of systolic arrays, Inform. Process. Lett. 17:149-153 (1983). C. W. Curtis and I. Reiner, Representation Theory of Finite Groups and

Associative Algebras, Wiley-Interscience, New York, 1962. Jean-Marc Delosme and Ilse C. F. Ipsen, An illustration of a methodology for the construction of efficient systolic architectures in VLSI, in Proceed-

ings of the 2nd International Symposium on VLSI Technology, Systems and

Applications, Taipei, 1985, pp. 268-273. Jean-Marc Delosme and Ilse C. F. Ipsen, Systolic Array Synthesis: Com- putability and Time Cones, Technical Report Yale/DCS/RR-474, Yale Univ., May 1986. Jose A. B. Fortes, King-Sun Fu, and Benjamin W. Wah, Systematic approaches to the design of algorithmically specified systolic arrays, in Proceedings of the International Conference on Acoustics, Speech, and

Signal Processing, Tampa, 1985, pp. 300-303. R. A. Horn and C. A. Johnson, Matrix Analysis, Cambridge U. P., 1985.

SYSTEM OF AFFINE RECURRENCE EQUATIONS 169

11

12

13

14

15

16

17

18 19

20

21

22

23

24

25

26

27

Richard M. Karp, Richard E. Miller, and Shmuel Winograd, Properties of a model for parallel computations: Determinancy, termination, queueing, SIAM J. Appl. Math. 14:1390-1411 (1966). Richard M. Karp, Richard E. Miller, and Shmuel Winograd, The organi- zation of computations for uniform recurrence equations, J. Assoc. Com-

put. Much. 14:563-590 (1967). H.-T. Kung, Why systolic architectures, Computer 15(1):37-45 (Jan. 1982). H.-T. Kung and Charles E. Leiserson, Algorithms for VLSI processor arrays, in Introduction to VLSI Ssystems, Addison-Wesley, Menlo Park, Calif., 1980, pp. 271-292. S.-Y. Kung, On supercomputing with systolic/wavefront array processors, Proc. IEEE, July 1984. Charles E. Leiserson, Flavio M. Rose, and James B. Saxe, Optimizing synchronous circuitry by retiming, in Proceedings of the Third Caltech

Conference on VLSI, Rockville, Md., 1983, Computer Science Press. Charles E. Leiserson and James B. Saxe, Optimizing synchronous sys- tems, in Proceedings of the 1EEE 22nd Annual Symposium of Computer

Science, Oct. 1981. C. C. MacDuffee, The Theory of Matrices, Chelsea, New York, 1946. R. G. Melhem and W. C. Rheinboldt, A mathematical model for the verification of systolic networks, SlAM J. Comput. 13(3):541-565 (Aug. 1984). Willard L. Miranker and Andrew Winkler, Spacetime representations of computational structures, Computing 32:93-114, (1984). Dan I. Moldovan, On the analysis and synthesis of VLSI algorithms, IEEE

Trans. Comput., C-31:1121-1126, (Nov. 1982). Dan 1. Moldovan, On the design of algorithms for VLSI systolic arrays, Proc. 1EEE 71(1):113-120 (Jan. 1983). Dan I. Moldovan and Jose A. B. Fortes, Partitioning and mapping algorithms into fixed systolic arrays, 1EEE Trans. Comput. C-35(1):1 -12

(Jan. 1986). M. Newman, Matrix representation of groups, in Applied Math. Ser. 60,

Inst. for Basic Standards, National Bureau of Standards, Washington, DC 20234, July 1968. Patrice Quinton, Automatic synthesis of systolic arrays from uniform recurrent equations, in Proceedings of the 1 lth Annual Symposium on Computer Architecture, 1984, pp. 208-214. Patrice Quinton, The Systematic Design of Systolic Arrays, Princeton U.P., 1987, pp. 229-260. Sailash K. Rao, Regular Iterative Algorithms and Their Implementation on Processor Arrays, Ph.D. Thesis, Stanford Univ., Oct. 1985.

170 YOAV YAACOBY AND PETER R. CAPPELLO

28 Jeffrey D. Ullman, Computational Aspects of VLSI, Computer Science Press, RockviJJe, MD 20850, 1984.

29 Yoav Yaacoby and Peter R. Cappello, Converting afhne recurrence equa- tions to quasiuniform recurrence equations, SZAM J. Comput. submitted for publication.

30 Yoav Yaacoby and Peter R. Cappello, Converting at&e recurrence equa- tions to quasiuniform recurrence equations, in VLSI Algorithms and

Architectures (John H. Reif, Ed.), Springer-Verlag, June 1988, pp. 319-328.

31 Yoav Yaacoby and Peter R. Cappello, Scheduling a system of nonsingular affrne recurrence equations onto a processor array, J. VLSI Signal Process.

1(2):115-125 (1990).

Received June 1990; final manuscript accepted 15 November 1991