Graphic notes on Gilbert Strang's "Linear Algebra for Everyone"

Overview

The-Art-of-Linear-Algebra

Graphic notes on Gilbert Strang's "Linear Algebra for Everyone"

The output file is "The-Art-of-Linear-Algebra.pdf"

Abstract

I tried intuitive visualizations of important concepts introduced in "Linear Algebra for Everyone".

This is aimed at promoting understanding of vector/matrix calculations and algorithms from the perspectives of matrix factorizations. They include Column-Row (CR), Gaussian Elimination (LU), Gram-Schmidt Orthogonalization (QR), Eigenvalues and Diagonalization (Q Lambda Q^T), and Singular Value Decomposition (U Sigma V^T).

5 Factorizations

Comments
  • Missing condition for permutation matrices in MatrixWorld-v1.4.2

    Missing condition for permutation matrices in MatrixWorld-v1.4.2

    Thanks for this fantastic resource! One small issue in the MatrixWorld diagram:

    MatrixWorld-v1.4.2 defines permutation matrices P as:

    • Orthogonal matrices for which all $\lambda$ are roots of 1

    This is necessary but not sufficient for P to be a permutation matrix. Two examples of matrices satisfying this property that are not permutation matrices:

    • $Q = \begin{bmatrix} -1 \end{bmatrix}$ has eigenvalue $-1$
    • $Q = \begin{bmatrix} 0 & 1 \end{bmatrix} \begin{bmatrix} - 1 & 0 \end{bmatrix}$, the example provided of an orthogonal matrix that is not a permutation matrix, has eigenvalues $\pm i$

    This can be fixed by defining permutation matrices P as the intersection of:

    • Orthogonal matrices for which all $\lambda$ are roots of 1, with
    • Nonnegative matrices, i.e. matrices for which all elements are $\ge 0$

    The equivalence follows from https://en.wikipedia.org/wiki/Nonnegative_matrix#Inversion: "The inverse of a non-negative matrix is usually not non-negative. The exception is the non-negative monomial matrices", where a monomial matrix is defined to have "the same nonzero pattern as a permutation matrix, i.e. there is exactly one nonzero entry in each row and each column." Hence an orthogonal nonnegative matrix must be a non-negative monomial matrix, and an orthogonal nonnegative matrix with all eigenvalues roots of unity must be a permutation matrix.

    opened by seblucie 8
  • Fix a typo, pdf toc, and eps orientation

    Fix a typo, pdf toc, and eps orientation

    A typo in Illustratitions-j.pptx and toc are fixed. In my environment (macOS psutils and ps2eps installed with MacPorts), I need further changes in the options for psselect and ps2eps.

    opened by tenomoto 5
  • [WIP] add Chinese(simplified) version

    [WIP] add Chinese(simplified) version

    translating a simplified Chinese version, the translated parts are:

    • README (see README-zh-CN.md)
    • the text content of 5 pages in the main part (see The-Art-of-Linear-Algebra-zh-CN.pdf)

    I'm still in the process of translating!

    opened by kf-liu 3
  • update Chinese(simplified) version: translate 3 main patterns

    update Chinese(simplified) version: translate 3 main patterns

    translating a simplified Chinese version, the latest translated parts:

    • MapofEigenvalues-zh-CN.png
    • MatrixWorld-zh-CN.png
    • 5-Factorizations-zh-CN.png

    And they appeare in:

    • The-Art-of-Linear-Algebra-zh-CN.pdf
    • README-zh-CN.md
    • MapofEigenvalues-v1.1.pdf
    • MapofEigenvalues-v1.1.pptx
    • MatrixWorld.pdf
    • MatrixWorld.pptx

    all translated parts:

    • README (see README-zh-CN.md)
    • the text content and 3 main patterns in the main part (see The-Art-of-Linear-Algebra-zh-CN.pdf)
    opened by kf-liu 2
  • update Chinese(simplified) version: text content completed

    update Chinese(simplified) version: text content completed

    translating a simplified Chinese version, the latest translated parts:

    • the text content form page 6 to the end in the main part (see The-Art-of-Linear-Algebra-zh-CN.pdf)

    all translated parts:

    • README (see README-zh-CN.md)
    • the text content in the main part (see The-Art-of-Linear-Algebra-zh-CN.pdf)
    opened by kf-liu 2
  • Add README.Rmd to knit README.md with formulas

    Add README.Rmd to knit README.md with formulas

    Thank you, Kenji, for the awesome resource! This PR is a small fix to properly show MathJax formulas. README.Rmd is the document knitted to README.md (output: github_document); the latter will contain rendered formulas. Example of the result

    opened by mdozmorov 2
  • Two typos in English Version of Matrix World

    Two typos in English Version of Matrix World

    Hello Mr. Hiranabe, I found Matrix World from Prof. Strang's website. I just note two typos:

    1. should be "diagonalizable" in "diagonizable by orthogonal matrix" in the "Normal" section.
    2. should be "permutation in "permutaion of I" in the "Permutation" section.

    Thank you for the beautiful visualizations. Calvin

    opened by clvnkhr 1
  • Can you please add tutorial on how to generate PDF?

    Can you please add tutorial on how to generate PDF?

    on macOS, I installed MacTex, but psselect still not availble. it looks like it's not compatible on macOS.

    what platform and toolchain did you use to generate PDFs?

    Appreciated for your efforts.

    opened by zinwalin 1
  • 2 Typo's and a suggestion

    2 Typo's and a suggestion

    Dear Mr. Hiranabe,

    I found two (small) typo's in your github document

    1. Sec. 3.5 (p.124) Dimentions (-> dimensions) of the four subspaces
    2. This (-> is) the spectral theorem (below Fig. 16).

    Wonderfull visualizations!

    If I may suggest one idea: you number the columns, rows in some images. Why not also number the dots?

    Yes, I realize: the way Gilbert Strang makes us look at matrices, columns, rows, operations is the first (for me: giant) step in understanding linear algebra. In my view, your images make a very compact summarization of it. Thank you!

    Jan Baltussen, The Netherlands

    opened by janbaltussen 1
  • Minor mistake

    Minor mistake

    Great pdf, thanks.

    I think the sentence "The four subspaces consists of N(A) + C(A^T) (which are perpendicular to each other) in R^n and N(A^T)

    • N(A) in R^m" on page 3 should be "... N(A^T) + C(A) ..." , shouldn't it?
    opened by felixendres 1
