Monthly Archives: August 2008

Books: “Particle Physics A Very Short Introduction” by Frank Close

Particle Physics book cover
I found this book in the library the other day and found it to be a very good introduction to the basics of particle physics. I liked the fact that it explains the basics of the experimental side of particle physics as well as introducing the three families of leptons and quarks. Too often, popular science books explain the various subatomic particles with out giving you any idea of how we actually know of their existence. Because of this, I think disbelief tends to creep in. But Close does an excellent job of explaining the basics of how accelerators operate and also the basics of how detectors work. And he does all this in only 129 pages! Very short indeed, and highly recommended.

Algebraic Geometry: “Ideals, Varieties, and Algorithms” C++ Code


Ideals, Varieties, and Algorithms book cover
I did an REU (Research Experience for Undergraduates) this summer and we used the textbook “Ideals, Varieties, and Algorithms” (isbn 978-0-387-35650-1) by David Cox, John Little, and Donal O’Shea. As the title mentions, algorithms are an important tool in the study of varieties via their corresponding algebraic ideals. One of the main tools used in algebraic geometry is what is known as a Groebner basis, which is somewhat akin to a basis set in Linear Algebra. Anyway, I wrote some C++ code which implements a few of the algorithms in the book, but stops short of implementing Buchberger’s algorithm for computing a Groebner basis. The code should be useful as a starting point because it implements a Monomial class and a Polynomial class both with lots of useful methods thus eliminating the drudgery of implementing the book’s algorithms in C++.

The code can be found at: my web site as a gzipped tarball. Please let me know if you find it useful. I developed the code on an Ubuntu Linux machine, but it is generic enough that it should compile on any platform. You will need to read the README to understand the simple input, output format.