Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
These are my notes for Part II and Part III of Mathematics at the University of Cambridge.
There are many hyperlinks, marked in blue, to help both learning and revising a topic: I recommend using a PDF viewer with a back function (such as Skim) to make navigation more convenient.

If you would like <img src="https://latex.codecogs.com/gif.latex?\LaTeX" title="\LaTeX" /> help - especially diagrams in Ti*k*Z - feel free to get in touch with me; especially if you're producing open-source notes.
If you would like $\LaTeX$ help - especially diagrams in Ti*k*Z - feel free to get in touch with me; especially if you're producing open-source notes.

## Part III notes
### Michaelmas
Expand Down
24 changes: 12 additions & 12 deletions ii/lent/algebraic_geometry.tex
Original file line number Diff line number Diff line change
Expand Up @@ -245,7 +245,7 @@ \subsection{Basic notions}
\begin{equation*}
Y_1 = Y_2 \cup Y_2',\quad Y_2 = Y_3 \cup Y_3',\quad \dotsc
\end{equation*}
and so we get an infinite chain of affine varities $Y \supsetneq Y_1 \supsetneq Y_2 \supsetneq \dotsb$.
and so we get an infinite chain of affine varieties $Y \supsetneq Y_1 \supsetneq Y_2 \supsetneq \dotsb$.
But each $Y_i = Z(I_i)$ for some ideals $I_i$. Let
\begin{equation*}
W = \bigcap Y_i = Z\left(\sum I_i\right) = Z(I)
Expand Down Expand Up @@ -939,7 +939,7 @@ \section{Projective space}
\begin{equation*}
\begin{tikzcd}
\left\{\parbox{2cm}{\centering closed subvarieties of $\A^n$}\right\} \rar[leftrightarrow]&
\left\{\parbox{5.5cm}{\centering closed subvarities $\overline{Z}$ of $\proj^n$ such that no \hyperlink{def:reducible}{irreducible} component of $\overline{Z}$ is contained in $\proj V \setminus \A^n = \proj H$ }\right\} \\
\left\{\parbox{5.5cm}{\centering closed subvarieties $\overline{Z}$ of $\proj^n$ such that no \hyperlink{def:reducible}{irreducible} component of $\overline{Z}$ is contained in $\proj V \setminus \A^n = \proj H$ }\right\} \\
Z \rar[mapsto] &\overline{Z} = \text{closure of } \iota(Z) \text{ in } \proj^n
\end{tikzcd}
\end{equation*}
Expand All @@ -949,7 +949,7 @@ \section{Projective space}
A projective variety is a closed subvariety of $\proj^n$, some $n$
\end{defi}
Recall an \hyperlink{def:affVar}{affine variety} is $k[X] = k[x_1, \dotsc, x_n]/I$, $I = \sqrt{I}$.
\begin{defi}[Quasivarities]
\begin{defi}[Quasivarieties]
A \textbf{quasi-affine variety} is an open subvariety of an \hyperlink{def:affVar}{affine variety}.
A \textbf{quasi-projective variety} is an open subvariety of a \hyperlink{def:projVar}{projective variety}.
\end{defi}
Expand Down Expand Up @@ -1153,8 +1153,8 @@ \section{Smooth points, dimension, Noether normalisation}
\end{enumerate}
\end{eg}

\begin{defi}[Transcendance dimension]\hypertarget{def:trdim}
Now we can define $\trdim X$, the \textbf{transcendance dimension} of extension $k \subseteq \hyperlink{def:k(x)}{k(X)}$.
\begin{defi}[Transcendence dimension]\hypertarget{def:trdim}
Now we can define $\trdim X$, the \textbf{transcendence dimension} of extension $k \subseteq \hyperlink{def:k(x)}{k(X)}$.
\end{defi}
It is not hard to see $\hyperlink{def:trdim}{\trdim} k(x_1, \dotsc, x_n)/k = \trdim \A^n$ = n. Generally,
\begin{thm}
Expand Down Expand Up @@ -1249,7 +1249,7 @@ \section{Smooth points, dimension, Noether normalisation}
% new lecture
To recap:
Suppose we have affine varieties $X$ and $Y$ with a morphism \begin{equation*}k[X] = k[Y][t]/f(t) \leftarrow k[Y].\end{equation*}
We noticed that if $f \in k[Y][t]$ is a monic polynomial, then the map of algebraic varities $X \xrightarrow{\varphi} Y$ is surjective with finite $\varphi^{-1}(y)$ $\forall y \in Y$.
We noticed that if $f \in k[Y][t]$ is a monic polynomial, then the map of algebraic varieties $X \xrightarrow{\varphi} Y$ is surjective with finite $\varphi^{-1}(y)$ $\forall y \in Y$.

