{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "[Table of Contents](table_of_contents.ipynb)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Topic 4.  Linear Independence\n",
    "\n",
    "Author: Zheng Sun (zsun2@byu.edu)\n",
    "\n",
    "Editor: Jen Jui Liu (re1983@byu.edu)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "##  Introduction\n",
    "\n",
    "A subset of a vector space is **linearly independent** if none of its elements can be written as a *linear combination* of the others.\n",
    "\n",
    "For example, a 3D Euclidean space $R^3$ three vectors $(1, 0, 0)$, $(0, 1, 0)$, and $(0, 0, 1)$ are **linearly independent** but $(2, −1, 1)$, $(1, 0, 1)$, and $(3, −1, 2)$ are **linearly dependent**. Because $(3, −1, 2)$ is the sum of $(2, −1, 1)$, $(1, 0, 1)$.\n",
    "\n",
    "Together with *linear combination*, *spanning*, and *basis*, **linear independence** is a fundamental concept in *vector spaces* theory.\n",
    "\n",
    "The following YouTube could help us to review these concepts."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAUDBA8QDhANEBAQEA8OEBAQDRAQEA8NEBAQEA8ODxAODg8QDRANDQ0QDw0NDRUPEBERExMTDQ4WGBYSGBASExIBBQUFCAcIDwkJDxcVEhUXGBUVFxgYGBcXFxUWFRUXFRUXFRUVFRgXFRUVFRUVFRcVFxUXFRcVFRYXFRUVFRUXFf/AABEIAWgB4AMBIgACEQEDEQH/xAAdAAACAgMBAQEAAAAAAAAAAAAABAUGAgMHAQgJ/8QAUxAAAgECAwQFBwcJBgUCBgIDAQIDABEEEiEFEzFBBiIyUWEHM0JScXKBFCNikZKhskNTgqOxs8HR0ggVJTRkcyRjg5OiCfAWRHS0wvE14VR1hP/EABsBAAMBAQEBAQAAAAAAAAAAAAABAgMEBQcG/8QAOREAAQIDBAkEAgECBgMBAAAAAQACAxEhEjFB8ARRYXGBkaGx0RMiweEy8UIFkhQjUmKCohVysjP/2gAMAwEAAhEDEQA/APjKiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiiiihCKKKKEIooooQiithiOXNyuR9QB/jWuhAKKK9tXlCEUVsjiuCfVFz9YXT4sK10ImiivQK8oQiitmGiLEKOJ7610ImiivRQRQheUUVsxMJUlTxHd9dCU1roor0ihNeUUVskiIAPrXI+BI1+qhE1roor21CF5RRWwRdUtyBA+sMR+E/dQia10UV6BQheUUVsgiJvbkCfgBehBMlroor1RQheUUVvwGGLusYtd2VRfhdiAL6E217qELRRW/H4Yo7Rm10ZlNuF1JBtoDbTurRQhFFesK8oQiitk8RFr8wD8CL1roQDNFFekV5QhFFbDF1Q3Ikj6gp//IffWuhE0UV7avKEIorZHESC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\n",
      "text/html": [
       "\n",
       "        <iframe\n",
       "            width=\"400\"\n",
       "            height=\"300\"\n",
       "            src=\"https://www.youtube.com/embed/k7RM-ot2NWY\"\n",
       "            frameborder=\"0\"\n",
       "            allowfullscreen\n",
       "        ></iframe>\n",
       "        "
      ],
      "text/plain": [
       "<IPython.lib.display.YouTubeVideo at 0x150709b2630>"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from IPython.display import YouTubeVideo\n",
    "YouTubeVideo('k7RM-ot2NWY')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Explanation of the theory\n",
    "\n",
    "### Definition\n",
    "\n",
    "Let $S$ be a vector space, and let $T$ be a subset of $S$. The set $T$ is **linearly independent** if for each finite nonempty subset of $T$ (say $\\{\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m\\}$) the only set of scalars satisfying the equation\n",
    "\n",
    "$$c_1\\mathbf{p}_1 + c_2\\mathbf{p}_2 + \\cdots + c_m\\mathbf{p}_m = 0$$\n",
    "\n",
    "is the trivial solution $c_1 = c_2 = \\cdots = c_m = 0$.\n",
    "\n",
    "\n",
    "The set of vectors $\\{\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m\\}$ is said to be **linearly dependent** if there exists a set of scalar coefficients $\\{c_1, c_2, \\cdots, c_m\\}$ which are not all zero, such that $c_1\\mathbf{p}_1 + c_2\\mathbf{p}_2 + \\cdots + c_m\\mathbf{p}_m = 0$.\n",
    "\n",
    "Note that linear dependence/independence is a concept that applies to a collection of vectors, not to a single vector, or to one vector in the presence of some others.\n",
    "\n",
    "### Matrix notation\n",
    "\n",
    "The set of vectors $\\{\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m\\}$ is linearly independent if and only if the matrix $\\mathbf{A}$ with columns $\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m$ has a pivot in every column, if and only if $\\mathbf{Ac} = 0$ has only the trivial solution ($\\mathbf{c} = [c_1, c_2, \\cdots, c_m]^T$).\n",
    "\n",
    "Solving the matrix equation $\\mathbf{Ac} = 0$ will either verify that the columns $\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m$ are linearly independent, or produce a linear dependence relation by substituting any nonzero values for the free variables.\n",
    "\n",
    "### Other facts\n",
    "\n",
    "- Any set containing the zero vector is linearly dependent.\n",
    "\n",
    "- Two vectors are linearly dependent if and only if they are collinear.\n",
    "\n",
    "- A set of vectors $\\{\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m\\}$ is linearly independent if and only if the rank of the matrix $\\mathbf{A}$ with columns $\\mathbf{p}_1, \\mathbf{p}_2, \\cdots, \\mathbf{p}_m$ is $m$.\n",
    "\n",
    "### Supplemental Video\n",
    "\n",
    "The following YouTube could help us to better understand linearly dependent."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEABALDBoXFhwaGRoeHRsfIjElIyIhIz0tMCgzOD02NjInMj01PFBCOjhLPi03RWFFS1NWW11bMkFlbWRYbFBZW1cBERISGRYZLxsbMGNDOUNgWVliWmFXXV1jV1pYXlpXV1ddY1dfXVdXV1dfV1dfV1dXV11XV1dXV1dXV1dXXV1XV//AABEIAWgB4AMBIgACEQEDEQH/xAAbAAEAAgMBAQAAAAAAAAAAAAAABAUBAwYCB//EAFEQAAEDAgIECAoIAwUHAgcAAAEAAgMEEQUSBiExkhMXQVFTYXHSFCIyNHJzgbGy0RYzNVR0kaHBI7PwBxVCRFJigpOUouHxQ8IkNkZVY2SE/8QAGQEBAAMBAQAAAAAAAAAAAAAAAAECBAMF/8QALBEBAAIBAwIGAQMFAQAAAAAAAAECEQMSITFBEzRRYbHwMyKBoRRSccHRBP/aAAwDAQACEQMRAD8A+foiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIuw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4uK3pafed3EHHouw4uK3pafed3E4u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p5CvmnGPW9FT7ru+nGPW9FT7ru+mMomM9X0unp2RNDGNDWjkC2L5hxj1vRU+67vpxj1vRU+67vp0TEYfT7IvmHGPW9FT7ru+nGPW9FT7ru+g+n2RfMOMet6Kn3Xd9OMet6Kn3Xd9B9PWmCljizZGhuY3d1nnXzbjHreip913fTjHreip913fUYRiH09F8w4x63oqfdd304x63oqfdd31KX09F8w4x63oqfdd304x63oqfdd30H0+yL5hxj1vRU+67vpxj1vRU+67voPp6WXzDjHreip913fTjHreip913fQfT0XzDjHreip913fTjHreip913fQfUEXy/jHreip913fTjHreip913fQceiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiD//Z\n",
      "text/html": [
       "\n",
       "        <iframe\n",
       "            width=\"400\"\n",
       "            height=\"300\"\n",
       "            src=\"https://www.youtube.com/embed/9kDpbZCK62Y\"\n",
       "            frameborder=\"0\"\n",
       "            allowfullscreen\n",
       "        ></iframe>\n",
       "        "
      ],
      "text/plain": [
       "<IPython.lib.display.YouTubeVideo at 0x15070a88d30>"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "YouTubeVideo('9kDpbZCK62Y')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Simple Numerical Examples"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Import modules for linear algebra\n",
    "import numpy as np\n",
    "import sympy\n",
    "sympy.init_printing()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 1\n",
    "\n",
    "Is the set of vectors $\\begin{Bmatrix}\\begin{pmatrix}1\\\\2\\end{pmatrix}, \\begin{pmatrix}3\\\\4\\end{pmatrix}\\end{Bmatrix}$ linearly independent?\n",
    "\n",
    "Firstly, we form a matrix equation:\n",
    "\n",
    "$$\\begin{bmatrix}1&3\\\\2&4\\end{bmatrix}\\begin{bmatrix}c_1\\\\c_2\\end{bmatrix} = \\begin{bmatrix}0\\\\0\\end{bmatrix}$$\n",
    "\n",
    "It implies that $\\begin{cases}{c_1 + 3c_2 = 0\\\\2c_1 + 4c_2 = 0}\\end{cases}$.\n",
    "\n",
    "As this simultaneous equation has no nonzero solution, $\\begin{Bmatrix}\\begin{pmatrix}1\\\\2\\end{pmatrix}, \\begin{pmatrix}3\\\\4\\end{pmatrix}\\end{Bmatrix}$ is linearly independent."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 2\n",
    "\n",
    "Is the set of vectors $\\begin{Bmatrix}\\begin{pmatrix}1\\\\2\\\\3\\end{pmatrix}, \\begin{pmatrix}2\\\\4\\\\6\\end{pmatrix}\\end{Bmatrix}$ linearly independent?\n",
    "\n",
    "The matrix equation is:\n",
    "\n",
    "$$\\begin{bmatrix}1&2\\\\2&4\\\\3&6\\end{bmatrix}\\begin{bmatrix}c_1\\\\c_2\\end{bmatrix} = \\begin{bmatrix}0\\\\0\\end{bmatrix}$$\n",
    "\n",
    "We can try solving this equation, like what we do in last example. Also, we can use *Gaussian elimination* (also known as *row reduction*) to find the rank of matrix $\\begin{bmatrix}1&2\\\\2&4\\\\3&6\\end{bmatrix}$ ($\\mathbf{A}$).\n",
    "\n",
    "For simplicity, we do not implement *Gaussian elimination* from scratch here, just use an inner method `rref()` in SymPy `Matrix` object. `rref()` returns a tuple of two elements, the first is the reduced row echelon form (RREF), and the second is a tuple of indices of the pivot columns."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Rank of A = 1\n",
      "RREF of A = \n"
     ]
    },
    {
     "data": {
      "text/latex": [
       "$$\\left[\\begin{matrix}1 & 2\\\\0 & 0\\\\0 & 0\\end{matrix}\\right]$$"
      ],
      "text/plain": [
       "⎡1  2⎤\n",
       "⎢    ⎥\n",
       "⎢0  0⎥\n",
       "⎢    ⎥\n",
       "⎣0  0⎦"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "A = sympy.Matrix([[1,2], [2,4], [3,6]])\n",
    "rref, idx = A.rref()\n",
    "\n",
    "print(\"Rank of A = {}\".format(len(idx)))\n",
    "print(\"RREF of A = \")\n",
    "display(rref)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As the result shows, the rank of $\\mathbf{A}$ is 1, less than 2, the number of columns. Therefore, $\\begin{Bmatrix}\\begin{pmatrix}1\\\\2\\\\3\\end{pmatrix}, \\begin{pmatrix}2\\\\4\\\\6\\end{pmatrix}\\end{Bmatrix}$ is linearly dependent."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 3\n",
    "\n",
    "Is the set of vectors $\\begin{Bmatrix}\\begin{pmatrix}1\\\\1\\\\-2\\end{pmatrix}, \\begin{pmatrix}1\\\\-1\\\\2\\end{pmatrix}, \\begin{pmatrix}3\\\\1\\\\4\\end{pmatrix}\\end{Bmatrix}$ linearly independent?\n",
    "\n",
    "The matrix $\\mathbf{A}$ is $\\begin{bmatrix}1&1&3\\\\1&-1&1\\\\-2&2&4\\end{bmatrix}$. Just do *Gaussian elimination* on $\\mathbf{A}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Rank of A = 3\n",
      "RREF of A = \n"
     ]
    },
    {
     "data": {
      "text/latex": [
       "$$\\left[\\begin{matrix}1 & 0 & 0\\\\0 & 1 & 0\\\\0 & 0 & 1\\end{matrix}\\right]$$"
      ],
      "text/plain": [
       "⎡1  0  0⎤\n",
       "⎢       ⎥\n",
       "⎢0  1  0⎥\n",
       "⎢       ⎥\n",
       "⎣0  0  1⎦"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "A = sympy.Matrix([[1,1,3], [1,-1,1], [-2,2,4]])\n",
    "rref, idx = A.rref()\n",
    "\n",
    "print(\"Rank of A = {}\".format(len(idx)))\n",
    "print(\"RREF of A = \")\n",
    "display(rref)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It shows that, the rank of $\\mathbf{A}$ is 3, equal to the number of columns. Therefore, $\\begin{Bmatrix}\\begin{pmatrix}1\\\\1\\\\-2\\end{pmatrix}, \\begin{pmatrix}1\\\\-1\\\\2\\end{pmatrix}, \\begin{pmatrix}3\\\\1\\\\4\\end{pmatrix}\\end{Bmatrix}$ is linearly independent."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 4\n",
    "\n",
    "Given the set $\\begin{Bmatrix}\\begin{pmatrix}1\\\\0\\\\0\\\\0\\end{pmatrix}, \\begin{pmatrix}0\\\\1\\\\0\\\\0\\end{pmatrix}, \\begin{pmatrix}0\\\\0\\\\1\\\\0\\end{pmatrix}, \\begin{pmatrix}0\\\\0\\\\0\\\\1\\end{pmatrix}, \\begin{pmatrix}1\\\\0\\\\1\\\\1\\end{pmatrix}\\end{Bmatrix}$\n",
    "of vectors in the vector space $R^4$, determine whether $S$ is linearly independent or linearly dependent."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Step 1: Set up a homogeneous system of equations**\n",
    "\n",
    "The set S = {$V_1$, $V_2$, $V_3$, $V_4$, $V_5$} of vectors in $R^4$ is linearly independent if the only solution of\n",
    "\n",
    "$(*)$ $c_1\\mathbf{V}_1 + c_2\\mathbf{V}_2 + c_3\\mathbf{V}_3 + c_4\\mathbf{V}_4 + c_5\\mathbf{V}_5= 0$\n",
    "\n",
    "is $c_1$, $c_2$, $c_3$, $c_4$, $c_5$ = 0\n",
    "\n",
    "\n",
    "Otherwise (i.e., if a solution with at least some nonzero values exists), $S$ is linearly dependent.\n",
    "\n",
    "With our vectors $V_1$, $V_2$, $V_3$, $V_4$, $V_5$, $(*)$ becomes:\n",
    "\n",
    "$c_1\\begin{pmatrix}1\\\\0\\\\0\\\\0\\end{pmatrix}+ c_2\\begin{pmatrix}0\\\\1\\\\0\\\\0\\end{pmatrix}+ c_3\\begin{pmatrix}0\\\\0\\\\1\\\\0\\end{pmatrix}+ c_4\\begin{pmatrix}0\\\\0\\\\0\\\\1\\end{pmatrix}+ c_5\\begin{pmatrix}1\\\\0\\\\1\\\\1\\end{pmatrix} = \\begin{pmatrix}0\\\\0\\\\0\\\\0\\end{pmatrix}$\n",
    "\n",
    "Rearranging the left hand side yields\n",
    "\n",
    "$\\begin{pmatrix}1 c_1\t +0 c_2\t +0 c_3\t +0 c_4\t +1 c_5\n",
    "\\\\0 c_1\t +1 c_2\t +0 c_3\t +0 c_4\t +0 c_5\n",
    "\\\\0 c_1\t +0 c_2\t +1 c_3\t +0 c_4\t +1 c_5\n",
    "\\\\0 c_1\t +0 c_2\t +0 c_3\t +1 c_4\t +1 c_5\n",
    "\\end{pmatrix} = \\begin{pmatrix}0\\\\0\\\\0\\\\0\\end{pmatrix}$\n",
    "\n",
    "\n",
    "The matrix equation above is equivalent to the following homogeneous system of equations $(**)$\n",
    "   \t\n",
    "$1 c_1\t +0 c_2\t +0 c_3\t +0 c_4\t +1 c_5\t=\t0$\n",
    "\n",
    "$0 c_1\t +1 c_2\t +0 c_3\t +0 c_4\t +0 c_5\t=\t0$\n",
    "\n",
    "$0 c_1\t +0 c_2\t +1 c_3\t +0 c_4\t +1 c_5\t=\t0$\n",
    "\n",
    "$0 c_1\t +0 c_2\t +0 c_3\t +1 c_4\t +1 c_5\t=\t0$\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Step 2: Transform the coefficient matrix of the system to the reduced row echelon form**\n",
    "\n",
    "We now transform the coefficient matrix of the homogeneous system above to the reduced row echelon form to determine whether the system has\n",
    "\n",
    "the trivial solution only (meaning that S is linearly independent), or the trivial solution as well as nontrivial ones (S is linearly dependent).\n",
    "\n",
    "$\\begin{pmatrix} 1 0 0 0 1\\\\ 0 1 0 0 0\\\\ 0 0 1 0 1\\\\ 0 0 0 1 1 \\end{pmatrix}$\n",
    "\n",
    "Matrix is already in the reduced row echelon form."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Step 3: Interpret the reduced row echelon form**\n",
    "\n",
    "The reduced row echelon form of the coefficient matrix of the homogeneous system $(**)$ is\n",
    "\n",
    "$\\begin{pmatrix} 1 0 0 0 1\\\\ 0 1 0 0 0\\\\ 0 0 1 0 1\\\\ 0 0 0 1 1 \\end{pmatrix}$\n",
    " \n",
    "which corresponds to the system\n",
    "\n",
    "$1 c1\t \t \t \t +1 c5\t=\t0$\n",
    "\n",
    "$ \t1 c2\t \t \t \t=\t0$\n",
    "\n",
    "$ \t \t1 c3\t \t +1 c5\t=\t0$\n",
    "\n",
    "$ \t \t \t1 c4\t +1 c5\t=\t0$\n",
    "\n",
    "The leading entries have been highlighted in yellow.\n",
    "\n",
    "Since some columns do not contain leading entries, then the system has nontrivial solutions, so that some of the values c1, c2, c3, c4, c5 solving (*) may be nonzero.\n",
    "\n",
    "Therefore the set $S = \\{V_1, V_2, V_3, V_4, V_5\\}$ is linearly dependent."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Comments**\n",
    "\n",
    "Shortcut: The dimension of the space $R^4$ is $4$, therefore only a set containing $4$ or fewer vectors can possibly be linearly independent. Since the set S has $5$ vectors in it, it must be linearly dependent.\n",
    "\n",
    "The pattern of leading entries can usually be determined before the reduced row echelon form is obtained (for example, a matrix in row echelon form is sufficient for this purpose). This is especially important when solving a problem like this by hand.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 5\n",
    "\n",
    "m=3, n=2 : 3 equations and 2 unknowns\n",
    "\n",
    "$A_{1,1} x_1 + A_{1,2} x_2 = b_1$\n",
    "\n",
    "$A_{2,1}x_1+A_{2,2}x_2=b_2$\n",
    "\n",
    "$A_{3,1}x_1+A_{3,2}x_2=b_3$\n",
    "\n",
    "example we have the following 3 equations:\n",
    "\n",
    "$y=2x+1$\n",
    "\n",
    "$y=6x−2$\n",
    "\n",
    "$y=1/10x+6$\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "x = np.arange(-10, 10)\n",
    "y = 2*x + 1\n",
    "\n",
    "y1 = 6*x - 2\n",
    "y2 = 0.1*x+6\n",
    "\n",
    "plt.figure()\n",
    "plt.plot(x, y)\n",
    "plt.plot(x, y1)\n",
    "plt.plot(x, y2)\n",
    "plt.xlim(-2, 10)\n",
    "plt.ylim(-2, 10)\n",
    "# draw axes\n",
    "plt.axvline(x=0, color='#A9A9A9')\n",
    "plt.axhline(y=0, color='#A9A9A9')\n",
    "plt.show()\n",
    "plt.close()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In the above case, there is 3 equations and no solution because there is no point in space that is on each of these lines."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## An Engineering Application\n",
    "\n",
    "Let us look at a chemical engineering application.\n",
    "\n",
    "> The following reactions are proposed in the hydrogenation of bromine:\n",
    "> \n",
    "> $$\\begin{align*}H_2 + Br_2 &\\rightleftharpoons 2HBr\\\\\n",
    "Br_2 &\\rightleftharpoons 2Br\\\\\n",
    "Br + H_2 &\\rightleftharpoons HBr + H\\\\\n",
    "H + Br_2 &\\rightleftharpoons HBr + Br\\\\\n",
    "H + HBr &\\rightleftharpoons H_2 + Br\\\\\n",
    "2Br &\\rightleftharpoons Br_2\\end{align*}$$\n",
    "> \n",
    "> We can find out a set of independent reactions from these reactions."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Firstly, we create a species vector $\\mathbf{c} = [H_2, H, Br_2, Br, HBr]^T$, and a stoichiometric coefficients matrix $\\mathbf{A}$. Each row in $\\mathbf{A}$ represents a reaction with negative coefficients for reactants, and positive coefficients for products. A coefficient of zero denotes species not participating in the reaction. Then, 6 given reactions can be represented by $\\mathbf{A}*\\mathbf{c}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "A = \n"
     ]
    },
    {
     "data": {
      "text/latex": [
       "$$\\left[\\begin{matrix}-1 & 0 & -1 & 0 & 2\\\\0 & 0 & -1 & 2 & 0\\\\-1 & 1 & 0 & -1 & 1\\\\0 & -1 & -1 & 1 & 1\\\\1 & -1 & 0 & 1 & -1\\\\0 & 0 & 1 & -2 & 0\\end{matrix}\\right]$$"
      ],
      "text/plain": [
       "⎡-1  0   -1  0   2 ⎤\n",
       "⎢                  ⎥\n",
       "⎢0   0   -1  2   0 ⎥\n",
       "⎢                  ⎥\n",
       "⎢-1  1   0   -1  1 ⎥\n",
       "⎢                  ⎥\n",
       "⎢0   -1  -1  1   1 ⎥\n",
       "⎢                  ⎥\n",
       "⎢1   -1  0   1   -1⎥\n",
       "⎢                  ⎥\n",
       "⎣0   0   1   -2  0 ⎦"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "labels = ['H2', 'H', 'Br2', 'Br', 'HBr']\n",
    "\n",
    "#    {H2, H, Br2, Br, HBr}\n",
    "A = [[-1,  0, -1,  0,  2],  # H2 + Br2 = 2HBr\n",
    "     [ 0,  0, -1,  2,  0],  # Br2 = 2Br\n",
    "     [-1,  1,  0, -1,  1],  # Br + H2 = HBr + H\n",
    "     [ 0, -1, -1,  1,  1],  # H + Br2 = HBr + Br\n",
    "     [ 1, -1,  0,  1,  -1], # H + HBr = H2 + Br\n",
    "     [ 0,  0,  1, -2,  0]]  # 2Br = Br2\n",
    "\n",
    "# convert A to Matrix object\n",
    "A = sympy.Matrix(A)\n",
    "\n",
    "print(\"A = \")\n",
    "display(A)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As we know, there are three types of elementary row operations for *Gaussian elimination*:\n",
    "\n",
    "* Swapping two rows\n",
    "* Multiplying a row by a nonzero number\n",
    "* Adding a multiple of one row to another row\n",
    "\n",
    "For a stoichiometric coefficients matrix, these operations are all reasonable. Let us do *Gaussian elimination* on $\\mathbf{A}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "RREF of A = \n"
     ]
    },
    {
     "data": {
      "text/latex": [
       "$$\\left[\\begin{matrix}1 & 0 & 0 & 2 & -2\\\\0 & 1 & 0 & 1 & -1\\\\0 & 0 & 1 & -2 & 0\\\\0 & 0 & 0 & 0 & 0\\\\0 & 0 & 0 & 0 & 0\\\\0 & 0 & 0 & 0 & 0\\end{matrix}\\right]$$"
      ],
      "text/plain": [
       "⎡1  0  0  2   -2⎤\n",
       "⎢               ⎥\n",
       "⎢0  1  0  1   -1⎥\n",
       "⎢               ⎥\n",
       "⎢0  0  1  -2  0 ⎥\n",
       "⎢               ⎥\n",
       "⎢0  0  0  0   0 ⎥\n",
       "⎢               ⎥\n",
       "⎢0  0  0  0   0 ⎥\n",
       "⎢               ⎥\n",
       "⎣0  0  0  0   0 ⎦"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Put A into RREF\n",
    "rref, idx = A.rref()\n",
    "\n",
    "print(\"RREF of A = \")\n",
    "display(rref)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The RREF matrix $\\mathbf{A}_{RREF}$ shows that there are only 3 independent columns. The independent reactions are defined by $\\mathbf{A}_{RREF}*\\mathbf{c}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 = +1H2 +2Br -2HBr \n",
      "0 = +1H +1Br -1HBr \n",
      "0 = +1Br2 -2Br \n"
     ]
    }
   ],
   "source": [
    "# Find out independent reactions\n",
    "for row in rref.tolist():\n",
    "    \n",
    "    s = \"0 = \"\n",
    "    for coeff, species in zip(row, labels):\n",
    "        if coeff != 0:\n",
    "            s += \"{0:+d}{1} \".format(int(coeff), species)\n",
    "    \n",
    "    if len(s) != 4:\n",
    "        print(s)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is done! But the answer is not unique, the order of rows and elementary row operations can change it."
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "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"
    }
   },
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Homework \n",
    "\n",
    "Consider the three vectors below:\n",
    "\n",
    "![image.png](attachment:image.png)\n",
    "\n",
    "The above set is linearly dependent. Why? It is simple. Because $\\mathbf{w} = 2\\mathbf{v} + \\mathbf{u}$. Let’s do the above with Python and Numpy:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## References\n",
    "\n",
    "1. Moon, Todd K., and Wynn C. Stirling. Mathematical methods and algorithms for signal processing. No. 621.39: 51 MON. 2000.\n",
    "\n",
    "2. https://en.wikipedia.org/wiki/Linear_independence\n",
    "\n",
    "3. https://en.wikipedia.org/wiki/Gaussian_elimination\n",
    "\n",
    "4. https://docs.sympy.org/latest/tutorial/index.html\n",
    "\n",
    "5. https://textbooks.math.gatech.edu/ila/linear-independence.html\n",
    "\n",
    "6. http://kitchingroup.cheme.cmu.edu/blog/2013/03/01/Determining-linear-independence-of-a-set-of-vectors/\n",
    "\n",
    "7. http://immersivemath.com/ila/ch05_gausselim/ch05.html\n",
    "\n",
    "8. http://www.math.odu.edu/~bogacki/cgi-bin/lat.cgi\n",
    "\n",
    "9. https://www.machinelearningmindset.com/linear-independence-of-vectors/"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}