Specification and Verification of Concurrent Systems