Owner
Kenji Hiranabe
C++, Java programmer, Agile practitioner CTO and Co-Founder at Change Vision, Inc ; CEO at ESM, Inc.
Kenji Hiranabe
Translation for Trilium Notes. Trilium Notes 中文版.

Trilium Translation 中文说明 This repo provides a translation for the awesome Trilium Notes. Currently, I have translated Trilium Notes into Chinese. Test

null 743 Jan 8, 2023
A basic notes app to store your notes.

Notes Webapp A basic notes webapp to keep your notes.You can add, edit and delete notes after signing up. To add a note type your note in the text box

null 2 Oct 23, 2021
The program converts Swiss notes into American notes

Informatik-Programmieren Einleitung: Das Programm rechnet Schweizer Noten in das Amerikanische Noten um. Der Benutzer kann seine Note eingeben und der

null 2 Dec 16, 2021
Official implementation of the MM'21 paper Constrained Graphic Layout Generation via Latent Optimization

[MM'21] Constrained Graphic Layout Generation via Latent Optimization This repository provides the official code for the paper "Constrained Graphic La

Kotaro Kikuchi 73 Dec 27, 2022
Youtube Downloader is a Graphic User Interface(GUI) that lets users download a Youtube Video or Audio through a URL

Youtube Downloader This Python and Tkinter based GUI allows users to directly download the Best Resolution Videos and Audios from Youtube. Pa-fy Insta

Samarth Kumar 2 Jun 25, 2022
A programming language that for tech savvy graphic designers

Microsoft Hackathon - PhoTex Idea A programming language that allows tech savvy graphic designers develop scalable vector graphics using plain text co

Joe Furfaro 5 Nov 14, 2021
A Telegram bot to add notes to Flomo.

flomo bot 使用 Telegram 机器人发送笔记到你的 Flomo. 你需要有一台可访问 Telegram 的服务器。 Steps @BotFather 新建机器人,获取 token Flomo 官网获取 API,链接 https://flomoapp.com/mine?source=in

Zhen 44 Dec 30, 2022
Converts text into a PDF of handwritten notes

Text To Handwritten Notes Converts text into a PDF of handwritten notes Explore the docs » · Report Bug · Request Feature · Steps: $ git clone https:/

UVSinghK 63 Oct 9, 2022
A command line utility to export Google Keep notes to markdown.

Keep-Exporter A command line utility to export Google Keep notes to markdown files with metadata stored as a frontmatter header. Supports exporting: S

Nathan Beals 85 Dec 17, 2022
:notes: Cross-platform music player

Exaile Exaile is a music player with a simple interface and powerful music management capabilities. Features include automatic fetching of album art,

Exaile 327 Dec 19, 2022
Collect your thoughts and notes without leaving the command line.

jrnl To get help, submit an issue on Github. jrnl is a simple journal application for your command line. Journals are stored as human readable plain t

Manuel Ebert 31 Dec 1, 2022
Your copilot to studies and work (Pomodoro-timer, Translate and Notes app)

Copylot Your copilot to studies and work (Pomodoro-timer, Translate and Notes app) Copylot are three applications in one: Pomodoro Translate Notes Cop

Eduardo Mendes 20 Dec 16, 2022
A Collection of Conference & School Notes in Machine Learning 🦄📝🎉

Machine Learning Conference & Summer School Notes. ??????

null 558 Dec 28, 2022
PRAnCER is a web platform that enables the rapid annotation of medical terms within clinical notes.

PRAnCER (Platform enabling Rapid Annotation for Clinical Entity Recognition) is a web platform that enables the rapid annotation of medical terms within clinical notes. A user can highlight spans of text and quickly map them to concepts in large vocabularies within a single, intuitive platform.

Sontag Lab 39 Nov 14, 2022
Audio processor to map oracle notes in the VoG raid in Destiny 2 to call outs.

vog_oracles Audio processor to map oracle notes in the VoG raid in Destiny 2 to call outs. Huge thanks to mzucker on GitHub for the note detection cod

null 19 Sep 29, 2022
Telegram Bot for saving and sharing personal and group notes

EZ Notes Bot (ezNotesBot) Telegram Bot for saving and sharing personal and group notes. Usage Personal notes: reply to any message in PM to save it as

Dash Eclipse 8 Nov 7, 2022
ml4h is a toolkit for machine learning on clinical data of all kinds including genetics, labs, imaging, clinical notes, and more

ml4h is a toolkit for machine learning on clinical data of all kinds including genetics, labs, imaging, clinical notes, and more

Broad Institute 65 Dec 20, 2022
📝 Sticky Notes in Django admin

django-admin-sticky-notes Share notes between superusers. Installation Install via pip: pip install django_admin_sticky_notes Put django_admin_sticky_

Dariusz Choruży 7 Oct 6, 2021
Annotated notes and summaries of the TensorFlow white paper, along with SVG figures and links to documentation

TensorFlow White Paper Notes Features Notes broken down section by section, as well as subsection by subsection Relevant links to documentation, resou

Sam Abrahams 437 Oct 9, 2022
A simple API to upload notes or files to KBFS

This API can be used to upload either secure notes or files to a secure KeybaseFS folder.

Dakota Brown 1 Oct 8, 2021