CSc 445: Writing Guidelines and Expectations

General

An essential component of any course that aims to investigate some topic in a mathematically precise way is to be able to communicate the results of such investigations to others clearly and effectively (an absolutely brilliant proof of an absolutely profound result will nevertheless be useless if it is unintelligible to everyone else, since if people can't understand it they have no reason to believe that it's true). Accordingly, and since CSc 445 is a writing proficiency course, a portion of the grade will be based on the quality of one's writing. This document outlines our expectations in this regard, and offers some guidelines for the ``quality of writing'' component of your homeworks (see Grading Policies for details of how ``quality of writing'' will be graded).

Please note that these guidelines are intended to be of help, but do not claim to be exhaustive : a sufficiently determined person may be able to follow them and still succeed in being entirely unintelligible. To some extent, whether or not a piece of writing ``communicates its ideas clearly'' is a matter of judgement, and one of the goals of this course will be to refine this judgement through practice.

Guidelines

The solution to a problem should, for all but the simplest of problems, have two components:
  1. an informal sketch of the approach to the problem, and perhaps the structure of the solution; and
  2. the mathematically precise solution itself.
In some cases, these components may be intermixed. Usually, the intuition should be presented first; however, there may be some situations where it's hard to give a high-level description of how a solution works without referring to specific pieces of the mathematical development, and in such cases it makes sense to give the informal explanation of the solution after the mathematical development.

For problems that require the construction of an automaton (e.g., finite state machine, push-down automaton, Turing machine), or a language specification (e.g., regular expressions or context-free grammars), the intuition presented should sketch how your construction works. For example:

The context-free language L can be written as L = L1 union L2, where L1 = ... and L2 = .... We use a nonterminal S1 to generate strings in L1 and a nonterminal S2 to generate strings in L2. The union of these two languages is then obtained using the productions S -> S1 | S2. ...
For problems that require you to write a proof, give a road-map of how you intend to proceed. If it's an induction proof, say what the induction will be on. If the proof involves several steps or requires proving intermediate results (lemmas), briefly mention what they will be, e.g.:
The proof proceeds in three steps. First, we show that ... This is followed by a proof that ... Finally, we put these results together to show that ...
(Note that the examples above refer to the informal sketch of the solution: the actual mathematical presentation needs to be given as well.)

The textual layout of a proof or a mathematical construction has an important effect on how easy it is to read and understand, just as proper indentation plays a significant role in determining the readability of a piece of code. You should, therefore, pay careful attention to the layout of your solutions on paper.


[ Last modified: ]