• Keine Ergebnisse gefunden

IDFT Methods for Vectors with One-Block Support

Im Dokument Sparse Fast Trigonometric Transforms (Seite 148-152)

The IDFT algorithm for vectors with reflected block support which we will introduce hereafter is obtained by extending recent methods in [PW16a, PW17a] for the recon-struction of vectors with one-block support from their DFT to our setting. Therefore, we will give a brief overview of the techniques used in said papers which we will also employ.

Both Algorithm 2 in [PW16a] and Algorithm 2.1 in [PW17a] rely on an approach that iteratively recovers certain shorter periodizations of y. The following definition lies at the heart of the two papers.

Definition 5.7 ((2.1) in [PW16a], (1.1) in [PW17a])For any vector x ∈ R2

j we denote by

x(0) := (xk)2k=0j−1−1∈R2

j−1 and x(1) := (xk)2k=2j−1j−1 ∈R2

j−1

5.3 IDFT Methods for Vectors with One-Block Support

thefirst and second half ofx, respectively, i.e., x=

xT(0),xT(1) T

.

Let N = 2J−1 withJ ≥2and y∈R2N. We set y(J) :=y. For j∈ {0, . . . , J −1} we iteratively define theperiodization y(j) ∈R2

j of yas y(j):=y(0)(j+1)+y(1)(j+1) =

yk(j+1)+yk+2(j+1)j

2j−1 k=0 .

By definition, for anyj∈ {0, . . . , J−1}the periodizationy(j)∈R2j is given by adding the first and the second half of the periodizationy(j+1) ∈R2

j+1.

Example 5.8 Lety∈R16 with nonzero entries y1, y2. Then its periodizations are y=y(4) = (0, y1, y2,0,0,0,0,0,0,0,0,0,0,0,0,0)T ,

y(3) = (0, y1, y2,0,0,0,0,0)T , y(2) = (0, y1, y2,0)T ,

y(1) = (y2, y1)T, y(0) = (y1+y2)T .

♦ The periodization has several useful properties, some of which are summarized in the following lemma. Claim (iii) was shown in Lemma 2 in [BP18c].

Lemma 5.9 LetN = 2J−1 withJ ≥2 andj ∈ {0, . . . , J −1}. Let y∈R2N. Then the following statements are true:

(i) y(0) =

2N−1

X

k=0

yk

(ii) y(j)=

2J−j−1

X

l=0

yk+2jl

2j−1

k=0

(iii) Ify is symmetric, theny(j) is symmetric as well, i.e., y(j)=J2jy(j).

Proof. For a proof of (i) and (ii) see, e.g., [PW16a], Section 2, and [PW17a], Section 2.

(iii) Since y is symmetric by Lemma 5.4 (i), we have that yk =y2J−1−k for all indices k∈

0, . . . ,2J −1 . For the entries of y(J−1) it follows that yk(J−1) =yk+yk+2J−1

=y2J−1−k+y2J−1−(k+2J−1)

=y2J−1−1−k+2J−1 +y2J−1−1−k

=y2(J−1)J−1−1−k

for allk∈

0, . . . ,2J−1−1 ; thus, y(J−1)=J2J−1y(J−1). Now we assume that y(j+1) is symmetric for j ∈ {0, . . . , J −1} and show thaty(j) is symmetric as well. Sincey(j+1)

is symmetric, it follows thaty(j+1)k =y(j+1)2j+1−1−k for all k∈

0, . . . ,2j−1 , and hence yk(j) =y(j+1)k +yk+2(j+1)j

=y(j+1)2j+1−1−k+y(j+1)2j+1−1−(k+2j)

=y(j)2j−1−k, which proves the claim.

The reason why these periodizations are so interesting for the development of fast IDFT algorithms is that for j ∈ {0, . . . , J −1} the DFT of the periodization y(j) of any y∈ R2N is already completely determined by the DFT ofy itself, as the following lemma, which was proved in [PW16a], shows.

Lemma 5.10 (Lemma 2.1 in [PW16a])LetN = 2J−1 withJ ≥2andj∈ {0, . . . , J}.

Lety∈R2N. Then yd(j) satisfies

yd(j)= (yb2J−jk)2k=0j−1.

There exist several sparse IFFT methods based on the notion of periodizations from Definition 5.7, e.g., [PW17a, PW16a, PWCW18]. We want to explain these algorithms in more detail, as some of the concepts used for them are also utilized for the sparse IDCT-II algorithms we will present in this chapter and in Chapter 6.

Algorithm 2 in [PW16a]

Lety∈CN,N = 2J, have a one-block support of lengthm. For Algorithm 2 in [PW16a]

the authors additionally suppose that an upper bound M ≥ m on the support length of y is known. Then one can show that for any j ∈ {L+ 1, . . . , J}, where L is chosen such that 2L−1 < m≤ 2L, the periodization y(j) of y has already a one-block support of lengthm. Further, each nonzero entry of y corresponds to exactly one nonzero entry ofy(j) with the same value, so the nonzero entries ofy andy(j) are the same. The only remaining unknown parameter is the first support index µ(j) of y(j), which can in fact be obtained in a fast way from the periodization y(j−1) of half length andby.

