137
The implicit QZ algorithm for the palindromic eigenvalue problem David S. Watkins [email protected] Department of Mathematics Washington State University Luminy, October 2007 – p.

The implicit QZ algorithm for the palindromic eigenvalue

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

The implicit QZ algorithm for thepalindromic eigenvalue problem

David S. [email protected]

Department of Mathematics

Washington State University

Luminy, October 2007 – p. 1

Context

Luminy, October 2007 – p. 2

ContextLQG problem in discrete time (optimal control)

Luminy, October 2007 – p. 2

ContextLQG problem in discrete time (optimal control)

⇒ symplectic eigenvalue problem

Luminy, October 2007 – p. 2

ContextLQG problem in discrete time (optimal control)

⇒ symplectic eigenvalue problem

eigenvalue symmetry:λ, λ−1

Luminy, October 2007 – p. 2

ContextLQG problem in discrete time (optimal control)

⇒ symplectic eigenvalue problem

eigenvalue symmetry:λ, λ−1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Luminy, October 2007 – p. 2

ContextLQG problem in discrete time (optimal control)

⇒ symplectic eigenvalue problem

eigenvalue symmetry:λ, λ−1

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

want stable invariant subspaceLuminy, October 2007 – p. 2

Palindromic Eigenvalue Problem

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

generalized eigenvalue problemA − λB

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

generalized eigenvalue problemA − λB

B = AT

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

generalized eigenvalue problemA − λB

B = AT

(C − λCT )x = 0 ⇔ xT (CT− λC) = 0

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

generalized eigenvalue problemA − λB

B = AT

(C − λCT )x = 0 ⇔ xT (CT− λC) = 0

eigenvalue symmetry:λ, λ−1

Luminy, October 2007 – p. 3

Palindromic Eigenvalue ProblemMackey / Mackey / Mehl / Mehrmann

(C − λCT )x = 0

generalized eigenvalue problemA − λB

B = AT

(C − λCT )x = 0 ⇔ xT (CT− λC) = 0

eigenvalue symmetry:λ, λ−1

Formulate control problems as palindromiceigenvalue problems.

Luminy, October 2007 – p. 3

QR-like algorithms

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

explicit QR-like algorithm

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

explicit QR-like algorithm (It works!)

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

explicit QR-like algorithm (It works!)

implicit QR-like algorithm(bulge chase)

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

explicit QR-like algorithm (It works!)

implicit QR-like algorithm(bulge chase) (It works!)

Luminy, October 2007 – p. 4

QR-like algorithmsfor palindromic problems

C. Schröder (Berlin)

explicit QR-like algorithm (It works!)

implicit QR-like algorithm(bulge chase) (It works!)

Are they equivalent?

Luminy, October 2007 – p. 4

The Bulge Chase

Luminy, October 2007 – p. 5

The Bulge Chasecompact form needed

Luminy, October 2007 – p. 5

The Bulge Chasecompact form needed

C =

0 ∗

0 ∗ ∗

0 ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 5

CT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 6

CT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗ ∗

0 ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

not always attainable!

Luminy, October 2007 – p. 6

The Bulge Chase

Luminy, October 2007 – p. 7

The Bulge Chasesingle-shift case

Luminy, October 2007 – p. 7

The Bulge Chasesingle-shift case (for simplicity)

Luminy, October 2007 – p. 7

The Bulge Chasesingle-shift case (for simplicity)

Pick a shiftµ.

Luminy, October 2007 – p. 7

The Bulge Chasesingle-shift case (for simplicity)

Pick a shiftµ.

x = (C − µCT )e1 =

0...0

α

β

Luminy, October 2007 – p. 7

The Bulge Chasesingle-shift case (for simplicity)

Pick a shiftµ.

x = (C − µCT )e1 =

0...0

α

β

Build a Givens rotation (for example) thatannihilatesα.

Luminy, October 2007 – p. 7

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 8

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 9

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 10

The Bulge Chase

∗ ∗

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 11

The Bulge Chase

∗ ∗

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 12

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 13

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 14

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 15

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 16

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 17

The Bulge Chase

∗ ∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 18

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 19

The Bulge Chase

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

But what happens when we get to the middle?Luminy, October 2007 – p. 20

Bulge Chase in the Pencil

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 21

Bulge Chase in the Pencil

C − λCT =

∗ ∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 22

Bulge Chase in the Pencil

C − λCT =

∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 23

Bulge pencils on a collision course!

Luminy, October 2007 – p. 24

Bulge Chase in the Pencil

C − λCT =

∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 25

Half a step further:

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 26

Swap the shifts

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 27

Swap the shifts

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 28

Reverse the process

C − λCT =

∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 29

Reverse the process

