Kronecker Products and Shuffle Algebra

116 I E E E T R A N S A C T I O N S O N C O M P U T E R S , V O L . C-30, N O . 2, F E B R U A R Y 1981 Kronecker Products and Shuffle Algebra MAR...
Author: John Riley
1 downloads 0 Views 2MB Size
116

I E E E T R A N S A C T I O N S O N C O M P U T E R S , V O L . C-30,

N O . 2, F E B R U A R Y

1981

Kronecker Products and Shuffle Algebra MARC DAVIO

Abstract—The paper relates three classical concepts, viz. mixed radix number system, Kronecker product of matrices, and perfect shuffle. It presents an algebra which describes the hardware organi­ zation of the computation of a product Mv, where Μ is a matrix in Kronecker product form and ν is a vector. The algebraic formalism describes both the blockwise structure of the computation and the various possible connection patterns. Index Terms—Kronecker product of matrices, mixed radix number systems, perfect shuffle.

C

I.

INTRODUCTION

E L L U L A R logic has, for a long time, attracted the at­ tention of designers. In the recent past, arrays of logical operators showing up a regular connection pattern, such as arithmetic arrays, have raised up a renewed interest in the perspective of their implementation in LSI form. The present paper addresses a class of circuits whose aim is to compute the transform w = Mv of a vector £ by a matrix Μ when the latter has a Kronecker product (or direct product) structure. The interest of this structure is that it corresponds to a decomposition of the circuit computing w: in many prac­ tical instances, the resulting circuit will consist of a regular interconnection of identical operators. Such a situation is encountered in quite a number of appli­ cation fields viz. H a d a m a r d transform [1], discrete Fourier transform [ 2 ] - [ 6 ] , connection and substitution networks [7]-[9], [20], canonical expansion of discrete functions [10], [11], • · · . It is only possible to give here a small sample of the subject literature and we tried to select, among the relevant references, those whose formalism was the closest to the one we use here. For additional references, refer, for example, to [12] and [13]. It is interesting to recall here some of the milestones in the development of the underlying theory: 1) discovery of the constant geometry networks computing the H a d a m a r d transform (1958, [2]), 2) quantitative estimation of the advantages obtained from the Kronecker product structure, both in hardware investment and in storage requirement (1963, [10]), 3) description of the fast Fourier transform ( F F T ) as a product of transformation and of permutation matrices (1968, [4]), and 4) arithmetic description of the perfect shuffle establishing its relation with the binary number system (1971, [8]). Most often these results have been obtained in a specific context (say the discrete transform theory) and are little or not Manuscript received April 2,1979; revised March 10, 1980 and September 10, 1980. The author is with Philips Research Laboratory, Brussels, Belgium.

known in other possible application contexts (say permutation networks). The main result of the present paper is to establish a common background for all these problems; it is achieved thanks to three basic concepts: the mixed radix number rep­ resentation systems, the Kronecker product of matrices, and the (generalized) perfect shuffle. While these concepts are classical, their tight relationships probably never have been clearly stated. This is the subject matter of Section II, which furthermore lays the basis of a shuffle algebra and establishes a set of relations describing commonly encountered connection patterns. Section III is devoted to the factorization of Kro­ necker products. It first presents a decomposition theorem, which extends to Kronecker products of arbitrary matrices a factorization of Kronecker powers of square matrices first described by Lechner [10]. It next uses the shuffle algebra to derive from the basic decomposition theorem a number of equivalent circuits. The interconnection patterns of the Cooley-Tukey [3] and of the Yates [14], Good [2] types appear as particular cases of the obtained circuits. II. B A S I C C O N C E P T S

A. Mixed Radix Number Representation

Systems

1) Introductory example: If we wish to convert into seconds a duration such as 3 days 7 h 22 min 4 s (written [3, 7, 22,4]), we use the formula 3.86400 + 7.3600 + 22.60 + 4 = 285724. The obtained number of seconds appear as a weighted sum of the duration [3, 7, 22, 4 ] . The weights are given by the vector [86400, 3600, 60, 1]. 2) Definition and representation theorem: This familiar situation is imbedded in the concept of mixed radix number representation system that we now define formally. Consider an integer valued vector b= [b -

,b b ];

n h

u

bi>2.

0

(1)

This vector is called basis vector. Build, from this vector a second vector w = [w , w n

• • •, w , w ]

n h

x

0

(2)

called weight vector and defined by i-\ w

= 1; Wi = Wi-xbi-χ

0

= Π bj\

is

( 1 , 2 , · · · , n}.

(3)

7=0

Theorem

0018-9340/81/0200-0116500.75

1: Any integer A such that 0^A