The main idea of the algorithm is thus to iteratively recover y from yb and the peri-odizationsy(L+1),y(L+2), . . . ,y(J)=y, using for the reconstruction ofy(j+1) thaty(j) is already known from the previous iteration step. Since

y\(L+1) = (yb2J−L−1k)2k=0j−1

by Lemma 5.10, the initial vectory(L+1)can be computed directly frombyvia an IFFT of length2L+1. Forj∈ {L+1, . . . , J−1}it was shown in [PW16a], Section 4, that ify(j)has the one-block supportS(j)=Iµ(j)(j), ν(j) of lengthm(j), there are only two possibilities for y(j+1). More precisely,y(j+1) has either the support intervalS(j+1) =S(j)=I(j+1)

µ(j), ν(j) or S(j+1) =Iµ(j+1)(j)+2j, ν(j)+2j. Denoting the first possible vector byu0and the second possible vector byu1, we find thatu1 is the 2j-shift ofu0.

Theorem 4.2 in [PW16a] proves that y(j+1) can be uniquely recovered from y(j) and

5.3 IDFT Methods for Vectors with One-Block Support

one oddly indexed nonzero entry of y\(j+1), using that cu02k+1 =−cu12k+1

for all k ∈

0, . . . ,2j−1 . Comparing cu02k0+1 and cu12k0+1 at an index 2k0+ 1 corre-sponding to an oddly indexed nonzero entryy\(j+1)2k0+1 6= 0then allows for the detection of µ(j+1), since y(j+1)=u0 if cu02k0+1 =y\(j+1)2k0+1, andy(j+1) =u1 otherwise.

Employing some further stabilization techniques for noisy data and an efficient method for determining the required oddly indexed nonzero entry ofy\(j+1) yields a deterministic IFFT algorithm for recovering a vector y ∈ CN, N = 2J, with one-block support of length m fromyb and an upper boundM onm in

O(MlogN) time and using

O(MlogN)

samples of y. Note that the runtime and sampling complexities are sublinear in theb vector length N and even subquadratic in the bound M on the support length.

Algorithm 2.1 in [PW17a]

As seen above, Algorithm 2 in [PW16a] requires a priori knowledge of an upper bound M on the support length m of the sought-after vector y∈CN with one-block support.

In [PW17a], on the other hand, an adaptive algorithm which can detect the support length on the fly is presented. However, this approach now requires the entries of the vector yto be real and nonnegative, as otherwise there might be cancellations of entries corresponding to nonzero entries ofyin some of the periodizations. Again, the algorithm will recover y iteratively from by and the periodizations y(0),y(1), . . . ,y(J) = y, using that for allj∈ {0, . . . , J}the periodizationy(j)∈R2

j has a one-block support of length m(j) ≤m.

For the initial vector we have that y(0) = yb0. In each step the algorithm computes y(j+1) via an IFFT of a vector of lengthO m(j)

instead of 2j, restrictingy(j+1) to its O(m) possibly nonzero entries. It was shown in [PW17a], Section 2, that

y\(j+1)2k+1 2j−1

k=0 =F2j·diag

ω2j+1l 2j−1

l=0

·

2y(j+1)(0) −y(j)

. (5.3)

Asy(j) =y(j+1)(0) +y(j+1)(1) , (5.3) yields thaty(j+1) can be completely recovered essentially via an IFFT of length 2j and using Lemma 5.10, since y(j) is known from the previous iteration step. If m(j) >2j−1, the one-block support of y(j) and y(j+1) cannot be used to speed up the computation. However, if m(j) ≤2j−1, one can restrict y(j) and y(0)(j+1) to vectors z(j),z(j+1)(0) of length2L(j), where 2L(j)−1< m(j)≤2L(j), such that all possibly nonzero entries ofy(j)andy(j+1)(0) are taken into account. Then it suffices to recover these

shorter vectors. Restricting (5.3) to suitable rows, one obtains y\(j+1)2k+12L(j)−1

k=0

= diag

ω2L(j)µ(j)p2L(j)−1 p=0

!

·F2L(j) ·diag

ω2j+1(µ(j)+r) mod 2j2L(j)−1 r=0

!

·

2y(j+1)(0) −y(j)

(µ(j)+r) mod 2j

2L(j)−1 r=0

,

implying that periodizationy(j+1)can essentially be reconstructed via an IFFT of length 2L(j) =O m(j)

. Applying a stable technique for finding the first support index and the support length of y(j+1) yields a deterministic IFFT algorithm for recovering a vector y∈RN≥0,N = 2J, with one-block support of lengthmfromybwithout a priori knowledge ofm in

O

mlogmlogN m

time and using O

mlogN m

samples ofy. Thus, for Algorithm 2.1 in [PW17a] both the runtime and the number ofb required samples are sublinear in the vector length N and subquadratic in the support lengthm, and similar to those of Algorithm 2 in [PW16a].

Im Dokument Sparse Fast Trigonometric Transforms (Seite 148-152)