\begin{defi}[Integral extension]\hypertarget{def:intExt}
$B \subseteq A$ is an \textbf{integral ring extension} if $\forall a \in A$, $\exists$ a monic polynomial $f \in B[t]$ with $f(a) = 0$.
Expand Down Expand Up @@ -1290,7 +1290,7 @@ \section{Smooth points, dimension, Noether normalisation}
and indeed any projection onto a line other than the $x$ or $y$ axis will work.
\end{eg}
\begin{thm}
If $k = \overline{k}$, and $\varphi: X \to Y$ is a morphism of algebraic varities, and $X$, $Y$ irreducible.
If $k = \overline{k}$, and $\varphi: X \to Y$ is a morphism of algebraic varieties, and $X$, $Y$ irreducible.
\begin{enumerate}[label=(\alph*)]
\item $\overline{\varphi(X) = Y} \iff$ algebra homomorphism $k[Y] \to k[X]$ is injective.
\item Suppose $\overline{\varphi(X) = Y}$. Then
Expand Down Expand Up @@ -1335,7 +1335,7 @@ \section{Smooth points, dimension, Noether normalisation}
\item $x_1, \dotsc, x_n$ generate $A$
\item for each $i > d$, $x_i$ satisfies a monic irreducible polynomial $F_i$ with coefficients in $k[x_1, \dotsc, x_{i-1}]$.
\end{enumerate}
Moreoever, if $k$ is perfect, then $F_i$ can be chosen to be separable.
Moreover, if $k$ is perfect, then $F_i$ can be chosen to be separable.
\begin{defi}[Perfect]
A field $k$ is perfect if $\chara k = p > 0$ and $x \mapsto x^p$ is a surjection.
\end{defi}
Expand Down Expand Up @@ -1511,7 +1511,7 @@ \section{Algebraic Curves}
=0 \quad \text{when } X = (x_{ij}) \tag{$*$} \label{eq:13star}
\end{equation*}
Now recall $X \text{adj}(X) = \det(X) I$ where $\text{adj}(X)$ is the matrix of determinants of minors.
Mulitply \eqref{eq:13star} by $\text{adj}(I-X)$, get $d m_i = 0$ for $i = 1, \dotsc, n$ where $d = \det(I-X) = 1+r$ with $r \in J$ by expanding out the determinant, use $J$ ideal i.e.\ $(1+r) M = 0$.
Multiply \eqref{eq:13star} by $\text{adj}(I-X)$, get $d m_i = 0$ for $i = 1, \dotsc, n$ where $d = \det(I-X) = 1+r$ with $r \in J$ by expanding out the determinant, use $J$ ideal i.e.\ $(1+r) M = 0$.

