SPINモデルチェッカ
その名前(Process Meta Language)が示すように、元来通信プロトコルの検証のために設計された言語である。検査対象であるシステムは非同期並行動作するプロセスの集まりとして記述される。C言語に似た文法を持ち、各プロセスの振る舞いを手続き的に記述する。プロセス間通信、非決定的な振る舞いを明示的に記述する文法要素を備えている。
コード内にアサーションをおくことができる。線形時相論理で記述される検証項目はモデル全体に関する性質を記述するのに対して、アサーションはそれが置かれた場所で満たすべき条件を記述する。