
What Is Abstract Algebra? [video] - espeed
https://www.youtube.com/watch?v=IP7nW_hKB7I&list=PLi01XoE8jYoi3SgnnGorR_XOW3IcK-TP6
======
adamnemecek
If you are curious how does Abstract Algebra relate to software engineering,
this book might be of your interest

[https://smile.amazon.com/Elements-Programming-Alexander-
Step...](https://smile.amazon.com/Elements-Programming-Alexander-
Stepanov/dp/032163537X)

The main selling point of this approach is that it can cut out a lot of code

In this talk, Sean Parent, at that time working on Adobe Photoshop, estimated
that the PS codebase could be reduced from 3,000,000 LOC to 30,000 LOC
(=100x!!) if they followed ideas from the book
[https://www.youtube.com/watch?v=4moyKUHApq4&t=10s](https://www.youtube.com/watch?v=4moyKUHApq4&t=10s)

Another point of his is that the explosion of written code we are seeing isn't
sustainable and that so much of this code is algorithms or data structures
with overlapping functionalities. As the codebases grow, and these
functionalities diverge even further, pulling the reigns in on the chaos
becomes gradually impossible.

Bjarne Stroustrup (aka the C++ OG) gave this book five stars on Amazon (in
what is his one and only Amazon product review lol).

[https://smile.amazon.com/review/R1MG7U1LR7FK6/](https://smile.amazon.com/review/R1MG7U1LR7FK6/)

~~~
stiff
_estimated that the PS codebase could be reduced from 3,000,000 LOC to 30,000
LOC (=100x!!)_

I challenge anyone making such claims to construct an even _moderately_
realistic example of where such reduction would be possible.

Here is a very simple and already very optimistic model that is still way
below a 100x reduction: say my program consists nearly exclusively of sorting
of various arrays and I write out bubble sort in full each time using for
loops etc. rather than call a sort() procedure. Bubble sort takes roughly 20
lines of code to implement, so I would at best get a reduction of close to a
20x, rather than a 100x one.

~~~
jules
I don't doubt that your conclusion is correct, but what if the sort is used in
10 other functions, each of which is used 10 times? If you inlined everything
you would end up with 100 copies of bubble sort. The code blowup is
exponential in the level of nesting.

~~~
adamnemecek
Indeed. Another venue for why it cuts out code is that it makes code more
reusable. As a result, you are more likely to integrate nicely with already
written libraries than write your own code. Technically, this is a way of
reducing your codebase as well lol.

------
gragas
Here are fantastic Algebra lectures (Abstract Algebra, Fall 2003, Harvard) by
my favorite lecturer Benedict Gross:
[https://www.youtube.com/playlist?list=PLelIK3uylPMGzHBuR3hLM...](https://www.youtube.com/playlist?list=PLelIK3uylPMGzHBuR3hLMHrYfMqWWsmx5)

~~~
stablemap
There's a link on the sidebar of Gross's page [1] to an old version of the
course site; this lets you download video, audio, notes, and homework. Even if
you know everything in Artin's book the lectures are rarely boring.

[1] [http://www.math.harvard.edu/~gross/](http://www.math.harvard.edu/~gross/)

~~~
joebergeron
Do you mean Michael Artin's Algebra? Just took his Algebra I (18.701) at MIT
last semester. An incredibly challenging class, but he's a really excellent
lecturer and a very likeable guy. Still really sharp.

~~~
stablemap
Yes, thanks -- I should have made clear that this is what Gross used.
Wonderful book.

------
espeed
Also see the "Modern Algebra - Visual Group Theory" online course and video
lectures by Prof Matthew Macaule at Clemson:

Course material, videos, and slides:
[http://www.math.clemson.edu/~macaule/classes/m16_math4120/in...](http://www.math.clemson.edu/~macaule/classes/m16_math4120/index.html)

YouTube Playlist: [https://www.youtube.com/watch?v=UwTQdOop-
nU&list=PLCc9vhgj7w...](https://www.youtube.com/watch?v=UwTQdOop-
nU&list=PLCc9vhgj7wo7ghkzJCUaeAw1ceB1BOaXG)

------
netvarun
This was previously posted slightly over a year ago and had some good
discussion -
[https://news.ycombinator.com/item?id=10686610](https://news.ycombinator.com/item?id=10686610)

------
joe563323
The common trend in educational videos is very interesting. The videos that
are made approximately from 2-10 minute long with animation and pictures are
very easy to follow than to watch hour long stanford or mit live class room
recordings.

~~~
andrepd
Often, though, hour long lectures is the only way to go. You just can't learn
much in 10 minutes with an animated video. Sometimes you just got to delve in.

~~~
empath75
I think watching something like this before watching a deep dive or reading a
text book could be useful, just to give you kind of a lay of the land and some
intuition.

------
nishs
Évariste Galois, a major contributor to abstract algebra, had an interesting
life. He had participated in the French Revolution of 1830; worked on
mathematics while in jail; and died when he was 20 years old as a result of
being shot in the abdomen in a duel.

[https://www.youtube.com/watch?v=pdYe4BKcm74](https://www.youtube.com/watch?v=pdYe4BKcm74)
(Galois Theory - Math History)

[https://en.wikipedia.org/wiki/%C3%89variste_Galois](https://en.wikipedia.org/wiki/%C3%89variste_Galois)

------
mgalka
Great explainer. Though I'm still not sure what the relation is between
abstract algebra and regular algebra, other than the application of higher
dimensional equations.

~~~
number-sequence
Abstract algebra is often about studying structure on sets. That usually takes
the form of studying operator(s) with certain properties and the elements that
they work with. Some early examples that students see are things like
rotations/reflections of n-gons, modular arithmetic, polynomials, matrix
spaces, and fields.

It is different from regular algebra in the sense that often one starts with a
set and operation one supposes to have a particular kind of property (perhaps
it's a group, or perhaps it's a field, or perhaps it's a certain kind of field
(maybe separable, or local, or ...)). Then from these assumptions one proves
facts about the assumed algebraic structure.

It's different in that often particular elements aren't of much interest, and
it's not as tied down to a particular context.

