Model checking
Overview
 
In computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

, model checking refers to the following problem:
Given a model of a system, test automatically whether this model meets a given specification.
Typically, the systems one has in mind are hardware or software systems, and the specification contains safety
requirements such as the absence of deadlock
Deadlock
A deadlock is a situation where in two or more competing actions are each waiting for the other to finish, and thus neither ever does. It is often seen in a paradox like the "chicken or the egg"...

s and similar critical states that can cause the system to crash
Crash (computing)
A crash in computing is a condition where a computer or a program, either an application or part of the operating system, ceases to function properly, often exiting after encountering errors. Often the offending program may appear to freeze or hang until a crash reporting service documents...

. Model checking is a technique for automatically verifying correctness properties of
finite-state systems.

In order to solve such a problem algorithm
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...

ically, both the model of the system and the specification are formulated in some precise mathematical language: To this end, it is formulated as a task in logic
Logic
In philosophy, Logic is the formal systematic study of the principles of valid inference and correct reasoning. Logic is used in most intellectual activities, but is studied primarily in the disciplines of philosophy, mathematics, semantics, and computer science...

, namely to
check whether a given structure
Structure (mathematical logic)
In universal algebra and in model theory, a structure consists of a set along with a collection of finitary operations and relations which are defined on it....

 satisfies a given logical formula.
The concept is general and applies to all kinds of logics and suitable structures.
 
x
OK