Skip to Main Content
Industry is increasingly dependent on distributed systems. In order to prevent the users having to deal with unnecessary details, experts are going for languages specifically created for distributed system domain. Such systems are often considered to be complex. Assuring the correctness of these systems with traditional code reviews and testing is difficult as these verification methods deal with the high-level specification of the system. In order to prove that high-level specification is correctly implemented at the lower level, the compiler, which performs the translation, needs to be verified. Using formal methods, based on mathematics and formal logic, specification and verification have been discussed as a means of a solution. This paper identifies and analyses the available formalisms and techniques for verifying the correct operation of parallel and distributed systems.