12^{th}DECEMBER2013

### ARTICLE

## Matrix Decompositions Demonstrated in PHP

This article presents an application demonstrating common used matrix decompositions and their applications implemented in PHP.

Matrix decompositions are used in numerical analysis to solve a wide range of problems. Throuhgout a course of numerical analysis at university I found myself implementing some of the corresponding algorithms in PHP - which is a very unusual programming language for numerical purposes. I decided to put them together to form a small application demonstrating some common matrix decompositions and their usage. The project can be found on GitHub.

GitHub projectDemonstration application
The following table gives an overview of the decompositions covered:

Decomposition |
Factorization |
Applicable for |
Runtime |

LU |
$A = LU$ |
$A \in \mathbb{R}^{n \times n}$, $A$ regular |
$\mathcal{O}(\frac{1}{3}n^3)$ |

Cholesky |
$A = LDL^T$ |
$A \in \mathbb{R}^{n \times n}$, $A$ symmetric and positive definite |
$\mathcal{O}(\frac{1}{6}n^3)$ |

QR: Givens Rotations |
$A = QR$ |
$A \in \mathbb{R}^{m \times n}$ |
$\mathcal{O}(\frac{4}{3}n^3)$ |

QR: Householder Transformations |
$A = QR$ |
$A \in \mathbb{R}^{m \times n}$ |
$\mathcal{O}(\frac{2}{3}n^3)$ |

### ABOUTTHE**AUTHOR**

In the last few months, I finished my work on weakly-supervised 3D shape completion with a CVPR'18 paper as well as a follow-up journal submission. This means that I will be visiting CVPR this year. Afterwards, I plan to focus on robustness of deep neural networks — for example: why do adversarial examples exist and how can we defend deep neural networks against them? To answer these questions, I will also be visiting MLSS'18 later this summer.

22^{th}MAY2018 , David Stutz

What is **your opinion** on this article? Did you find it interesting or useful? **Let me know** your thoughts in the comments below or get in touch with me:

What is

your opinionon this article? Did you find it interesting or useful?Let me knowyour thoughts in the comments below or get in touch with me: