{ "metadata": { "name": "", "signature": "sha256:70f398a96d5bb45ab431597ce9c72b33baa5138f7db848919d53218511e10811" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Rank-Revealing QR" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Note:** `scipy.linalg`, not `numpy.linalg`!" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np\n", "import scipy.linalg as la\n", "import matplotlib.pyplot as pt" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Obtain a low-rank matrix" ] }, { "cell_type": "code", "collapsed": false, "input": [ "n = 100\n", "A0 = np.random.randn(n, n)\n", "U0, sigma0, VT0 = la.svd(A0)\n", "print(la.norm((U0*sigma0).dot(VT0) - A0))\n", "\n", "sigma = np.exp(-np.arange(n))\n", "\n", "A = (U0 * sigma).dot(VT0)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "2.65180241653e-13\n" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Run the factorization" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Compute the QR factorization with `pivoting=True`." ] }, { "cell_type": "code", "collapsed": false, "input": [ "Q, R, perm = la.qr(A, pivoting=True)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 26 }, { "cell_type": "markdown", "metadata": {}, "source": [ "First of all, check that we've obtained a valid factorization" ] }, { "cell_type": "code", "collapsed": false, "input": [ "la.norm(A[:, perm] - Q.dot(R), 2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 27, "text": [ "2.8038047842284552e-16" ] } ], "prompt_number": 27 }, { "cell_type": "code", "collapsed": false, "input": [ "la.norm(Q.dot(Q.T) - np.eye(n))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 28, "text": [ "8.555792593659908e-15" ] } ], "prompt_number": 28 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, examine $R$:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "pt.imshow(np.log10(1e-15+np.abs(R)))\n", "pt.colorbar()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 29, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nfLH4DNoAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 29 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Specifically, recall that the diagonal of $R$ in QR contains column norms:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "pt.semilogy(np.abs(np.diag(R)))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 30, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAYMAAAD7CAYAAACIYvgKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmUVPWZ//H3Q7OLgmgQaRoLGVBQI7iAGhnqiMZWfwaN\n26CgMpFEHQjiEnDFZLIYSaKJTDRHAuNyAgSNChpl3Mp0glGIMYcIKqilDQQQWVQQBXl+f3yr02Wn\nge5a+tbyeZ1zz+HevvW9T1/tfvq7m7sjIiLlrVXUAYiISPSUDERERMlARESUDEREBCUDERFByUBE\nRIDWUQfQGDPTeFcRkQy4u2XyuYKtGbi7DnemTJkSeQyFcuhd6F3oXez+yEbBJgMREWk5SgYiIqJk\nUOji8XjUIRQMvYt6ehf19C5yw7JtZ8oHM/NCjEtEpJCZGV4sHchm1tvMppvZ3N3dt3VrS0UkIiIt\nngzc/R13v2xP9910U0tEIyIikEUyMLMZZrbWzJY0uF5tZq+b2XIzm5Rp+bNnQ01Npp8WEZHmyKZm\nMBOoTr9gZhXAtNT1AcBIM+tvZqPN7A4z69HUwu++G8aMgS1bsohQRESaJONk4O41wMYGlwcDK9w9\n6e7bgdnACHd/wN0nuvtqM+tqZvcAA3dXcxgxAk44ASZlXLcQEZGmyvVyFJVAbdr5SmBI+g3uvgG4\nfE8FxeNxDjwwxoMPxujWLc4tt8RzGqiISLFLJBIkEgmSySTJZDKrsnKdDHI2HjSRSACwaBGccQZc\ndBH06ZOr0kVEil88Hv/CPAuzjEaVArkfTbQKqEo7ryLUDjJ27LFw881w/vmwbVtWsYmIyC7kOhks\nBvqaWczM2gIXAPOyLXTcODj4YLjmmqzjExGRRmQztHQWsBDoZ2a1ZjbG3XcA44AFwFJgjrsvyzZI\nM5g+HRYsgIcfzrY0ERFpqKiWo3j5ZTjzTFi8GKqqGvmgiEgZK6rlKLIxeDBMmAAXXwyffx51NCIi\npaOokgGEeQfucPvtUUciIlI6iqqZqE5tLRx9NDzxRBhtJCIiZdRMVKeqCqZODU1GBZjLRESKTlEm\nA4BRo8K6RY8+GnUkIiLFryibieo89RRcdRX8/e/QOtdzqUVEikzZNRPVOfVU6NEDZsyIOhIRkeJW\n1DUDCGsXnXUWvPkm7LVXngMTESlgZVszgDCa6MQT4c47o45ERKR4FX3NAOCtt2DIEPjLX+Cgg/IY\nmIhIASvrmgGEpa0nToQrr9RQUxGRTJREMgC47jp47z347W+jjkREpPiURDNRnT//Gb7+9TDUtGvX\nPAQmIlLAsmkmavFkYGaHAhOA/YAF7v7rRu7JKBkAjB8Pn3wSlrwWESknRZUM/vlgs1bAbHc/v5Gv\nZZwMPvoIDj88LFdx/r+ULCJSuiLpQDazGWa21syWNLhebWavm9lyM5u0i8+eCTwBzM70+buy994w\nb17YHe0Pf8h16SIipSnjmoGZDQU+Bu539yNS1yqAN4CTCfshLwJGAscARwFT3X11WhmPufuIRsrO\nuGZQ59ln4cIL4bnn4LDDsipKRKQoZFMzyHhFH3evMbNYg8uDgRXunkwFNhsY4e63AQ+krg0Dvg60\nB57P9Pl7Mnw4/PSncPrpsHAhVFbm60kiIsUv18u7VQK1aecrgSHpN7j7C8ALeyooHo8Ti8WIxWLE\n43Hi8Xizgxk1KixTMX48/O53zf64iEhBSyQSJBIJkskkyWQyq7Ky6kBO1QzmpzUTnQNUu/vY1Pko\nYIi7j29muVk3E9XZuhX69g39CEcfnZMiRUQKUiHNQF4FpG9VX0WoHUSmY0e44Qa45ZYooxARKWy5\nTgaLgb5mFjOztsAFwLwcP6PZLrssTERbuDDqSEREClM2Q0tnAQuBfmZWa2Zj3H0HMA5YACwF5rj7\nstyEmrl27ULN4Oabo45ERKQwldRyFLuzfTsMGAC/+hWcdFJOixYRKQiF1GdQsNq0gVtvhWuvhc2b\no45GRKSwlE0yABg5Ek44AeJxWLMm6mhERApHWSWDVq3grrvCyqZf+UrYFEdERHI/6azgmYWO5G7d\nYOjQsOx1r15RRyUiEq2y6UBuzI03huaiX//LItoiIsWnKJew3p2WSgabNoXZyX/8IxxySN4fJyKS\nVxpNlKEuXeCaazQ7WUSkrGsGAFu2hNrBE0/AoEEt8kgRkbxQzSALe+0V1i666aaoIxERiU7ZJwOA\nsWPhtdegpibqSEREoqFkQFi76I47wp7JWsxORMqRkkHK2WfDzJlw1lkwZ07U0YiItKwWTwZmFjez\nGjO7O7UFZsGoroann4brroOpU6OORkSk5URRM9gJfAS0I+KNbxpz5JHw4ovwk5/AkiVRRyMi0jKy\n2c9ghpmtNbMlDa5Xm9nrZrbczCY18tEadz8dmAx8N9Pn51NlJUyerBFGIlI+sqkZzASq0y+YWQUw\nLXV9ADDSzPqb2Wgzu8PMeqRNINhEqB0UpCuugFdeCbUEEZFSl3EycPcaYGODy4OBFe6edPftwGxg\nhLs/4O4T3X21mZ1tZvcA9wN3ZRx5nrVvD1OmhDkIBTgvT0Qkp3K9amklUJt2vhIYkn6Duz8CPLKn\nguLxOLFYjFgsRjweJx6P5zTQprj00tCR/MwzcMopLf54EZHdSiQSJBIJkskkyWQyq7KyWo7CzGLA\nfHc/InV+DlDt7mNT56OAIe4+vpnltthyFHvy29+GhPDyy2H5axGRQlVIy1GsAqrSzqsowBFDzXHu\nuaGZ6J57oo5ERCR/ct1MtBjom6oxrAYuAEbm+BktqlUrmDUr7Iw2cCAcf3zUEYmI5F42Q0tnAQuB\nfmZWa2Zj3H0HMA5YACwF5rj7styEGp2+fWHGjLBchfZOFpFSVPZLWDfHrbfCc8/Bs89CmzZRRyMi\n8kXa6ayF7NwJI0bA4YfDj34UdTQiIl+kZNCC1qwJyeCll6BPn6ijERGpV0ijiUpe9+4wcWJYrkJE\npFSoZpCBTz6BQw6pH2UkIlIIVDNoYR06hD6Dq68O/QgiIsVOySBDI0eGRDB7dtSRiIhkT81EWaip\ngVGjYNky6Ngx6mhEpNypmSgiQ4fCCSfAbbdFHYmISHZUM8jSypVhmQoNNRWRqKlmEKGePcOeyVdd\nFXUkIiKZUzLIgYkT4c034fHHo45ERCQzSgY50LYt3HVXqB1s2xZ1NCIizadkkCNf/WqYgDZ8OKxa\nFXU0IiLN0+LJwMxONLO7zexeM/tTSz8/n2bOhDPOgGOPhUQi6mhERJoustFEZjYC6Obu9zbytaIZ\nTdSYZ56B0aPDktff+lbU0YhIuYhkNJGZzTCztWa2pMH1ajN73cyWm9mk3RRxIfCbTJ9fyE4+GRYu\nhClT4Pnno45GRGTPsmkmmglUp18wswpgWur6AGCkmfU3s9FmdoeZ9Ujd1wvY7O5bsnh+QevdGx58\nEC66SH0IIlL4Mk4G7l4DbGxweTCwwt2T7r4dmA2McPcH3H2iu69O3fefwIxMn10sTj4Zxo2D886D\nzz6LOhoRkV1rnePyKoHatPOVwJCGN7n7rXsqKB6PE4vFiMVixONx4vF4zoJsSZMnw5//DNdeC7/4\nRdTRiEgpSSQSJBIJkskkyWQyq7Ky6kA2sxgw392PSJ2fA1S7+9jU+ShgiLuPb2a5Rd2B3NCmTXDo\noWH/5AEDoo5GREpVIS1HsQqoSjuvItQOylqXLnDFFXDnnVFHIiLSuFwng8VAXzOLmVlb4AJgXo6f\nUZSuuALmzoX33486EhGRf5XN0NJZwEKgn5nVmtkYd98BjAMWAEuBOe6+LDehFrdu3eDcc+Huu6OO\nRETkX2kJ6xb02mthhNE770D79lFHIyKlppD6DGQ3DjsMjjwSZs2KOhIRkS9SMmhhV18Nd9wBJVjx\nEZEipmTQwk45JSSCJ5+MOhIRkXpKBi3MLOyZPGGC9j4QkcKhZBCBM86AL385JAURkUKg0UQRqa2F\nQYPgxRehb9+ooxGRUqDRREWoqgquvx6uvFKdySISPSWDCH3727BuXVjqWkQkSkoGEWrTBmbMgEmT\nYOJE2FKyuzuISKFTMojY0UfDkiWwfn3oVNbeySISBXUgF5DHH4dLLgn7H6hTWUSaK5sOZCWDAjNl\nCqxeDffeG3UkIlJsiioZmNkAYArwAfCsuz/cyD1lmwzWr4d+/ULTUWVl1NGISDEptqGl1cBd7n4l\ncHEEzy9o++8PF18c1i8SEWkpGdcMzGwGcAawrm7by9T1auBOoAKY7u4/bvC5LxFqBluBE9z9xEbK\nLtuaAYQJaUceCStWQNeuUUcjIsUikmYiMxsKfAzcn7YHcgXwBnAyYQvMRcBI4BjgKGCqu69Ou/dh\ndz+rkbLLOhkAjBkDBx8MN98cdSQiUiwi6zMwsxgwPy0ZHA9Mcffq1PlkAHe/Le0zBwE3AHsBv3T3\nhY2UW/bJYNkyGDYsbISz115RRyMixSCbZNA6x7FUArVp5yuBIek3uPu7wLf2VFA8HicWixGLxYjH\n48Tj8ZwGWuj694eTTgpDTf/3f6FTp6gjEpFCk0gkSCQSJJNJkslkVmXlumZwDlDt7mNT56OAIe4+\nvpnlln3NAMIS1//1X/DSS/DII5p7ICK7V0ijiVYBVWnnVYTagWSgfXuYPh3Gj4evfAWeeirqiESk\nVOW6mWgx0DdVY1gNXEDoQJYMmcG3vgWHHgoXXBD6EDp0iDoqESk1GdcMzGwWsBDoZ2a1ZjbG3XcA\n44AFwFJgjrsvy02o5W3YMBg8GGbOjDoSESlFWo6iiLz4Ilx4ISxfDq1zXacTkaJXSH0GkkfHHw+9\nesGcOVFHIiKlRsmgyFx/fdg7WRUnEcklJYMic+qpUFEBv/991JGISClRMigyZjB5MvzgB2HLTBGR\nXFAyKELnnReWtz7kkNCHcPbZ8Pe/Rx2ViBQzjSYqYu7w1lvwq1/Be++pY1mk3BXV5jZNoWTQPBs3\nQu/eYULavvtGHY2IREVDS8vcvvtCdTXMnh11JCJSrJQMSsSll4bVTUVEMqFkUCJOOQVWroSlS6OO\nRESKkZJBiaiogNGj4b77oo5ERIqROpBLyLJlMHx4GFmktYtEyo86kAUIu6P16gVPPx11JCJSbPKa\nDMyst5lNN7O5jZ1L7l16KUybprWLRKR58poM3P0dd79sV+eSexdfDO+/D7fcEnUkIlJMmpQMzGyG\nma01syUNrleb2etmttzMJuUnRGmOjh3h8cfDnIN77ok6GhEpFk2tGcwEqtMvmFkFMC11fQAw0sz6\nm9loM7vDzHrkNlRpqm7dwn7J3/sePPpo1NGISDFoUjJw9xpgY4PLg4EV7p509+3AbGCEuz/g7hPd\nfbWZdTWze4CBZjap4XlOvxP5gj59YP58GDtWcw9EZM+yGYBYCdSmna8EhqTf4O4bgMsbfK7heaPi\n8TixWIxYLEY8Hicej2cRank6+mj47ndDQqipgVYaOyZSUhKJBIlEgmQySTKZzKqsJs8zMLMYMN/d\nj0idnwNUu/vY1PkoYIi7j88qIjTPIJd27oQTTwwT0q64IupoRCSfoppnsAqoSjuvItQOpIC0agX3\n3htGF61aFXU0IlKoskkGi4G+ZhYzs7bABcC83IQluXTYYaFWMD7rOpuIlKqmDi2dBSwE+plZrZmN\ncfcdwDhgAbAUmOPuy/IXqmTjhhtCR/I8pWsRaYTWJiojjz0G//3fsGhR2EtZREqL1iaSJjnzTNiy\nBZ5/PupIRKTQKBmUkVat4Lrr4Pbbo45ERAqNmonKzKefwsEHwxNPwMCBUUcjIrmkZiJpsnbt4Kqr\nYOrUqCMRkUKimkEZ2rw5LFexeDHEYlFHIyK5opqBNEvnznDZZfCzn0UdiYgUCtUMytSaNXD44fDi\ni9C3b9TRiEguqGYgzda9O0yaBBMmaFc0EVEyKGsTJsA774TNcESkvKmZqMw9/TRcfjm89hq0bx91\nNCKSDTUTScZOOQUGDdJQU5Fyp5qB8O67YSOcxx+H446LOhoRyVTB1gzMrLeZTTezuanzQ83sbjP7\nrZl9I5/PlqY76CC4//6wdtFDD0UdjYhEoUVqBmY2193PSztvBcx29/N3cb9qBhH4619DQpgwAa69\nViubihSbvNcMzGyGma01syUNrleb2etmtrypG9yb2ZnAE8Ds5ocr+TRoUJh38MADWsxOpNw0qWZg\nZkOBj4H70/ZArgDeAE4mbIG5CBgJHAMcBUx199Wpe79QM0hde8zdR+zieaoZRCiZhGOOgb/9DSor\no45GRJoq7zUDd68BNja4PBhY4e5Jd99O+Et/hLs/4O4T3X21mXU1s3uAgWY22cyGmdnPzexXgFbV\nL1CxGHzzm2F3NBEpD62z+GwlUJt2vhIYkn6Du28ALm/wuReaUng8HicWixGLxYjH48Tj8SxClea6\n/no45JCwK9qxx0YdjYg0JpFIkEgkSCaTJJPJrMrKJhnktR0nkUjks3jZg733hu9/HyZOhJoadSaL\nFKKGfyhbFj+o2QwtXQVUpZ1XEWoHUiIuuSRskzl3btSRiEi+ZZMMFgN9zSxmZm2BC4B5uQlLCkFF\nBdx5ZxhmumlT1NGISD41dWjpLGAh0M/Mas1sjLvvAMYBC4ClwBx3X5a/UCUKw4bB174GV14ZdSQi\nkk9ajkL26JNPwnIVN94IF10UdTQisivZDC1VMpAmefVV+OpX4eWXtVWmSKEq2LWJpHQMHAjXXQej\nR8OOHVFHIyK5ppqBNNnOnTBiBGzfDrNnQ5cuUUckIulUM5AW0aoVPPII9OsXlrp+882oIxKRXFEy\nkGZp3Rp+8Qu45hoYOhT++MeoIxKRXFAzkWRs7lz4wQ/C0teaoSwSPTUTSSTOOSf0HzzzTNSRiEi2\nlAwkY61ahdnJP/lJ1JGISLbUTCRZ+fRTOPhg+P3v4cgjo45GpLypmUgi064dfPvbqh2IFDvVDCRr\nmzZBnz5hlnJV1Z7vF5H8UM1AItWlC1x6aVjhVESKk2oGkhO1tTBoECxerLWLRKJSsDUDM+ttZtPN\nbG7qPG5mNWZ2t5kNy+ezpWVVVcHVV4elrpXHRYpPXpOBu7/j7pelXdoJfAS0Q7uilZzrrgs1hDlz\noo5ERJqrqZvbzDCztWa2pMH1ajN73cyWm9mkJhRV4+6nA5OB72YQrxSwNm3g3nvDvskbNkQdjYg0\nR1NrBjOB6vQLZlYBTEtdHwCMNLP+ZjbazO4wsx4NC0nrCNhEqB1IiTnuODj3XPjOd6KORESao8kd\nyGYWA+a7+xGp8+OBKe5enTqfDODut6V9pivwQ2A48GvgDeBUoAvwS3f/wy6epQ7kIvbhh3D44TBt\nWtgyU0RaRjYdyK2zeG4lUJt2vhIYkn6Du28ALm/wuUeaUng8HicWixGLxYjH48Tj8SxClZa0zz7w\n0ENwxhnw5JNwzDFRRyRSmhKJBIlEgmQySTKZzKqsbJJBXv90TyQS+Sxe8mzwYJg+PdQM/vQn6N07\n6ohESk/DP5Qti+WDs0kGq4D0+aZVaISQpBkxIowuOv10WLgQ9t036ohEZFeyGVq6GOhrZjEzawtc\nAMzLTVhSKsaNC81Fp50Wlq0QkcLU1KGls4CFQD8zqzWzMe6+AxgHLACWAnPcfVn+QpViNXVqGGU0\nfDh88EHU0YhIY7QchbQId5g8GZ56Cp5+Grp1izoikdIT1WgikSYzg9tuC0tex+OQSCghiBQSJQNp\nMWbwve+FWsKpp8Lzz4cVT0UkemomkhbnHpaseOml0GTUqVPUEYmUhmyaiZQMJBLu8M1vwltvwSOP\nQOfOUUckUvwKdglrkV0xg3vugf79w4S0q64KiUFEoqGagUSuthb+53/CjOUBA+DII8PaRv37wwEH\nwP77hwlrrfSni8huqZlISsKWLWHpitdeC8eyZbBuXZib8OGH0LMn9OsXjoMOCk1LnTuHTuiuXcOx\n337hWhaz8kWKlpKBlLzt2+G99+DNN8Px3nuweXM4Nm0K+yds2ADr14faxFlnheP446GiIuroRVqG\nkoFIiju8+io8+ig89lhIHJWV9UevXqFWcdBBoflpr73qj332gbZto/4ORDKnZCCyCx9/DKtWhaO2\nNhzvvhuODRtC09SWLeG+jz4KtYjOneHAA0OzVFVVaH7q0AE6doT27cOObm3ahMTRrl241q5dOK+o\nCEeHDhCLaZSUtCwlA5EccIdt20Kz0z/+AStXhuSxaRNs3QqffBKO7dvD8dln4di2rf7655+HY8sW\nSCZDkujdOySWHj1CkunRI9RSevYM5507Q2tN/5QcUDIQKUDuoQ/j7bdDzeQf/4DVq8NRV1tZvTp0\njnfoEJLCPvvA3nuHo3PnMIqq7qjrLK/rOK+7r1OnUDupq6Go87x8FWwyMLPewI1AZ3c/z8xOBC4i\nLIMxwN2/sovPKRlI2di5MzRTbd4cmqo++igkiLrO8Y0bw1F3vmlT+HrdfVu2wKefhhrKZ5+FIbh1\nTVl1zVsdO4akUTfiar/9Qu2kqirUULp0qU8mnTqF5KOkUnwKNhn88yFmc939vLTzEUA3d793F/cr\nGYhkwD00U9U1YX36aWji2ro1JI6NG8NQ3fXrv9iP8uGH9Qnlo4/C/d26haNDh/o+kn33rW/m6t69\nfkjvvvvW96m0bx865DUvpOXlfdVSM5sBnAGsc/cj0q5XA3cCFcB0d/9xE597IfCfzYxVRPbALPQ/\ntG4dfjlnatu2MMdj3brw77o+kg0b6pu5XnklJJe6Yb2ffBLurauhpPeN1NVAevasH9l14IEhyUhh\naGq31UzgLuD+ugtmVgFMA04mbIG5yMzmAccARwFT3X11w4LMrBew2d23ZBm7iORJ+/ZhGG6vXpl9\nftu2kDRWrqw/3n4b/vCH+v6SdetCwurQITyvQ4f6PpN99gk1jv33/+LxpS+F623a1Ce9/ffXXJJc\naHIzkZnFgPl1NQMzOx6Y4u7VqfPJAO5+W9pnugI/JCSMe939x2Z2K/CUu/95N89SM5FIiduxI/SV\n1I3S2rq1vh/kww9DbaOuSWv9enj//XBs2BA+W9cc9vHHYRhv376hBpLeAd+tW5iEeMABoSmrU6eQ\ndEq1CSuqzW0qgdq085XAkPQb3H0DcHmDa7c2pfB4PE4sFiMWixGPx4nH41mEKiKFpnXr0HGd7Z4W\nW7eGRQ6XLw+1kbqEsmpV2ERp7dpwbN4cEse2baGJ6sQTYejQcAwYUJzDexOJBIlEgmQySTKZzKqs\nbGoG5wDV7j42dT4KGOLu47OKCNUMRCR/Pv88zAGpqQnNVn/6U2jGOuIIGDQIvvzlkBwGDAjNUsUk\nqprBKqAq7byKUDsQESlYFRXQp084Lr00XPvwQ/jb30Kn+CuvwIMPhsUSd+6sHy3VtWtoburePRw9\ne9Yvb3LggcVZs0iXTc2gNfAGMBxYDbwMjHT3ZVkHpZqBiETMPTQt1c3z2LAhNDetWVM/Q/3dd8Oi\niWvWhM7wLl1C4ujdu36F3R496icOVlaGzvF8yfs8AzObBQwD9gPWAbe4+0wzO436oaW/dvcfZRJE\nI89TMhCRolE3cbBuBd233w6LJC5fHhJHXUJZvRqOOw7OPRfOPjv3zVAFP+msuZQMRKQUbdkCTz0F\nc+fC44+HUVR1s8XHjoWf/jS7md9KBiIiRaZutvj27aE56rTT4Jxz4KabMi8zqg5kERHJUPps8Q4d\n4Mkn4YQTQif12LEtH4+SgYhIAejeHRYsgH//9zBh7rzzWnaxQDUTiYgUkL/8Bc4/Pyz2941vwKhR\nYZXZpsimmahEJ2WLiBSno48Oo5B+/nNYtAj+7d9gWdYD9vdMNQMRkQJ2/fVhLaapU/d8r0YTiYiU\nqNdfh5NOCpPb9jTLWc1EIiIl6tBDw2qszzyT3+coGYiIFLiLL4b77svvM9RMJCJS4D74ICys9+67\nYdjprqiZSESkhO23HwwfHpaxyBclAxGRInDJJfltKlIzkYhIEfjss7CHwosvhiajxhTs2kRm1hu4\nEejs7ueZ2QBgCvAB8Ky7P5zP54uIlIq2bUNH8imnwLHHhp3YBg6EESNyU35em4nc/R13vyztUjVw\nl7tfCVycz2eXikQiEXUIBUPvop7eRb1yehe33Qa/+11IANu3wwsv5K7sJiUDM5thZmvNbEmD69Vm\n9rqZLTezSU0o6gHgP8zsdsJGObIH5fQ/+p7oXdTTu6hXTu+idetQG7jwQvj+9+FnP8td2U2tGcwk\n/FX/T2ZWAUxLXR8AjDSz/mY22szuMLMeDQtx9/fdfRxwPbA+u9BFRCRXmtRn4O41qT2Q0w0GVrh7\nEsDMZgMj3P02Qg0AM+sK/BAYmKo5zAZuAPYCbs9B/CIikgNNHk2USgbz3f2I1Pm5wKnuPjZ1PgoY\n4u7jsw7KTEOJREQyEMVoorz9ws70mxERkcxkM5poFVCVdl4FrMwuHBERiUI2yWAx0NfMYmbWFrgA\nmJebsEREpCU1dWjpLGAh0M/Mas1sjLvvAMYBC4ClwBx3z2o/ngyGqpYMM6sys+fN7DUz+7uZfTt1\nvauZPW1mb5rZ/5lZl6hjbSlmVmFmfzWz+anzsnwXZtbFzB4ys2VmttTMhpTxu7g+9TOyxMx+Y2bt\nyuVdNDbEf3ffe+pdLU/9Tv3qHssvlGUfUkNV3wBOJjRBLQJGZptgioWZdQe6u/urZtYJ+AtwFjAG\nWO/ut6cS5L7uPjnKWFuKmV0NHA3s7e5fS81PKbt3YWb3AS+4+wwza00YjXcjZfYuUoNYngP6u/un\nZjYH+D1wGGXwLsxsKPAxcH/aQJ5GfyZSqz38BjgWqASeAfq5+85dlV9IC9X9c6iqu28nDEPN0UTr\nwufua9z91dS/PwaWEf4jfg2oW57qPkKCKHlm1hM4HZgO1A0oKLt3YWadgaHuPgPA3Xe4+2bK8F0A\nHwLbgY6ppNgRWE2ZvAt3rwE2Nri8q+99BDDL3benhv+vIPyO3aVCSgaVQG3a+crUtbKT+gtoEPAS\ncIC7r019aS1wQERhtbQ7gOuA9L9kyvFd9AbeN7OZZvaKmd1rZntRhu/C3TcAPwXeIySBTe7+NGX4\nLtLs6nu5KN1CAAABuElEQVTvwRcH9Ozx92khJYPCaK+KWKqJ6GFggrt/lP611FKuJf+ezOz/Aevc\n/a/U1wq+oFzeBWH491HAL939KGAL8IUmkHJ5F2bWB7gKiBF+2XVKzW/6p3J5F41pwve+2/dSSMmg\n7IeqmlkbQiJ4wN0fTV1em+pPwMwOBNZFFV8LOgH4mpm9A8wCTjKzByjPd7ESWOnui1LnDxGSw5oy\nfBfHAAvd/YPUAJbfAcdTnu+izq5+Jhr+Pu2ZurZLhZQMynqoqpkZ8GtgqbvfmfalecAlqX9fAjza\n8LOlxt1vcPcqd+8N/AfwnLuPpjzfxRqg1sz6pS6dDLwGzKfM3gXwOnCcmXVI/bycTBjJWI7vos6u\nfibmERYFbWthK4G+wMu7LcndC+YATiOMKFoBXB91PC38vZ9IaB9/Ffhr6qgGuhJGArwJ/B/QJepY\nW/i9DAPmpf5dlu8COJIwuu5vhL+GO5fxu/gOIRkuIXSYtimXd0GoJa8GPiP0r47Z3fdOWAduBSGJ\nnrqn8gtmaKmIiESnkJqJREQkIkoGIiKiZCAiIkoGIiKCkoGIiKBkICIiKBmIiAhKBiIiAvx/+cbB\n61XwDBkAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 30 }, { "cell_type": "markdown", "metadata": {}, "source": [ "* In the case of `scipy`'s transform, diagonal entries of $R$ are guaranteed non-increasing.\n", "* But there is a whole science to how to choose the permutations (or other source vectors)\n", " * and what promises one is able to make as a result of that" ] } ], "metadata": {} } ] }