Upload
h-j
View
212
Download
0
Embed Size (px)
Citation preview
H. J. Nussbaumer
Digital Filtering Using Complex Mersenne Transforms
Abstract: Complex Mersenne Transforms are defined in a ring of integers modulo a Mersenne or pseudo-Mersenne number and canbe computed without multiplications. It is shown that under certain conditions, these transforms can be computed by means of fasttransform algorithms and permit the evaluation of digital convolutions with better efficiency and accuracy than does the Fast FourierTransform.
where any quantity enclosed by superfluous doubleparentheses is to be replaced by its value modulo p.
The Inverse Mersenne Transform is defined by:
Complex Mersenne TransformLet q be a prime and p = 2q
- 1. Mersenne numbers p
are primes for q = 2,3,5,7,° 13,17,19,31,61'" [6].The Mersenne Transform of an integer sequence
{an} having q terms is defined by
where R is such that ((R . q)) = 1, all exponents andindices being taken modulo q and all operations beingperformed modulo p .
It can be demonstrated easily [1] that the MersenneTransform satisfies the convolution theorem; that is to
(1)
( 2)m = 0,1'" q - 1,
k = 0, 1 .. · q - 1,
show that these Complex Mersenne Transforms can bepartly computed by a fast transform technique and havea maximum length up to four times that of conventionalMersenne Transforms. We discuss the use of such transforms for filtering complex signals and show that calculations in the first stages of the direct transforms can beperformed on words of reduced length. We then extendthese results to cover the case of pseudo-Mersenne numbers. We show that this leads to a definition of pseudoMersenne Transforms, which can be completely computed by means of a fast transform algorithm but in whichthe advantage of performing arithmetic operations modulo a Mersenne number is retained.
IntroductionWith the rapid advances in large scale integration, agrowing number of complex digital signal processingapplications are becoming economically feasible. Inmost cases the bulk of the processing workload appearsto consist of digital filter computation. Future progressin digital signal processing, either towards high speed,real time operation or increased sophistication, thuslargely depends on increased efficiency in digital filtercomputation. This can be achieved not only by implementing improved filter circuits but also by using bettercomputation algorithms, as will be discussed in thispaper.
Rader [1] and Agarwal and Burrus [2, 3] have recently introduced Mersenne Transforms and FermatNumber Transforms. These two transforms have thecircular convolution property and therefore can be usedfor evaluating digital filters in the same way as DiscreteFourier Transforms (DFT) [4, 5].
Mersenne Transforms and Fermat Number Transforms are very promising for digital filter computationbecause they can be calculated without multiplications.Their main drawback is a rigid relationship betweentransform length and word length, caused by the factthat all operations are performed in a finite ring witharithmetic carried out modulo an integer p, Another difficulty arises because it is not possible to achieve simultaneously optimum efficiency in reducing the numberof operations and in implementing arithmetic operations.This is so because Fermat Number Transforms are amenable to a fast transform algorithm, and Mersenne Transforms are not, whereas arithmetic operations can beimplemented more efficiently modulo a Mersenne number than modulo a Fermat number.
In this paper we consider complex transforms definedin the ring of integers modulo a Mersenne number. We498
H. J. NUSSBAUMER IBM J. RES. DEVELOP.
If {an} and {x,) are properly bounded [I], zm is equalto the output of the ordinary cyclic convolution with
499
(5)j=
m = 0, 1'" 4q - 1, (7)
N-l
L (hnY m-nn=O
,v-I
+j L (bnYm_ n + bnym- n)-n=O
N-I
zm = L anxm_nn=O
where all exponents and indices are taken modulo 4q.
We demonstrate that this Complex Mersenne Transform satisfies the convolution theorem. Taking the complex transform {X,,} of the complex sequence {r.}, performing the term-by-term complex multiplications X k
Ak
and taking the inverse transform yields
Because q has an inverse modulo p and the inverse of 4is 1'1-
2, 4q has an inverse R such that (( 4qR)) = 1 and theinverse transform of A k is
j=V-Lk O,I'''4q 1. (6)
The complex convolution (5) can be calculated by
means of real transforms provided that computation onreal and imaginary numbers is carried out in separatetransforms. It is even possible, with Fermat NumberTransforms, to reduce the number of multiplications bytaking advantage of the real number representation ofj= ~·qin a Fermat number system [9].
It is more natural, however, to compute complex convolutions with complex transforms such as the Fouriertransform or Complex Number Theoretic Transforms[3, 10, 11]. In particular, complex transforms can bedefined in a Mersenne ring. Along these lines, we haveproposed a digital filter based on Complex MersenneTransforms [12]. The author thanks the referees forbringing to his attention the independent work of Veghand Leibowitz on the same subject [13].
In the following we restrict our discussion to ComplexMersenne Transforms that have simple roots and can becomputed without multiplications. In a Mersenne ring,with p = 2q
- I, 2 and -2 are respectively roots of unityof orders q and 2q, corresponding to transforms of lengthsq and 2q, respectively. Since q is a prime, 2'1 and -a'are also roots of orders q and 2q, provided d is not amultiple of q, This implies that 2j is a root of order 4q
and I + j or 1 - j are roots of order 8q. Higher-ordercomplex roots do not have a simple structure and therefore will generally not be of practical interest.
Under these conditions, a Complex Mersenne Transform having 4q terms can be defined by
(4)
( 3)
([··-1
2 m = L On X m-n,n=O
say, if {Xk } is the Mersenne Transform of {xnL then withZk = «Ak ' X k} ), the Inverse Mersenne Transform{z~n} of {Zk} is given by
Under these conditions, digital filtering of real integersequences can be performed by dividing the sequencesinto blocks, padding the blocks with zeros [4] to preventfolding, and aliasing and computing the cyclic convolutions by means of Mersenne Transforms. This providesa very efficient way of computing digital filters becausecalculations of Mersenne Transforms reduce to one'scomplement additions and circular shifts. BecauseMersenne Transforms are evaluated without multiplications, computation of a time-invariant circular convolution having q points reduces to one multiplication peroutput sample, as opposed to q multiplications with directcalculation. This corresponds, in the case of a nonrecursive digital filter having N taps, to a number of multiplications per output sample that is small and essentiallyindependent of the number of taps. Direct computationwould require N multiplications in the general case andimplementation by means of the Fast Fourier Transform(FFT) would require K log, N multiplications.
The main limitations of the Mersenne Transform approach are related to the fact that the number of transform terms q is a prime. This means that calculations ofthe transforms cannot be simplified by an FFT-typealgorithm and that the number of transform terms isequal to the word size. These limitations can be slightlyalleviated [I] by using a root -2 instead of 2 in (1) and(2). The maximum transform length then becomes 2q.It is also possible to increase the maximum convolutionsize by resorting to multidimensional convolutions[I, 2, 7]. Unfortunately, this result is achieved at theexpense of increased requirements for computation andstorage.
We show now that by defining Complex MersenneTransforms, it is possible to achieve higher computationefficiency while increasing both maximum transformlength and convolution length.
In many instances of digital signal processing, digitalfiltering of complex signals is required. Modem equalizersfor phase modulated signals are a good example of suchapplications [8]. In that case, a complex integer sequence{xn = Yn + IYn} is to be filtered by a complex sequence{an = bn + jbn}, having N terms, to produce a complexoutput sequence {zm urn + jl'".} with
SEPTEMBER 1976 COMPLEX MERSE~NE TRANSFORMS
k = 0, 1··· 8q I, (10)
(12)+
Ak = ((± aqn.iqnk +/2k ± aqn+lfnk +...
n=O n~O
senne Transforms having 4q points and 8q points, computing the transforms of the real and imaginary parts ofa complex sequence would require 4q(4q 1) additions and (4q - 1)2 shifts for 4q-point transforms and8q(8q 1) additions and (8q 1)2 shifts for 8q-pointtransforms. This means that in the practical range ofinterest for q (where q = 31), substituting ComplexMersenne Transforms for conventional Mersenne Transforms results approximately in an eightfold reductionin the number of operations.
Computation of a complex convolution by means ofComplex Mersenne Transforms is carried out as withDFT, with real and complex parts being evaluatedmodulo p separately. In order to avoid errors due tooverflow, the amplitudes of real and imaginary outputsmust be bounded to (p ~ I) /2. This means that usuallythe word length of real and imaginary parts of input sequences {an} and {xn} is less than half that of outputsequences. In other words, all computations are carriedout modulo p on q-bit words, yielding q-bit word outputs,and the input sequences are represented by words ofless than (q 1) /2 bits. It is possible to take advantageof the input word length limitations to further reducethe processing workload. This is done by selecting a fasttransform decomposition such that the first two transformstages can be computed without multiplication by powersof two. In such an approach, a Complex Mersenne Transform having 4q points, with root 2j, is decomposed intoq four-point transforms with
Complex pseudo-Mersenne TransformsWe have seen above that a conventional q-point Mersenne Transform could be extended to 8q points by oper-
The q four-point transforms corresponding to the firsttwo stages of the decomposition require only multiplications by ±I and and can therefore be computed innormal, complex arithmetic, on words of length approximately half that of the final result.
If the two sequences {Yn } and {an} to be convolvedare real, the full benefit of using Complex MersenneTransforms can be retained by processing simultaneouslytwo successive blocks of the sequence {Yn} by means ofthe same Complex Mersenne Transforms. This is doneby computing the complex convolution {zm} of the sequence {an} with the auxiliary complex sequence {r,Yn + jyn+
8Q} . The real part {um} and the imaginary part
{lfn,} of {zm} yield respectively the convolutions of {yn}and of the next block {yn+8q} with {an}'
(9)
( 8)
with I + n - m = rand k replaced by 4k + s.As in the case of conventional Mersenne Transforms,
the sum Ik:~ is equal to zero for (r)mod q ;6 0 andequal to q for (r)mod q = O. For (r)mod q = 0, r q t and(C~::=ojrs2rs» becomes (C~::=ojqtS». Because q is an oddprime, this sum is different from zero only when t is amultiple of 4 and is equal to 4 when t is a multiple of 4.Under these conditions, the product of the two sums isdifferent from zero only for (r) mod 4q 0 and zm becomes
zm = ((il
an x(m-nlmod 4q))'n=O
m = 0, 1·" 8q - I, (11)
with all exponents and indices taken modulo 8q. It canbe demonstrated easily, by using the same developmentas given above, that this transform permits evaluationof convolutions of length 8q with word lengths of q bits.
which shows that two complex sequences of length 4q
can be cyclically convolved by means of Complex Mersenne Transforms modulo p = 2
q I. In such an approach, all arithmetic operations are performed as innormal, complex arithmetic with / ~ I and real andimaginary parts treated separately modulo p.
Using a root j + 1 leads to a definition of a ComplexMersenne Transform having 8q terms with
Fast computation of Complex Mersenne TransformsWe have so far defined Complex Mersenne Transformsthat can be computed without multiplications and havea length up to four times that of conventional MersenneTransforms. The calculation of these transforms can bepartly simplified by an FFT-type algorithm because thenumber of terms is no longer a prime.
Using either decimation in time or decimation in frequency [14] allows a decomposition into transformshaving four q terms and transforms having eight q termsin the case of roots 2j and j + 1, respectively. These FFTdecompositions reduce the number of real operations to8q(q + I) additions and 8q(q 1) shifts for a complextransform having 4q points, and to 16 q(q 1) + 52qadditions and 16(q - 1)2 + 24(q 1) shifts for a complextransform having 8q points. If we assume, for the sakeof comparison, the existence of hypothetical real Mer-
and, with R such that « 8qR» = I, an inverse transform
500
H. J. NUSSBAUMER IBM J, RES. DEVELOP,
Table 1 Maximum odd length and corresponding power-of-2 roots for real transforms modulo P 2q- 1 with q odd and P composite.
qPrime factorization of
p = 2q
- 1 Pl' P, ... Pi Prime factorization of Pi
Max.odd
length
Powerof2roots
------------- ----------------------------_ ...._._--
152123252729333537
39
414345
4749
7·31·1517' . 127· 33747' 17848131·601 . 18017 . 73 . 262657233 . 1103 . 20897 . 23 . 89 . 59947931 . 71 . 127 . 122921223·616318177
7 . 79 . 8 191 . 121369
13367· 164511353431·9719·20998637 . 31 . 73 . 151 . 631 . 23311
2351 ·4513 . 13264529127 . 4432676798593
2 . 3 2· 3 . 5 2· 3 . 522 . 3 2· 32
• 7 24• 3 . 7
2 . 23 z 5 . 23 . 972 . 3 . 5 23
• 3 . 5' 23• 3' . 5'
2 . 3 23. 3' 29
• 33. 19
2" . 29 2· 19 . 29 23• 3' . 29
2 . 3 2· I 1 23• 11 2· 3 . 11 . 31 . 293
2 . 3 . 5 2· 5 . 7 2· 3' . 7 23• 5 . 7 . 439
2· 3 . 37 25• 3 . 37· 167· 1039
2· 3 2· 3 . 13 2· 3' . 5· 7· 1323
• 3 . 13 . 3892·41 . 163 23
• 41 . 59 . 85012·5·432·43·113 2·43'3'·27132 . 3 2· 3 . 5 23
• 3' 2· 3 . 52 2· 3' . 5 . 72 . 3' . 5 . 7 . 37
2 . 5' . 47 25• 3 . 47 24
• 31 . 47 . 5692· 3' . 7 27
• 32• 7' . 43 . 337 . 5419
33
23153
29//37
III3
4143
3
4763
//2//2//2//
22/
2/
ating in the complex number field and replacing the root2 of order q, by a complex root (1 ) of order 8q. Upto now, the discussion has been restricted to Mersennenumbers, that is, to numbers P 2q
- 1 such that q is aprime.
If P is not a prime, its prime factorization is given by
An M-point real transform having the circular convolution property can be defined in the ring of integers moduloP provided M-point transforms can be defined separatelyin the fields PI' Pz •.• p;- This follows directly from theChinese remainder theorem 15], and leads to thecondition for the existence of an M-point transform inthe ring P that M must simultaneously divide PI - 1,
Pz - I,' .. Pi - I. When p is a prime, the maximum lengthof the transform is M P 1. Transforms in a ring p,
with p nonprime, are therefore proportionally shorterthan transforms defined modulo a prime number. If p
and q are composites with q ql' % and q, prime, 2q1- 1
divides P and the maximum transform length is governedby that possible for 2q1 I. This has led us to considerthat the only transforms of interest in a ring modulo2q
- 1 are Mersenne transforms.The situation, however, changes noticeably if we con
sider Complex Mersenne Transforms. In that case, thetransform length becomes 8M if 2 does not divide M.This means that even if M is too small to yield a realtransform of practical interest, useful Complex Mersenne Transforms of length 8M can still be defined.
Let us define these points precisely. Assuming werestrict our discussion to transforms that can be com-
puted without multiplications, and therefore have roots211' of order M, we have by definition 2WM 1, with 2nw
taking M distinct values for n 0, 1... M 1. The exponents Wn are taken modulo MW with (MW)mOdq=O.If we consider now a root (j + 1)w, this root will be oforder 8M in the ring p if (j + 1 )8MW == I and if (j + 1)Wn
takes 8M distinct values for n varying from °up to8M - 1. We first notice that as (j + 1)8 = 24
, (j + l)8MW
= 24MII' "" 1. If W is odd, (j + I) "w takes eight distinct
complex values for n varying from nOta n 7 and ifq = WAf is odd, (( (j + l)snw) «(24n w ») takes M dis-tinct values for n varying from 0 to M 1.
Under these conditions, (j + 1)lV is a root of order8M in the ring modulo p 2q I if q, M; and Ware odd.Moreover, the existence of an M-point real transformin the ring modulo p implies that M has an inverse, Rmodulo p. As the inverse of 8 modulo pis 2Q
-3
, 8M alwayshas an inverse, 2Q
-3R. This means that, given an M-point
real transform of root 2w with p composite and q, w, M
odd integers, we can define 8M-point complex transformsin the ring modulo p with
501
(14)
(15)
Ak= (C~l G"U + l)wnk))n=O
j ,.Crk 0, 1'" 8M - I,
m 0, I··· 8M- 1.
( 13)P = P d, • P dZ ••• P dj1 2i'
SEPTEMBER 1976 COMPLEX MERSENNE TRANSFORMS
Table 2 Length and roots for real and complex transforms in the ring (2'1 - I) / p/i.
ApproximateTransform Real transform Complex transform word length.
q ring Lengtn Root Length Root Nb of bits
152' 5
- 15 2" 40 2(j- I) 127 (2" . 5)
21221
- 17 2" 56 2(j - I) 15-7-2- (2" . 7)
25 225- 1
25 2200
j+ I 2031 (2" . 5')
272'1 - I
27 2 216j+ 1 187.73 (2" . 3")
35235
- I35 2 280
j+1 2331.127 (2" . 5 . 7)
352"5 - 1
5 27 40 23(1 - j) 28127 (2" . 5)
352''' - I
7 25 56 -22 (1 + j) 3031 (23• 7)
45245
- 15 2" 40 24 (1 + j) 367.73 (2" . 5)
49 24 9- I
7 27 56 2"( 1- j} 42[27 (2" . 7)
492'" - I
49 2392
j+1 42127 (23• 7')
In most practical digital filtering applications, theinput signal samples are defined by a number of significant bits comprised between seven bits and 20 bits. Thismeans that, in order to avoid overflow, the transformsmust operate on word lengths approximately doublethat of input words, comprising between 15 bits and about50 bits.
The various possibilities for P nonprime and odd q arelisted in Table I. The case of q prime (q = 23, 29, 37,41,43, 47) corresponds to conventional Mersenne Transforms. When q is not a prime, the corresponding transforms have a very short length and their roots are notpowers of 2.
In order to achieve maximum effectiveness in computing convolutions by means of pseudo-Mersenne Transforms, it would be desirable to have relatively long transforms with a number of terms highly factorizable. Thisdoes not seem possible with transforms computed moduloP = 2" - 1. We note, however, that when P is not a prime,with the prime factorization of P defined by (13), wecan define transforms modulo pip/i having power-of-Z
roots and such that the number of terms is large andhighly factorizable. These transforms can be defined by
502
(
8M - l )- .+ umk: d.A k - L un(J 1) modp!Pi 1
n=O
k= 0, I··· 8M - 1
j= v=T. (16)
Various possibilities for such transforms are listed inTable 2. It can be seen that the maximum number ofterms is both large (40 to 392 terms) and highly factorable, thereby leading to efficient FFT-type computationwith a minimum number of operations.
It would seem, however, that these advantages areoffset by the fact that the various operations are performed modulo (2" - 1) I (p/i). The corresponding arithmetic circuits are obviously much more complex thanarithmetic circuits modulo 2'1 - 1.
This difficulty can be circumvented by noticing thatd t d2 d· t th I tias p = Pi . Pi ... Pi" we can compu e e convo u Ion
modulo p = 2" - 1 as with conventional Mersenne Transforms and obtain the final result by performing a lastoperation modulo p I p~i on the convolutions computedmodulo p ,
2 m mod pi p~i = (2m mod p)mod pi p~i. (17)
By proceeding in this fashion, relatively long convolu
tions can be computed efficiently by means of FFT-typealgorithms with all but the last operation performed witheasily implemented arithmetic circuits operating modulo(2" - I). This technique is similar to what was proposedin [1] to compute Fermat Number Transforms withMersenne arithmetic. The only drawback of this approach is that all the operations modulo (2q
- 1) are doneon words longer than that of the final result. It can beseen however, from Table 2 that many transforms with
H. J NUSSBAUMER IBM J RES. DEVELOP.
Figure 1 Computation of complex circular convolutions bymeans of Complex pseudo-Mersenne Transforms.
on words of reduced length. Complex Mersenne Transforms also have the advantage of permitting operationon transform length and convolution lengths up to fourtimes longer than is possible with conventional Mersenne Transforms.
These results have then been extended to cover thecase of transforms operating in a ring modulo a pseudoMersenne number or a submultiple of such a number.It has been shown that some of these transforms have ahighly composite transform length and therefore can becomputed with an efficient FFT-type algorithm.
Complex Mersenne Transforms can be used for implementing digital filters in the same manner as DiscreteFourier Transforms. They have the advantage over OFTof permitting exact calculations, without round-offerrors, and of being computationally much more efficientbecause they can be calculated without multiplications.
q bits words
arithmeticmodulop=2Q-l
}~%~::liCword length~q-l bits
2
Last stages
Complex MersenneTransform
4pointsFFT
Operationmodulo P/Ild i
Inverse ComplexMersenneTransform
4poinlsFFT
la=b+jSl{n n n
Last stages
Complex MersenneTransform
a highly factorable number of terms can be defined forwhich p~; is small compared to p ; so that the penalty inword length increase incurred when operating modulop instead of modulo p / p~; is only of the order of 20 percent.
The most interesting transforms are those which havea large, highly factorable number of terms combinedwith a useful word length as close as possible to q. Amongthese, the 200-point, 56-point, and 392-point Complexpseudo-Mersenne Transforms (corresponding, respectively, to q equal to 25, 35, and 49) seem particularlywell adapted for digital filtering applications. Taking asan example the case of transforms defined by q = 25,one can see from Table I that the maximum odd lengthfor real transforms computed modulo p = 225
- 1 is 15terms and that the corresponding roots are not powers oftwo. By operating modulo (225
- 1) /3 1, it is possibleto define real transforms having power-of-two roots witha maximum odd length increased to 25 terms. The maximum length is then expanded to 200 terms by using complex roots. Such a transform can be computed veryefficiently by means of an FFT-type algorithm with athree-stage radix 2 decomposition, followed by a twostage radix 5 decomposition.
One limitation of conventional Mersenne Transforms isthe rigid relationship between word length and transformlength. In this respect, pseudo-Mersenne Transformsprovide a significant improvement, because their maximum number of terms M max is highly composite and anytransform length submultiple of M m ax can be selected.It is even possible to have several transforms of identicallength and defined modulo integers PI' ... Pi that arerelatively prime. The convolution can than be computedseparately modulo PI" .. Pi and the final result obtainedmodulo (PI' P2 ' •• p;J by the Chinese remainder theorem.This approach could, for instance, be used to computea 40-term convolution with an approximate word lengthof 32 bits by means of transforms defined by modulo(z15 - 1) /7 and (225_1)/31.
The computation of a time-variant convolution bymeans of Complex pseudo-Mersenne Transforms isshown in Fig. 1. Whl'n a time-invariant convolution is tobe evaluated, the various samples A k of the transform of{an} are constant. They are usually precomputed andstored in a memory. In this case, minor additional savings on multiplication cost can be achieved by storing A k
Modulo p / p~i instead of A k modulo p.
Concluding remarksWe have discussed Complex Mersenne Transforms thatcan be computed without multiplications. These transforms are very promising for computing convolutionsbecause they can be partly computed with FFT-typealgorithms and some of the operations can be performed
ReferencesI. C. M. Rader, "Discrete Convolutions via Mersenne Trans
forms," IEEE Trans. Computers C-21, 1269 (1972).2. R. C. Agarwal and C. S. Burrus, "Fast Convolution using
Fermat Number Transforms with Applications to DigitalFiltering," IEEE Trans. Acoustics, Speech and SignalProcessing ASSP-22, 87 (1974). 503
SEPTEMBER 1976 COMPLEX MERSENNE TRANSFORMS
3. R. C. Agarwal and C. S. Burrus, "Number Theoretic Transforms to Implement Fast Digital Convolution," Proc. IEEE63,550 (1975).
4. B. Gold, C. M. Rader, A. V. Oppenheim, and T. G.Stockham, Digital Processing of Signals, McGraw-HillBook Company, Inc., New York, 1969, Ch. 7, pp. 203-213.
5. J. W. Cooley and J. W. Tukey, "An Algorithm for MachineCalculation of Complex Fourier Series," Math. Compo 19,297 (1966).
6. D. E. Knuth, The Art of Computer Programming: Seminumerical Algorithms, Addison-Wesley Publishing, Co.,Inc., Reading, MA, 1969, Vol. 2, p. 356.
7. R. C. Agarwal and C. S. Burrus, "Fast One-DimensionalDigital Convolution by Multidimensional Techniques,"IEEE Trans. Acoustics, Speech and Signal ProcessingASSP-22, I (1974).
8. R. D. Gitlin, E. Y. Ho, andJ. E. Mazo, "Passband Equalization of Differentially Phase-Modulated Data Signals," BellSystem Tech. J. 52, 219 (1973).
9. H. J. Nussbaumer, "Complex Convolutions via FermatNumber Transforms," IBM J. Res. Develop. 20, 282 (1976).
10. I. S. Reed and T. K. Truong, 'The Use of Finite Fields toCompute Convolutions," IEEE Trans. l nf, Theory IT-21,208 (1975).
504
H. J. NUSSBAUMER
II. I. S. Reed and T. K. Truong, "Complex Integer Convolutions Over a Direct Sum of Galois Fields," IEEE Trans.Inf. Theory IT-21, 657 (1975).
12. H. J. Nussbaumer, "Dispositif Generateur de Fonction deConvolution Discrete et Filtre Nurnerique IncorporantLedit Dispositif," French Patent Application NO.7 ,512,557,April 1975.
13. L. M. Leibowitz, "Fast Convolution by Number TheoreticTransforms," NRL Report 7924, Naval Research Laboratory, Washington, D. C., September 1975.
14. Gold, Rader, Oppenheim, and Stockham, op. cit., Ch. 6,pp.174-196.
15. J. M. Pollard, "The Fast Fourier Transform in a finiteField," Math. Camp. 25, 365 (1971).
Received December 22, 1975
The author is located at Compagnie IBM, France, Centre d'Etudes et Recherches, 06610 La Caude, France.
IBM J. RES. DEVELOP.