12
$\begingroup$

I'm learning Algebra & Group Theory, casually, on my own. Professionally, I'm a computer consultant, with a growing interest in the mathematical and theoretical aspects. I've been amazed with the applications of Algebra to CS things like cryptography, coding theory, and combinatorial search.

I'm using Artin's book, and, as high quality as it is, I find it leaves me dry. A lot of names for new concepts, and proving that one thing follows from others. But I don't see the powerful tool I envisioned that I'd gain taking shape in my hand.

Perhaps because I'm learning independently and casually, I need a book which will give me tools, showing me how they can be used to solve concrete problems outside of algebra.

What book(s) do you recommend?

$\endgroup$
5
  • $\begingroup$ Thanks for the replies. When mentioning a book, please let me know how it will meet the needs I express. $\endgroup$ Commented Jun 18, 2010 at 23:14
  • $\begingroup$ Some books I've seen on Amazon are Fraleigh, Saracino, and Lindsay Childs, though I don't know anything about those. $\endgroup$ Commented Jun 18, 2010 at 23:14
  • $\begingroup$ See also mathoverflow.net/questions/24971/… and mathoverflow.net/questions/24971/… $\endgroup$ Commented Jun 19, 2010 at 8:55
  • $\begingroup$ This extensive wiki might be helpful, groupprops.wiki-site.com $\endgroup$
    – Anirbit
    Commented Jun 26, 2010 at 21:00
  • $\begingroup$ i would like to add the "Fundamental Algorithms of Permutation Groups" by Butler, the newer version of Serres on "Permutation Algorithms" and the texts (and a couple of papers) of D. Knuth on Combinatorial algorithms (from "The Art Of Computer Programming" series) $\endgroup$
    – Nikos M.
    Commented Apr 25, 2015 at 20:01

10 Answers 10

9
$\begingroup$

The best algebra book for beginners I know is E.B. Vinberg's A Course In Algebra, available through the AMS. It's very similar in spirit to Artin's book (i.e. very geometric), but it's much gentler and builds more slowly to a very high level with lots of examples and concrete applications.However,most of the applications in this book are classical (groups of transformations in Euclidean space,symmetry groups in physics,number theory,etc.) I think what you want is a text that shows what algebra is for. Sadly,I don't think there really is a good algebra book that seamlessly integrates a large number of applications besides the theory-you'll probably have to read several such books to get the big picture you want.That being said,there are 2 more books I highly recommend to you that really should be considered a single text in 2 parts:John Stillwell's Elements of Algebra: Geometry, Numbers, Equations and Elements of Number Theory. These books give a brilliant,relatively short and beautifully written exposition of basic algebra through it's history and many applications that cannot be found in other sources,particularly to geometry and computer science,including the RSA cryptography system and the Pell equation.They really should be considered 2 halves of the same text as Stillwell doesn't cover basic ring theory in the algebra text,but in the number theory text-considering it to be part of basic number theory and it's applications.This is a very interesting and compelling viewpoint and it's very enlightening. I think you may find them to be just what the doctor ordered for the basics.

$\endgroup$
8
$\begingroup$

Harvard's Open Learning Initiative has an entire course of video lectures for the undergrad abstract algebra course, taught by Benedict Gross (he uses Artin's book, and is a great lecturer).

http://www.extension.harvard.edu/open-learning-initiative/abstract-algebra

$\endgroup$
1
  • $\begingroup$ Wow,I didn't know about this online resource! Looks great,especially for review,thanks,Casey! $\endgroup$ Commented Jun 19, 2010 at 0:52
5
$\begingroup$

For general algebra, I would recommend Abstract Algebra by Dummit and Foote. It has a lot of problems and good counterexamples. More importantly, it teaches you how to approach a problem, a technique very useful when studying on your own.

It covers groups, rings, modules, Galois theory, Linear algebra, some Affine Algebraic geometry and representation theory. But I didn't quite like the modules and tensor product section. From a computational point of view, it also discusses Grobner bases, Berlekamp algorithm, etc.

Google Books link - http://books.google.com/books?id=QkAxJgAACAAJ&dq=abstract+algebra&hl=en&ei=7TccTJCOEoaErAfD9pTlCw&sa=X&oi=book_result&ct=result&resnum=8&ved=0CE0Q6AEwBw

$\endgroup$
4
$\begingroup$

I don't know if it'll fit your needs, but let me recommend you the book from which I mostly learned group theory: Humhpreys' A course on Group Theory. There are lots of worked examples, and I think you'll appreciate the chapter on error-correcting codes.

$\endgroup$
3
$\begingroup$

You might want to try Applied Abstract Algebra by Lidl and Pilz. The trouble with the introductory algebra books written by mathematicians is that they tend to start with groups, and then progress to rings and fields. Logically, groups are simpler. However, if you want to see the applications, then I think this is backwards. Finite fields, for example, are useful in coding theory and cryptography, and you don't really need to slog through a lot of theorems about groups to understand finite fields. Once you see what these concepts are good for, then you can readily go back and absorb the necessary theorems that make everything work.

