Systems and Software Verification: Model-Checking Techniques and Tools