C − λCT =

∗ ∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 30

Reverse the process

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 31

Bulge Chase is complete

C − λCT =

∗ ∗

∗ ∗ ∗

∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 32

This works very well.

Luminy, October 2007 – p. 33

This works very well.

Question:

Luminy, October 2007 – p. 33

This works very well.

Question: How do we explain it?

Luminy, October 2007 – p. 33

This works very well.

Question: How do we explain it?

Answer:

Luminy, October 2007 – p. 33

This works very well.

Question: How do we explain it?

Answer: I don’t have time . . .

Luminy, October 2007 – p. 33

This works very well.

Question: How do we explain it?

Answer: I don’t have time . . .

. . . but I’ll try.

Luminy, October 2007 – p. 33

This works very well.

Question: How do we explain it?

Answer: I don’t have time . . .

. . . but I’ll try.

Compare with standard QZ.

Luminy, October 2007 – p. 33

QZ algorithm,

Luminy, October 2007 – p. 34

QZ algorithm, implicit version

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

p(z) = (z − µ1) · · · (z − µm)

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

p(z) = (z − µ1) · · · (z − µm)

x = p(AB−1)e1

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

p(z) = (z − µ1) · · · (z − µm)

x = p(AB−1)e1

Make a bulge,

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

p(z) = (z − µ1) · · · (z − µm)

x = p(AB−1)e1

Make a bulge, then chase it.

Luminy, October 2007 – p. 34

QZ algorithm, implicit versionA − λB (Hessenberg, triangular)

pick shiftsµ1, . . .µm

p(z) = (z − µ1) · · · (z − µm)

x = p(AB−1)e1

Make a bulge, then chase it.

GetA − λB

Luminy, October 2007 – p. 34

QZ algorithm,

Luminy, October 2007 – p. 35

QZ algorithm, explicit version

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Explicit QZ step is complete.

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Explicit QZ step is complete.

AB−1 = Q∗(AB−1)Q

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Explicit QZ step is complete.

AB−1 = Q∗(AB−1)Q (QR iteration onAB−1)

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Explicit QZ step is complete.

AB−1 = Q∗(AB−1)Q (QR iteration onAB−1)

B−1A = Z∗(B−1A)Z

Luminy, October 2007 – p. 35

QZ algorithm, explicit versionp(AB−1) = QR p(B−1A) = ZR

A = Q∗AZ, B = Q∗BZ

Explicit QZ step is complete.

AB−1 = Q∗(AB−1)Q (QR iteration onAB−1)

B−1A = Z∗(B−1A)Z (QR iteration onB−1A)

Luminy, October 2007 – p. 35

Explicit = Implicit?

Luminy, October 2007 – p. 36

Explicit = Implicit?AB−1 andB−1A are upper Hessenberg.

Luminy, October 2007 – p. 36

Explicit = Implicit?AB−1 andB−1A are upper Hessenberg.

Utilize the Hessenberg form.

Luminy, October 2007 – p. 36

Explicit = Implicit?AB−1 andB−1A are upper Hessenberg.

Utilize the Hessenberg form.

implicit-Q theorem, or . . .

Luminy, October 2007 – p. 36

Explicit = Implicit?AB−1 andB−1A are upper Hessenberg.

Utilize the Hessenberg form.

implicit-Q theorem, or . . .

work directly with the Krylov subspaces.

Luminy, October 2007 – p. 36

Explicit = Implicit?AB−1 andB−1A are upper Hessenberg.

Utilize the Hessenberg form.

implicit-Q theorem, or . . .

work directly with the Krylov subspaces.

time permitting . . .

Luminy, October 2007 – p. 36

Back to the palindromic case:

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

C−T C = GT (C−TC)G−T

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

C−T C = GT (C−TC)G−T (similarity)

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

C−T C = GT (C−TC)G−T (similarity)

Needp(CC−T ) = GR

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

C−T C = GT (C−TC)G−T (similarity)

Needp(CC−T ) = GR andp(C−TC) = G−TR

Luminy, October 2007 – p. 37

Back to the palindromic case:Bulge chase givesC = G−1CG−T

CC−T = G−1(CC−T )G (similarity)

C−T C = GT (C−TC)G−T (similarity)

Needp(CC−T ) = GR andp(C−TC) = G−TR

or something like that.

Luminy, October 2007 – p. 37

What we actually get:

Luminy, October 2007 – p. 38

What we actually get:r(CC−T ) = GL

Luminy, October 2007 – p. 38

What we actually get:r(CC−T ) = GL

wherer(z) =m

k=1

z − µk

µkz − 1

Luminy, October 2007 – p. 38

What we actually get:r(CC−T ) = GL