(ii) is immediate from (i), by applying (i) to $M/N$.
\end{proof}
Expand All @@ -1535,7 +1535,7 @@ \section{Algebraic Curves}
\end{remark}
% ...
\begin{proof}
$X$ is a curve, $\alpha$ defined on an open subset of $X$, so it is defined eexcept possibly at a finite set of points.
$X$ is a curve, $\alpha$ defined on an open subset of $X$, so it is defined except possibly at a finite set of points.
SO it is enough to show $\alpha$ is defined at $p$.
$Y$ is projective, $Y \subseteq \proj^m$ for some $m$, enough to prove this for $Y = \proj^m$. %(why?)
\begin{equation*}
Expand Down Expand Up @@ -1578,7 +1578,7 @@ \section{Algebraic Curves}
\begin{equation*}
k \hookrightarrow k(Y) \hookrightarrow k(X)
\end{equation*}
but $k \hookrightarrow k(Y)$ has transcedance dimension 1, and $k \hookrightarrow k(X)$ has transcedance dimension $1$, therefore $k(Y) \hookrightarrow k(X)$ has $\trdim = 0$, i.e. is an algebraic extension.
but $k \hookrightarrow k(Y)$ has transcendence dimension 1, and $k \hookrightarrow k(X)$ has transcendence dimension $1$, therefore $k(Y) \hookrightarrow k(X)$ has $\trdim = 0$, i.e. is an algebraic extension.
\end{enumerate}
\end{proof}
\begin{eg}
Expand Down Expand Up @@ -1619,7 +1619,7 @@ \section{Differentials}
\begin{ex}
\leavevmode
\begin{enumerate}[label=(\alph*)]
\item let $X$ be an affine algebraic vairety, $x \in X$ and consider the ring homomorphism $\text{ev}_x: k{X} \to k$ given by $f \mapsto f(x)$.
\item let $X$ be an affine algebraic variety, $x \in X$ and consider the ring homomorphism $\text{ev}_x: k{X} \to k$ given by $f \mapsto f(x)$.
Show
\begin{equation*}
\text{Hom}_{k[X]}(\Omega^1_{k[X]/k]}, k) \xrightarrow{\sim} \text{Der}(k[X], k) = T_x X
Expand Down
2 changes: 1 addition & 1 deletion ii/lent/analysis_of_functions.tex
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,7 @@ \subsection{Lebesgue integration}
\begin{equation*}\int_E f_k \, d\mu \xrightarrow{k \to \infty} \int_E f \, d\mu.\end{equation*}
\end{thm}
\begin{proof}
Reduce to $E = X$ by consdering $f_k \chi_E, f \chi_E$.
Reduce to $E = X$ by considering $f_k \chi_E, f \chi_E$.
Then $\left(\int_X f_k \, d\mu\right)_{k \geq 1}$ is a sequence in $[0, \infty]$, non-decreasing.

By monotonicity, $f_k \nearrow f$, so $\int_X f_k \, d\mu \leq \int_X f \, d\mu$.
Expand Down
8 changes: 4 additions & 4 deletions ii/lent/coding_and_cryptography.tex
Original file line number Diff line number Diff line change
Expand Up @@ -616,7 +616,7 @@ \subsection{Huffman coding}
\begin{remark}
Not all \hyperlink{def:optCode}{optimal} codes are \hyperlink{def:huffmanCode}{Huffman}. For instance, take $m=4$, and probabilities $0.3, 0.3, 0.2, 0.2$. An optimal code is given by $00, 01, 10, 11$, but this is not Huffman.

But, the previous result says that if we have a prefix-free optimal code with word lengths $s_1, \dotsc, s_m$ and associated probabilites $p_1, \dotsc, p_m$, $\exists$ a Huffman code with these word lengths.
But, the previous result says that if we have a prefix-free optimal code with word lengths $s_1, \dotsc, s_m$ and associated probabilities $p_1, \dotsc, p_m$, $\exists$ a Huffman code with these word lengths.
\end{remark}

\begin{defi}[Joint entropy]\hypertarget{def:jointEntropy}
Expand Down Expand Up @@ -1972,7 +1972,7 @@ \subsection{Reed-Muller Codes}
\subsubsection*{Algebraic aside}
A \textbf{ring} $R$ is a set with two operations, $+$ and $\times$. $(R, +)$ is an additive group and $\times$ is distributive over addition i.e.\ $a(b+c)=ab+ac$. Think of $\Z$ or $\Z_{10}$.

