A memory consistency model defines which executions of a program are allowed.
In other words, partitions the set of executions of a program into:
- executions—those that obey and
- Non- executions—those that disobey .
An implementation is a system that permits only executions of a program.
Some examples of memory consistency models: