Culkin -- Simple Computer Algebra in C++

This is a small set of C++ classes and programs based upon the book "Ideals, Varieties and Algorithms" 3rd ed. Springer, 2007 by David Cox, John Little and Donal O'Shea. Currently there are three programs: polydiv which implements the division algorithm for single variable polynomials, gcd which implements the GCD algorithm for single variable polynomials, and finally mpolydiv which implements the multivariable polynomial division algorithm. I hope to implement Buchburger's algorithm for computing Groebner bases soon. I wrote this code while participating in the Computational Algebraic Geometry REU at the University of Utah (summer 2008). Download Tarball

Logistic Map -- Bifurcation Diagram

Sierpinski's Triangle

Sierpinski's Tetrahedron

Simple Julia Set Generator

Modified Inverse Iteration Method Julia Set Generator

Iterated Function System - Fractal Generation

This code generates fractals based upon an iterated function system (IFS). Several input files and a Makefile are included. The code is written in C++. I did this for a class at the University of Utah, but it is based upon a homework assignment for a computer graphics class at MIT (6.837). Sorry this tarball got corrupted!


We must not forget that when radium was discovered no one knew that it would prove useful in hospitals. The work was one of pure science. And this is a proof that scientific work must not be considered from the point of view of the direct usefulness of it. It must be done for itself, for the beauty of science, and then there is always the chance that a scientific discovery may become like the radium a benefit for humanity. Marie Curie (1867 - 1934), Lecture at Vassar College, May 14, 1921

Click the refresh button to see a different quote.