The temporal logic assertion is compiled into state machine representation. Every path to the error state in this state machine represents a sequence of events that violates the assertion. To detect assertion violations, the state machine runs synchronously with the system and issues warnings whenever the error state is reached