wherer(z) =m

k=1

z − µk

µkz − 1

L is lower triangular.

Luminy, October 2007 – p. 38

What we actually get:r(CC−T ) = GL

wherer(z) =m

k=1

z − µk

µkz − 1

L is lower triangular.

r(C−TC) = G−TR

Luminy, October 2007 – p. 38

What we actually get:r(CC−T ) = GL

wherer(z) =m

k=1

z − µk

µkz − 1

L is lower triangular.

r(C−TC) = G−TR

r(CC−T )−T = r(C−TC), R = L−T

Luminy, October 2007 – p. 38

Our Approach:

Luminy, October 2007 – p. 39

Our Approach:wantr(CC−T ) = GL

Luminy, October 2007 – p. 39

Our Approach:wantr(CC−T ) = GL

DefineL = G−1r(CC−T )

Luminy, October 2007 – p. 39

Our Approach:wantr(CC−T ) = GL

DefineL = G−1r(CC−T )

Then show thatL is lower triangular.

Luminy, October 2007 – p. 39

Our Approach:wantr(CC−T ) = GL

DefineL = G−1r(CC−T )

Then show thatL is lower triangular.

This is not entirely straightforward.

Luminy, October 2007 – p. 39

Our Approach:wantr(CC−T ) = GL

DefineL = G−1r(CC−T )

Then show thatL is lower triangular.

This is not entirely straightforward.

Utilize the Hessenberg form.

Luminy, October 2007 – p. 39

Recall that

C =

0 ∗

0 ∗ ∗

0 ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 40

This implies

Luminy, October 2007 – p. 41

This implies

CC−T =

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 41

This implies

CC−T =

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

partly lower Hessenberg (n/2 − 1 columns)

Luminy, October 2007 – p. 41

and

Luminy, October 2007 – p. 42

and

C−TC =

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

Luminy, October 2007 – p. 42

and

C−TC =

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗ ∗

partly upper Hessenberg (n/2 − 2 columns)

Luminy, October 2007 – p. 42

Use both.

Luminy, October 2007 – p. 43

Use both.

L =

[

L11 L12

L21 L22

]

Luminy, October 2007 – p. 43

Use both.

L =

[

L11 L12

L21 L22

]

UsingCC−T ,

Luminy, October 2007 – p. 43

Use both.

L =

[

L11 L12

L21 L22

]

UsingCC−T , deduceL12 = 0 . . .

Luminy, October 2007 – p. 43

Use both.

L =

[

L11 L12

L21 L22

]

UsingCC−T , deduceL12 = 0 . . .

andL22 is lower triangular.

Luminy, October 2007 – p. 43

L =

[

L11

L21 L22

]

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

R = L−T =

[

R11 R12

R22

]

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

R = L−T =

[

R11 R12

R22

]

UsingC−TC,

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

R = L−T =

[

R11 R12

R22

]

UsingC−TC, deduce thatR11 is upper triangular.

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

R = L−T =

[

R11 R12

R22

]

UsingC−TC, deduce thatR11 is upper triangular.

HenceL11 is lower triangular.

Luminy, October 2007 – p. 44

L =

[

L11

L21 L22

]

just needL11 lower triangular

R = L−T =

[

R11 R12

R22

]

UsingC−TC, deduce thatR11 is upper triangular.

HenceL11 is lower triangular.

done!

Luminy, October 2007 – p. 44

Conclusion:

Luminy, October 2007 – p. 45

Conclusion:

Schröder’s palindromic bulge-chasing algorithm

Luminy, October 2007 – p. 45

Conclusion:

Schröder’s palindromic bulge-chasing algorithmeffectsa combinationQL andQR iteration

Luminy, October 2007 – p. 45

Conclusion:

Schröder’s palindromic bulge-chasing algorithmeffectsa combinationQL andQR iteration driven by a rationalfunction

r(z) =m

k=1

z − µk

µkz − 1

Luminy, October 2007 – p. 45

Conclusion:

Schröder’s palindromic bulge-chasing algorithmeffectsa combinationQL andQR iteration driven by a rationalfunction

r(z) =m

k=1

z − µk

µkz − 1

with shiftsµ1, . . . ,µm in the numerator and shiftsµ−1

1,

. . . ,µ−1

min the denominator.

Luminy, October 2007 – p. 45

Conclusion:

Schröder’s palindromic bulge-chasing algorithmeffectsa combinationQL andQR iteration driven by a rationalfunction

r(z) =m

k=1

z − µk

µkz − 1

with shiftsµ1, . . . ,µm in the numerator and shiftsµ−1

1,

. . . ,µ−1

min the denominator.

That’s all, folks!Luminy, October 2007 – p. 45