Optative and indicative
Indicative properties are those that are invariantly true regardless of the program
- In essence, they describe the operating environment for a program
Optative properties are those that you want to achieve
- In essence, these are the requirements