vector ization

53
Vectorization From Wikipedia, the free encyclopedia

Upload: man

Post on 17-Dec-2015

233 views

Category:

Documents


1 download

DESCRIPTION

1. From Wikipedia, the free encyclopedia2. Lexicographical order

TRANSCRIPT

  • VectorizationFrom Wikipedia, the free encyclopedia

  • Contents

    1 Underdetermined system 11.1 Solutions of underdetermined systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Homogeneous case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Underdetermined polynomial systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.4 Underdetermined systems with other constraints and in optimization problems . . . . . . . . . . . . 21.5 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    2 Unitary transformation 32.1 Formal denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.3 Unitary operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.4 Antiunitary transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.5 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    3 Vector projection 53.1 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.2 Denitions based on angle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    3.2.1 Scalar projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.2.2 Vector projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.2.3 Vector rejection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    3.3 Denitions in terms of a and b . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.3.1 Scalar projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.3.2 Vector projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3.3 Vector rejection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    3.4 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.4.1 Scalar projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.4.2 Vector projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.4.3 Vector rejection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    3.5 Matrix representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.6 Uses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.7 Generalizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.8 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    i

  • ii CONTENTS

    3.9 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.10 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    4 Vector spaces without elds 114.1 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    5 Vector-valued function 135.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135.2 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145.3 Derivative of a three-dimensional vector function . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    5.3.1 Partial derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.3.2 Ordinary derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.3.3 Total derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.3.4 Reference frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.3.5 Derivative of a vector function with nonxed bases . . . . . . . . . . . . . . . . . . . . . . 155.3.6 Derivative and vector multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    5.4 Derivative of an n-dimensional vector function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165.5 Innite-dimensional vector functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    5.5.1 Functions with values in a Hilbert space . . . . . . . . . . . . . . . . . . . . . . . . . . . 175.5.2 Other innite-dimensional vector spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    5.6 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175.7 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.8 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.9 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    6 Vectorization (mathematics) 196.1 Compatibility with Kronecker products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196.2 Compatibility with Hadamard products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196.3 Compatibility with inner products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206.4 Half-vectorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206.5 Programming language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206.6 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206.7 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    7 Weyls inequality 217.1 Weyls inequality in number theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217.2 Weyls inequality in matrix theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217.3 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    7.3.1 Estimating perturbations of the spectrum . . . . . . . . . . . . . . . . . . . . . . . . . . 227.3.2 Weyls inequality for singular values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    7.4 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

  • CONTENTS iii

    8 Weyr canonical form 238.1 Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    8.1.1 Basic Weyr matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248.1.2 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248.1.3 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248.1.4 General Weyr matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258.1.5 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258.1.6 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    8.2 The Weyr form is canonical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268.3 Computation of the Weyr canonical form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    8.3.1 Reduction to the nilpotent case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268.3.2 Reduction of a nilpotent matrix to the Weyr form . . . . . . . . . . . . . . . . . . . . . . 27

    8.4 Applications of the Weyr form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    9 Woodbury matrix identity 299.1 Direct proof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299.2 Derivation via blockwise elimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299.3 Derivation from LDU decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319.5 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319.6 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319.7 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    10 Z-order curve 3310.1 Coordinate values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3410.2 Eciently building quadtrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3510.3 Use with one-dimensional data structures for range searching . . . . . . . . . . . . . . . . . . . . . 3710.4 Related structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3810.5 Applications in linear algebra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3810.6 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3810.7 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3810.8 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    11 Zassenhaus algorithm 4011.1 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    11.1.1 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.1.2 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.1.3 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4011.1.4 Proof of correctness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    11.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4211.3 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

  • iv CONTENTS

    11.4 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    12 Zechs logarithm 4312.1 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4312.2 Uses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4412.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4412.4 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    13 Zero mode 4613.1 Text and image sources, contributors, and licenses . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    13.1.1 Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4713.1.2 Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4713.1.3 Content license . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

  • Chapter 1

    Underdetermined system

    In mathematics, a system of linear equations or a system of polynomial equations is considered underdetermined ifthere are fewer equations than unknowns (in contrast to an overdetermined system, where there are more equationsthan unknowns). The terminology can be explained using the concept of constraint counting. Each unknown can beseen as an available degree of freedom. Each equation introduced into the system can be viewed as a constraint thatrestricts one degree of freedom.Therefore the critical case (between overdetermined and underdetermined) occurs when the number of equations andthe number of free variables are equal. For every variable giving a degree of freedom, there exists a correspondingconstraint removing a degree of freedom. The underdetermined case, by contrast, occurs when the system has beenunderconstrainedthat is, when the unknowns outnumber the equations.

    1.1 Solutions of underdetermined systemsAn underdetermined linear system has either no solution or innitely many solutions.For example

    x+ y + z = 1

    x+ y + z = 0

    is an underdetermined systemwithout any solution; any system of equations having no solution is said to be inconsistent.On the other hand, the system

    x+ y + z = 1

    x+ y + 2z = 3

    is consistent and has an innitude of solutions, such as (x, y, z) = (1, 2, 2), (2, 3, 2), and (3, 4, 2). All of thesesolutions can be characterized by rst subtracting the rst equation from the second, to show that all solutions obeyz=2; using this in either equation shows that any value of y is possible, with x=1y.More specically, according to the RouchCapelli theorem, any system of linear equations (underdetermined orotherwise) is inconsistent if the rank of the augmented matrix is greater than the rank of the coecient matrix. If,on the other hand, the ranks of these two matrices are equal, the system must have at least one solution; since in anunderdetermined system this rank is necessarily less than the number of unknowns, there are indeed an innitudeof solutions, with the general solution having k free parameters where k is the dierence between the number ofvariables and the rank.There are algorithms to decide whether an underdetermined system has solutions, and if it has any, to express allsolutions as linear functions of k of the variables (same k as above). The simplest one is Gaussian elimination. SeeSystem of linear equations for more details.

    1

  • 2 CHAPTER 1. UNDERDETERMINED SYSTEM

    1.2 Homogeneous caseThe homogeneous (with all constant terms equal to zero) underdetermined linear system always has non-trivial solu-tions. Any homogeneous system has the trivial solution where all the unknowns are zero. But when the number ofunknowns is greater than the number of equations, there always exist non-trivial solutions. There are an innity ofsuch solutions, which form a vector space, whose dimension is the dierence between the number of unknowns andthe rank of the matrix of the system.

    1.3 Underdetermined polynomial systemsThe main property of linear underdetermined systems, of having either no solution or innitely many, extends tosystems of polynomial equations in the following way.A system of polynomial equations which has fewer equations than unknowns is said to be underdetermined. It haseither innitely many complex solutions (or, more generally, solutions in an algebraically closed eld) or is inconsis-tent. It is inconsistent if and only if 0 = 1 is a linear combination (with polynomial coecients) of the equations (thisis Hilberts Nullstellensatz). If an underdetermined system of t equations in n variables (t < n) has solutions, then theset of all complex solutions is an algebraic set of dimension at least n - t. If the underdetermined system is chosen atrandom the dimension is equal to n - t with probability one.

    1.4 Underdetermined systems with other constraints and in optimizationproblems

    In general, an underdetermined system of linear equations has an innite number of solutions, if any. However, inoptimization problems that are subject to linear equality constraints, only one of the solutions is relevant, namely theone giving the highest or lowest value of an objective function.Some problems specify that one or more of the variables are constrained to take on integer values. An integerconstraint leads to integer programming and Diophantine equations problems, which may have only a nite numberof solutions.Another kind of constraint, which appears in coding theory, especially in error correcting codes and signal processing(for example compressed sensing), consists in an upper bound on the number of variables which may be dierentfrom zero. In error correcting codes, this bound corresponds to the maximal number of errors that may be correctedsimultaneously.

    1.5 See also Overdetermined system Regularization (mathematics)

    1.6 References

  • Chapter 2

    Unitary transformation

    For other uses, see Transformation (mathematics) (disambiguation).

    In mathematics, a unitary transformation is a transformation that preserves the inner product: the inner product oftwo vectors before the transformation is equal to their inner product after the transformation.

    2.1 Formal denitionMore precisely, a unitary transformation is an isomorphism between two Hilbert spaces. In other words, a unitarytransformation is a bijective function

    U : H1 ! H2where H1 andH2 are Hilbert spaces, such that

    hUx;UyiH2 = hx; yiH1for all x and y in H1 .

    2.2 PropertiesA unitary transformation is an isometry, as one can see by setting x = y in this formula.

    2.3 Unitary operatorIn the case whenH1 andH2 are the same space, a unitary transformation is an automorphism of that Hilbert space,and then it is also called a unitary operator.

    2.4 Antiunitary transformationA closely related notion is that of antiunitary transformation, which is a bijective function

    U : H1 ! H2

    3

  • 4 CHAPTER 2. UNITARY TRANSFORMATION

    between two complex Hilbert spaces such that

    hUx;Uyi = hx; yi = hy; xi

    for all x and y in H1 , where the horizontal bar represents the complex conjugate.

    2.5 See also Antiunitary Orthogonal transformation Time reversal Unitary group Unitary operator Unitary matrix Wigners Theorem

  • Chapter 3

    Vector projection

    Projection of a on b (a1), and rejection of a from b (a2).

    The vector projection of a vector a on (or onto) a nonzero vector b (also known as the vector component or vectorresolute of a in the direction of b) is the orthogonal projection of a onto a straight line parallel to b. It is a vectorparallel to b, dened as

    a1 = a1b^

    5

  • 6 CHAPTER 3. VECTOR PROJECTION

    When 90 < 180, a1 has an opposite direction with respect to b.

    where a1 is a scalar, called the scalar projection of a onto b, and b is the unit vector in the direction of b. In turn, thescalar projection is dened as

    a1 = jaj cos = a b^ = a bjbjwhere the operator denotes a dot product, |a| is the length of a, and is the angle between a and b. The scalarprojection is equal to the length of the vector projection, with a minus sign if the direction of the projection isopposite to the direction of b.The vector component or vector resolute of a perpendicular to b, sometimes also called the vector rejection of afrom b,[1] is the orthogonal projection of a onto the plane (or, in general, hyperplane) orthogonal to b. Both theprojection a1 and rejection a2 of a vector a are vectors, and their sum is equal to a, which implies that the rejectionis given by

    a2 = a a1:

    3.1 NotationTypically, a vector projection is denoted in a bold font (e.g. a1), and the corresponding scalar projection with normalfont (e.g. a1). In some cases, especially in handwriting, the vector projection is also denoted using a diacritic aboveor below the letter (e.g., ~a1 or a1; see Euclidean vector representations for more details).The vector projection of a on b and the corresponding rejection are sometimes denoted by a and a, respectively.

    3.2 Denitions based on angle

    3.2.1 Scalar projection

    Main article: Scalar projection

  • 3.3. DEFINITIONS IN TERMS OF A AND B 7

    The scalar projection of a on b is a scalar equal to

    a1 = jaj cos

    where is the angle between a and b.A scalar projection can be used as a scale factor to compute the corresponding vector projection.

    3.2.2 Vector projection

    The vector projection of a on b is a vector whose magnitude is the scalar projection of a on b and whose angle againstb is either 0 or 180 degrees. Namely, it is dened as

    a1 = a1b^ = (jaj cos )b^

    where a1 is the corresponding scalar projection, as dened above, and b is the unit vector with the same direction asb:

    b^ = bjbj

    3.2.3 Vector rejection

    By denition, the vector rejection of a on b is

    a2 = a a1

    Hence,

    a2 = a (jaj cos )b^:

    3.3 Denitions in terms of a and bWhen is not known, the cosine of can be computed in terms of a and b, by the following property of the dotproduct a b:

    a bjaj jbj = cos

    3.3.1 Scalar projection

    By the above-mentioned property of the dot product, the denition of the scalar projection becomes

    a1 = jaj cos = jaj a bjaj jbj =a bjbj

  • 8 CHAPTER 3. VECTOR PROJECTION

    3.3.2 Vector projectionSimilarly, the denition of the vector projection of a onto b becomes

    a1 = a1b^ =a bjbj

    bjbj ;

    which is equivalent to either

    a1 = (a b^)b^;or[2]

    a1 =a bjbj2 b =

    a bb bb:

    The latter formula is computationally more ecient than the former. Both require two dot products and eventuallythe multiplication of a scalar by a vector, but the former additionally requires a square root and the division of a vectorby a scalar,[3] while the latter additionally requires only the division of a scalar by a scalar.

    3.3.3 Vector rejectionBy denition,

    a2 = a a1Hence,

    a2 = a a bb bb:

    3.4 Properties

    3.4.1 Scalar projectionMain article: Scalar projection

    The scalar projection a on b is a scalar which has a negative sign if 90 < 180 degrees. It coincides with the length|c| of the vector projection if the angle is smaller than 90. More exactly:

    a1 = |a1| if 0 90 degrees, a1 = |a1| if 90 < 180 degrees.

    3.4.2 Vector projectionThe vector projection of a on b is a vector a1 which is either null or parallel to b. More exactly:

    a1 = 0 if = 90, a1 and b have the same direction if 0 < 90 degrees, a1 and b have opposite directions if 90 < 180 degrees.

  • 3.5. MATRIX REPRESENTATION 9

    If 0 90, as in this case, the scalar projection of a on b coincides with the length of the vector projection.

    3.4.3 Vector rejection

    The vector rejection of a on b is a vector a2 which is either null or orthogonal to b. More exactly:

    a2 = 0 if = 0 degrees or = 180 degrees,

    a2 is orthogonal to b if 0 < < 180 degrees,

    3.5 Matrix representationThe orthogonal projection can be represented by a projection matrix. To project a vector onto the unit vector a = (ax,ay, az), it would need to be multiplied with this projection matrix:

    Pa = aaT =

    24axayaz

    35ax ay az =24 a2x axay axazaxay a2y ayazaxaz ayaz a

    2z

    35

    3.6 UsesThe vector projection is an important operation in the GramSchmidt orthonormalization of vector space bases. It isalso used in the Separating axis theorem to detect whether two convex shapes intersect.

  • 10 CHAPTER 3. VECTOR PROJECTION

    3.7 GeneralizationsSince the notions of vector length and angle between vectors can be generalized to any n-dimensional inner productspace, this is also true for the notions of orthogonal projection of a vector, projection of a vector onto another, andrejection of a vector from another. In some cases, the inner product coincides with the dot product. Whenever theydon't coincide, the inner product is used instead of the dot product in the formal denitions of projection and rejection.For a three-dimensional inner product space, the notions of projection of a vector onto another and rejection of avector from another can be generalized to the notions of projection of a vector onto a plane, and rejection of a vectorfrom a plane.[4] The projection of a vector on a plane is its orthogonal projection on that plane. The rejection of avector from a plane is its orthogonal projection on a straight line which is orthogonal to that plane. Both are vectors.The rst is parallel to the plane, the second is orthogonal. For a given vector and plane, the sum of projection andrejection is equal to the original vector.Similarly, for inner product spaces with more than three dimensions, the notions of projection onto a vector andrejection from a vector can be generalized to the notions of projection onto a hyperplane, and rejection from ahyperplane.In geometric algebra, they can be further generalized to the notions of projection and rejection of a general multivectoronto/from any invertible k-blade.

    3.8 See also Scalar projection

    3.9 References[1] G. Perwass, 2009. Geometric Algebra With Applications in Engineering, p. 83.

    [2] Dot Products and Projections.

    [3] The second dot product, the square root and the division are not shown, but they are needed to compute; b^ = b/jbj (formore details, see the denition of Euclidean norm).

    [4] M.J. Baker, 2012. Projection of a vector onto a plane. Published on www.euclideanspace.com.

    3.10 External links Projection of a vector onto a plane

  • Chapter 4

    Vector spaces without elds

    In mathematics, the conventional denition of the concept of vector space relies upon the algebraic concept of aeld. This article treats an algebraic denition that does not require that concept. If vector spaces are redened as(universal) algebras as below, no preliminary introduction of elds is necessary. On the contrary, elds will comefrom such vector space algebras.One of the ways to do this is to keep the rst four Abelian group axioms on addition in the standard formal denitionand to formalize its geometric idea of scaling only by notions that concern every universal algebra.[1] Vector spacealgebras consist of one binary operation "+" and of unary operations , which form a nonempty set , that satisfy thefollowing conditions, which do not involve elds.

    1. (Total homogeneous algebra) There is a single set V such that every operation takes its two arguments or itsargument from the whole V and gives its value in it.

    2. (Abelian group) + satises the above mentioned axioms.3. (Basis dilation) There is a basis set B V such that, for every such that is not constant, all the values (b) ,

    where b ranges over B, again form a basis set.4. (Dilatations) is the set of functions that satisfy the previous conditions and preserve all operations, namely

    (v + w) = (v) + (w) and ((v)) = ((v)) , for all 2 and all v; w 2 V .

    Ricci (2008) proves that these vector space algebras are the very universal algebras that any standard vector spacedenes by its addition and the scalar multiplications by any given scalar (namely each a 2 F gets a 2 suchthat (v) = av ). Ricci (2007) proves that every such a universal algebra denes a suitable eld. (Hence, it provesthat these conditions imply all the axioms of the standard formal denition, as well as all the dening properties indenition 3 of a eld.)[2]

    Since the eld is dened from such vector space algebra, this is an algebraic construction of elds, which is an instanceof a more general algebraic construction: the "endowed dilatation monoid" (Ricci 2007). However, as far as eldsare concerned, there also is a geometric construction. Chapter II in (Artin 1957) shows how to get them starting fromgeometric axioms concerning points and lines.

    4.1 Notes[1] The generalized conception of space in the preface of Whitehead (1898) is the rst published claim that geometric ideas

    concern Universal Algebra too. It expands a similar claim in the preface of Fibonacci (1202).[2] This construction also concern the space with only one (null) vector, where the dened eld only has the zero as element.

    This slightly extends denition 3 of a eld, which only considers elds with at least two elements.

    4.2 References1. Artin, E. (1957). Geometric Algebra. New York: Interscience Publishers.

    11

  • 12 CHAPTER 4. VECTOR SPACES WITHOUT FIELDS

    2. Fibonacci, L. (1857) [1202]. Liber Abbaci. Rome: reprinted by Tipograa delle Scienze Matematiche eFisiche, B. Boncompagni ed.

    3. Ricci, G. (2007). Dilatations kill elds. International Journal of Mathematics, Game Theory and Algebra 16(5/6): 1334.

    4. Ricci, G. (April 2008). Another characterization of vector spaces without elds. InG.Dorfer, G. Eigenthaler,H. Kautschitsch, W. More, W.B. Mller (Hrsg.). Contributions to General Algebra 18. Klagenfurt: VerlagJohannes Heyn GmbH & Co. pp. 139150. ISBN 978-3-7084-0303-8.

    5. Whitehead, A.N. (1898). A treatise on Universal Algebra with applications 1. Cambridge: Cambridge Univer-sity Press.

  • Chapter 5

    Vector-valued function

    A vector-valued function, also referred to as a vector function, is a mathematical function of one or more variableswhose range is a set of multidimensional vectors or innite-dimensional vectors. The input of a vector-valued functioncould be a scalar or a vector. The dimension of the domain is not dened by the dimension of the range.

    5.1 Example

    A graph of the vector-valued function r(t) = indicating a range of solutions and the vector when evaluated neart = 19.5

    13

  • 14 CHAPTER 5. VECTOR-VALUED FUNCTION

    A common example of a vector-valued function is one that depends on a single real number parameter t, oftenrepresenting time, producing a vector v(t) as the result. In terms of the standard unit vectors i, j, k of Cartesian3-space, these specic type of vector-valued functions are given by expressions such as

    r(t) = f(t)i+ g(t)j or

    r(t) = f(t)i+ g(t)j+ h(t)k

    where f(t), g(t) and h(t) are the coordinate functions of the parameter t. The vector r(t) has its tail at the origin andits head at the coordinates evaluated by the function.The vector shown in the graph to the right is the evaluation of the function near t=19.5 (between 6 and 6.5; i.e.,somewhat more than 3 rotations). The spiral is the path traced by the tip of the vector as t increases from zero through8.Vector functions can also be referred to in a dierent notation:

    r(t) = hf(t); g(t)i or

    r(t) = hf(t); g(t); h(t)i

    5.2 PropertiesThe domain of a vector-valued function is the intersection of the domain of the functions f, g, and h.

    5.3 Derivative of a three-dimensional vector functionSee also: Gradient

    Many vector-valued functions, like scalar-valued functions, can be dierentiated by simply dierentiating the com-ponents in the Cartesian coordinate system. Thus, if

    r(t) = f(t)i+ g(t)j+ h(t)k

    is a vector-valued function, then

    dr(t)dt

    = f 0(t)i+ g0(t)j+ h0(t)k:

    The vector derivative admits the following physical interpretation: if r(t) represents the position of a particle, thenthe derivative is the velocity of the particle

    v(t) = dr(t)dt

    :

    Likewise, the derivative of the velocity is the acceleration

    dv(t)dt

    = a(t):

  • 5.3. DERIVATIVE OF A THREE-DIMENSIONAL VECTOR FUNCTION 15

    5.3.1 Partial derivativeThe partial derivative of a vector function a with respect to a scalar variable q is dened as[1]

    @a@q

    =nXi=1

    @ai@q

    ei

    where ai is the scalar component of a in the direction of ei. It is also called the direction cosine of a and ei or theirdot product. The vectors e1,e2,e3 form an orthonormal basis xed in the reference frame in which the derivative isbeing taken.

    5.3.2 Ordinary derivativeIf a is regarded as a vector function of a single scalar variable, such as time t, then the equation above reduces to therst ordinary time derivative of a with respect to t,[1]

    dadt

    =3Xi=1

    daidt

    ei:

    5.3.3 Total derivativeIf the vector a is a function of a number n of scalar variables qr (r = 1,...,n), and each qr is only a function of time t,then the ordinary derivative of a with respect to t can be expressed, in a form known as the total derivative, as[1]

    dadt

    =nX

    r=1

    @a@qr

    dqrdt

    +@a@t:

    Some authors prefer to use capital D to indicate the total derivative operator, as in D/Dt. The total derivative diersfrom the partial time derivative in that the total derivative accounts for changes in a due to the time variance of thevariables qr.

    5.3.4 Reference framesWhereas for scalar-valued functions there is only a single possible reference frame, to take the derivative of a vector-valued function requires the choice of a reference frame (at least when a xed Cartesian coordinate system is notimplied as such). Once a reference frame has been chosen, the derivative of a vector-valued function can be computedusing techniques similar to those for computing derivatives of scalar-valued functions. A dierent choice of referenceframe will, in general, produce a dierent derivative function. The derivative functions in dierent reference frameshave a specic kinematical relationship.

    5.3.5 Derivative of a vector function with nonxed basesThe above formulas for the derivative of a vector function rely on the assumption that the basis vectors e1,e2,e3 areconstant, that is, xed in the reference frame in which the derivative of a is being taken, and therefore the e1,e2,e3each has a derivative of identically zero. This often holds true for problems dealing with vector elds in a xedcoordinate system, or for simple problems in physics. However, many complex problems involve the derivative ofa vector function in multiple moving reference frames, which means that the basis vectors will not necessarily beconstant. In such a case where the basis vectors e1,e2,e3 are xed in reference frame E, but not in reference frameN, the more general formula for the ordinary time derivative of a vector in reference frame N is[1]

    Ndadt

    =3Xi=1

    daidt

    ei +3Xi=1

    aiNdeidt

  • 16 CHAPTER 5. VECTOR-VALUED FUNCTION

    where the superscript N to the left of the derivative operator indicates the reference frame in which the derivative istaken. As shown previously, the rst term on the right hand side is equal to the derivative of a in the reference framewhere e1,e2,e3 are constant, reference frame E. It also can be shown that the second term on the right hand side isequal to the relative angular velocity of the two reference frames cross multiplied with the vector a itself.[1] Thus,after substitution, the formula relating the derivative of a vector function in two reference frames is[1]

    Ndadt

    =Edadt

    + N!E a

    where NE is the angular velocity of the reference frame E relative to the reference frame N.One common example where this formula is used is to nd the velocity of a space-borne object, such as a rocket, inthe inertial reference frame using measurements of the rockets velocity relative to the ground. The velocity NvR ininertial reference frame N of a rocket R located at position rR can be found using the formula

    Nddt

    (rR) =Eddt

    (rR) + N!E rR:

    where NE is the angular velocity of the Earth relative to the inertial frame N. Since velocity is the derivative ofposition, NvR and EvR are the derivatives of rR in reference frames N and E, respectively. By substitution,

    NvR = EvR + N!E rR

    where EvR is the velocity vector of the rocket as measured from a reference frame E that is xed to the Earth.

    5.3.6 Derivative and vector multiplicationThe derivative of the products of vector functions behaves similarly to the derivative of the products of scalarfunctions.[2] Specically, in the case of scalar multiplication of a vector, if p is a scalar variable function of q,[1]

    @

    @q(pa) = @p

    @qa+ p@a

    @q:

    In the case of dot multiplication, for two vectors a and b that are both functions of q,[1]

    @

    @q(a b) = @a

    @q b+ a @b

    @q:

    Similarly, the derivative of the cross product of two vector functions is[1]

    @

    @q(a b) = @a

    @q b+ a @b

    @q:

    5.4 Derivative of an n-dimensional vector functionA function f of a real number t with values in the space Rn can be written as f(t) = (f1(t); f2(t); : : : ; fn(t)) . Itsderivative equals

    f 0(t) = (f 01(t); f02(t); : : : ; f

    0n(t))

    If f is a function of several variables, say of t 2 Rm , then the partial derivatives of the components of f form anm matrix called the Jacobian matrix of f.

  • 5.5. INFINITE-DIMENSIONAL VECTOR FUNCTIONS 17

    5.5 Innite-dimensional vector functionsIf the values of a function f lie in an innite-dimensional vector space X, such as a Hilbert space, then f may be calledan innite-dimensional vector function.

    5.5.1 Functions with values in a Hilbert space

    If the argument of f is a real number and X is a Hilbert space, then the derivative of f at a point t can be dened asin the nite-dimensional case:

    f 0(t) = limh!0

    f(t+ h) f(t)h

    :

    Most results of the nite-dimensional case also hold in the innite-dimensional case too, mutatis mutandis. Dif-ferentiation can also be dened to functions of several variables (e.g., t 2 Rn or even t 2 Y , where Y is aninnite-dimensional vector space).N.B. If X is a Hilbert space, then one can easily show that any derivative (and any other limit) can be computedcomponentwise: if

    f = (f1; f2; f3; : : :)

    (i.e., f = f1e1 + f2e2 + f3e3 + , where e1; e2; e3; : : : is an orthonormal basis of the space X), and f 0(t) exists,then

    f 0(t) = (f 01(t); f02(t); f

    03(t); : : :)

    However, the existence of a componentwise derivative does not guarantee the existence of a derivative, as compo-nentwise convergence in a Hilbert space does not guarantee convergence with respect to the actual topology of theHilbert space.

    5.5.2 Other innite-dimensional vector spaces

    Most of the above hold for other topological vector spaces X too. However, not as many classical results hold in theBanach space setting, e.g., an absolutely continuous function with values in a suitable Banach space need not have aderivative anywhere. Moreover, in most Banach spaces setting there are no orthonormal bases.

    5.6 See also Innite-dimensional-vector function

    Coordinate vector

    Vector eld

    Curve

    Parametric surface

    Position vector

    Parametrization

  • 18 CHAPTER 5. VECTOR-VALUED FUNCTION

    5.7 Notes[1] Kane & Levinson 1996, pp. 2937

    [2] In fact, these relations are derived applying the product rule componentwise.

    5.8 References Kane, Thomas R.; Levinson, David A. (1996), 19 Dierentiation of Vector Functions, Dynamics Online,Sunnyvale, California: OnLine Dynamics, Inc., pp. 2937

    5.9 External links Vector-valued functions and their properties (from Lake Tahoe Community College) Weisstein, Eric W., Vector Function, MathWorld. Everything2 article 3 Dimensional vector-valued functions (from East Tennessee State University) Position Vector Valued Functions Khan Academy module

  • Chapter 6

    Vectorization (mathematics)

    In mathematics, especially in linear algebra and matrix theory, the vectorization of a matrix is a linear transformationwhich converts thematrix into a column vector. Specically, the vectorization of anmnmatrixA, denoted by vec(A),is the mn 1 column vector obtained by stacking the columns of the matrix A on top of one another:

    vec(A) = [a1;1; : : : ; am;1; a1;2; : : : ; am;2; : : : ; a1;n; : : : ; am;n]T

    Here ai;j represents the (i; j) -th element of matrix A and the superscript T denotes the transpose. Vectorizationexpresses the isomorphism Rmn := Rm Rn = Rmn between these vector spaces (of matrices and vectors) incoordinates.

    For example, for the 22 matrix A =a bc d

    , the vectorization is vec(A) =

    2664acbd

    3775 .

    6.1 Compatibility with Kronecker productsThe vectorization is frequently used together with the Kronecker product to express matrix multiplication as a lineartransformation on matrices. In particular,

    vec(ABC) = (CT A)vec(B)for matrices A, B, and C of dimensions kl, lm, and mn. For example, if adA(X) = AX XA (the adjointendomorphism of the Lie algebra gl(n,C) of all nn matrices with complex entries), then vec(adA(X)) = (In

    AAT In)vec(X) , where In is the nn identity matrix.There are two other useful formulations:

    vec(ABC) = (In AB)vec(C) = (CTBT Ik)vec(A)vec(AB) = (Im A)vec(B) = (BT Ik)vec(A)

    6.2 Compatibility with Hadamard productsVectorization is an algebra homomorphism from the space of nn matrices with the Hadamard (entrywise) productto Cn with its Hadamard product:

    vec(A B) = vec(A) vec(B).

    19

  • 20 CHAPTER 6. VECTORIZATION (MATHEMATICS)

    6.3 Compatibility with inner productsVectorization is a unitary transformation from the space of nn matrices with the Frobenius (or HilbertSchmidt)inner product to Cn :

    tr(A* B) = vec(A)* vec(B)

    where the superscript * denotes the conjugate transpose.

    6.4 Half-vectorizationFor a symmetric matrix A, the vector vec(A) contains more information than is strictly necessary, since the matrix iscompletely determined by the symmetry together with the lower triangular portion, that is, the n(n + 1)/2 entries on andbelow the main diagonal. For such matrices, the half-vectorization is sometimes more useful than the vectorization.The half-vectorization, vech(A), of a symmetric n n matrix A is the n(n + 1)/2 1 column vector obtained byvectorizing only the lower triangular part of A:

    vech(A) = [ A,, ..., A,, A,, ..., An,, ..., An,n,An,n, A, ]T.

    For example, for the 22 matrix A =a bb d

    , the half-vectorization is vech(A) =

    24abd

    35 .There exist unique matrices transforming the half-vectorization of a matrix to its vectorization and vice versa called,respectively, the duplication matrix and the elimination matrix.

    6.5 Programming languageProgramming languages that implement matrices may have easy means for vectorization. In Matlab/GNU Octave amatrix A can be vectorized by A(:). GNU Octave also allows vectorization and half-vectorization with vec (A) andvech (A) respectively. In Python NumPy arrays implement the 'atten' method, while in R the desired eect can beachieved via the 'c()' or 'as.vector()' functions.

    6.6 See also Voigt notation Column-major order Matricization

    6.7 References Jan R. Magnus and Heinz Neudecker (1999), Matrix Dierential Calculus with Applications in Statistics andEconometrics, 2nd Ed., Wiley. ISBN 0-471-98633-X.

    Jan R. Magnus (1988), Linear Structures, Oxford University Press. ISBN 0-85264-299-7.

  • Chapter 7

    Weyls inequality

    In mathematics, there are at least two results known as Weyls inequality.

    7.1 Weyls inequality in number theoryIn number theory,Weyls inequality, named for Hermann Weyl, states that ifM, N, a and q are integers, with a andq coprime, q > 0, and f is a real polynomial of degree k whose leading coecient c satises

    jc a/qj tq2;for some t greater than or equal to 1, then for any positive real number " one has

    M+NXx=M

    exp(2if(x)) = O N1+"

    t

    q+

    1

    N+

    t

    Nk1+

    q

    Nk

    21k!as N !1:

    This inequality will only be useful when

    q < Nk;

    for otherwise estimating the modulus of the exponential sum by means of the triangle inequality as N provides abetter bound.

    7.2 Weyls inequality in matrix theoryIn linear algebra, Weyls inequality is a theorem about the changes to eigenvalues of a Hermitian matrix that isperturbed. It is useful if we wish to know the eigenvalues of the Hermitian matrix H but there is an uncertainty aboutthe entries of H. We let H be the exact matrix and P be a perturbation matrix that represents the uncertainty. Thematrix we 'measure' is M =H +P .The theorem says that if M, H and P are all n by n Hermitian matrices, where M has eigenvalues

    1 nand H has eigenvalues

    1 n

    21

  • 22 CHAPTER 7. WEYLS INEQUALITY

    and P has eigenvalues

    1 nthen the following inequalities hold for i=1;:::;n :

    i + n i i + 1More generally, if j+kn i r+s1;:::;n , we have

    j + k i r + sIf P is positive denite (that is, n> 0 ) then this implies

    i > i 8i = 1; : : : ; n:

    Note that we can order the eigenvalues because the matrices are Hermitian and therefore the eigenvalues are real.

    7.3 Applications

    7.3.1 Estimating perturbations of the spectrumAssume that we have a bound on P in the sense that we know that its spectral norm (or, indeed, any consistent matrixnorm) satises kPk2 . Then it follows that all its eigenvalues are bounded in absolute value by . ApplyingWeyls inequality, it follows that the spectra of M and H are close in the sense that

    ji ij 8i = 1; : : : ; n:

    7.3.2 Weyls inequality for singular valuesThe singular values {k} of a square matrixM are the square roots of eigenvalues ofM*M (equivalentlyMM*). SinceHermitian matrices follow Weyls inequality, if we take any matrix A then its singular values will be the square rootof the eigenvalues of B=A*A which is a Hermitian matrix. Now since Weyls inequality hold for B, therefore for thesingular values of A.[1]

    This result gives the bound for the perturbation in singular values of a matrix A caused due to perturbation in A.

    7.4 Notes[1] Tao, Terence. 254A, Notes 3a: Eigenvalues and sums of Hermitian matrices. Terence Taos blog. Retrieved 25 May

    2015.

    7.5 References Matrix Theory, Joel N. Franklin, (Dover Publications, 1993) ISBN 0-486-41179-6 Das asymptotische Verteilungsgesetz der Eigenwerte linearer partieller Dierentialgleichungen, H. Weyl,Math. Ann., 71 (1912), 441479

  • Chapter 8

    Weyr canonical form

    The image shows an example of a general Weyr matrix consisting of two blocks each of which is a basic Weyr matrix. The basicWeyr matrix in the top-left corner has the structure (4,2,1) and the other one has the structure (2,2,1,1).

    In mathematics, in linear algebra, a Weyr canonical form (or, Weyr form or Weyr matrix) is a square matrixsatisfying certain conditions. A square matrix is said to be in the Weyr canonical form if the matrix satises the

    23

  • 24 CHAPTER 8. WEYR CANONICAL FORM

    conditions dening the Weyr canonical form. The Weyr form was discovered by the Czech mathematician EduardWeyr in 1885.[1][2][3] TheWeyr form did not become popular among mathematicians and it was overshadowed by theclosely related, but distinct, canonical form known by the name Jordan canonical form.[3] The Weyr form has beenrediscovered several times since Weyrs original discovery in 1885.[4] This form has been variously called asmodiedJordan form, reordered Jordan form, second Jordan form, and H-form.[4] The current terminology is credited toShapiro who introduced it in a paper published in the American Mathematical Monthly in 1999.[4][5]

    Recently several applications have been found for the Weyr matrix. Of particular interest is an application of theWeyr matrix in the study of phylogenetic invariants in biomathematics.

    8.1 Denitions

    8.1.1 Basic Weyr matrix

    8.1.2 DenitionA basic Weyr matrix with eigenvalue is an n n matrixW of the following form: There is a partition

    n1 + n2 + + nr = n of n with n1 n2 nr 1

    such that, when W is viewed as an r r blocked matrix (Wij) , where the (i; j) block Wij is an ni nj matrix,the following three features are present:

    1. The main diagonal blocksWii are the ni ni scalar matrices I for i = 1; : : : ; r .2. The rst superdiagonal blocksWi;i+1 are full column rank ni ni+1 matrices in reduced row-echelon form

    (that is, an identity matrix followed by zero rows) for i = 1; : : : ; r 1 .3. All other blocks ofW are zero (that is,Wij = 0 when j 6= i; i+ 1 ).

    In this case, we say thatW has Weyr structure (n1; n2; : : : ; nr) .

    8.1.3 ExampleThe following is an example of a basic Weyr matrix.

    W = =

    2664W11 W12

    W22 W23W33 W34

    W44

    3775

  • 8.1. DEFINITIONS 25

    In this matrix, n = 10 and n1 = 4; n2 = 2; n3 = 2; n4 = 1 . SoW has the Weyr structure (4; 2; 2; 1) . Also,

    W11 =

    2664 0 0 00 0 00 0 00 0 0

    3775 = I4; W22 = 00 = I2; W33 =

    00

    = I2; W44 =

    = I1

    and

    W12 =

    26641 00 10 00 0

    3775; W23 = 1 00 1; W34 =

    10

    :

    8.1.4 General Weyr matrix

    8.1.5 Denition

    LetW be a square matrix and let 1; : : : ; k be the distinct eigenvalues ofW . We say thatW is in Weyr form (oris a Weyr matrix) ifW has the following form:

    W =

    26664W1

    W2. . .

    Wk

    37775

    whereWi is a basic Weyr matrix with eigenvalue i for i = 1; : : : ; k .

    8.1.6 Example

    The following image shows an example of a general Weyr matrix consisting of three basic Weyr matrix blocks. Thebasic Weyr matrix in the top-left corner has the structure (4,2,1) with eigenvalue 4, the middle block has structure(2,2,1,1) with eigenvalue 3 and the one in the lower-right corner has the structure (3, 2) with eigenvalue 0.

  • 26 CHAPTER 8. WEYR CANONICAL FORM

    8.2 The Weyr form is canonicalThat the weyr form is a canonical form of a matrix is a consequence of the following result:[3] To within permutationof basic Weyr blocks, each square matrix A over an algebraically closed eld is similar to a unique Weyr matrix W .The matrix W is called the Weyr (canonical ) form of A .

    8.3 Computation of the Weyr canonical form

    8.3.1 Reduction to the nilpotent case

    Let A be a square matrix of order n over an algebraically closed eld and let the distinct eigenvalues of A be1; 2; : : : ; k . As a consequence of the generalized eigenspace decomposition theorem, one can show that Ais similar to a block diagonal matrix of the form

    A =

    266641I +N1

    2I +N2. . .

    kI +Nk

    37775 =266641I

    2I. . .

    kI

    37775+26664N1

    N2. . .

    Nk

    37775 = D+Nwhere D is a diagonal matrix and N is a nilpotent matrix. So the problem of reducing A to the Weyr form reducesto the problem of reducing the nilpotent matrices Ni to the Weyr form.

  • 8.3. COMPUTATION OF THE WEYR CANONICAL FORM 27

    8.3.2 Reduction of a nilpotent matrix to the Weyr formGiven a nilpotent square matrix A of order n over an algebraically closed eld F , the following algorithm producesan invertible matrix C and a Weyr matrixW such thatW = C1AC .Step 1Let A1 = AStep 2

    1. Compute a basis for the null space of A1 .

    2. Extend the basis for the null space of A1 to a basis for the n -dimensional vector space Fn .

    3. Form the matrix P1 consisting of these basis vectors.

    4. Compute P11 A1P1 =0 B20 A2

    . A2 is a square matrix of size n nullity (A1) .

    Step 3If A2 is nonzero, repeat Step 2 on A2 .

    1. Compute a basis for the null space of A2 .

    2. Extend the basis for the null space of A2 to a basis for the vector space having dimension n nullity (A1) .

    3. Form the matrix P2 consisting of these basis vectors.

    4. Compute P12 A2P2 =0 B30 A3

    . A2 is a square matrix of size n nullity (A1) nullity (A2) .

    Step 4Continue the processes of Steps 1 and 2 to obtain increasingly smaller square matricesA1; A2; A3; : : : and associatednvertible matrices P1; P2; P3; : : : until the rst zero matrix Ar is obtained.Step 5The Weyr structure of A is (n1; n2; : : : ; nr) where ni = nullity (Ai) .Step 6

    1. Compute the matrix P = P1I 00 P2

    I 00 P3

    I 00 Pr

    (here the I 's are appropriately sized identity

    matrices).

    2. Compute X = P1AP . X is a matrix of the following form:

    X =

    26666640 X12 X13 X1;r1 X1r

    0 X23 X2;r1 X2r. . . 0 Xr1;r

    0

    3777775Step 7Use elementary row operations to nd an invertible matrix Yr1 of appropriate size such that the product Yr1Xr;r1is a matrix of the form Ir;r1 =

    IO

    .

    Step 8

  • 28 CHAPTER 8. WEYR CANONICAL FORM

    Set Q1 = diag (I; I; : : : ; Y 1r1; I) and compute Q11 XQ1 . In this matrix, the (r; r 1) -block is Ir;r1 .Step 9Find a matrixR1 formed as a product of elementary matrices such thatR11 Q11 XQ1R1 is a matrix in which all theblocks above the block Ir;r1 contain only 0 's.Step 10Repeat Steps 8 and 9 on column r1 converting (r1; r2) -block to Ir1;r2 via conjugation by some invertiblematrix Q2 . Use this block to clear out the blocks above, via conjugation by a product R2 of elementary matrices.Step 11Repeat these processes on r 2; r 3; : : : ; 3; 2 columns, using conjugations by Q3; R3; : : : ; Qr2; Rr2; Qr1 .The resulting matrixW is now in Weyr form.Step 12Let C = P1diag(I; P2) diag(I; Pr1)Q1R1Q2 Rr2Qr1 . ThenW = C1AC .

    8.4 Applications of the Weyr formSome well-known applications of the Weyr form are listed below:[3]

    1. The Weyr form can be used to simplify the proof of Gerstenhabers Theorem which asserts that the subalgebragenerated by two commuting n n matrices has dimension at most n .

    2. A set of nite matrices is said to be approximately simultaneously diagonalizable if they can be perturbedto simultaneously diagonalizable matrices. The Weyr form is used to prove approximate simultaneous di-agonalizability of various classes of matrices. The approximate simultaneous diagonalizability property hasapplications in the study of phylogenetic invariants in biomathematics.

    3. The Weyr form can be used to simplify the proofs of the irreducibility of the variety of all k-tuples of com-muting complex matrices.

    8.5 References[1] EduardWeyr (1985). Rpartition des matrices en espces et formation de toutes les espces. Comptes Rendus, Paris 100:

    966969. Retrieved 10 December 2013.

    [2] Eduard Weyr (1890). Zur Theorie der bilinearen Formen. Monatsh. Math. Physik 1: 163236.

    [3] Kevin C. Meara, John Clark, Charles I. Vinsonhaler (2011). Advanced Topics in Linear Algebra: Weaving Matrix Problemsthrough the Weyr Form. Oxford University Press.

    [4] Kevin C. Meara, John Clark, Charles I. Vinsonhaler (2011). Advanced Topics in Linear Algebra: Weaving Matrix Problemsthrough the Weyr Form. Oxford University Press. pp. 44, 8182.

    [5] Shapiro, H. (1999). TheWeyr characteristic. TheAmericanMathematicalMonthly 106: 919929. doi:10.2307/2589746.

  • Chapter 9

    Woodbury matrix identity

    In mathematics (specically linear algebra), the Woodbury matrix identity, named after Max A. Woodbury[1][2]says that the inverse of a rank-k correction of somematrix can be computed by doing a rank-k correction to the inverseof the original matrix. Alternative names for this formula are the matrix inversion lemma, ShermanMorrisonWoodbury formula or just Woodbury formula. However, the identity appeared in several papers before theWoodbury report.[3]

    The Woodbury matrix identity is[4]

    (A+ UCV )1

    = A1 A1U C1 + V A1U1 V A1;where A, U, C and V all denote matrices of the correct (conformable) sizes. Specically, A is n-by-n, U is n-by-k, Cis k-by-k and V is k-by-n. This can be derived using blockwise matrix inversion.For a more general formula for which the matrix C need not be invertible or even square, see Binomial inversetheorem.In the special case where C is the 1-by-1 unit matrix, this identity reduces to the ShermanMorrison formula. Inthe special case when C is the identity matrix I, the matrix I + V A1U is known in numerical linear algebra andnumerical partial dierential equations as the capacitance matrix.[3]

    9.1 Direct proofThe formula can be proven by checking that (A+UCV ) times its alleged inverse on the right side of the Woodburyidentity gives the identity matrix:

    (A+ UCV )hA1 A1U C1 + V A1U1 V A1i

    = I + UCV A1 (U + UCV A1U)(C1 + V A1U)1V A1= I + UCV A1 UC(C1 + V A1U)(C1 + V A1U)1V A1= I + UCV A1 UCV A1 = I:

    9.2 Derivation via blockwise eliminationDeriving the Woodbury matrix identity is easily done by solving the following block matrix inversion problem

    A UV C1

    XY

    =

    I0

    :

    29

  • 30 CHAPTER 9. WOODBURY MATRIX IDENTITY

    Expanding, we can see that the above reduces to AX + UY = I and V X C1Y = 0 , which is equivalent to(A+UCV )X = I . Eliminating the rst equation, we nd thatX = A1(I UY ) , which can be substituted intothe second to nd V A1(IUY ) = C1Y . Expanding and rearranging, we have V A1 = (C1+V A1U)Y ,or (C1+V A1U)1V A1 = Y . Finally, we substitute into our AX +UY = I , and we have AX +U(C1+V A1U)1V A1 = I . Thus,

    (A+ UCV )1 = X = A1 A1U C1 + V A1U1 V A1:We have derived the Woodbury matrix identity.

    9.3 Derivation from LDU decompositionWe start by the matrix

    A UV C

    By eliminating the entry under the A (given that A is invertible) we get

    I 0

    V A1 IA UV C

    =

    A U0 C V A1U

    Likewise, eliminating the entry above C gives

    A UV C

    I A1U0 I

    =

    A 0V C V A1U

    Now combining the above two, we get

    I 0

    V A1 IA UV C

    I A1U0 I

    =

    A 00 C V A1U

    Moving to the right side gives

    A UV C

    =

    I 0

    V A1 I

    A 00 C V A1U

    I A1U0 I

    which is the LDU decomposition of the block matrix into an upper triangular, diagonal, and lower triangular matrices.Now inverting both sides gives

    A UV C

    1=

    I A1U0 I

    1A 00 C V A1U

    1I 0

    V A1 I

    1

    =

    I A1U0 I

    A1 00 (C V A1U)1

    I 0

    V A1 I

    =

    A1 +A1U(C V A1U)1V A1 A1U(C V A1U)1

    (C V A1U)1V A1 (C V A1U)1

    (1)

    We could equally well have done it the other way (provided that C is invertible) i.e.

  • 9.4. APPLICATIONS 31

    A UV C

    =

    I UC1

    0 I

    A UC1V 0

    0 C

    I 0

    C1V I

    Now again inverting both sides,

    A UV C

    1=

    I 0

    C1V I

    1A UC1V 0

    0 C

    1I UC1

    0 I

    1

    =

    I 0

    C1V I

    (A UC1V )1 00 C1

    I UC10 I

    =

    (A UC1V )1 (A UC1V )1UC1

    C1V (A UC1V )1 C1V (A UC1V )1UC1 + C1

    (2)

    Now comparing elements (1,1) of the RHS of (1) and (2) above gives the Woodbury formula

    A UC1V 1 = A1 +A1U(C V A1U)1V A1:9.4 ApplicationsThis identity is useful in certain numerical computations where A1 has already been computed and it is desired tocompute (A + UCV)1. With the inverse of A available, it is only necessary to nd the inverse of C1 + VA1U inorder to obtain the result using the right-hand side of the identity. If C has a much smaller dimension than A, thisis more ecient than inverting A + UCV directly. A common case is nding the inverse of a low-rank update A +UCV of A (where U only has a few columns and V only a few rows), or nding an approximation of the inverse ofthe matrix A + B where the matrix can be approximated by a low-rank matrix UCV, for example using the singularvalue decomposition.This is applied, e.g., in the Kalman lter and recursive least squares methods, to replace the parametric solution,requiring inversion of a state vector sized matrix, with a condition equations based solution. In case of the Kalmanlter this matrix has the dimensions of the vector of observations, i.e., as small as 1 in case only one new observationis processed at a time. This signicantly speeds up the often real time calculations of the lter.

    9.5 See also ShermanMorrison formula Schur complement Matrix determinant lemma, formula for a rank-k update to a determinant

    9.6 Notes[1] Max A. Woodbury, Inverting modied matrices, Memorandum Rept. 42, Statistical Research Group, Princeton University,

    Princeton, NJ, 1950, 4pp MR 38136

    [2] Max A. Woodbury, The Stability of Out-Input Matrices. Chicago, Ill., 1949. 5 pp. MR 32564

    [3] Hager, William W. (1989). Updating the inverse of a matrix. SIAM Review 31 (2): 221239. doi:10.1137/1031049.JSTOR 2030425. MR 997457.

    [4] Higham, Nicholas (2002). Accuracy and Stability of Numerical Algorithms (2nd ed.). SIAM. p. 258. ISBN 978-0-89871-521-7. MR 1927606.

  • 32 CHAPTER 9. WOODBURY MATRIX IDENTITY

    Press, WH; Teukolsky, SA; Vetterling, WT; Flannery, BP (2007), Section 2.7.3. Woodbury Formula, Nu-merical Recipes: The Art of Scientic Computing (3rd ed.), New York: Cambridge University Press, ISBN978-0-521-88068-8

    9.7 External links Some matrix identities Weisstein, Eric W., Woodbury formula, MathWorld.

  • Chapter 10

    Z-order curve

    Not to be confused with Z curve or Z-order.In mathematical analysis and computer science, Z-order,Morton order, orMorton code is a function which maps

    Four iterations of the Z-order curve.

    multidimensional data to one dimension while preserving locality of the data points. It was introduced in 1966 by G.

    33

  • 34 CHAPTER 10. Z-ORDER CURVE

    M.Morton.[1] The z-value of a point in multidimensions is simply calculated by interleaving the binary representationsof its coordinate values. Once the data are sorted into this ordering, any one-dimensional data structure can be usedsuch as binary search trees, B-trees, skip lists or (with low signicant bits truncated) hash tables. The resultingordering can equivalently be described as the order one would get from a depth-rst traversal of a quadtree.

    10.1 Coordinate values

    The gure below shows the Z-values for the two dimensional case with integer coordinates 0 x 7, 0 y 7 (shownboth in decimal and binary). Interleaving the binary coordinate values yields binary z-values as shown. Connectingthe z-values in their numerical order produces the recursively Z-shaped curve. Two-dimensional Z-values are alsocalled as quadkey ones.The Z-values of xs are described as binary numbers:x[] = {0b000000, 0b000001, 0b000100, 0b000101, 0b010000, 0b010001, 0b010100, 0b010101}The sum and subtraction of two xs are calculated by using bitwise operations:x[i+j] = ((x[i] | 0b101010) + x[j]) & 0b01010101 x[i-j] = (x[i] - x[j]) & 0b01010101 if i >= j

  • 10.2. EFFICIENTLY BUILDING QUADTREES 35

    Z-order curve iterations extended to three dimensions.

    10.2 Eciently building quadtrees

    The Z-ordering can be used to eciently build a quadtree for a set of points.[2] The basic idea is to sort the input setaccording to Z-order. Once sorted, the points can either be stored in a binary search tree and used directly, which iscalled a linear quadtree,[3] or they can be used to build a pointer based quadtree.The input points are usually scaled in each dimension to be positive integers, either as a xed point representation overthe unit range [0, 1] or corresponding to the machine word size. Both representations are equivalent and allow forthe highest order non-zero bit to be found in constant time. Each square in the quadtree has a side length which is apower of two, and corner coordinates which are multiples of the side length. Given any two points, the derived squarefor the two points is the smallest square covering both points. The interleaving of bits from the x and y componentsof each point is called the shue of x and y, and can be extended to higher dimensions.[2]

    Points can be sorted according to their shue without explicitly interleaving the bits. To do this, for each dimension,the most signicant bit of the exclusive or of the coordinates of the two points for that dimension is examined. Thedimension for which the most signicant bit is largest is then used to compare the two points to determine their shueorder.The exclusive or operation masks o the higher order bits for which the two coordinates are identical. Since theshue interleaves bits from higher order to lower order, identifying the coordinate with the largest most signicantbit, identies the rst bit in the shue order which diers, and that coordinate can be used to compare the twopoints.[4] This is shown in the following Python code:

  • 36 CHAPTER 10. Z-ORDER CURVE

    y: 0000

    1001

    2010

    3011

    4100

    5101

    6110

    7111

    000000 000001

    000010 000011

    000100 000101

    000110 000111

    001000 001001

    001010 001011

    001100 001101

    001110 001111

    010000 010001

    010010 010011

    010100 010101

    010110 010111

    011000 011001

    011010 011011

    011100 011101

    011110 011111

    100000 100001

    100010 100011

    100100 100101

    100110 100111

    101000 101001

    101010 101011

    101100 101101

    101110 101111

    110000 110001

    110010 110011

    110100 110101

    110110 110111

    111000 111001

    111010 111011

    111100 111101

    111110

    x: 0 1 2 3 4 5 6 7000 001 010 011 100 101 110 111

    111111

    def cmp_zorder(a, b): j = 0 k = 0 x = 0 for k in range(dim): y = a[k] ^ b[k] if less_msb(x, y): j = k x = y return a[j]- b[j]

    One way to determine whether the most signicant smaller is to compare the oor of the base-2 logarithm of eachpoint. It turns out the following operation is equivalent, and only requires exclusive or operations:[4]

    def less_msb(x, y): return x < y and x < (x ^ y)

    It is also possible to compare oating point numbers using the same technique. The less_msb function is modied torst compare the exponents. Only when they are equal is the standard less_msb function used on the mantissas.[5]

    Once the points are in sorted order, two properties make it easy to build a quadtree: The rst is that the pointscontained in a square of the quadtree form a contiguous interval in the sorted order. The second is that if more thanone child of a square contains an input point, the square is the derived square for two adjacent points in the sortedorder.For each adjacent pair of points, the derived square is computed and its side length determined. For each derivedsquare, the interval containing it is bounded by the rst larger square to the right and to the left in sorted order.[2] Eachsuch interval corresponds to a square in the quadtree. The result of this is a compressed quadtree, where only nodescontaining input points or two or more children are present. A non-compressed quadtree can be built by restoringthe missing nodes, if desired.

  • 10.3. USE WITH ONE-DIMENSIONAL DATA STRUCTURES FOR RANGE SEARCHING 37

    Rather than building a pointer based quadtree, the points can be maintained in sorted order in a data structure suchas a binary search tree. This allows points to be added and deleted in O(log n) time. Two quadtrees can be mergedby merging the two sorted sets of points, and removing duplicates. Point location can be done by searching for thepoints preceding and following the query point in the sorted order. If the quadtree is compressed, the predecessornode found may be an arbitrary leaf inside the compressed node of interest. In this case, it is necessary to nd thepredecessor of the least common ancestor of the query point and the leaf found.[6]

    10.3 Use with one-dimensional data structures for range searchingAlthough preserving locality well, for ecient range searches an algorithm is necessary for calculating, from a pointencountered in the data structure, the next Z-value which is in the multidimensional search range:

    x= 0 1 2 3 4 5 6 7

    y= 0 0 1 4 5 16 17 20 21

    y= 1 2 3 6 7 18 19 22 23

    y= 2 8 9 12 13 24 25 28 29

    y= 3 10 11 14 15 26 27 30 31

    y= 4 32 33 36 37 48 49 52 53

    y= 5 34 35 38 39 50 51 54 55

    y= 6 40 41 44 45 56 57 60 61

    y= 7 42 43 46 47 58 59 62 63

    In this example, the range being queried (x = 2, ..., 3, y = 2, ..., 6) is indicated by the dotted rectangle. Its highestZ-value (MAX) is 45. In this example, the value F = 19 is encountered when searching a data structure in increasingZ-value direction, so we would have to search in the interval between F and MAX (hatched area). To speed upthe search, one would calculate the next Z-value which is in the search range, called BIGMIN (36 in the example)and only search in the interval between BIGMIN and MAX (bold values), thus skipping most of the hatched area.Searching in decreasing direction is analogous with LITMAX which is the highest Z-value in the query range lowerthan F. The BIGMIN problem has rst been stated and its solution shown in Tropf and Herzog.[7] This solution isalso used in UB-trees (GetNextZ-address). As the approach does not depend on the one dimensional data structurechosen, there is still free choice of structuring the data, so well known methods such as balanced trees can be used tocope with dynamic data (in contrast for example to R-trees where special considerations are necessary). Similarly,this independence makes it easier to incorporate the method into existing databases.Applying the method hierarchically (according to the data structure at hand), optionally in both increasing and de-creasing direction, yields highly ecient multidimensional range search which is important in both commercial andtechnical applications, e.g. as a procedure underlying nearest neighbour searches. Z-order is one of the few mul-tidimensional access methods that has found its way into commercial database systems (Oracle database 1995,[8]Transbase 2000 [9]).

  • 38 CHAPTER 10. Z-ORDER CURVE

    As long ago as 1966, G.M.Morton proposed Z-order for le sequencing of a static two dimensional geographicaldatabase. Areal data units are contained in one or a few quadratic frames represented by their sizes and lower rightcorner Z-values, the sizes complying with the Z-order hierarchy at the corner position. With high probability, chang-ing to an adjacent frame is done with one or a few relatively small scanning steps.

    10.4 Related structuresAs an alternative, the Hilbert curve has been suggested as it has a better order-preserving behaviour, but here thecalculations are much more complicated, leading to signicant processor overhead. BIGMIN source code for bothZ-curve and Hilbert-curve were described in a patent by H. Tropf.[10]

    For a recent overview on multidimensional data processing, including e.g. nearest neighbour searches, see HananSamet's textbook.[11]

    10.5 Applications in linear algebraThe Strassen algorithm for matrix multiplication is based on splitting the matrices in four blocks, and then recur-sively splitting each of these blocks in four smaller blocks, until the blocks are single elements (or more practically:until reaching matrices so small that the trivial algorithm is faster). Arranging the matrix elements in Z-order thenimproves locality, and has the additional advantage (compared to row- or column-major ordering) that the subroutinefor multiplying two blocks does not need to know the total size of the matrix, but only the size of the blocks and theirlocation in memory. Eective use of Strassen multiplication with Z-order has been demonstrated, see Valsalam andSkjellums 2002 paper.[12]

    10.6 See also Space lling curve UB-tree Hilbert curve Hilbert R-tree Spatial index Geohash Locality preserving hashing Matrix representation Linear algebra

    10.7 References[1] Morton, G. M. (1966), A computer Oriented Geodetic Data Base; and a New Technique in File Sequencing, Technical

    Report, Ottawa, Canada: IBM Ltd.

    [2] Bern, M.; Eppstein, D.; Teng, S.-H. (1999), Parallel construction of quadtrees and quality triangulations, Int. J. Comp.Geom. & Appl. 9 (6): 517532, doi:10.1142/S0218195999000303.

    [3] Gargantini, I. (1982), An eective way to represent quadtrees, Communications of the ACM 25 (12): 905910, doi:10.1145/358728.358741.

    [4] Chan, T. (2002), Closest-point problems simplied on the RAM, ACM-SIAM Symposium on Discrete Algorithms.

    [5] Connor, M.; Kumar, P (2009), Fast construction of k-nearest neighbour graphs for point clouds, IEEE Transactions onVisualization and Computer Graphics

  • 10.8. EXTERNAL LINKS 39

    [6] Har-Peled, S. (2010), Data structures for geometric approximation

    [7] Tropf, H.; Herzog, H. (1981), Multidimensional Range Search in Dynamically Balanced Trees, Angewandte Informatik2: 7177.

    [8] Gaede, Volker; Guenther, Oliver (1998), Multidimensional access methods, ACM Computing Surveys 30 (2): 170231,doi:10.1145/280277.280279.

    [9] Ramsak, Frank; Markl, Volker; Fenk, Robert; Zirkel, Martin; Elhardt, Klaus; Bayer, Rudolf (2000), Integrating theUB-tree into a Database System Kernel, Int. Conf. on Very Large Databases (VLDB), pp. 263272.

    [10] US 7321890, Tropf, H., Database system and method for organizing data elements according to a Hilbert curve, issuedJanuary 22, 2008.

    [11] Samet, H. (2006), Foundations of Multidimensional and Metric Data Structures, San Francisco: Morgan-Kaufmann.

    [12] Vinod Valsalam, Anthony Skjellum: A framework for high-performance matrix multiplication based on hierarchical ab-stractions, algorithms and optimized low-level kernels. Concurrency and Computation: Practice and Experience 14(10):805-839 (2002)

    10.8 External links STANN: A library for approximate nearest neighbor search, using Z-order curve Methods for programming bit interleaving, Sean Eron Anderson, Stanford University

  • Chapter 11

    Zassenhaus algorithm

    In mathematics, the Zassenhaus algorithm[1] is a method to calculate a basis for the intersection and sum of twosubspaces of a vector space. It is named after Hans Zassenhaus, but no publication of this algorithm by him isknown.[2] It is used in computer algebra systems.[3]

    11.1 Algorithm

    11.1.1 Input

    Let V be a vector space and U, W two nite-dimensional subspaces of V with the following spanning sets:

    U = hu1; : : : ; uni

    and

    W = hw1; : : : ; wki:

    Finally, let B1; : : : ; Bm be linearly independent vectors so that ui and wi can be written as

    ui =mXj=1

    ai;jBj

    and

    wi =mXj=1

    bi;jBj :

    11.1.2 Output

    The algorithm computes the base of the sum U +W and a base of the intersection U \W .

    11.1.3 Algorithm

    The algorithm creates the following block matrix of size ((n+ k) (2m)) :

    40

  • 11.1. ALGORITHM 41

    0BBBBBBBB@

    a1;1 a1;2 a1;m a1;1 a1;2 a1;m... ... ... ... ... ...

    an;1 an;2 an;m an;1 an;2 an;mb1;1 b1;2 b1;m 0 0 0... ... ... ... ... ...

    bk;1 bk;2 bk;m 0 0 0

    1CCCCCCCCAUsing elementary row operations, this matrix is transformed to the row echelon form. Then, it has the followingshape:

    0BBBBBBBBBBBBBBB@

    c1;1 c1;2 c1;m ... ... ... ... ... ...

    cq;1 cq;2 cq;m 0 0 0 d1;1 d1;2 d1;m... ... ... ... ... ...0 0 0 dl;1 dl;2 dl;m0 0 0 0 0 0... ... ... ... ... ...0 0 0 0 0 0

    1CCCCCCCCCCCCCCCAHere, stands for arbitrary numbers, and the vectors (cp;1; cp;2; : : : ; cp;m) for every p 2 f1; : : : ; qg and (dp;1; : : : ; dp;m)for every p 2 f1; : : : ; lg are nonzero.Then (y1; : : : ; yq) with

    yi :=mXj=1

    ci;jBj

    is a basis of U +W and (z1; : : : ; zl) with

    zi :=mXj=1

    di;jBj

    is a basis of U \W .

    11.1.4 Proof of correctness

    First, we dene 1 : V V ! V; (a; b) 7! a to be the projection to the rst component.LetH := f(u; u) j u 2 Ug+f(w; 0) j w 2Wg V V: Then 1(H) = U+W andH\(0V ) = 0(U\W ).Also, H \ (0 V ) is the kernel of 1jH , the projection restricted to H. Therefore, dim(H) = dim(U +W ) +dim(U \W ) .The Zassenhaus Algorithm calculates a basis of H. In the rst m columns of this matrix, there is a basis yi of U +W.The rows of the form (0; zi) (with zi 6= 0 ) are obviously in H \ (0 V ) . Because the matrix is in row echelonform, they also linearly independent. All rows which are dierent from zero ( (yi; ) and (0; zi) ) are a basis of H,so there are dim(U \W ) such zi s. Therefore, the zi s form a basis of U \W .

  • 42 CHAPTER 11. ZASSENHAUS ALGORITHM

    11.2 Example

    Consider the two subspaces U =*0BB@

    1101

    1CCA;0BB@

    0011

    1CCA+

    andW =*0BB@

    5033

    1CCA;0BB@

    0532

    1CCA+

    of the vector space R4 .

    Using the standard basis, we create the following matrix of dimension (2 + 2) (2 4) :

    0BBBB@1 1 0 1 1 1 0 10 0 1 1 0 0 1 1

    5 0 3 3 0 0 0 00 5 3 2 0 0 0 0

    1CCCCA:Using elementary row operations, we transform this matrix into the following matrix:0BBBB@

    1 0 0 0 0 1 0 1 0 0 1 1

    0 0 0 0 1 1 0 1

    1CCCCA (some entries have been replaced by " " because they are ir-relevant to the result).

    Therefore,

    0BB@0BB@1000

    1CCA;0BB@

    0101

    1CCA;0BB@

    0011

    1CCA1CCA is a basis of U +W , and

    0BB@0BB@

    1101

    1CCA1CCA is a basis of U \W .

    11.3 References[1] Luks, Eugene M.; Rkczi, Ferenc; Wright, Charles R. B. (April 1997), Some algorithms for nilpotent permutation

    groups, Journal of Symbolic Computation 23 (4): 335354, doi:10.1006/jsco.1996.0092.

    [2] Fischer, Gerd (2012), Lernbuch Lineare Algebra und Analytische Geometrie (in German), Vieweg+Teubner, pp. 207210,doi:10.1007/978-3-8348-2379-3, ISBN 978-3-8348-2378-6

    [3] The GAP Group (February 13, 2015), 24 Matrices, GAP Reference Manual, Release 4.7, retrieved 2015-06-11

    11.4 External links Mathematik-Online-Lexikon: Zassenhaus-Algorithmus (in German). Retrieved 2012-09-15.

  • Chapter 12

    Zechs logarithm

    Zech logarithms are used to implement addition in nite elds when elements are represented as powers of a gen-erator .Zech logarithms are named after Julius Zech, and are also called Jacobi logarithms,[1] after C. G. J. Jacobi whoused them for number theoretic investigations (C. G. J. Jacoby, "ber die Kreistheilung und ihre Anwendung auf dieZahlentheorie, in Gesammelte Werke, Vol.6, pp. 254274).

    12.1 DenitionIf is a primitive element of a nite eld, then the Zech logarithm relative to the base is dened by the equation

    Z(n) = log(1 + n);

    or equivalently by

    Z(n) = 1 + n:

    The choice of base is usually dropped from the notation when its clear from context.To be more precise, Z is a function on the integers modulo the multiplicative order of , and takes values in thesame set. In order to describe every element, it is convenient to formally add a new symbol 1 , along with thedenitions

    1 = 0

    n+ (1) = 1Z(1) = 0Z(e) = 1where e is an integer satisfying e = 1 , that is e = 0 for a eld of characteristic 2, and e = q12 for a eld of oddcharacteristic with q elements.Using the Zech logarithm, nite eld arithmetic can be done in the exponential representation:

    m + n = m (1 + nm) = m Z(nm) = m+Z(nm)

    n = (1) n = e n = e+n

    m n = m + (n) = m+Z(e+nm)

    43

  • 44 CHAPTER 12. ZECHS LOGARITHM

    m n = m+n

    (m)1

    = m

    m/n = m (n)1 = mn

    These formulas remain true with our conventions with the symbol 1 , with the caveat that subtraction of 1 isundened. In particular, the addition and subtraction formulas need to treatm = 1 as a special case.This can be extended to arithmetic of the projective line by introducing another symbol +1 satisfying +1 = 1and other rules as appropriate.Notice that for elds of characteristic two,

    Z(n) = m Z(m) = n .

    12.2 UsesFor suciently small nite elds, a table of Zech logarithms allows an especially ecient implementation of all niteeld arithmetic in terms of a small number of integer addition/subtractions and table look-ups.The utility of this method diminishes for large elds where one cannot eciently store the table. This method is alsoinecient when doing very few operations in the nite eld, because one spends more time computing the table thanone does in actual calculation.

    12.3 ExamplesLet GF(23) be a root of the primitive polynomial x3 + x2 + 1. The traditional representation of elements of thiseld is as polynomials in of degree 2 or less.A table of Zech logarithms for this eld are Z() = 0, Z(0) = , Z(1) = 5, Z(2) = 3, Z(3) = 2, Z(4) = 6, Z(5) =1, and Z(6) = 4. The multiplicative order of is 7, so the exponential representation works with integers modulo 7.Since is a root of x3 + x2 + 1 then that means 3 + 2 + 1 = 0, or if we recall that since all coecients are in GF(2),subtraction is the same as addition, we obtain 3 = 2 + 1.The conversion from exponential to polynomial representations is given by

    3 = 2 + 1

    4 = 3 = (2 + 1) = 3 + = 2 + + 1

    5 = 4 = (2 + + 1) = 3 + 2 + = 2 + 1 + 2 + = + 1

    6 = 5 = (+ 1) = 2 +

    Using Zech logarithms to compute 6 + 3:

    6 + 3 = 6+Z(3) = 6+Z(4) = 6+6 = 12 = 5

    or, more eciently,

    6 + 3 = 3+Z(3) = 3+2 = 5

    and verifying it in the polynomial representation:

    6 + 3 = (2 + ) + (2 + 1) = + 1 = 5

  • 12.4. REFERENCES 45

    12.4 References[1] Lidl, Rudolf; Niederreiter, Harald (1997), Finite elds, Cambridge University Press, ISBN 978-0-521-39231-0

  • Chapter 13

    Zero mode

    In physics, a zero mode is an eigenvector with a vanishing eigenvalue.The kernel of an operator consists of left zero modes, and the cokernel consists of the right zero modes.

    46

  • 13.1. TEXT AND IMAGE SOURCES, CONTRIBUTORS, AND LICENSES 47

    13.1 Text and image sources, contributors, and licenses13.1.1 Text

    Underdetermined system Source: http://en.wikipedia.org/wiki/Underdetermined_system?oldid=656029253Contributors: Michael Hardy,BenFrantzDale, Sapox, CWenger, Silly rabbit, Nbarth, JHunterJ, Dricherby, Brvman, Mikofski, Sunrise, Svick, JoblessLoser, Addbot,IgorCarron, Materialscientist, FrescoBot, Duoduoduo, Armujahid, Quondum, D.Lazard, Adam.stinchcombe, Faizan, Samshersingh-beniyaaz, Loraof and Anonymous: 4

    Unitary transformation Source: http://en.wikipedia.org/wiki/Unitary_transformation?oldid=651706545 Contributors: Michael Hardy,Silversh, Phys, Highlandwolf, Oleg Alexandrov, Bhny, Archelon, Merrybrit, Oakwood, QFT, CBM, Grimlock, Wikiisawesome, SieBot,SpiderMum, Addbot, Jarble, BarrelRollZRTwice, Xqbot, Erik9bot, Quondum, Rezabot, Brirush and Anonymous: 14

    Vector projection Source: http://en.wikipedia.org/wiki/Vector_projection?oldid=666578513 Contributors: Michael Hardy, Iorsh, Sil-versh, Mazin07, Giftlite, PrisonerOfPain, Xrchz, Rich Farmbrough, Pak21, Chbarts, Oleg Alexandrov, Someone42, Bgwhite, Yurik-Bot, Super Rad!, SmackBot, Maksim-e~enwiki, MichaelBillington, CBM, Juhachi, Konradek, Sanchom, Je560, Magioladitis, Piojo,VolkovBot, LokiClock, TXiKiBoT, Neparis, Plasmasphere, Quietbritishjim, Paolo.dL, Celique, Drmies, SuperHamster, Rhubbarb, Du-BistKomisch, Addbot, , TeH nOmInAtOr, Arbitrarily0, Luckas-bot, Yobot, AnomieBOT, ThinkerFeeler, Laygr, Erik9bot, Fres-coBot, Cannolis, Ifai, Lolznlolz, , Quondum, AManWithNoPlan, Maschen, Bomazi, Shiningtrees, BattyBot, Mark L Mac-Donald, TwoTwoHello, OakRunner, Skr15081997, Ktlabe and Anonymous: 48

    Vector spaceswithout elds Source: http://en.wikipedia.org/wiki/Vector_spaces_without_fields?oldid=641265462Contributors: MichaelHardy, SonicAD, Tabletop, BD2412, Incnis Mrsi, JustAGal, Magioladitis, LokiClock, Gabriele ricci, EllanMcmurph, AnomieBOT, Lil-Helpa, FrescoBot and D.Lazard

    Vector-valued function Source: http://en.wikipedia.org/wiki/Vector-valued_function?oldid=657049188 Contributors: Michael Hardy,Charles Matthews, Giftlite, Richie, Spoon!, BrokenSegue, StradivariusTV, Salix alba, Gurch, Chobot, TexasAndroid, Mlouns, Ligand,Jecowa, RDBury, Nillerdk, CBM, FilipeS, Hannes Eder, Alphachimpbot, User A1, MarcusMaximus, Ac44ck, VolkovBot, Neparis,Paolo.dL, JackSchmidt, Plastikspork, MATThematical, Rror, Addbot, Fgnievinski, Download, EconoPhysicist, PV=nRT, Luckas-bot,Ht686rg90, GrouchoBot, Sawomir Biay, WikitanvirBot, Parodi, Ivan Ukhov, Popa910 and Anonymous: 11

    Vectorization (mathematics) Source: http://en.wikipedia.org/wiki/Vectorization_(mathematics)?oldid=665500460Contributors: Fnielsen,Boud, Michael Hardy, Jitse Niesen, BenFrantzDale, MBisanz, Btyner, Bgwhite, RussBot, SmackBot, Mm100100, Droll, Nbarth, Berland,Michael Kinyon, Neelix, PKT, R'n'B, Aqwis, Peskydan, Vdip-cgeb, EtudiantEco, John of Reading, Skycondition and Anonymous: 11

    Weyls inequality Source: http://en.wikipedia.org/wiki/Weyl{}s_inequality?oldid=663893320 Contributors: Michael Hardy, CharlesMatthews, Giftlite, SmackBot, Lavaka, Myasuda, Mon4, Magioladitis, Askmath, Addbot, Yobot, RedBot, ZroBot, Saung Tadashi,DSmath, Fpedregosa, Bhavishya Mittal and Anonymous: 8

    Weyr canonical form Source: http://en.wikipedia.org/wiki/Weyr_canonical_form?oldid=650747191 Contributors: Rjwilmsi, Krish-nachandranvn, BG19bot, Yaroslav Nikitenko, ChrisGualtieri and Anonymous: 3

    Woodburymatrix identity Source: http://en.wikipedia.org/wiki/Woodbury_matrix_identity?oldid=661757721Contributors: TheAnome,Michael Hardy, Charles Matthews, Jitse Niesen, Josh Cherry, MathMartin, Giftlite, Eoghan, Lockeownzj00, RainerBlome, TedPavlic,Aranel, O18, 3mta3, Joriki, David Haslam, Pabix, FlaBot, Adoniscik, Taco325i, Entropeneur, Lunch, Mcld, Oli Filth, DHN-bot~enwiki,JRSpriggs, Headbomb, Cmansley, Ocolon, Jduchi, Jmath666, Forwardmeasure, SieBot, Quest for Truth, Martarius, Muhandes, Addbot,Mohamedadaly, LucienBOT, Citation bot 1, ServiceAT, Dexbot, Loraof and Anonymous: 17

    Z-order curve Source: http://en.wikipedia.org/wiki/Z-order_curve?oldid=656846685 Contributors: Michael Hardy, Pnm, Kku, CesarB,Sverdrup, Giftlite, BenFrantzDale, Beland, Andreas Kaufmann, Cariaso, Bluap, Hesperian, Sligocki, Ynhockey, Einstein9073, VivaEmi-lyDavies, Joriki, Rjwilmsi, Lendorien, Kri, Zotel, Wavelength, RussBot, Black Falcon, Robertd, SmackBot, Ephraim33, Lambiam, PaulFoxworthy, CmdrObot, CBM, Fisherjs, Lfstevens, Hermann.tropf, Magioladitis, David Eppstein, Edratzer, Tonyskjellum, Wpegden,DnetSvg, SoxBot III, Addbot, Yobot, Citation bot, ArthurBot, Shadowjams, Kkddkkdd, Daniel Minor, Jimw338, Patrick87 and Anony-mous: 17

    Zassenhaus algorithm Source: http://en.wikipedia.org/wiki/Zassenhaus_algorithm?oldid=666721470 Contributors: Michael Hardy,David Eppstein, War wizard90, AnomieBOT, Baum42 and Anonymous: 1

    Zechs logarithm Source: http://en.wikipedia.org/wiki/Zech{}s_logarithm?oldid=613500792 Contributors: Michael Hardy, Oyd11,CharlesMatthews, Giftlite, CryptoDerk, R.e.b., SmackBot, Allansteel, CRGreathouse, RLWard,WinBot, Bekant, Vanish2, Jakob.scholbach,Jeepday, Hurkyl, Y, JackSchmidt, Yobot, Erik9bot, RjwilmsiBot, D.Lazard, Wcherowi, Spectral sequence and Anonymous: 7

    Zeromode Source: http://en.wikipedia.org/wiki/Zero_mode?oldid=606965162 Contributors: Michael Hardy, Rpyle731, Cydebot, DavidEppstein, Morestu, Dawynn, AnomieBOT and Sandolsky

    13.1.2 Images File:Ambox_important.svg Source: https://upload.wikimedia.org/wikipedia/commons/b/b4/Ambox_important.svg License: Public do-

    main Contributors: Own work, based o of Image:Ambox scales.svg Original artist: Dsmurat (talk contribs) File:BIGMIN.svg Source: https://upload.wikimedia.org/wikipedia/commons/0/02/BIGMIN.svg License: CC-BY-SA-3.0 Contributors:

    Transferred from en.wikipedia by User:Patrick87. Original artist: Original raster version (BIGMIN.jpg): Hermann Tropf at de.wikipedia

    File:BasicWeyrMatrix.jpg Source: https://upload.wikimedia.org/wikipedia/commons/3/35/BasicWeyrMatrix.jpg License: CCBY-SA3.0 Contributors: Own work Original artist: Krishnachandranvn

    File:Dot_Product.svg Source: https://upload.wikimedia.org/wikipedia/commons/3/3e/Dot_Product.svg License: Public domain Con-tributors: ? Original artist: ?

    File:Four-level_Z.svg Source: https://upload.wikimedia.org/wikipedia/commons/c/cd/Four-level_Z.svg License: CC-BY-SA-3.0 Con-tributors: Own work Original artist: David Eppstein, based on a image by Hesperian.

  • 48 CHAPTER 13. ZERO MODE

    File:Lebesgue-3d-step2.png Source: https://upload.wikimedia.org/wikipedia/commons/5/58/Lebesgue-3d-step2.png License: CCBY-SA 3.0 Contributors: Own work Original artist: Robert Dickau

    File:Lebesgue-3d-step3.png Source: https://upload.wikimedia.org/wikipedia/commons/d/da/Lebesgue-3d-step3.png License: CCBY-SA 3.0 Contributors: self-made, using Mathematica 6 Original artist: Robert Dickau

    File:Lebesgue_Icon.svg Source: https://upload.wikimedia.org/wikipedia/commons/c/c9/Lebesgue_Icon.svg License: Public domainContributors: w:Image:Lebesgue_Icon.svg Original artist: w:User:James pic

    File:Projection_and_rejection.