An \textbf{ideal} $I \unlhd R$ is an additive subgroup, closed under external mutliplication, i.e.\ if $a \in I$ and $r \in R$ then $ra \in I$. Think of $2\Z \unlhd Z$.
An \textbf{ideal} $I \unlhd R$ is an additive subgroup, closed under external multiplication, i.e.\ if $a \in I$ and $r \in R$ then $ra \in I$. Think of $2\Z \unlhd Z$.
\begin{nlemma}\label{lem:2.27}
Let $I$ be an ideal in ring $R$ and let $q: R \to R/I$ be the quotient map.
Then there is a bijection between the set of ideals $J \subseteq R$ containing $I$ and the set of ideals in $R/I$.
Expand Down Expand Up @@ -2304,7 +2304,7 @@ \subsubsection*{Decoding BCH codes}
&= \sum_{j=1}^\infty e(\alpha^j) X^j \\
\implies w(X) &= \left(\sum_{j=1}^\infty e(\alpha^j) X^j \right) \sigma(X).
\end{align*}
By defnition of $C$ we have $c(\alpha^j) = 0$ for $1 \leq i \leq \delta-1$ so for $1 \leq j \leq 2t$.
By definition of $C$ we have $c(\alpha^j) = 0$ for $1 \leq i \leq \delta-1$ so for $1 \leq j \leq 2t$.
So $r(\alpha^j) = e(\alpha^j)$ for $1 \leq j \leq 2t$. Thus
\begin{equation*}
\sigma(X) \sum_{j=1}^{2t} r(\alpha^j) X^j \equiv w(X) \pmod{X^{2t+1}}.
Expand All @@ -2326,7 +2326,7 @@ \subsubsection*{Decoding BCH codes}
\end{proof}
\subsection{Shift registers}
\begin{defi}[General feedback shift register]\hypertarget{def:fsr}
A \textbf{general feedback shift register} is a fucntion $f:\F_2^d \to \F_2^d$ of the form
A \textbf{general feedback shift register} is a function $f:\F_2^d \to \F_2^d$ of the form
\begin{equation*}
f(x_0, \dotsc, x_{d-1}) = (x_1, \dotsc, x_{d-1}, c(x_0, \dotsc, x_{d-1}))
\end{equation*}
Expand Down
12 changes: 6 additions & 6 deletions ii/lent/test.tex
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ \subsection{Basic notions}
\begin{equation*}
Y_1 = Y_2 \cup Y_2',\quad Y_2 = Y_3 \cup Y_3',\quad \dotsc
\end{equation*}
and so we get an infinite chain of affine varities $Y \supsetneq Y_1 \supsetneq Y_2 \supsetneq \dotsb$.
and so we get an infinite chain of affine varieties $Y \supsetneq Y_1 \supsetneq Y_2 \supsetneq \dotsb$.
But each $Y_i = Z(I_i)$ for some ideals $I_i$. Let
\begin{equation*}
W = \bigcap Y_i = Z\left(\sum I_i\right) = Z(I)
Expand Down Expand Up @@ -938,7 +938,7 @@ \section{Projective space}
\begin{equation*}
\begin{tikzcd}
\left\{\parbox{2cm}{\centering closed subvarieties of $\A^n$}\right\} \rar[leftrightarrow]&
\left\{\parbox{5.5cm}{\centering closed subvarities $\overline{Z}$ of $\proj^n$ such that no irreducible component of $\overline{Z}$ is contained in $\proj V \setminus \A^n = \proj H$ }\right\} \\
\left\{\parbox{5.5cm}{\centering closed subvarieties $\overline{Z}$ of $\proj^n$ such that no irreducible component of $\overline{Z}$ is contained in $\proj V \setminus \A^n = \proj H$ }\right\} \\
Z \rar[mapsto] &\overline{Z} = \text{closure of } \iota(Z) \text{ in } \proj^n
\end{tikzcd}
\end{equation*}
Expand All @@ -948,7 +948,7 @@ \section{Projective space}
A projective variety is a closed subvariety of $\proj^n$, some $n$
\end{defi}
Recall an \hyperlink{def:affVar}{affine variety} is $k[X] = k[x_1, \dotsc, x_n]/I$, $I = \sqrt{I}$.
\begin{defi}[Quasivarities]
\begin{defi}[Quasivarieties]
A \textbf{quasi-affine variety} is an open subvariety of an \hyperlink{def:affVar}{affine variety}.
A \textbf{quasi-projective variety} is an open subvariety of a \hyperlink{def:projVar}{projective variety}.
\end{defi}
Expand Down Expand Up @@ -1221,7 +1221,7 @@ \section{Smooth points, dimension, Noether normalisation}

% new lecture
Suppose we have affine varieties $X$ and $Y$ with morphism $k[X] = k[Y][t]/f(t) \leftarrow k[Y]$.
We noticed that if $f \in k[Y][t]$ is a monic polynomial, then the map of algebraic varities $X \xrightarrow{\varphi} Y$ is surjective with finite $\varphi^{-1}(y)$ $\forall y \in Y$.
We noticed that if $f \in k[Y][t]$ is a monic polynomial, then the map of algebraic varieties $X \xrightarrow{\varphi} Y$ is surjective with finite $\varphi^{-1}(y)$ $\forall y \in Y$.

\begin{defi}
$B \subseteq A$ is an integral ring extension if $\forall a \in A$, $\exists$ a monic polynomial $f \in B[t]$ with $f(a) = 0$.
Expand Down Expand Up @@ -1260,7 +1260,7 @@ \section{Smooth points, dimension, Noether normalisation}
and indeed any projection onto a line other than the $x$ or $y$ axis will work.
\end{eg}
\begin{thm}
If $k = \overline{k}$, and $\varphi: X \to Y$ is a morphism of algebraic varities, and $X$, $Y$ irreducible.
If $k = \overline{k}$, and $\varphi: X \to Y$ is a morphism of algebraic varieties, and $X$, $Y$ irreducible.
\begin{enumerate}[label=(\alph*)]
\item $\overline{\varphi(X) = Y} \iff$ algebra homomorphism $k[Y] \to k[X]$ is injective.
\item Suppose $\overline{\varphi(X) = Y}$. Then
Expand Down Expand Up @@ -1546,7 +1546,7 @@ \section{Algebraic Curves}
\begin{equation*}
k \hookrightarrow k(Y) \hookrightarrow k(X)
\end{equation*}
but $k \hookrightarrow k(Y)$ has transcedance dimension 1, and $k \hookrightarrow k(X)$ has transcedance dimension $1$, therefore $k(Y) \hookrightarrow k(X)$ has $\trdim = 0$, i.e. is an algebraic extension.
but $k \hookrightarrow k(Y)$ has transcendence dimension 1, and $k \hookrightarrow k(X)$ has transcendence dimension $1$, therefore $k(Y) \hookrightarrow k(X)$ has $\trdim = 0$, i.e. is an algebraic extension.
\end{enumerate}
\end{proof}
\begin{eg}
Expand Down
4 changes: 2 additions & 2 deletions ii/mich/algebraic_topology.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1021,7 +1021,7 @@ \subsection{The Galois correspondence}
\end{defi}

\begin{defi}
If $p: \overline{X} \to X$ is a covering space, a covering transofmation or deck transformation is a self-homoemorphism $\phi: \overline{X} \to \overline{X}$ such that $p \circ \phi = p$.
If $p: \overline{X} \to X$ is a covering space, a covering transformation or deck transformation is a self-homeomorphism $\phi: \overline{X} \to \overline{X}$ such that $p \circ \phi = p$.
In particular, $\phi$ is a lift of $p$ along itself, and so if $\overline{X}$ is path connected, $\phi$ is determined by its value at a point.

\begin{equation*}
Expand Down Expand Up @@ -1063,7 +1063,7 @@ \subsection{The Galois correspondence}

The next tool is another action of $\pi_1(X, x_0)$.
Let $p : (\widetilde{X}, \widetilde{x}_0) \to (X, x_0)$ be a universal cover. For each $[\gamma] \in \pi_1(X, x_0)$, we can consider $\widetilde{x}_0 \cdot [\gamma]$ as a different choice of basepoint for $\widetilde{X}$.
The Lifting Criterion gives a (ubique) covering transofmation $\phi_{[\gamma]} : \widetilde{X} \to \widetilde{X}$.
The Lifting Criterion gives a (unique) covering transformation $\phi_{[\gamma]} : \widetilde{X} \to \widetilde{X}$.

