A good proof has the following properties:

- Justify each step
- Write your proofs in two-column format, with each step showing a true statement in the left column and a correct justification on the right.
- Statements have truth value; expressions do not. For example, an equation is either true or not. Thus, no step should consist of just an algebraic expression.
- Each step must also be justified. If you cannot provide a clear and convincing reason for a particular statement in your proof, then you need to give the matter further thought and consider adding additional steps to improve the argument.
- The last step is the conclusion, namely the statement which you set out to prove.

See the proofs on the example proofs page.

A bad proof may have the following properties:

- The first step is a restatement of the result to be proven.
- Any step is a simple expression with some value other than true or false.
- Any step violates type constraints; e.g., a step that equates a number to a set cannot be valid. Use your mental type-checker!