Pointers for formatting homework using latex

Latex is the standard package for formatting papers in mathematics and computer science. It takes a bit more patience at first than Word, but its output is much prettier and it is vastly better at handling mathematics, inserted figures, and bibliographic references. If you end up going to graduate school in computer science, you will eventually have to learn Latex.

Latex is overkill for the homeworks in CS 173. However, some of you may wish to learn it for other reasons. And some of you may type much faster than you can handwrite legibly. So we expect a few of you to try using latex for the homeworks (or for selected homework problems).

The standard Latex manual is the 1994 book by Leslie Lamport. Several other books have appeared since then: do tell us if you have opinions about which are good/bad. Here is a quick guide to writing equations in math mode. And a a second short-guide.

Don't try to create your first document from scratch. Rather, try to modify someone else's working example file. A sample document often comes with Latex distributions. You could also start with one of the homeworks posted for CS 173. Notice that formatting some homeworks from source requires the files gastex.pro and gastex.sty.

If you find Latex interesting but would prefer an IDE or WYSIWYG interface, you may want to try Lyx, TeXnicCenter, Kile, or TeXmacs.

Some other recommended latex packages:

The basic Latex package doesn't have a good way to draw diagrams and it sometimes does a poor job of handling formulas from other technical fields (e.g. chemistry). So, many packages have been developed to simplify writing documents of particular sorts. CTAN maintains an archive of such pages.

The best tool we've found for drawing automata state diagrams is gastex. (It appears that there may be more recent version than what's on that page.) It is not hard to write gastex commands directly. See the examples in the CS 173 homework files. Here is a listing of commands. However, you may find it easier to use the jastex graphical interface to gastex.