Pointers for formatting homework using LaTeX

LaTeX is a typesetting system widely used to produce well-formatted mathematical and scientific writing. It is harder to learn than Microsoft Word, but it is much prettier than Word and 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.

For those of you with Windows machines, the Art of Problem Solving has a tutorial for getting and using LaTeX.

Use detexify to find codes for symbols.

You can find guides to writing in math mode here and here.

Do not try to create your first document from scratch. Rather, try to modify someone else's working example file. LaTeX distributions often come with sample documents. 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 does not 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 a 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.