\begin{lemma}
This defines a left action of $\pi_1(X, x_0)$ on $\widetilde{X}$ by covering transformation.
Expand Down
8 changes: 4 additions & 4 deletions ii/mich/galois_theory.tex
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ \subsection{Course overview}
% Galois' papers have been studied by Peter Neumann:
% The math writings of Evariste Galois, European Math Soc
% Different books: I. Steward Galois Theory, (something) and Hall
% contains a historcal introduction and covers almost all the syllabus.
% contains a historical introduction and covers almost all the syllabus.
% Artin Galois Theory
% Van der Waerden Modern Algebra (covers a lot more than Galois theory)
% Lang Algebra (late editions are preferred, covers a lot of algebra)
Expand Down Expand Up @@ -322,7 +322,7 @@ \subsection{Digression on (Non-)Constructibility}
Schedules mention `other classical problems' and we are now in a position to tackle some of these using \cref{cor:1.11}.

A classical question from Greek geometry concerns the existence or otherwise of constructions using ruler and compasses (where a ruler refers to a single unmarked straight edge).
If you're an expert you can divide a line betwen 2 points into arbitrarily many equal segments, you can bisect an angle, or you can produce parallel lines.
If you're an expert you can divide a line between 2 points into arbitrarily many equal segments, you can bisect an angle, or you can produce parallel lines.
Given a polygon you can produce a square of the same area or double the area. However,
\begin{enumerate}
\item You cannot duplicate the cube using ruler and compasses (given a cube you can't produce a cube of double the volume)
Expand Down Expand Up @@ -1812,7 +1812,7 @@ \subsection{Galois Theory of Finite Fields}
\begin{remark}[About \cref{thm:3.13}]
We'll discover in Number Fields that $\Gal(\overline{f}) \hookrightarrow \Gal(f)$ if $f(t) \in \Z[t]$.
We factorised $\overline{f}(t) = \overline{g_1}(t) \dotsm \overline{g_s}(t)$, a product of irreducibles.
We know from \cref{lem:3.6} that the orbits of $\Gal(\overline{f})$ correspond to the factorsiation.
We know from \cref{lem:3.6} that the orbits of $\Gal(\overline{f})$ correspond to the factorisation.

We now know $\Gal(\overline{f})$ is cyclic generated by the Frobenius map, which must have cycle type $(n_1, \dotsc, n_s)$ where $n_j = \deg \overline{g_j}(t)$
\end{remark}
Expand Down Expand Up @@ -2604,7 +2604,7 @@ \subsection{Algebraic closure}
\begin{equation*}\tilde{f}(t) = f(t) - \prod_{j=1}^{\deg g} (t - X_{f,j}) \in K[X_s: s \in \mathcal{S}][t].\end{equation*}

Let $I \lhd K[X_s : s \in \mathcal{S}]$ generated by all the coefficients of all the $\tilde{f}(t)$.
Denote the coefficents of $\tilde{f}(t)$ by $a_{f,l}$ for $0 \leq l \leq \deg f$.
Denote the coefficients of $\tilde{f}(t)$ by $a_{f,l}$ for $0 \leq l \leq \deg f$.

Claim: $I \neq K[X_s : s \in \mathcal{S}]$.
Proof: Suppose $1 \in I$ and aim for a contradiction.
Expand Down
2 changes: 1 addition & 1 deletion ii/mich/galois_theory_def.tex
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ \subsection{Course overview}
% Galois' papers have been studied by Peter Neumann:
% The math writings of Evariste Galois, European Math Soc
% Different books: I. Steward Galois Theory, (something) and Hall
% contains a historcal introduction and covers almost all the syllabus.
% contains a historical introduction and covers almost all the syllabus.
% Artin Galois Theory
% Van der Waerden Modern Algebra (covers a lot more than Galois theory)
% Lang Algebra (late editions are preferred, covers a lot of algebra)
Expand Down
2 changes: 1 addition & 1 deletion ii/mich/galois_theory_thm.tex
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ \subsection{Course overview}
% Galois' papers have been studied by Peter Neumann:
% The math writings of Evariste Galois, European Math Soc
% Different books: I. Steward Galois Theory, (something) and Hall
% contains a historcal introduction and covers almost all the syllabus.
% contains a historical introduction and covers almost all the syllabus.
% Artin Galois Theory
% Van der Waerden Modern Algebra (covers a lot more than Galois theory)
% Lang Algebra (late editions are preferred, covers a lot of algebra)
Expand Down
Loading