$\endgroup$
1
  • 2
    $\begingroup$ @Timothy I do think the applied aspect of algebra-which has gained tremendous importance in computer science in the last 20 years-is downplayed too much in standard algebra courses and this is something that should be rectified. $\endgroup$ Commented Jun 19, 2010 at 0:53
3
$\begingroup$

"A concrete introduction to higher algebra" by Lindsay Childs is very good. While it does not aim at giving a comprehensive survey of the basic concepts in algebra, it focuses on applications, for example to coding theory and cryptography, and seems to me to be very suitable for self-study.

$\endgroup$
2
  • $\begingroup$ I agree that it's a good book (I taught Applicable Algebra from it), but it seems to be a bit out of date. $\endgroup$ Commented Jun 19, 2010 at 8:58
  • 3
    $\begingroup$ Maybe it's outdated, but I still think that it is a good start. $\endgroup$
    – Angelo
    Commented Jun 19, 2010 at 16:02
2
$\begingroup$

As for the Lie groups and Lie algebras, you may wish to try the book Lie groups and algebras with applications to physics, geometry, and mechanics by David H. Sattinger and O. L. Weaver. As for the other parts of algebra, consider reading the book Basic notions of algebra by Shafarevich. Albeit not exactly a highly systematic textbook a la Artin, it provides a nice introduction to abstract algebra with motivations, applications and examples all along.

$\endgroup$
2
$\begingroup$

There are many kinds of algebras as you have probably discovered by now :-) Look up the Handbook of Algebra by Hazewinkel or see the wikipedia entries for Jordan algebra, Clifford algebra, etc. You will find all the topics listed here http://en.wikipedia.org/wiki/Category:Algebras

See also From Error-Correcting Codes... and Hypercomplex Numbers

You might find John Baez archive of Weekly finds a good intro. In particular, the ADE correspondence is important to know.

I am going to list some of my other favorites back when I was learning this stuff.

  1. Joyner's Adventures in Group theory
  2. Weinstein : Examples of groups if you can find it
  3. Mirman : Group Theory: An Intuitive Approach
  4. Parker : Laboratory Experiences in Group Theory
  5. Kiltinen : Oval track and other puzzles
  6. Conway. Quaternions and Octonions
$\endgroup$
2
$\begingroup$

First, my background - a math major and a retired software engineer.

It takes time and efforts to go from theory to application. You need to convert yourself from a computer scientist to a mathematician. Then convert back to computer scientist. A hard process. Please be patient and give yourself more time.

All the books the answerers recommend seem to be good although I did not read all of them. I am reading Dummit and Foote’s Abstract Algebra because I am studying for math, not for computers. Please note the word I use – ‘for’.

To answer your particular question, I would recommend P.M. Cohn’s two volumes – Basic Algebra and Further Algebra and Applications. These two books contain enough theory and also pay attention to applications. Cohn tried to tell the reader how to apply the theory. You may not find too much number theory in those two books. For that, you need a good number theory book.

EDIT: If I were you, I would go to a university library and take a glance at all those books people here recommend before I buy any book. Everybody has his own taste.

$\endgroup$
1
$\begingroup$

I've enjoyed Peter Cameron's exposition of permutation groups; most have a very CS feel and are almost exclusively devoted to solving some sort of combinatorial problem (often of real use).

He has recently written some lecture notes on a problem in synchronization(course page) that make non-trivial use of permutation groups to understand finite automata. One important tool in hardware design is a "reset word" that takes the automaton from any state and brings it back to a fixed initial state. The key point being that you send the same message no matter what state the automaton is currently in, and no matter what it ends up in the fixed initial state, ready for new commands.

The goal of the course is to make progress towards solving a conjecture that if an n-state automaton has a reset word at all, then it has a short one, that is, one of length at most (n−1)2.

He also has a nice encyclopedia about "design theory". Block designs are highly symmetric arrangements that allow for efficient and accurate statistical experiments (I believe originally in agriculture, but now widely used in many areas, especially medicine) as well as dense codes in coding theory. I first learned about them in the local cryptography seminar where they were used to give better understanding of some algebraic stream ciphers.

If you do not currently have problems you want to solve using group theory, but want to learn to solve some beautiful problems in and using group theory, then I found Butler's Fundamental Algorithms of Permutation Groups to be quite good. It uses spanning trees to solve a fundamental problem in permutation groups, and shows several very good examples of how permutation groups let you very naturally prune an exponential search tree down to something that will work like a charm in practice. The open source GAP has many of these algorithms implemented in fairly easy to read procedural language (like C, but with garbage collection). It of course also has many of the modern solutions to the same problems, so you can also see how things have improved.

$\endgroup$
1
  • $\begingroup$ i would like to add, the newer version of Serres on "Permutation Algorithms" and the texts (and a couple of papers) of D. Knuth on Combinatorial algorithms (from "The Art Of Computer Programming" series) $\endgroup$
    – Nikos M.
    Commented Apr 25, 2015 at 20:00

Not the answer you're looking for? Browse other questions tagged .