9.4. Formal Tools Setup 9.4.1. Installing Tools 9.4.1.1. Installing Promela/SPIN 9.4.1.2. Installing Test Generation Tools 9.4.2. Tool Configuration 9.4.2.1. Testsuite Setup 9.4.3. Running Test Generation 9.5. Modelling with Promela 9.5.1. Promela Execution 9.5.1.1. Simulation vs. Verification 9.5.2. Promela Datatypes 9.5.3. Promela Declarations 9.5.3.1. Special Identifiers 9.5.4. Promela Atomic Statements 9.5.5. Promela Composite Statements 9.5.6. Promela Top-Level 9.6. Promela to C Refinement 9.6.1. Model Annotations 9.6.1.1. Annotation Syntax 9.6.2. Annotation Lookup 9.6.3. Specifying Refinement 9.6.3.1. Lookup Example 9.6.4. Annotation Refinement Guide 9.6.4.1. LOG 9.6.4.2. NAME 9.6.4.3. INIT 9.6.4.4. TASK 9.6.4.5. SIGNAL 9.6.4.6. WAIT 9.6.4.7. DEF 9.6.4.8. DECL 9.6.4.9. DCLARRAY 9.6.4.10. CALL 9.6.4.11. STATE 9.6.4.12. STRUCT 9.6.4.13. SEQ 9.6.4.14. PTR 9.6.4.15. SCALAR 9.6.4.16. END 9.6.4.17. SUSPEND and WAKEUP 9.6.5. Annotation Ordering 9.6.6. Test Code Assembly 9.6.6.1. Scenario Generation 9.6.6.2. Test Code Generation 9.6.6.3. Test Code Deployment 9.6.6.4. Performing Tests 9.6.7. Traceability