(57)【要約】【課題】  製品及び設計に関する改善された複合的な検査プロセス及び手順を提供すること。【解決手段】  分散的演算を用いた回路内の１以上の到達可能な状態、及び１以上の特定のデータ構造を判別する方法は、多数の演算システムの第１のものにおいて、第１の回路区分を受ける。第１区分は、第１密度を有する第１の２進判定図（ＢＤＤ）に対応する。本方法は、第１区分内の固定点に到達するまで、第１ＢＤＤを用いて第１区分における第１の到達可能性分析を実行し、その分析の間に第１ＢＤＤのサイズが閾値を超えると、その第１ＢＤＤを破棄する。本方法は、第１ＢＤＤによるカバレッジを増やすために、複数の演算システムの内の第２のものと通信を行う。第２のものは回路の第２区分を受ける。第２区分は、第１密度より低い第２密度を有する第２ＢＤＤに対応する。第２のものは、第２ＢＤＤを破棄せずに第２ＢＤＤにて第２の到達可能性分析を実行する。【選択図】  図１
2004213619.tif 000002
【特許請求の範囲】
【請求項１】
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記情報は検査されるターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために１以上の処理を実行するところのＰＯＢＤＤデータ構造；及び
前記ＰＯＢＤＤデータ構造から前記第１状態群を受信するよう動作する境界モデル検査（ＢＭＣ）ツール要素であって、前記ＢＭＣツール要素は、前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して１以上の境界モデル検査処理を実行し、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのＢＭＣツール要素；
を備えることを特徴とするターゲット回路に関連する特性を検査する装置。
【請求項２】
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査されるターゲット回路内の特性を区別するところのステップ；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行するステップ；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行するステップであって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのステップ；
より成ることを特徴とするターゲット回路に関連する特性を検査する方法。
【請求項３】
ターゲット回路に関連する情報を受信する手段であって、前記情報は検査されるターゲット回路内の特性を区別するところの手段；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行する手段；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行する手段であって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところの手段；
を備えることを特徴とするターゲット回路に関連する特性を検査するシステム。
【請求項４】
ターゲット回路に関連する特性を検査するためのコンピュータ読み取り可能な媒体であって、
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査されるターゲット回路内の特性を区別するところのステップ；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行するステップ；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行するステップであって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのステップ；
を実行させるコードを含むことを特徴とするコンピュータ読み取り可能な媒体。
【請求項５】
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記情報は検査されるターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために１以上の処理を実行するところのＰＯＢＤＤデータ構造；及び
エラー状態に関連する経路を見分けるよう動作する補助データ構造であって、前記経路は、エラー状態に関連する初期状態と前記ＰＯＢＤＤデータ構造でエラーに遭遇した場所との間の関連性を反映するところの補助データ構造；
を備えることを特徴とするターゲット回路に関連するエラー状態を評価する装置。
【請求項６】
ターゲット回路に関連するエラー状態を評価する方法であって：
前記ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行するステップ；及び
エラー状態に関連する経路を見分けるステップであって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところのステップ；
より成ることを特徴とする方法。
【請求項７】
ターゲット回路に関連するエラー状態を評価するシステムであって：
前記ターゲット回路に関連する情報を受信する手段であって、前記情報は検査される前記ターゲット回路内の特性を区別するところの手段；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行する手段；及び
エラー状態に関連する経路を見分ける手段であって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところの手段；
を備えることを特徴とするシステム。
【請求項８】
ターゲット回路に関連するエラー状態を評価するためのコンピュータ読み取り可能な媒体であって：
前記ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行するステップ；及び
エラー状態に関連する経路を見分けるステップであって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところのステップ；
を実行させるコードを含むことを特徴とするコンピュータ読み取り可能な媒体。
【請求項９】
ターゲット回路に関連する特性を検査する装置であって：
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造より成り、前記情報は検査される前記ターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行することが可能であり、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路に関連する画像を、前記ＰＯＢＤＤデータ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けすることが可能であり、前記ＰＯＢＤＤデータ構造は、論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行することが可能であることを特徴とする装置。
【請求項１０】
ターゲット回路に関連する特性を検査する方法であって：
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行するステップ；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けするステップ；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行するステップ；
より成ることを特徴とする方法。
【請求項１１】
コンピュータ読み取り可能な媒体に含まれる、ターゲット回路に関連する特性を検査させるソフトウエアであって：
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行するステップ；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けするステップ；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行するステップ；
を実行させるコンピュータコードより成ることを特徴とするソフトウエア。
【請求項１２】
ターゲット回路に関連する特性を検査するシステムであって：
ターゲット回路に関連する情報を受信する手段であって、前記情報は検査される前記ターゲット回路内の特性を区別するところの手段；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行する手段；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けする手段；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行する手段；
を備えることを特徴とするシステム。
【請求項１３】
ターゲット回路に関連する機能を反映するよう動作する第１の２進判定図（ＢＤＤ）データ構造であって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところの第１のＢＤＤデータ構造；及び
前記ターゲット回路に関連する前記機能を反映するよう動作する第２のＢＤＤデータ構造であって、前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して構築され、前記修正は、前記第１のＢＤＤデータ構造よりも小さくなるように前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところの第２のＢＤＤデータ構造；
を備えることを特徴とする装置。
【請求項１４】
２進判定図（ＢＤＤ）を構築する方法であって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築するステップであって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところのステップ；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築するステップであって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところのステップ；
より成ることを特徴とする方法。
【請求項１５】
２進判定図（ＢＤＤ）を構築するためのシステムであって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築する手段であって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところの手段；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築する手段であって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを最小化しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところの手段；
を備えることを特徴とするシステム。
【請求項１６】
コンピュータ読み取り可能な媒体に含まれる、２進判定図（ＢＤＤ）を構築するためのソフトウエアであって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築するステップであって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところのステップ；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築するステップであって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところのステップ；
を実行させるコードを含むことを特徴とするソフトウエア。
【請求項１７】
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するシステムであって：
複数の演算システムを備え、前記複数の演算システムの内の第１のものは：
回路の第１区分を受信し、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応し；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行し；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄し；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行い；
前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行することを特徴とするシステム。
【請求項１８】
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別する方法であって：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信するステップであって、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応するところのステップ；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行するステップ；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄するステップ；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行うステップであって、前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行するところのステップ；
より成ることを特徴とする方法。
【請求項１９】
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するロジックであって、媒体内でエンコードされ：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信し、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応し；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行し；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄し；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行い；
前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行することを特徴とするロジック。
【請求項２０】
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するシステムであって：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信する手段であって、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応するところの手段；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行する手段；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄する手段；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行う手段であって、前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行するところの手段；
より成ることを特徴とする方法。
【請求項２１】
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのシステムであって：
前記回路内の１以上のラッチに対するＰＯＢＤＤを生成するよう動作する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）モジュール；
遷移関係（ＴＲ）モジュール；及び
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行するよう動作する分析モジュール；
を備え、前記遷移関係（ＴＲ）モジュールは、各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連するＴＲをグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成する；
ことが可能であることを特徴とするシステム。
【請求項２２】
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のための方法であって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成するステップ；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成するステップ；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行するステップ；
より成ることを特徴とする方法。
【請求項２３】
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのロジックであって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成し；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成し；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行する；
ことを特徴とするロジック。
【請求項２４】
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのシステムであって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成する手段；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成する手段；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行する手段；
を備えることを特徴とするシステム。
【請求項２５】
スケジュール法を利用して回路を検査するシステムであって：
１以上の区分化され順序付けられた２進判定図（ＰＯＢＤＤ）を生成するように集合的に動作する１以上のＰＯＢＤＤモジュールであって、各ＰＯＢＤＤは前記回路の状態空間の１以上の区分に対応し、前記区分における状態数及びノード数を有する１以上のＰＯＢＤＤモジュール；
各ＰＯＢＤＤの各区分の処理コストを判別するように集合的に動作する１以上のコストメトリックモジュール；及び
回路の準正式な検査に対するＰＯＢＤＤの区分けの処理予定を立てるように集合的に動作する１以上のスケジューリングモジュールであって、前記予定は、少なくとも部分的には、ＰＯＢＤＤの区分けの判別済み処理コストに準拠するところのスケジューリングモジュール；
を備えることを特徴とするシステム。
【請求項２６】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；及び
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；
より成ることを特徴とする方法。
【請求項２７】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から複数の特定の特性を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、複数の選択された特性の検査を試行するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用することで：
特に、検査するのに非簡易である回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第１集合；
特に、検査するのに適度な非容易性を有する回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第２集合；及び
特に、検査するのに比較的困難である回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第３集合；
を決定するために実行時間及びピークノード数を用いるステップ；
より成ることを特徴とする方法。
【請求項２８】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から１以上の特定の特性に関する第１集合を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、特性に関する第１集合を検査するステップ；
前記回路の複数の特性から１以上の特定の特性に関する第２集合を選択するステップ；及び
複数の特定の検査パラメータに関する複数の特定値の少なくともいくつかを利用して、特性に関する第２集合の検査を試行するステップ；
より成ることを特徴とする方法。
【請求項２９】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から１以上の特定の特性に関する第１集合を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、特性に関する第１集合を検査するステップ；
前記回路の複数の特性から１以上の特定の特性に関する第２集合を選択するステップ；
特性に関する第１集合を検査するために複数の特定の特性パラメータについての複数の特定値の内の特定の１つを選択するステップであって、複数の特定値の内選択されるものは、特に、回路の特性に関する第１集合の検査を可能にするところのステップ；及び
特性に関する第１集合を検査するために使用される複数の特定の検査パラメータの複数の特定値の内選択されたものを利用して、特性に関する第２集合の検査を試行するステップ；
より成ることを特徴とする方法。
【請求項３０】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；及び
特性分類の各々に関し、前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；
より成ることを特徴とする方法。
【請求項３１】
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性群を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；
特性分類の各々に関し、前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；及び
特性分類の全特性を検査するために特性分類に対応する複数の特定の検査パラメータの内複数の適切な値を、特性分類の各々に適用するステップ；
より成ることを特徴とする方法。
【請求項３２】
回路検査手順を終了するための方法であって：
回路に関する既に到達済みの１以上の第２状態から、回路に関する１以上の第１状態に達したことに従って、自動手回路検査手順を実行するステップであって、前記第１状態は時間と共に変化するレートで前記回路検査手順によって到達される所のステップ；
第１状態が回路検査手順で到達される特定のレートを反映する飽和点に自動的に到達するステップであって、前記特定のレートは近似的にゼロに等しいところのステップ；及び
飽和点に達したことに応答して、前記回路検査手順を終了するステップ；
より成ることを特徴とする方法。
【請求項３３】
回路を検査する方法であって：
回路の状態空間中の１以上の区分を生成するステップであって、各区分はあるサイズを有する表現内容に関連付けられるところのステップ；
前記回路を検査するために生成された区分の表現内容を利用して、生成された各区分の処理を開始するステップ；並びに
前記区分の処理中に、生成された区分の表現内容の１つのサイズが第１閾値を超える場合に：
前記区分から２以上の副次的区分を生成するために使用され得る、コスト関数に従って決定される少なくとも１つの分離変数を決定し；
決定された分離変数を利用して前記区分から、あるサイズを有する表現内容にそれぞれ関連付けられる２以上の副次的区分を生成し、
２以上の副次的区分の各々の処理を開始し；及び
副次的区分の各々の処理中に、前記副次的区分の表現内容のサイズが第２閾値を超える場合に、区分表現内容サイズを制限するために、前記副次的区分から更なる副次的区分を生成するステップ；
より成ることを特徴とする方法。
【請求項３４】
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）を生成するステップであって、各々は回路の状態空間内の１以上の区分に対応するところのステップ；
回路を検査するために：
暫定的な様式で表現され得るある公式又は公式の組合せを利用して各自表現され得る１以上の回路特性と回路を比較するモデル検査法；又は
後方到達可能性技法；
に従ってＰＯＢＤＤの区分を処理するステップ；及び
ＰＯＢＤＤの区分の処理中に、区分の少なくとも１対の間で通信を行うステップであっって、該通信は、区分対の内少なくとも一方の区分内で固定点に達するまで遅延される所のステップ；
より成ることを特徴とする回路検査のための方法。
【請求項３５】
回路に関する準正式な検査を行なう方法であって：
回路の状態空間に関する１以上の区分を生成するステップ；
準正式な検査手順について１以上の特定の特性を選択するステップであって、前記１以上の特定の特性の各々は：
区分が論理空間内で一様な分布を有すること；又は
前記１以上の区分の内の２以上の間で重複する構造的画像に関連する１以上の分布基準に、その区分が合致していること；
に従って選択されるところのステップ；及び
回路に関する準正式な検査について１以上の選択された特定の区分のみを処理するステップ；
より成ることを特徴とする方法。
【請求項３６】
回路の検査を行なう方法であって：
回路を検査するために第１回路検査手順を開始するステップであって、前記検査手順は、あるサイズを有する区分けされない順序付けられた２進判定図（ＯＢＤＤ）を用いるところのステップ；並びに
前記第１回路検査手順の間に、区分けされないＯＢＤＤのサイズが閾値を超える場合に：
前記題回路検査手順を終了し；
２以上の区分けされたＯＢＤＤ（ＰＯＢＤＤ）を生成するために、分離変数発見法に従って、１以上の分離変数を選択し；
区分けされないＯＢＤＤ及び１以上の選択された分離変数を利用して、前記回路の特定の部分空間にそれぞれ対応する２以上のＰＯＢＤＤを生成し；及び
前記回路を検査するために第２回路検査手順を開始するステップであって、前記検査手順は、生成された２以上のＰＯＢＤＤを使用するところのステップ；
より成ることを特徴とする方法。
【請求項３７】
回路を検査する方法であって：
回路を検査するために回路検査手順を開始するステップであって、前記回路検査手順は、複数の回路検査パラメータの内の複数のパラメータ値に従って実行されるところのステップ；
前記回路の状態空間の特定の区分に関連する回路検査手順の演算トレースを調査するステップであって、前記特定の区分は、前記特定の区分のサイズが比較的小さくなるように発見的手法に従って決定されるところのステップ；及び
前記演算トレースの調査結果を用いて、１以上の回路検査パラメータについての１以上の許容可能な値を決定するために、複数の回路検査パラメータの複数の特定値の内あるものの適切性を評価するステップ；
より成ることを特徴とする方法。
【請求項３８】
回路の状態空間についての複数の区分を回路検査手順のために生成するステップであって、各区分は、各自の有するサイズを表現するものにそれぞれ関連付けられる所のステップ；及び
１以上の第２の複数の区分と両立しない１以上の第１の複数の区分を分離するアルゴリズムを利用するステップであって、２つの特定の区分が互いに両立しないのは、前記２つの特定の区分各々の表現するサイズの全体が、前記２つの特定の区分の組合せについての結合された表現の結合サイズよりコンパクトである場合であり、前記アルゴリズムは、
複数の区分に関連付けられる従属的機能候補を互いに分離し；
他の従属的機能候補と独立な従属的機能候補各々を表現し；及び
複数の区分各々の非両立性を判別するために前記従属的機能候補を用いる；
ことによって、１以上の第１の複数の区分を分離するところのステップ；
１以上の分離された第１の複数の区分を用いて前記回路検査手順を実行するステップ；
より成ることを特徴とする回路を検査する方法。
【請求項３９】
回路を検査する方法であって：
前記回路を検査するために、回路を表現する遷移関係（ＴＲ）を生成することを少なくとも試みるステップであって、あるサイズを有する前記ＴＲは前記回路の状態空間に対応するところのステップ；
生成されたＴＲのサイズが特定の閾値を超えた場合に：
前記ＴＲを、前記状態空間の特定の部分空間に各々が対応する複数のＴＲ区分に機能的に分離し；
前記回路を検査するために、１以上の第１のＴＲ区分を用いて第１の到達可能性分析を実行し；及び
前記第１の到達可能性分析が特定の期間にて特定の状態数に到達しなかった場合に、前記回路を検査するための１以上の第２のＴＲ区分を用いて少なくとも第２の到達可能性分析を実行するステップ；及び
適切な流量地点に到達した場合に前記回路の検査を終了するステップ；
より成ることを特徴とする方法。
【請求項４０】
電子設計アプリケーション（ＥＤＡ）処理のための方法であって：
ＥＤＡ処理用のインスタンスを受信するステップ；
前記インスタンスから、前記インスタンスの機能的又は構造的な区分より成る少なくとも１つの副次的インスタンスを抽出するステップ；
特定のＥＤＡ解を求めるためのＥＤＡ処理に従って、前記特定のＥＤＡ回路を得るためのＥＤＡ処理に特に適用可能な1以上の処理パラメータについての1以上の特定値を用いて副次的インスタンスを処理するステップ；
前記副次的インスタンスの効率的なＥＤＡ処理を特に可能にする特定値の内の1以上の特定のものを識別するステップ；及び
前記インスタンスに関する1以上の他の副次的インスタンスを処理するために1以上の識別された値を使用するステップ；
より成ることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路の技術分野に関し、特に回路検査に関連する。
【背景技術】
【０００２】
集積回路（ＩＣ）の急増は、多くの装置、部品及びアーキテクチャに包含されるディジタルシステムの設計に関する要請を益々増加させている。ＩＣを含むディジタルシステム数は着実に増加し、広範な様々な製品やシステムで利用されている。それら各自のアプリケーションや環境で追加的なタスクを実行するために又は一層複雑な動作を行なわせるために、追加的な機能がＩＣで実現される。加えて、ＩＣのシステムパラメータは、最適な時間間隔でそれらの動作が実行されることを指示し、それは更なる動作も所与のクロックサイクルに収容されることを可能にするものである。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
概して、製品及び設計に関するこれらの厳しい要請は、より改善された複合的な検査プロセス及び手順を必要とすることになる。
【０００４】
一般に、検査は、ＩＣ又はディジタル要素が、意図されている機能を実行し得ることを保証するために行なわれる。別の場面では、検査は、選択された性質、挙動、又は特性が所与の対象の回路又はターゲット（ｔａｒｇｅｔ）回路に備わっているか否かを確認するために使用される。ＩＣ又はディジタル要素に関する不備や不正確さはシステム機能を制限し、及び／又は関連するアーキテクチャにおける深刻な動作不具合を招いてしまう。
【課題を解決するための手段】
【０００５】
本発明の特定の態様は、回路検査に従来付随していた不利益及び問題を低減又は除去し得る。
【０００６】
本発明の一態様によれば、ターゲット回路を検査する方法が与えられ、その方法はターゲット回路に関連する情報を受信することを含み、その情報は検査される特性を識別する。１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ：ｐａｒｔｉｔｉｏｎｅｄ  ｏｒｄｅｒｅｄ  ｂｉｎａｒｙ  ｄｅｃｉｓｉｏｎ  ｄｉａｇｒａｍ）は、その情報を用いて使用され、ターゲット回路内の部分空間に関連付けられる第１深度（ｄｅｐｔｈ）における第１の状態群を生成する。境界モデル検査は、第１の状態群を用いて実行され、ターゲット回路内の部分空間に関連付けられる第２深度における第２の状態群を生成する。第１の状態群は第２の状態群の基礎として使用され、第２深度が第１深度より大きくなるようにする。
【０００７】
本発明の一態様によれば、ターゲット回路に関連するエラー状態を評価する方法が提供され、当該方法は、前記ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップを含む。１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理は、前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いてを実行される。エラー状態に関連する経路が見分けられる。前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映する。
【０００８】
本発明の一態様によれば、ターゲット回路に関連する特性を検査する方法が提供され、当該方法は、ターゲット回路に関連する情報を受信するステップを含み、前記情報は検査される前記ターゲット回路内の特性を区別する。1以上の処理は、前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するため実行される。前記ターゲット回路に関連する画像は、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けされる。論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析が実行される。
【０００９】
本発明の一態様によれば、２進判定図（ＢＤＤ）を構築する方法が提供され、当該方法は、ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築するステップを含み、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築される。また、本方法は、前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築するステップを含み、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠する。
【００１０】
一態様では、分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別する方法は、複数の演算システムの内の第１のものにおいて、回路の第１区分を受信するステップを含む。前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応する。本方法は、前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行し、前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄する。本方法は、前記複数の演算システムの内の少なくとも１つの第２のものと通信を行う。前記複数の演算システムの内の第２のものは前記回路の第２区分を受信する。前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行する。
【００１１】
本発明の一態様では、１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のための方法は、前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成するステップ、及び各ＰＯＢＤＤに対して、ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し、ＰＯＢＤＤの２つの論理和区分を生成し、２つの論理和区分を閾値と比較し、  ２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て、及び前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成する。本方法は、前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行する。
【００１２】
本発明の一実施例では、スケジュール法を利用して回路を検査するシステムは、１以上の区分化され順序付けられた２進判定図（ＰＯＢＤＤ）を集合的に生成する１以上のＰＯＢＤＤモジュールを含む。各ＰＯＢＤＤは前記回路の状態空間の１以上の区分に対応し、前記区分における状態数及びノード数を有する。また、本システムは、各ＰＯＢＤＤの各区分の処理コストを集合的に判別する１以上のコストメトリックモジュールを含む。また、本システムは、回路の準正式な検査に対するＰＯＢＤＤの区分けの処理予定を立てるように集合的に動作する１以上のスケジューリングモジュールを含む。前記予定は、少なくとも部分的には、ＰＯＢＤＤの区分けの判別済み処理コストに準拠する。
【００１３】
本発明の特定の態様は、１以上の技術的利点を与える。本発明の一態様によれば、他の検査又はシミュレーション法よりも極めて高速の検査プロセスが与えられる。これは、いくつかの検査手法の統合による結果であり、それは、境界モデル検査（ＢＭＣ）処理に関連する開始点を改善するために組み合わせられる。これは、検査手法が、大きなシーケンス的深度を有する要素に実行されることを可能にし、及び例えば通信回路、カウンタを含む回路、及び有限状態マシーンに適用され得る。有限状態マシーンは、一般的には、ＢＭＣ処理を排他的に収容することが可能なものよりも非常に大きな深度を有する。
【００１４】
本発明の一態様による別の技術的利点は、ターゲット回路に関連する到達可能性パラメータを拡張することに関連する。与えられた検査手法を実行することによっては、新規の又は未探査の深い状態、或いは未調査の状態は、カバー又は網羅されない。そのような深い状態は、ターゲット回路の検査を実行するための、充足可能性（ＳＡＴ：ｓａｔｉｓｆｉａｂｉｌｉｔｙ）手順及びプロセス又は２進判定図（ＢＤＤ）処理を用いる際には一般に無視される。従って、本発明の教示するところにより提示されるシステムは、複雑な回路についての広範なアレイを収容することが可能であり、ＳＡＴ及びＢＤＤ法が制限されるような検査が、回路内で深く実行されることを可能にする。
【００１５】
本発明の一態様によれば、他の検査又はシミュレーション法よりも顕著に高速な検査手法が与えられる。これは、論理積におけるエラートレース処理とＰＯＢＤＤ法との統合の結果である。エラートレース処理は、エラー状態に対応する経路を速やかに見分けるために使用される情報を与える。改善された速度は、更に、検査手法が、大きなシーケンス深度又は複雑な回路を有する過剰な追加的要素について実行されることを可能にする。
【００１６】
本発明の一態様に関する別の技術的利点は、精度に関連する。エラー状態の識別に関連する多くの情報を判別することなしには、そのような識別は有意義でない。本発明によるアーキテックチャは、エラー状態に関連する演算を行ない、より正確な経路判別を速やかに与える。これは、補助データ構造の実現による結果であり、その構造は、エラートレースを実行し、及び遭遇するエラー状態に関する情報を収集するために使用される。従って、本発明の教示するところによりもたらされるシステムは、複雑な回路の広範にわたるアレイを収容することが可能であり、他の方法では制限されてしまうような場合でも、検査が迅速且つ正確に回路内に深く実行されることを可能にする。
【００１７】
本発明の一態様によれば、他の画像演算法よりも顕著に高速の画像演算法が与えられる。これは、区分けされた構造上で実行される手順の結果である。区分けされた構造は、別の順序の利用を実現化する。加うるに、画像の各部分集合はそれが完成する時点で転送されるので、ある部分集合が不具合を起こした場合でさえも、本方法は、困難であるとされていなかったいくつかの他の直交する部分集合を既に計算している。そのような手法は、部分的な画像分析を導き、ターゲット回路に関連する扱いづらい特性の部分的な検査を可能にする。これは、過剰に多い集積回路環境での検査ツールの実用的機能を高める。
【００１８】
本発明の一態様による別の技術的利点は、柔軟性又はフレキシビリティに関連する。本手法は、任意の形式のＢＤＤを利用する任意の正式な検査ツールに使用され得る。そのような柔軟性は、本手法が、ＢＤＤアプリケーションの広範なアレイに関する論理積にて実現されることを可能にする。加うるに、そのような手法は、ターゲット回路の検査手法を実行するアーキテクチャ及びシステムの様々な範囲を網羅することができる。更に、本手法は、ＰＯＢＤＤに準拠しない画像演算を並列処理するために使用され得る。
【００１９】
本発明の一態様によれば、別の演算手法よりも顕著に高速なディジタル分析が行なわれる。これは、最適な結果をもたらすことの可能なＢＤＤ検査プロセスの結果である。本発明は、チェックポイント手順を与え、それにより２つの閾値がマークされる。それら閾値はマイナー及びメジャー閾値として区別され、適切なＢＤＤ管理部がそれら各自のＢＤＤを適切なファイルに格納する。所与のＢＤＤの検査中にメジャー閾値に到達し、且つＢＤＤが更に減縮され得ないならば、別のパラメータを含む様々なＢＤＤ構成スクリプトが使用され得る。大きさが許容可能な制限を超えないスクリプトによるＢＤＤが使用され得る。このことは、ＢＤＤサイズが、例えば合成、検査、等価性検査又はシミュレーション等を含む任意のアプリケーション用に制御されることを可能にする。ＢＤＤサイズは、メジャー又はマイナー閾値に対応するＢＤＤに削減され得る。マイナー閾値をターゲットにしようとする場合には、大きなＢＤＤに向かうことはほとんど必要ない。ＢＤＤのサイズを削減するスクリプトは、多くの場合そのような場面で使用され得る。
【００２０】
本発明の一態様に関連する別の技術的利点は、その効用に関連する。本発明に関するアーキテクチャは、チェックポイント方式のＢＤＤ削減が迅速且つ正確に行なわれることを可能にする一方、設計者又はエンドユーザの側で最少のリソース及び労力しか消費しないようにする。また、これは、ＢＤＤ手順のリスタートを可能にする、閾値のマーク付けの結果でもある。再開処理は、マイナー閾値が、ＢＤＤ調査の第２の試みに使用されることを可能にする。加うるに、そのような概念は、ある機能を実行する又はディジタル情報を処理する仮想的な任意の集積回路環境に使用されることが可能である。
【００２１】
本発明の一態様に関連する更なる別の利点は、そのスケーラビリティ（ｓｃａｌａｂｉｌｉｔｙ）に関連する。本手法は、並列的処理を確立するために使用され得る。マイナーポイントが識別された後に、あるスクリプト内でいくつかのパラメータを変更している複数の形態が構成され得る。修正されたスクリプトは、これら所与のＢＤＤに関する最適なグラフを取得しようとするために、いくつかの装置で並列的に実行され得る。そのようなアプローチは、不具合を経験しない、アプリケーションを良好に実行させる蓋然性を有意に高めることができる。適切なスクリプトは、そのような最適な結果を生成するために各コンフィギュレーションについて使用される。
【００２２】
特定の態様は、区分化され順序付けられた２進判定図（ＰＯＢＤＤ）に準じた回路の検査に関する効率を増進する。特定の態様は、ＰＯＢＤＤに準拠した回路検査に関連する時間的要請を削減する。特定の態様は、ＰＯＢＤＤに準拠した回路検査に関連するメモリ要請を削減する。特定の態様は、ＰＯＢＤＤに準拠した回路検査に関連するメモリコストを削減する。特定の態様は、１以上の回路エラーが起こる場合に、非常に直接的な（ｓｕｐｅｒｌｉｎｅａｒ）速度向上性を提供する。特定の態様は、ＰＯＢＤＤに準拠した回路検査における空間的不具合の出現を減らす。
【００２３】
特定の態様は、状態空間を網羅する体系的方法を与える。特定の態様は、準正式な検査についての時間的及び空間的効率を増進する。特定の態様は、状態空間カバレッジの局在化が少なくなるように、状態空間カバレッジの改善された分散性を提供する。特定の態様では、連続的な時間スペクトル、メモリ及びカバレッジのトレードオフが可能である。特定の態様では、より有益でない区分は、スケジュール法によって無視される。特定の態様では、比較的簡易な状態のみが網羅されるが、一様な分散が少なくとも試行される。
【００２４】
特定の態様では、到達可能性分析は、非立方体に準拠した重複する緻密な又はコンパクトな（ｃｏｍｐａｃｔ）ＰＯＢＤＤを用いて実行される。特定の態様では、到達可能性分析が、立方体に準拠したＰＯＢＤＤよりも多くの一般的データ構造を用いて実行される。特定の態様は、到達可能性分析に関連するメモリ要請を削減する。特定の態様は、立方体に準拠したＰＯＢＤＤに関するＢＤＤサイズを指数関数的に削減する。特定の態様は組合せ的な検査を支援する。特定の態様はシーケンス回路の検査を支援する。
【００２５】
特定の態様は、状態空間を網羅する体系的方法を提供する。特定の態様は、準正式な検査についての時間的及び空間的効率を増進する。特定の態様は、状態空間カバレッジの局在化が少なくなるように、状態空間カバレッジの改善された分散性を提供する。特定の態様では、連続的な時間スペクトル、メモリ及びカバレッジのトレードオフが可能である。特定の態様では、より有益でない区分は、スケジュール法によって無視される。特定の態様では、比較的簡易な状態のみが網羅されるが、一様な分散が少なくとも試行される。
【００２６】
ある態様は、これら技術的利点の全部若しくは一部を備え、又は全く備えない。ある態様は、１以上の別の技術的利点を与え、その１つ又はそれ以上は、明細書、請求の範囲及び図面の記載から当業者に明白であろう。
【００２７】
本発明並びにその特徴及び効果についてのより充実した理解を図るため、添付図面に関連する以下の詳細な説明が参酌される。
【発明を実施するための最良の形態】
【００２８】
図１は、目標又はターゲット回路１２に関連する複数の状態を検査するシステム１０の概略ブロック図を示す。システム１０は、アルゴリズム要素１６を含む区分化され順序付けられた２進判定図（ＰＯＢＤＤ）データ構造１４を有する。更に、システム１０は、境界モデル検査（ＢＭＣ：ｂｏｕｎｄｅｄ  ｍｏｄｅｌ  ｃｈｅｃｋｉｎｇ）ツール要素２０と、ＰＯＤＤデータ構造１４と通信する設計情報部２４とを含む。システム１０は、一般的には、集積回路、ディジタル要素、処理構成要素又は検査手順や処理が行なわれる２進アーキテクチャ内で区分化され、又はそうでなければそれらに関連して動作する。加えて、システム１０は、情報又はデータのディジタル処理に関連する任意の装置、部品、ハードウエア、ソフトウエア、オブジェクト又は要素と協働して設けられる。
【００２９】
本発明の教示するところによれば、システム１０は、ターゲット回路１２の部分空間内に非常に深い深度に到達し得る検査プロセスを提供するよう動作する。ＰＯＢＤＤデータ構造１４と画像処理及び事前画像処理動作を含む分析とを用いることで、検証的に深い（ｐｒｏｖｅｎｌｙ  ｄｅｅｐ）選択された状態が識別される。これらの状態はＢＤＤフォーマットで表現され、関連する通常形式（ＣＮＦ：ｃｏｎｊｕｎｃｔｉｖｅ  ｎｏｒｍａｌ  ｆｏｒｍ）形態としてマッピングされる。ＣＮＦ形態は、機能強化された検査分析を始める開始状態の集合としてＢＭＣツール要素２０に与えられる。ＢＭＣツール要素２０は、ターゲット回路１２に関連する検査プロセスを行なうために（単独の状態からその動作を開始させる代りに）それらの開始状態を利用しながら境界モデル検査動作を実行する。単独の状態は、一般に、主に浅い（ｐｒｅｄｏｍｉｎａｎｔｌｙ  ｓｈａｌｌｏｗ）初期状態を表現する。既に深い開始状態を与えることで、ＢＭＣツール要素２０は改善された検査結果を得る、というのはそれがターゲット回路１２に一層深く達し得るからである。加えて、初期の深い状態は、最適時間間隔でＰＯＢＤＤデータ構造１４を用いて取得され、このことは、検査プロセスに関する効用の観点から非常に有利になる。
【００３０】
システム１０は、他の検査及びシミュレーション法よりも顕著に高速な検査構造を与える。これは、部分的には、いくつかの検査手法を統合することに起因し、それらの手法は境界検査動作に関連する開始点を改善するために組み合わせられ得る。ある実施例では、そのような検査法は、大きなシーケンス深度を有する要素にとって特に有利であり得る。
【００３１】
また、システム１０はターゲット回路１２に関連する到達可能性（ｒｅａｃｈａｂｉｌｉｔｙ）パラメータをも拡張する。ターゲット回路１２内の新たな又は未探査の深い状態は、或いは調査されない状態は、システム１０ではカバーされない又は網羅されない。所与のターゲット回路の検査を実行するために、深い状態は、一般的には充足可能（ＳＡＴ）手順で、又は２進判定図（ＢＤＤ）処理で無視される。システム１０はより多くの完備な分析を収容することが可能であり、検査が、回路内で深く実行されることを可能にするが、そこではＳＡＴやＢＤＤ法は制限される。一般的には、システム１０のアーキテクチャは、シミュレーションと、検査手法と、より複合的な又は複雑な分析に不十分な又は不適切な方法との間のギャップを橋渡しするよう動作する。同時に、システム１０は、確認手順に関連する待ち時間を顕著に減少させる。
【００３２】
深度は、ユーザが求めるものに依存する正確な深度又は近似的な深度であり得る。近似的な深度は実際の深度に関する単なる上限である。状態の深度を算出するために、以下の動作が実行される。ユーザは一群の状態ｓ＿０から始め、所与のウインドウｗ，ｗ’が想定され、ここでｗ’はｗの相補的な対応物である。ｓ＿０を基本集合又はベースセットと呼ぶこととし、以下の動作が実行される：
１．  ベースセットに関する画像処理及びｓ＿１の取得；
２．  ウインドウｗ’内でｓ＿１に関する事前画像処理及びプレｓ＿１（ｗ’）の取得；
３．  プレｓ＿１（ｗ’）に関する画像処理（ウインドウｗの下で）及びｓ＿１’の取得；
４．  そのウインドウ外から到達不可能なウインドウｗにおける状態集合を反映するｓ＿１”＝ｓ＿１−ｓ＿１’ｓ＿１”の算出。ｓ＿１”は更なる深度の状態を計算するための新たな開始点（ベースセット）となる。
【００３３】
一般に、ステップ１−４は適切に反復され、徐々により深い状態を与えることが可能である。これは、ウインドウｗ内で算出されたような所与の深度の状態を考慮に入れている。適切であれば、その深度が何らかの最少の“ｄ”である状態を包含するよう適切に修正されることが可能であり、長さ“ｄ”の経路はあるウインドウから別のものに移る。これは、画像／プレ画像の各ステップの間に深さが更新される集合又はセットを維持することによって達成され得る。何らかの状態の深度の走行数を維持するいくつかの手法が存在し得る。この計算を行なう簡易な方法は、到達可能性が幅優先法（ｂｒｅａｄｔｈ−ｆｉｒｓｔ  ｍａｎｎｅｒ）で行なわれる場合になされ得るものである。各区分ｗ＿１，．．．，ｗ＿ｋに関し、上記手順が適用され、初期状態から始まる縦横の又は交差する経路（ｃｒｉｓｓｃｒｏｓｓ  ｐａｔｈ）によって得られる場合でさえも、ある状態の実際の深度を反映しながら計算が実行され得る。
【００３４】
ターゲット回路１２は、所定の又は意図される機能に従ってそれが動作することを確認するためにテストされる電子的又はディジタル的な対象物である。ターゲット回路１２の部分空間の整合性、有効性、又は設計仕様は、ＰＯＢＤＤデータ構造１４を用いて分析される。ターゲット回路１２は、論理ゲート、カウンタ、インバータ、バッファその他適切なデバイスを含む任意の関連回路、部品、又はターゲット回路と共に協働し又は相互作用することの可能なオブジェクトを包含し得る。また、ターゲット回路１２は、他の適切な装置、部品、アーキテクチャ、回路配置、ハードウエア、ソフトウエア、オブジェクト又は検査環境下で２進データやディジタル情報を処理することの可能な要素であり得る。ターゲット回路１２は何らかの特性を含む（又はそれを実行し得る）ように適切に設計される。「特性（ｐｒｏｐｅｒｔｙ）」なる語は、本明細書で使用されているように、ターゲット回路１２に関連付けられる任意の能力、特徴、操作、動作、又は挙動を包含する。動作時にあっては、それが設計された特性や特徴を保持すること、又は指定された動作を適切に実行することを保証するために、ターゲット回路１２は検査され、或いは有効化される。
【００３５】
ＰＯＢＤＤデータ構造１４は、２進又はディジタル環境でＢＤＤ要素の区分化を実行するよう動作し得る要素である。ＰＯＢＤＤデータ構造１４は、操作に関する論理関数を表現したものである。ここに言及されるように、ＰＯＢＤＤデータ構造１４は、適切であるならば、区分化され減縮され順序付けられた２進判定図（ＰＲＯＢＤＤ：ｐａｒｔｉｔｉｏｎｅｄ  ｒｅｄｕｃｅｄ  ｏｒｄｅｒ  ｂｉｎａｒｙ  ｄｅｃｉｓｉｏｎ  ｄｉａｇｒａｍ）又はＢＤＤデータ構造（区分化される可能性はある）を包含し得る。ＰＲＯＢＤＤ及びＰＯＢＤＤなる語は、可換であり、それらのアプリケーションを説明する際に（場合によっては簡略化のため）適切な様々な形式で一般的に使用される。ＰＢＤＤデータ構造１４は、設計者情報２４を受信し、設計者情報２４に基づいて第１群の状態を抽出するためにターゲット１２に関して予備的分析を行なう。サンプルされた部分空間からの第１群の状態は、ＢＭＣツール要素の能力を増大させる或いは強化するために使用され得る。ＰＯＢＤＤデータ構造１４は、ターゲット回路１２に関連して選択された特性を評価するために、アルゴリズム要素１６に包含されている１以上のアルゴリズムを起動する。第１群の状態は、ＢＭＣツール要素が、ターゲット回路１２内に深く伸びることを可能にする。
【００３６】
ＰＯＢＤＤは、一般的には正準（ｃａｎｏｎｉｃａｌ）であり、それ故に複合的等価的な検査に使用され得る。ＰＯＢＤＤは、シーケンス回路検査用の到達可能性分析に順次適用され得る。可到達状態集合はＰＯＢＤＤとして表現される。これは、所与の時間間隔の間に対応するメモリ内で１つの区分のみを維持することで、メモリ要請を最小化する。加えて、可到達アルゴリズムを別々に用いて各区分について固定点演算が実行され、そのアルゴリズムは、ＰＯＢＤＤデータ構造１４により使用されるＰＯＢＤＤプロトコルに関連して、アルゴリズム要素１６内に包含され得る。
【００３７】
ＰＯＢＤＤデータ構造１４は、一般的には検査処理で使用される他の手法よりも顕著に高速である。更に、ＰＯＢＤＤデータ構造１４の区分化された構造は、緻密又はコンパクト（ｃｏｍｐａｃｔ）であり、より簡易な並列処理を可能にする。加えて、ＰＯＢＤＤデータ構造１４は、動的な区分化を行ない、メモリの機能低下を回避し、あるアプリケーションではその機能低下は「メモリ暴走又は不具合（ｍｅｍｏｒｙ  ｂｌｏｗｕｐ）」としても言及され得る。ＰＯＢＤＤデータ構造１４は、ターゲット回路１２内の膨大な状態を網羅することができ、更に、相互作用する有限状態マシーンの緩やかに接続された複数セット（ｌｏｏｓｅｌｙ  ｃｏｕｐｌｅｄ  ｓｅｔｓ）に設計内容を分割する。
【００３８】
実施例の動作に関しては、設計者及び製造者は、試験又は検査される特性、特徴、動作又は挙動を識別する何らかのプログラムをターゲット回路１２に書いている。特性又は特徴は、それがＰＯＢＤＤデータ構造１４に通知される前に特定の構文で適切に書き込まれる。プログラムはその後にＰＯＢＤＤデータ構造１４に通知され、ＰＯＢＤＤデータ構造１４はターゲット回路１２にて指定された特性を検査する。ＰＯＢＤＤデータ構造１４は、その後に第１群の状態を生成し、ＢＤＤフォーマット内でその第１群を表現し、ＢＭＣツール要素２０に転送されるようにＢＤＤフォーマットをＣＮＦ形態にマッピングする。
【００３９】
ＣＮＦは、条項又はクローズ（ｃｌａｕｓｅ）の論理積であり、クローズは属性値又は属性値の論理和である。｛ＡＮＤ，ＯＲ｝の接続部を有する論理表現は、何らの接続も否定されず、どのＡＮＤ接続もＯＲ接続によって支配されないならば、論理積の通常形式である。例えば、（色＝赤  又は  色＝緑）且つ（形状＝四角形）は、ＣＮＦの形態である。この形式における論理表現は、クローズのＡＮＤとして表現され、その各々は１以上のリテラル（ｌｉｔｅｒａｌｓ）のＯＲである。また、ＣＮＦの理論は、論理和の論理積としても考えられる。各論理和は、肯定的なリテラル及び否定的なリテラルを含むクローズとして表現され得る。変数は汎用的に定量化される。論理プログラミングの場合には（プロローグ（Ｐｒｏｌｏｇ）、フリル（Ｆｒｉｌ）等）、センテンスをコンピュータが収容し得るステートメントに変換し得ることが有利である。ステートメントの論理プログラミングは、ホーンクローズ（ｈｏｒｎ  ｃｌａｕｓｅ）の形式を採用することができ、そのクローズは特に簡易な構造を有する条件付のセンテンスである。総ての命題の論理センテンスは、論理積の通常形式でのセンテンスに等価であることが示され得る。
【００４０】
アルゴリズム要素１６内で選択されたアルゴリズムを起動する又は実行することで、ＰＯＢＤＤデータ構造１４は、回路アーキテクチャ又はコンフィギュレーションの全体を眺めることなしに、ターゲット回路１２内を選択的に深く探査し得る。回路要素全体を眺めることは、検査プロセスを顕著に遅くする。その代りに、アルゴリズム要素１６が起動され、深淵形式（ｄｅｅｐ  ｍａｎｎｅｒ）で複数状態の小部分（部分空間内）を評価するために、ターゲット回路１２内の所定の場所が調査される。
【００４１】
アルゴリズム要素１６は１以上のアルゴリズムを包含するデータ処理オブジェクトであり、そのアルゴリズムは、特定の又は指定された特性がターゲット回路１２内で調査又は検査されることを可能にする。アルゴリズム要素１６は、特定の処理要請又は回路配置に従って、ＰＯＢＤＤデータ構造１４内に包含され、或いはその外部に設けられる。加えて、アルゴリズム要素１６は他の外部要素と通信することが可能であり、その外部要素は、ターゲット回路１２内の部分空間を検査するために使用される１以上の命令又は特徴を与える。更に、アルゴリズム要素１６は、ターゲット回路１２に関連する１以上の特性を確認するために、設計者情報２４を直接的に受信し得る。また、設計者情報２４は、検査プロセスに委ねられる回路又は要素の種別を包含する又は指定し得る。アルゴリズム要素１６は、ＰＯＢＤＤデータ構造１４で実行される検査動作を支援し得る任意の適切なハードウエア、ソフトウエア、オブジェクト、又は要素を包含し得る。
【００４２】
実施例及び教示内容を説明するために、ターゲット回路１２の部分空間に関連する選択された特性を検査する場合に使用され得るいくつかのアルゴリズムを更に説明することが有益であろう。論理関数処理のための多くの演算は、ＯＢＤＤにより表現される関数に関して効率的に実行され得る。例えば、その基本的処理のいくつかは次の通りである：
１．評価。ＯＢＤＤに関し、ｆ及び入力ａに関するＧは、その値ｆ（ａ）を計算する。
【００４３】
２．減縮。ＯＢＤＤに関し、Ｇは等価的な減縮されたＯＢＤＤを算出する。
【００４４】
３．等価試験。ＯＢＤＤにより表現される２つの関数が等しいか否かを検査する。
【００４５】
４．充足可能性（ｓａｔｉｓｆｉａｂｉｌｉｔｙ）問題。問題に含まれるものは次のとおりである：
−充足可能性。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力ａを見出す、又はそのような入力が存在しないことを出力する。
【００４６】
−ＳＡＴカウント。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力数を計算する。
【００４７】
５．合成（適用とも言及される）。ＯＢＤＤによって表現される関数ｆ及びｇに関し、Ｇは、Ｇ内に
【００４８】
【数１】
2004213619.tif 000003
に関する表現を含み、ここで
【００４９】
【数２】
2004213619.tif 000004
は２進論理演算（例えば、Λ）である。
【００５０】
６．置換（交換とも呼ばれる）。
【００５１】
−定数による置換。ＯＢＤＤにより表現される関数ｆ、変数ｘｉ、及び定数ｃ∈｛０，１｝に関し、ｆ｜ｘｉ｜＝ｃに対するＯＢＤＤを計算する。
【００５２】
−関数による置換。ＯＢＤＤにより表現される関数ｆ及びｇ、変数ｘｉに関し、ｆ｜ｘｉ｜＝ｇに対するＯＢＤＤを計算する。
【００５３】
７．一般的定量化及び実際的な定量化。ＯＢＤＤにより表現されるｆ及び変数ｘｉに関し、それぞれ
【００５４】
【数３】
2004213619.tif 000005
を満たすＯＢＤＤを計算する。
【００５５】
ＯＢＤＤパッケージでは、通常的には、減縮したＯＢＤＤのみが表現されるように、演算負担軽減は他の演算の中に統合される。ＯＢＤＤの多くのアプリケーションは、回路として与えられる関数に関する。従って、１つの重要な処理は、回路により与えられる関数についての演算であり、それは通常的にはその回路に関する記号を用いたシミュレーションで実行される。これは、入力変数を表現する関数についてのＯＢＤＤが構築されることを意味する。これは容易である、というのは、その関数ｘｉに関するＯＢＤＤは、０後継部（０−ｓｕｃｃｅｓｓｏｒ）としての０シンク（０−ｓｉｎｋ）及び１後継部としての１シンクと共にｘｉでラベル付けされたノードのみから成るためである。回路はあるトポロジ的順序で評価され（各ゲートは、先行する総てのものが考察された後に考察される）、演算は各ゲートについてなされる。演算は、合成操作を用いて入力での関数を表現するＯＢＤＤを結合することによる、出力における関数表現である。
【００５６】
別の可能性は、所与の回路がより大きなブロックを形成することである。そのような場合には、ＯＢＤＤは、各ブロックによって計算される関数について計算され、関数による処理置換と共にＯＢＤＤを結合する。算出されるＯＢＤＤの場合には、２つの回路により表現された関数に関し、等価性について回路を検査するためにＯＢＤＤに関する等価的な処理が行なわれる。
【００５７】
論理照合のようなアプリケーションでは、考察される関数についての署名（ｓｉｇｎａｔｕｒｅ）が計算される。署名は、効率的に算出されることの可能な及び異なる関数については異なっているような関数特性である。署名は所与の関数が異なっていることを検出するために使用され得る。非常に簡易な署名は、ある関数の入力を満たす数である。ＳＡＴカウントの処理は、それを算出するため及び適切であれば他の署名を算出するために使用され得る。
【００５８】
ＢＭＣツール要素２０は、ターゲット回路１２についての境界モデル検査処理を実行するための要素である。ＢＭＣツール要素２０は、ＰＯＢＤＤデータ構造１４から情報を受信し、ターゲット回路１２に関する検査を実行するためにその情報を使用する。ＢＭＣツール要素２０は、準正式な（ｓｅｍｉ−ｆｏｒｍａｌ）検査法を使用し、更に、ＰＯＢＤＤデータ構造１４により与えられる第１の状態群を用いることで機能強化され得る。ＢＭＣツール要素２０は、適切な境界モデル検査を実行するためにＳＡＴ技法を使用する。境界モデル検査では、対象とする状態遷移システムが、関心のある状態に到達する状態遷移の有限シーケンスを実現し得る場合に、充足可能な論理構造が構築される。ＢＭＣツール要素２０は、任意の適切な装置、部品、ハードウエア、ソフトウエア、オブジェクト、又は要素を包含し、それらはターゲット回路１２の選択された部分空間が検査又は検証されるように１以上の境界検査処理又は演算を実行し得るものである。
【００５９】
また、ＢＭＣツール要素２０は、単独の初期状態の代りに第１群の状態を利用し得るように適切に修正され得る。これは、システム１０がターゲット回路１２内で検証的に深い部分空間に到達することを可能にする。従って、ＢＭＣツール要素２０内のプログラムの容量は、検証プロセスを改善するように、効率的に強化され得る。ＢＭＣプログラムが実行された後で、隣接するセグメントはしらみつぶしに検査され、ターゲット回路１２に関する適切なサンプリングがなされるようにする。ターゲット回路１２の部分空間をサンプリングすることを継続するか否かの判定は、エンドユーザに委ねられ、又はＢＭＣプログラム属性によって制御される。
【００６０】
教示内容及び実施例を説明するため、ＰＯＢＤＤ、ＰＲＯＢＤＤ及びＢＤＤ処理に関連するいくつかの原理及び概念が以下に与えられる。与えられる説明は、区分化ＢＤＤ技法に関連する幾分複雑な理論の理解を支援するためのみに行なわれる。その説明は、システム１０の任意の要素の動作を限定するように解釈されるべきではない。以下の説明は、例示のみを目的としていること、及びＰＯＢＤＤデータ構造１４により実行され得る又は区分化処理又は検査プロセスに包含される任意の要素で実行され得る他の任意の適切な処理内容を限定するように解釈されるべきでないことを認識することが不可欠である。
【００６１】
区分化ＲＯＢＤＤを説明するために、以下の例を考察することが有益である。ｎ入力Ｘｎ＝｛ｘ１，．．．，ｘｎ｝について定義される論理関数
【００６２】
【数４】
2004213619.tif 000006
を想定する。ｆの区分化ＲＯＢＤＤ表現Ｘｆは次のように定義される：
Ｘｎ上で定義される所与の論理関数
【００６３】
【数５】
2004213619.tif 000007
に関し、ｆの区分化ＲＯＢＤＤ表現Ｘｆは、ｋ個の関数対の組
【００６４】
【数６】
2004213619.tif 000008
であり、ここで、１≦ｉ≦ｋに関して
【００６５】
【数７】
2004213619.tif 000009
であり、Ｘｎ上で定義され、以下の条件を満足する：
１．
【００６６】
【数８】
2004213619.tif 000010
は、１≦ｉ≦ｋに関して、可変順序πｉを有するＰＯＢＤＤとして表現される。
【００６７】
２．ｗ１＋ｗ２＋．．．＋ｗｋ＝１。
【００６８】
３．１≦ｉ≦ｋに関して、
【００６９】
【数９】
2004213619.tif 000011
である。
【００７０】
この例における＋及びΛは、それぞれ論理的な和（ＯＲ）及び積（ＡＮＤ）を表現する。集合｛ｗ１，．．．，ｗｋ｝はＷで記される。
【００７１】
各ｗｉは、ウインドウ関数として言及される。直感的には、ウインドウ関数ｗｉは、ｆが定義されている論理空間の部分を表現し得る。総てのペア
【００７２】
【数１０】
2004213619.tif 000012
は、関数ｆの区分化を表現する。この例では、「区分化（ｐａｒｔｉｔｉｏｎ）」なる語は、複数の区分けが分離しなければならない意味に使用されるものではない（重複しても良い）。（上記に与えられている）条件１−３に加えて、ｉ≠ｊに関してｗｉΛｗｊ＝０ならば、それらの区分は直交している。
【００７３】
【数１１】
2004213619.tif 000013
の各々は、通常の意味での区分けとして考察される。
【００７４】
区分化ＰＯＢＤＤを構築する場合に、区分化ＰＯＢＤＤの実効性又はパフォーマンスは、一般に、その関数がコンパクトに表現され得る論理空間の実効的な区分けを生成する能力に依存する。論理空間の適切な区分けを見出すことは、区分化ＰＯＢＤＤ表現に関する核心的事項である。ここに説明されるものは発見的な例（ｅｘａｍｐｌｅ  ｈｅｕｒｉｓｔｉｃｓ）であり、それらはコンパクトな直交する区分化ＰＯＢＤＤを生成するのに効果的である。提示される手法では論理ネットリスト（ｎｅｔｌｉｓｔ）が使用されるが、説明される技法は汎用的であり、任意の代替的な論理演算シーケンスに使用される又は拡張されることが可能である。
【００７５】
ＢＤＤ区分化法の例では、ウインドウ数が事前に又はその都度（動的に）決定される。ウインドウｗｉが決定された後に、ウインドウｗｉに対応する論理空間内でＦを構成することで、それに対応する区分化ＲＯＢＤＤが得られる。区分化では、ある関数Ｆに関するＢＤＤ、分解されたＢＤＤ再表現物（即ち、入力変数によるものではないが、所与のターゲット関数ＦについてＢＤＤを構築するプロセスで生成されるいくつかの擬似的な入力変数によるもの）が考察される。Ｆに関して区分化ＢＤＤを作成するために、関連する分解されたＢＤＤが、その区分化を与えるために分析される。この区分化判別は一般的に行なわれる、というのは分解ポイントΨ１，．．．，Ψｋで表現されるＦに関して分解されたＢＤＤは構築されないからである。分解されたＢＤＤから、Ｆに関する区分化ＢＤＤは、以下の３つの方法で形成される：
（１）入力変数を用いる区分化。入力変数の数が動的に変更される又は所定の定数に設定され得る。
【００７６】
（２）「内部（ｉｎｔｅｒｎａｌ）」変数を用いる区分化、即ち入力変数でない変数。そのような変数は、内部のゲートで導入される擬似的変数（ｐｓｅｕｄｏ−ｖａｒｉａｂｌｅｓ）であり得る。
【００７７】
（３）１及び２の適切な組合せを利用する区分化。
【００７８】
目下のフィルタリング形式の検査プロセスにおける任意の所与の時点で、分解された表現はｆｄ（Ψ，Ｘ）によって表され、ここで、Ψ＝｛Ψ１，．．．，Ψｋ｝は分解集合と呼ばれ、典型的には、ナイーブカット（ｎａｉｖｅ  ｃｕｔ）又はスマートカット（ｓｍａｒｔ  ｃｕｔ）プロセスによって選択された内部カットセットに対応し、
【００７９】
【数１２】
2004213619.tif 000014
の各々は分解ポイントである。Ψｂｄｄ＝｛Ψ１ｂｄｄ，．．．，Ψｋｂｄｄ｝が、分解ポイントのＲＯＢＤＤを包含する配列又はアレイを表現するものとする、即ち、
【００８０】
【数１３】
2004213619.tif 000015
の各々が、主要な入力変数に加えて（可能性のある）他の
【００８１】
【数１４】
2004213619.tif 000016
による対応するＰＯＢＤＤ
【００８２】
【数１５】
2004213619.tif 000017
を有し、但し、
【００８３】
【数１６】
2004213619.tif 000018
である。同様に、Ψｉｂｄｄｗｉ＝の配列はΨｉｂｄｄｗｉによって表現され得る。ｆｄ（Ψ，Ｘ）におけるΨｉの構成［？］は、
【００８４】
【数１７】
2004213619.tif 000019
により示され、ここで、
【００８５】
【数１８】
2004213619.tif 000020
である。ｆｄ（Ψ，Ｘ）のベクトル分解は、
【００８６】
【数１９】
2004213619.tif 000021
により示され、Ψｉのｆｄへの一連の構成を表現する。
【００８７】
所与のウインドウ関数ｗｉ、分解表現ｆｄ（Ψ，Ｘ）及びｆのＲＯＢＤＤ配列Ψｂｄｄの下で、分解表現の区分化を考察する場合に、ｆｉは、ｆｉ＝ｗｉΛｆｉを表現するＲＯＢＤＤがｆより小さくなるように求められる。立方体だけであるところの総てのｗｉはこの要請を充足し得ることが、証明され得る。
【００８８】
所与のｆｄ、Ψｂｄｄ、及びｗｉｓに関し、余因子（ｃｏｆａｃｔｏｒ）Ψｗｉ及びｆｄｗｉが形成される。ＦｄｗｉにてΨｂｄｄｗｉを構成することによって、区分化関数ｆｉ＝ｆｗｉｆｉ＝ｆｗｉが得られる。所与の一群のウインドウ関数ｗｉの下で、ｆの区分化ＲＯＢＤＤｘｆは、
【００８９】
【数２０】
2004213619.tif 000022
によって与えられる。上記の定義が定義１の総ての条件を満足するのを確認することは一般に容易である。
【００９０】
ｗｉが立方体であるならば、ｆｉは、ｆについてのＲＯＢＤＤより小さなサイズを有する。また、ｗｉを表現するＲＯＢＤＤはｋ個の内部ノードを有し、ここでｋはｗｉ内のリテラル数である。ｗｉ及びｆｗｉは互いに素の関係（ｄｉｓｊｏｉｎｔ  ｓｕｐｐｏｒｔ）を有するので、
【００９１】
【数２１】
2004213619.tif 000023
である。また、ｆｉを構成する各々の中間結果は、ｆを構成するものよりも小さく、中間的なピーク的なメモリ要請も少なくなる。これは、ｆとｆｉが異なる変数順序を有する場合であって動的な変数再順列化を行なう場合には成立しない。実際には、動的な変数再順列化は区分化の場合における一層小さなグラフにて処理されるため、それは更に効果的である。
【００９２】
ウインドウ関数がキューブ又は立方体よりも複雑な関数ＰＩである場合には、ｆｉ＝ｆｗｉが使用される。ｆｗｉはｗｉに関するｆの一般化された余因子である。ｗｉに関するｆの一般化された余因子は、一般的には、ｆよりも充分に小さい。しかし、想定される例では、ｉ番目の区分化ＰＯＢＤＤの大きさ
【００９３】
【数２２】
2004213619.tif 000024
は、最悪の場合に０（｜ｗｉ‖ｆｉ｜）であり得る。これを回避するために、一般的なウインドウ関数を用いる場合に、一般的には小さいｗｉｓが使用される。
【００９４】
ウインドウ関数の選択に関し、所与のウインドウ関数から区分化関数を構築する手法を決定した後に、適切なウインドウ関数を取得する方法が評価される。その方法は、２つのカテゴリに分解されることが可能であり、それらは：先験的選択と「探索的（ｅｘｐｌｏｓｉｏｎ）」選択である。
【００９５】
先験的区分化では、所定数の主要な入力（ＰＩｓ）が区分化に選択される。‘ｋ’ＰＩｓに関する区分化を決定すると、２ｋの区分けが形成され、それらは変数の２進割当総てに対応する。例えば、ｘ１，ｘ２に関する区分化を決定すると、４つの区分けが形成される：
【００９６】
【数２３】
2004213619.tif 000025
。この種の所与のウインドウ関数に関し、区分化ＲＯＢＤＤが形成されることが可能であり、それらはモノリシックＲＯＢＤＤより小さいことが保証される。所与の時点で唯１つの区分化がメモリ内に存在することを必要とするので、選択された空間内で成功する可能性が高い。メモリの減縮は大きく、総ての区分化を処理するのに要する時間における全体的な減縮によっても達成される。
【００９７】
別の区分化を形成する際に独立して生じる冗長性を最小化しつつ、達成される区分化を最大化するような変数が選択されるべきである。これは、多くの装置及び攻略法の基本的原理を反映する。変数ｘに関する関数ｆを区分化することのコスト（ｃｏｓｔ）は、
ｃｏｓｔｘ（ｆ）＝α［ｐｘ（ｆ）］＋β［ｒｘ（ｆ）］          （２）
により定義され、ここでｐｘ（ｆ）は区分化因子を表現し、
【００９８】
【数２４】
2004213619.tif 000026
により与えられ、ｒｘ（ｆ）は冗長性因子を表現し、
【００９９】
【数２５】
2004213619.tif 000027
により与えられる。２つの区分化の良好でないものが小さく且つ同様である場合にはより低い区分化因子が有利であり、２つの区分けを作成する際に包含される作業全体が少ないことを示すので、より低い冗長性因子が有利である。より低い全体的なコストを有する変数ｘが、区分化に選択される。
【０１００】
所与の関数Ｆのベクトル及び変数ｘにつき、区分化のコストは、
【０１０１】
【数２６】
2004213619.tif 000028
として定義される。
【０１０２】
ＰＩは区分化ｆｄ及びΨのそれらのコストに関して増加する順に計数され、最良の‘ｋ’（ここで、‘ｋ’はユーザにより指定された所定の数である）も選択される。同様なコスト関数を利用して、ＰＩ変数が選択され、区分化ＲＯＢＤＤを作成するためにＰＩで表現されるΨｉｂｄｄのような擬似的変数も選択される。この例の場合には、余因子演算は、立方体でないウインドウ関数についての一般化された余因子演算になり得る。この種の選択は、総てのＰＩがｆｄ及びΨに関するそれらの区分化のコストに従って等級付けされ、静的（ｓｔａｔｉｃ）区分選択と呼ばれる。
【０１０３】
或いは、動的区分化法が使用され、最良のＰＩ（例えば、ｘ）がｆｄ及びΨに基づいて選択され、以後のＰＩは、ある区分におけるｆｄｘ及びΨｘ並びに別の区分におけるｆｄｘ及び
【０１０４】
【数２７】
2004213619.tif 000029
に基づいて再帰的に選択される。動的区分化法は余因子の指数を必要とし、場合によってはコスト的に高価で使用できない。関心のある値のみがｆｄ及びΨｉｂｄｄｓの余因子のサイズであることを用いて、コストを幾らか減らすことが可能である。｜ｆｄｘ｜の上限値は、ｆｄのＲＯＢＤＤを横切り又は検索し、ｘに対応する変数ｉｄを有するノードに遭遇すると常にｘ＝１ブランチをとることによって、算出される。本方法は、この手法でＲＯＢＤＤを横切ることで取得されるＢＤＤが減少しない場合には、正確なカウント値を与えない。そのような実現化の１つの利点は、形成される新たなノードを何ら必要とせず、その横断又は検索が比較的速やかなことである。
【０１０５】
区分化は、区分け数が動的に選択されるようになされ得る。ある場合には、ＢＤＤ不具合の時点毎に、ＢＤＤ不具合が克服されたと判定されるまで、区分化が、変数を分離しながら動的に実行され、１つの増分で選択される。
【０１０６】
区分化を用いる場合に、ｆｄ中のΨｉｂｄｄｓは連続的に構築される。グラフのサイズがある構成（例えば、Ψｊ）について顕著に増加する場合には、ウインドウ関数は現在のｆｄ及びΨｊｂｄｄに準拠して選択される（例えば、ｗ）。ウインドウ関数は、ＰＩ及びその相補的なもの、又は何らかのΨｋｂｄｄ及びその相補的なものあり、その相補的なものはＰＩによってのみ表現され、より小さなサイズを有する。
【０１０７】
ウインドウ関数ｗが取得されると、２つの区分化（ｗΛｆｄｗ，Ψｗ）及び
【０１０８】
【数２８】
2004213619.tif 000030
が形成され、区分化の各々における処理又はルーチンは再帰的に呼び出される。一般に、構築後の結果的なＢＤＤが、既に構築された以前に分解されたＢＤＤ及び当初の分解されたＢＤＤのサイズ総ての総和より１０倍大きい場合には、区分化に基づく探索が実行される。
【０１０９】
先験的な変数選択では、区分化に基づく探索に加えて、固定数の分割変数が定められる。固定数の主要な入力変数に準拠する区分化に続く展開的区分化（又はその逆）が実行され得る。展開的区分化は、主要な入力に加えて、擬似的な変数／分離ポイントの双方を使用し得る。
【０１１０】
ウインドウ関数を選択し、ｆｄｗｉ及びΨｗｉにより与えられるｉ番目の区分けについての分解表現を作成した後で、最終的な段階は、ｆｄｗｉにてΨｗｉを構築することであり、即ち、
【０１１１】
【数２９】
2004213619.tif 000031
である。採取的なＲＯＢＤＤサイズは所与の変数の順序に対して定数であるが、中間的なメモリ条件及び構築中の時間は、分解ポイントが構成される順序のストロング関数（ｓｔｒｏｎｇ  ｆｕｎｃｔｉｏｎ）である。ｆｄ内で構成され得る候補変数に対して、結果的に構成されるＲＯＢＤＤのサイズを推定するコストが割り当てられる。構築後にＲＯＢＤＤの支持集合のサイズの増加を最小化する分解変数が選択される。各ステップにおいて、候補Ψｓは構成に関してそれらの分解ポイントに拘束され、それらのポイントは他の任意のΨｂｄｄＳには存在しないものである。このことは、分解変数はｆｄにて一度だけ構成される必要性を保証する。
【０１１２】
図２は、システム１０に含まれる１以上の要素間の例示的な相互作用を示す概略図である。図２は、一群の開始点３０ａ−ｃ、一群のＰＯＢＤＤ要素３４ａ−ｃ、ＢＭＣ要素３８、及びＢＤＤ要素４０を示す。これらの要素は、概略的に描かれており、システム１０に関連する一般的な原理を説明することを意図している。ＰＯＢＤＤ技法が使用され、画像処理／事前画像処理動作を含む分析が実行され、実証的に深く且つＢＭＣツール要素２０に通知される第１の状態群を判別する。ＰＯＢＤＤ技法は、それを正準形（ｃａｎｏｎｉｃａｌ  ｆｏｒｍ）に変換するためにデータ構造上で実行され得る。区分化は、論理空間が個々の部分空間に分解されることを示す。
【０１１３】
教示内容を説明するために、ＰＯＢＤＤ技法に関連して実行されるいくつかの画像処理及び事前画像処理を説明することが有益であろう。関数は、一般に、ある領域を共通する領域に対応付ける。変数はＸで表現され、出力はＹで表現される。Ｘの組合せの各々はＹに関するいくつかの表現になる。Ｘの組合せの各々ついて、結果として生じる固有の組合せが存在し、それはその関数を定義し得る。画像は、その関数に関連する所定の操作結果として生成されるものである。ある操作又は処理がその領域に適用され、その結果生じるものが画像である。例えば、複数の状態が用意され、それらの状態から多くの他の状態に到達可能である。ターゲット回路１２内では、１０個の状態から１０００個の状態に到達可能である。その１０００個の状態は、１０個の状態に関連する画像を反映するものとして考察される。
【０１１４】
画像処理は、対応する画像を投影する何らかの写すものを与えるプリズム又は鏡と考えられる。所与の画像に対して、対象物又はオブジェクト及び鏡又はミラーは、その画像を導出するために使用される。オブジェクトは、当初の１０個の状態として言及され、ミラーはその処理であり、１０００個の状態は画像群である。同様に、事前画像処理が定められる。この例での事前画像処理は、１０００個の状態によって表現され得る。その処理もミラーによって表現され、これら２つの変数を用いてオブジェクトが導出される。従って、画像処理の場合に、オブジェクト及びミラーが存在し、その影響又はリフレクション（ｒｅｆｌｅｃｔｉｏｎ）が求められる。事前画像処理の場合は、リフレクション及びミラーが存在し、求められるものは、その画像を投影した当初のオブジェクトである。
【０１１５】
状態分析における画像処理は、遷移／関連付け処理として言及される。遷移／関連付け処理は、所与の状態空間で可能な遷移を結びつけ、そこでは、対応付け又はリンクが存在しないことに起因して、状態１から状態１０へ動くのを禁止する所定の規則が存在する。可能な及び不可能な遷移は、その後に捕捉され得る。そして、ミラー（遷移／関連付け処理）は、そのシステム／回路／状態でどのような遷移が可能であるかを示す。
【０１１６】
遷移／関連付け処理に関するあるアプリケーションの後にアクセスされ得るほんのいくつかの状態が存在する。従って、遷移／関連付け処理を適用した後にその地点からより深い深度への移動がもたらされる。同様に、状態１０００から、遷移／関連付け処理を用いて当初の状態の値が判別され得る。従って、事前画像処理は所与の状態群について行なわれる。画像は、ミラー（遷移／関連付け処理）によって与えられるような状態のリフレクションである。画像及び／又は事前画像処理法は、ターゲット回路１２内で何が深いかを判別するために使用され得る。
【０１１７】
教示内容を説明するために与えられる別の例では、ライン１及びライン２が状態であることを想定し、ライン１及びライン２は並行であり、遷移／関連付け要素によって分離されているものとする。ある筋書き又はシナリオでは、ライン２のリフレクションはライン１に関連する情報に影響を及ぼす。しかしながら、一般的に求められるものは、ライン１又はライン２の何れかによって排他的に影響されるもの総てである。画像及び事前画像処理は、ラインの各々から何が受信されたかを判別するために使用され得る。置換プロセスを利用して、ライン１及びライン２に何が含まれているかが判別され得る。残るものは、それらの整合性を維持する真のオブジェクト、競合物（ｃｏｎｔｅｎｄｅｒ）、又は選択肢を示す。この情報により、混乱又はエラーを生じさせるものが何であるかを判別し、そのプロセスに起因する要素を削除することが可能になる。
【０１１８】
別の例として、集合１が状態１，２，３を包含する場合を考察する。更に、状態４，５を含む集合２を考える。これら総ての要素は状態１０，１１に反映される。状態１０，１１を分析する場合に、状態１，２，３，４，５から到来するリフレクションが与えられる。集合１に関連する分析で４，５を考察するのは不適切である、というのは、これらの要素は集合２に関連するからであることが、理解されるであろう。従って、状態４，５がその集合から除去され、残ったものが集合１からの真正な集合である（状態１，２，３）。集合１，２間の距離は、１単位として識別され得る。集合２と集合０との間の距離は、２単位である。以後同様に計算がなされ、集合１と集合０との間も１単位の距離である。次のステップでは、分析は集合−１にシフトし、そして分析は集合−２に続き、以下同様である。このようにして、情報は帰納的に蓄積され、より大きな距離及び深度をなすために分析が続くようにする。この手順は、状態の検査がターゲット回路１２内で深まることを可能にする。
【０１１９】
実施例における「より深い（ｄｅｅｐｅｒ）」という語は、分析されるターゲット回路１２に関連付けられる深度パラメータに言及している。所与の状態が到達可能であり、他の状態は事前の作業を最初に行うことなしには到達され得ない。状態は一般的には異なる深度を有する、というのは、ある固定点演算は早期に終了し、別のものは所与の試験回路内に深遠に伸びる。このことは、所与の関数の属性に準拠している。所与の関数は、あるウインドウ又は部分空間の下で、分析が深く伸びて続くように構成される。加えて、実証的に深い状態及び帰納的な状態群が存在し得る。実証的に深い状態は、一般にそれらが深いか否かを判別するために相当の作業量を必要とする。帰納的な状態群は一般的には深度に関して何らの保証も与えない。機能的な状態は（潜在的には速やかに）与えられるが、それらの状態が深いか否かは未知である。従って、それら２つの原理のバランスをとるのが一般的である。適切に検査技法を実行するには、速度も深度も無視され得ない。ＰＯＢＤＤデータ構造１４を用いることで、潜在的に深いいくつかの状態が計算され、又は所与の状態が「通常的に」深いものとして射影され、これらの状態がサンプリングに関して目標視される。
【０１２０】
図２に戻って、ＢＭＣ要素３８は、小規模なサンプリング又は部分空間のセグメントが、固定点に関連して探索されることを可能にする。固定点に到達すると、固定点演算が別の部分空間で実行され得る。複数の部分空間でランダムなサンプリングが実行され、それにより、第１の状態群がＰＯＢＤＤ要素３４ａ−ｃからＢＭＣ要素３８に効果的にハンドオフする又は移行することが可能である。第１群の状態を判別した後で、どの部分空間が最も深い深度を有するかを判別する。最も深い深度を有する部分空間について、特定の状態群は、容易に計算される最も深い状態群であることが想定される。これらの状態は、検査環境下の所与の回路に関する一層深い検査を実行する場合の初期状態群として採用するために、ＢＭＣ要素３８に与えられる。ＢＤＤ要素４０は、ＰＯＢＤＤ及びＢＭＣ処理が記述される基盤又はコアプロトコルとして機能する。
【０１２１】
ＰＯＢＤＤに準拠したＢＭＣは、深く探索する方向を選択する際における「ナビゲート付き進行（Ｎａｖｉｇａｔｅｄ  Ｔｒａｖｅｒｓａｌ）」機能を可能にする。システム１０は、更に、初期幅探索（ＢＦＳ：Ｂｒｅａｄｔｈ  Ｆｉｒｓｔ  Ｓｅａｒｃｈ）と初期深度探索（ＤＦＳ：Ｄｅｐｔｈ  Ｆｉｒｓｔ  Ｓｅａｒｃｈ）との調整された混合を可能にする、というのも、それが深い状態に（潜在的に選択可能に）到達可能だからである。
【０１２２】
また、適切な時間間隔が、試験対象の所与の回路内の複数の部分空間のサンプリングに関連して設けられる。所定の期間は、ターゲット内の様々な部分空間を評価するために用意される。その期間が満了すると、プロセスは停止し、判定が行われる。その期間は、所与の検査プロセスに関連する便宜的な項目又は実際的なパラメータに準拠し得る。指定された期間内で何らの深い状態も見出されなかった場合は、そのプログラムは、より大きなタイムアウト値を含む別のモードで動作し得る。或いは、選択を実行する手法は、既にサンプリングした任意の部分空間（又は空間の種別）が再度訪問されないように変更可能である。深い状態に遭遇することの保証又は確実な証明を与えることで、効率に関する顕著な利益が最小の損失で達成され得る。効率に関するこの利益は、その損失に比較して不釣合いに大きくなり得る。
【０１２３】
図３は、ターゲット回路１２に関連する１以上の特性を検査する方法に関する一連の例示的ステップを示す概略的フローチャートである。本方法は、設計者がターゲット回路１２のような特定の回路を評価する場合であって、検査される必要のある特性に着目する場合に開始される。設計者は、その特定の性質に関し、ターゲット回路１２の選択された部分空間が深いことを知っていても知らなくてもよい。ＢＭＣツール要素２０がターゲット回路１２内にかなりの深度まで到達することを可能にするために、ＰＯＢＤＤデータ構造１４はステップ１００にて呼び出される。パラメータはＰＯＢＤＤデータ構造１４に通知され又は与えられ、タイムアウト期間もそのプログラムに用意される。例えば、ＰＯＢＤＤデータ構造によって実行されるプログラムは５０００秒を超えることができないことが指定され得る。
【０１２４】
ステップ１０２では、ＰＯＢＤＤデータ構造１４は、部分空間の分割を開始し、選択された深度での探索を可能にする部分空間が識別され得るか否かを判別し、その部分空間は、指定された特性を潜在的に備え又はその特性によって決定される。この手順がその時間間隔内に実行されるならば、その手順は申し分ないものとされる。プログラムがその時間間隔内で実行されなかった場合には、達成した最大深度が表示され得る。或いは、タイムアウト期間が修正され、再度プログラムが実行され得る。別の場合では、部分空間のサンプリング場所は、最適な深度に達するように適切に変更され得る。
【０１２５】
ステップ１０４では、ＢＭＣツール要素２０は、ＰＯＢＤＤデータ構造１４により抽出された状態群に関連付けられた情報を受信する。ステップ１０６では、ＢＭＣツール要素２０はターゲット回路１２内に一層深く進行する、というのは、その要素には改善された開始ポイントが備えられているからである。境界モデル検査は、探索されないもの以外の状態を訪れるために、ＢＭＣツール要素２０によって実行される。第１データセットに反映されているような改善された一群の開始状態は、ＢＭＣツール要素２０で実行される検査プロセスの効率を向上させる。ステップ１０８では、違反した特性に遭遇したことを識別し、或いは、結果的に潜在的に影響される整合性パラメータがＢＭＣルール要素２０によって生成され、ターゲット回路１２に関連する不完全性や不具合を見分ける。この情報は、製造工程や設計工程に関連する問題点や仕様を修正したり対処したりするために使用される。或いは、その情報や成果は、関連する製品が設計者によって与えられる基準に合致するように対処するために使用され得る。
【０１２６】
ランダムサンプリングは、ターゲット回路１２に関連する合理的な評価を与える。サンプリングは、他の部分空間がサンプリングされると他のエラーに遭遇するような保証を要しない。実際には、製品設計者又はディジタルシステムオペレータは、所与の検査手順に関連するその目的（ｓｃｏｐｅ）及び精度パラメータを定める。
【０１２７】
図３に示されるいくつかのステップは、それが適切な場合には変更又は削除されることが可能であり、追加的なステップがフローチャートに付加されることも可能である。これらの変更は、本発明の範囲又は教示内容から逸脱せずに、具体的な検査アーキテクチャや特定の境界モデル検査構成やコンフィギュレーションに準拠するものである。
【０１２８】
本発明は、特定の実施例に関連して詳細に説明されているが、システム１０は任意の状況に拡張されることが可能であり、その状況では、選択されたタスクを実行する又は指定された特性を包含するように設計又は製造される所与のターゲットについて、検査が行なわれる。更に、システム１０によって顕著な柔軟性又はフレキシビリティが得られ、任意の適切な１以上の要素が、それらの動作を向上させる別の要素と置換され得る。例えば、システム１０は、ＢＭＣツール要素２０、ＰＯＢＤＤデータ構造１４及びアルゴリズム要素１６のような具体的な要素を参照しながら説明されてきたが、これらの要素は、それが適切ならば単一の一体的装置内に設けられることも可能であり、又はそれらの機能をもたらす装置と置換されることも可能である。ＰＯＢＤＤデータ構造１４は、その検査能力を強化するために、他の適切な検査又はシミュレーションプロトコルと共に使用され得る。加えて、設計者情報２４は任意の適切な手法でＰＯＢＤＤデータ構造１４に通知され或いは与えられ、ＢＭＣツール要素２０に、境界モデル検査を実行するのに好都合な開始ポイントが用意されるようにする。
【０１２９】
加えて、システム１０は１以上の個別素子を参照しながら説明されてきたが、処理動作を向上させるために、追加的な中間的要素がシステム１０に設けられることも可能である。例えば、追加的な要素は、ＢＭＣツール要素２０及びＰＯＢＤＤデータ構造１４間の情報通信に使用され得る。本発明は広範な汎用性の恩恵に浴することが可能であり、これらの要素は様々な中間的処理要素に関連して適切な形式で動作することが可能であり、所与のターゲット要素又はオブジェクトに関する検査手順を支援する。
【０１３０】
多くの他の変更、置換、変形、代替及び修正が当業者に明白であり、本発明はそのような変更、置換、変形、代替及び修正の総てを本発明の精神及び特許請求の範囲内に包含することを意図する。更に、本発明は、特許請求の範囲以外の明細書中の記載による一手法に限定されることを意図しない。
【０１３１】
図４は、ターゲット回路４４に関連するエラー状態を評価するシステム４２の概略ブロック図である。システム４２は、アルゴリズム要素４８を含む区分け順序付け２進判定図（ＰＯＢＤＤ）データ構造４６を包含する。加えて、システム４２は補助データ構造５０とＰＯＢＤＤデータ構造４６と通信する設計者情報部５２とを包含する。システム４２は、一般的には、検査手順又はプロセスが実行される任意の集積回路、ディジタル要素、処理構成、又は２進アーキテクチャの中に設けられ又はそれらに関連して動作する。追加的に、システム４２は、情報又はデータのディジタル処理に関連する任意の装置、部品、ハードウエア、ソフトウエア、オブジェクト又は要素と協働して設けられ得る。
【０１３２】
本発明の教示内容によれば、システム４２は、ターゲット回路４４内でエラー状態を評価することの可能な検査プロセスに関連する要素を与えるように動作する。補助データ構造５０を起動することで、処理される区分けによる計算に関連付けられるトレース（ｔｒａｃｅ）又は記録、１対の区分間で行なわれる通信内容、それら通信の持続時間に関する時間間隔等を維持することができる。これは、エンドユーザが、特定の状態に関連する源（ｏｒｉｇｉｎ）又は血筋（ｌｉｎｅａｇｅ）の正確な記録を維持することを可能にする。この情報を状態のフロンティア（ｆｒｏｎｔｉｅｒ）形式で（即ち、到達可能な各ステップ内で追加される新たな状態）格納及び維持することで、分析に関する全体的な空間的複雑性が最小化される。各ノードはＰＯＢＤＤ演算における状態のフロンティアを表現する。プロセスは、初期状態が達成されるまで反復される。一般に、単一の状態は、支配的な浅い初期状態を表現する。補助データ構造５０によって生成される詳細な情報が計算に与えられることに起因して、このプロセスは、検査手順の効用の観点から極めて有利な結果をもたらす。
【０１３３】
システム４２は、別の検査又はシミュレーション手法よりも極めて高速であり得る。このことは、部分的には、ＰＯＢＤＤ技法に関連するエラートレースアルゴリズムの統合性（ｉｎｔｅｇｒａｔｉｏｎ）に起因する。増進した速度は、更に、検査手法が、大きなシーケンス深度又は複雑な回路を含む多くの追加的要素について実行されることを可能にする。
【０１３４】
また、システム４２は、ターゲット回路４４に関連するエラー状態を探索する又は識別する際の精度を向上させる。エラー状態に関連する更なる情報を判別することなしに、ターゲット回路４４内の不備を見分けることは無意味である。システム４２のアーキテクチャは、より正確な経路決定を迅速に行ない得る演算能力を与える。このことは補助データ構造５０によるものであり、それは、遭遇するエラー状態に関連するエラー追跡処理を実行するために使用される。
【０１３５】
また、システム４２は、ターゲット回路４４に関連付けられる到達可能性パラメータを拡張することができる。ターゲット回路４４内の新たな又は未探査の深い状態（或いは調査されない）は、システム４２を用いては網羅されない。深い状態は、一般的には、充足可能性（ＳＡＴ）手順又は所与のターゲット回路の検査を実行するための２進判定図（ＢＤＤ）を用いて到達すること又は見出すことは困難である。システム４２は、より多くの完備な分析に適合させることが可能であり、その分析は、検査が、ＳＡＴやＢＤＤ法が制限される回路内に深く進行することを可能にする。一般的には、システム４２のアーキテクチャは、より多くの効果的な検査プロセスを与えるために、ＰＯＢＤＤプロセスとエラートレースプロトコルを結合するよう動作する。同時に、システム４２は、探索プロセス中に保持される計算内容に起因して、検査プロセスに関連する待ち時間を顕著に低減させ得る。
【０１３６】
追加的に、システム４２はエラートレースデータ構造を含み、それは画像処理演算の各一連のステップ（即ち、ある状態群から次のものに進むまで）に要する時間についての情報を付する又は注釈することが可能である。従って、経路を再トレースする際に、そのエラーから初期状態に進む複数の方法が存在する場合に、前進及び後退方向に進むことが実質的に同程度の時間を要するとの前提の下に、その注釈を利用して、おそらくは「より速い」経路を選択することが可能である。従って、エラートレースデータ構造は、任意の情報を付することが可能であり、その情報は、時間、スペース（ピークに加えて平均値）、深度、連結／定量化スケジュールを測定する「良好度基準」、配列統計値（その地点までに再配列化された最大グラフ、再配列化の呼出数）、例えば以前の通信におけるそのノード「ｎ」（状態群）になされた通信数のような後の計算に使用され得る。この情報は、システム４２に適切に格納され維持され得る。
【０１３７】
ターゲット回路４４は、上述した又は意図される機能に従って動作することを確認するために検査されることを求められる電子的又はディジタル的なオブジェクト又は対象物である。ターゲット４４内の部分空間に関する整合性、有効性又は設計仕様は、ＰＯＢＤＤデータ構造４６を用いて分析される。ターゲット回路４４は、ターゲット回路４４と相互作用することの可能な論理ゲート、カウンタ、インバータ、バッファその他適切な装置、部品、又はオブジェクトを含む任意の関連回路を包含し得る。或いはターゲット回路４４は、検査環境下で２進データ又はディジタル情報を処理することの可能な他の適切な装置、部品、アーキテクチャ、回路配置、ハードウエア、ソフトウエア、オブジェクト又は要素であり得る。ターゲット回路４４はいくつかの特性を包含する（又はそれを実行することの可能にする）ために特別に設計され得る。本明細書中で使用されているような用語「特性」は、ターゲット回路４４に関連する任意の能力、特徴、操作、動作又は挙動を包含する。動作時にあっては、指定された特性又は特徴を維持すること又はそれが上述の動作を適切に実行することを保証するために、ターゲット回路４４は検査され又は有効化される。
【０１３８】
ＰＯＢＤＤデータ構造４６は、２進又はディジタル環境でＢＤＤ要素の区分化を実行するよう動作し得る要素である。ＰＯＢＤＤデータ構造４６は、システム４２内で操作に関する論理関数を表現する又は生成するものである。ここに言及されるように、ＰＯＢＤＤデータ構造４６は、適切であるならば、区分化され減縮された配列の２進判定図（ＰＲＯＢＤＤ）又はＢＤＤデータ構造（区分化される可能性はある）を包含し得る。ＰＲＯＢＤＤ及びＰＯＢＤＤなる語は、可換であり、それらのアプリケーションを説明する際に（場合によっては簡略化のため）適切な様々な形式で一般的に使用される。ＰＢＤＤデータ構造４６は、設計者情報５２を受信し、設計者情報５２に基づいて状態群を抽出するためにターゲット４４に関して予備的分析を行なう。ＰＯＢＤＤデータ構造４６は、ターゲット回路４４に関連して選択された特性を評価するために、アルゴリズム要素４８に包含されている１以上のアルゴリズムを起動する。第１群の状態は識別されるので、補助データ構造５０は、遭遇するエラー状態に関連する情報を収集するために格納される及び後に呼び出される任意数の計算を実行する。本明細書で使用されているような「エラー状態（ｅｒｒｏｎｅｏｕｓ  ｓｔａｔｅ）」なる語は、ターゲット回路４４に包含され得る任意の不具合、グリッチ（ｇｌｉｔｃｈ）、不完全性、又はエラーを包含する。これは、任意の違反的な挙動、表示されない任意の指定された特徴を包含する。
【０１３９】
ＰＯＢＤＤは、一般的には正準であり、それ故に複合的等価的な検査に使用され得る。ＰＯＢＤＤは、シーケンス回路検査用の到達可能性分析に連続的に適用され得る。可到達状態集合はＰＯＢＤＤとして表現される。これは、所与の時間間隔の間に対応するメモリ内で１つの区分のみを維持することで、メモリ要請を最小化する。加えて、可到達アルゴリズムを別々に用いて各区分について固定点演算が実行され、そのアルゴリズムは、ＰＯＢＤＤデータ構造４６により使用されるＰＯＢＤＤプロトコルに関連して、アルゴリズム要素４８内に包含され得る。
【０１４０】
実施例の動作に関しては、設計者及び製造者は、試験又は検査される特性、特徴、動作又は挙動を識別する何らかのプログラムをターゲット回路４４に書いている。特性又は特徴は、それがＰＯＢＤＤデータ構造４６に通知される前に特定の構文で適切に書き込まれる。プログラムはその後にＰＯＢＤＤデータ構造４６に通知され、ＰＯＢＤＤデータ構造４６はターゲット回路４４にて指定された特性を検査する。ＰＯＢＤＤデータ構造４６は、その後に状態群を生成し、ＢＤＤフォーマット内でその群を表現する。
【０１４１】
アルゴリズム要素１４内で選択されたアルゴリズムを起動する又は実行することで、ＰＯＢＤＤデータ構造４６は、回路アーキテクチャ又はコンフィギュレーションの全体を眺めることなしに、ターゲット回路４４内を選択的に深く探査し得る。回路要素全体を眺めることは、検査プロセスを顕著に遅くする。その代りに、アルゴリズム要素４８が起動され、深淵形式（ｄｅｅｐ  ｍａｎｎｅｒ）で複数状態の小部分（部分空間内）を評価するために、ターゲット回路４４内の所定の場所が調査される。
【０１４２】
ターゲット回路４４の部分を評価する場合に、ＰＯＢＤＤデータ構造４６は、ターゲット回路４４内に包含されるエラー又はエラー状態を見分ける。これは、ターゲット回路４４内の特定の場所を検査する手順の中で最初の部分である。エラーは、ターゲット回路４４にとって相応しくない又は不適切な挙動又は特性に関連付けられる。その手順の第２段階では、システム４２が、遭遇したエラーに関連付けられる初期ポイントを判別するために使用される。その初期状態に到達するために、経路が判別され、厳密な又は正確なトレースが認識され得る。
【０１４３】
エラー状態に関連する判別又は評価は、一般的には２つのセグメント又は部分に分割される。第１セグメントでは、操作に関する論理関数の表現がＰＯＢＤＤデータ構造４６によって与えられる。第２セグメントでは、状態群を計算する演算内容が生成される。状態中のある部分集合から状態中の別の部分集合へ移動するのに採用される経路が判別される。その経路は、初期状態に到達すると終了するものである。加えて、別の部分集合を判別する又はそれに到達するためどの部分集合が使用されたかについての演算がなされ、例えばその処理内容をもたらすのにどの程度の時間を要するか又はこの手順の間にどの程度のメモリが使用されるか等のような別の適切なパラメータも導出され得る。加えて、（上述したような）記述的な注釈がそのような処理の間に行なわれ得る。
【０１４４】
初期状態は目標視される、というのは、それがエンドユーザにとって利用可能な状態を表現するからである。ターゲット回路４４は一般的にはその回路が電源投入された場合の初期状態を有する。ターゲット回路４４がその初期状態から始まり、後にエラーに遭遇する場合に、設計者は、何かが不正確である又はエラー状態が存在することを断定的に確証することを希望する。所与の入力の組合せが与えられ、それは、適用された場合にエラー状態を生み出す又は到達するものであり、不具合的な挙動が表示され又は明確化される。エラー状態が得られると、そのエラー状態から当初の初期状態へ戻る経路がトレースされる。この経路が判別されると、それは、所与のシーケンスを利用して判別された経路と共に処理がなされる場合にそのエラー状態に到達することを、設計者に示す又は明らかにするために使用される。
【０１４５】
アルゴリズム要素４８は１以上のアルゴリズムを包含するデータ処理オブジェクトであり、そのオブジェクトは具体的な又は指定された特性がターゲット回路４４内で探索され又は検査されることを可能にする。また、アルゴリム要素４８はターゲット回路４４用の計算に関連付けられる１以上のアルゴリズムを包含し得る。これらのアルゴリズムは、補助データ構造５０により起動され、且つ例えばエラートレース要素のような適切な処理又はプロトコルを包含する。アルゴリズム要素４８は、ＰＯＢＤＤデータ構造４６内に包含され、又は特定の処理要請に従って外部的なコンフィギュレーションや回路配置に設けられ得る。加えて、アルゴリズム要素４８は他の外部要素と通信することが可能であり、その要素はターゲット回路４４内の部分空間を検査するのに使用される１以上の命令や特徴を与えるものである。更に、アルゴリズム要素４８は、ターゲット回路４４に関連する１以上の特性を検査するために、設計者情報５２を直接的に受信し得る。また、設計者情報５２は、検査プロセスに委ねられる回路や要素の種別を含む又は指定する。アルゴリズム要素４８は、ＰＯＢＤＤデータ構造４６によって実行され得る検査処理を支援するよう動作する任意の適切なハードウエア、ソフトウエア又は要素を包含する。
【０１４６】
補助データ構造５０は、ターゲット回路４４のパラメータに関連する様々な演算を実行するよう動作し得る要素である。補助データ構造５０は、アルゴリズム要素４８を利用又は起動し、それがターゲット回路４４により与えられるデータについて動作する場合に、指定された演算を行なうことが可能であるようにする。補助データ構造５０は、ターゲット回路４４内で遭遇したエラー状態をトレースする又はたどる。補助データ構造５０は、ターゲット回路４４に関する１以上の演算を実行することの可能な任意の適切なソフトウエア、ハードウエア、部品、装置、オブジェクト又は要素を包含し得る。加うるに、補助データ構造５０は、ＰＯＢＤＤデータ構造４６内に包含されること又は適切な場合には他の適切な場所に設けられることが可能である。加えて、補助データ構造５０は、ターゲット回路４４に関する演算を実行するのに使用されるアルゴリズムの部分を包含する。或いは、補助データ構造５０はシステム４２以外の命令を備え、適切な演算が実行され、エンドユーザに与えられるようにし得る。
【０１４７】
動作時にあっては、プログラムはアルゴリズムを含むソフトウエアを用いて書き込まれ、そのソフトウエアはターゲット回路４４及びＢＤＤに関する所与のデータ構造を解釈することができる。データ構造は、例えばエラートレースアルゴリズムのようなアルゴリズムによって理解され又は分析され得る。エラートレースアルゴリズムは、ターゲット回路４４に関する及び区分けされたＢＤＤに関連するデータ構造を解釈することが可能である。エラートレースアルゴリズムは、一般的には２つの経路を含む。第１の部分はＰＯＢＤＤデータ構造４６に関連し、エラートレースは様々な経路を格納する手法を提供し、エラーのある地点が決定された場合に、初期状態に戻るある経路が形成されるようにする。第２の部分では、複数の経路に遭遇する場合に、エラートレースアルゴリズムがトレースする最適な経路（又は最も効率的な経路）を指示し得る。
【０１４８】
別の例では、システム４２は、更なる特殊性を有するエラー状態の存在することを判別可能にする。例えば、ゲート構成又は論理（例えば、ＡＮＤ、ＯＲ、ＸＯＲ、及びＸＮＯＲゲート）が不備である、接続が不適切である、誤った書き込み接続が存在する、又は仕様が誤解されていた若しくは誤って解釈されたような場合である。従って、エラー状態を見出すことに加えて、更なる情報がエラー挙動に関連して導出され得る。初期状態から誤りのある状態へ設計内容を導く又は促す虞のある入力の組合せシーケンスが識別され得る。
【０１４９】
設計者は、どの組み合わせが回路の所与の経路に関連付けられているかを知ることができる。この情報に基づいて、設計者は、有効であるものと疑義のあるものを分離する際に、不備のある又は不適切なものに関連し得るものを除去することができる。設計者は、合理的な明瞭性（ｓｐｅｃｉｆｉｃｉｔｙ）と共に、期待に沿う回路部分と指定された又は予定された特性に従わない部分とを判別する。
【０１５０】
実施例では、エラートレース演算が補助データ構造５０によって行われ、検査手順の第１部分が実行される。ＰＯＢＤＤデータ構造４６は、一群の状態を捕捉し、それらの除隊に関連する一連の演算を行う（例えば、状態１から状態１００）。この演算が行われた後に、状態１乃至状態１１０に関連付けられる第２の演算がなされ、状態１０１乃至状態１１０が新たな状態になり、以前の１００個の状態は既知である。新たな１０個の状態は、「フロンティア（ｆｒｏｎｔｉｅｒ）」と言及される。新たな１０個の状態はＢＤＤとして表現され、ディスク、メモリ又は任意の適切な格納媒体に適切に保存される。あるフラグがこの状態群に付与され、そのフラグは、それらがどの区分に所属するかを説明し、その状態が由来するところを詳述する更なる情報を与え、それらの状態に至るのにどの程度の時間を要するかを説明する。これは、補助データ構造５０の動作を反映し、それは、そのような地点にどのようにして到達したか、どのウインドウで処理がなされたか、その地点に至るのにどの程度の時間を要したか、又はどの程度のメモリが消費されたか等のような多数のパラメータに関連付けられる。
【０１５１】
補助データ構造５０内のエラートレース要素は、格納部に及び演算経路に関する検索に一般的には関連付けられる。その概念は、ツリー内の総ての画像演算を記録しようとする。画像演算は、ソース区分から宛先区分の間に生じ得る。各記録はソースフォーマット内の開始集合を形成する（（画像演算（固定点又は通信）及び宛先で演算される画像）。また、この演算機能を解除する機構も包含する。そのようなノードはエラートレースノードと言及される。例示的形態では、エラートレースノードは以下のような画像演算によって付加され得る。画像演算が新たな状態を生成する場合に、それはエラートレースノードに格納される。このノードはその状態に関するＢＤＤ、目下のその区分に関する（ｆ）及びウインドウ関数（ｗ）を包含する。また、ｆの以前の状態を含む区分でのフロンティアに対するポインタを包含する。
【０１５２】
補助データ構造５０によって実行され得る多くの演算があり得る。以下に詳細に示されるように、例として、演算ステップで格納に関する３つのクラスが設けられる場合を想定する。この３種類は、エラートレース、区分けフロンティア及びエラートレースノードである。エラートレースは、そのセグメント又は演算に関するツリー全体の中のリーフ（ｌｅａｆ）を格納する。一群の到達可能な状態Ｓ中の各状態ｓに関し、ツリーは、その状態ｓが到達可能な集合Ｓに最初に付加された場所を包含する。その構造は、到達可能な任意の状態から初期状態に戻る経路を発見するための情報を包含する。形成された各区分けに関し、現在のフロンティアを形成する状態群（その区分に対応するリーフ）が格納される。フロンティアが識別されると、そのフロンティアの各ノードについて、従前のフロンティア選択され、初期状態にトレースして戻るために使用される。
【０１５３】
区分けフロンティアは、所与の任意の区分に対する現在のフロンティアを形成する状態群を表現する。フロンティアは一般的にはその区分（他の総ての区分けからの可能な１つ）に最も最近の通信で加えられた状態として定義され、以後最小固定点（ｒｕｎ  ｌｅａｓｔ  ｆｉｘｐｏｉｎｔ）演算を実行する。上記演算の各々によって導入された状態群は、ＢＤＤとして別のエラートレースノードに格納される。従って、区分けフロンティアは、実際の集合郡（即ち、ＢＤＤ）であり、その理論的結合集合（即ち、ＢＤＤ結合子）は、その区分けに付加されているが別の区分けとの通信には未だ使用されていないところの到達可能な状態群を表現する。
【０１５４】
エラートレースノードは演算ツリーのノードを表現する。エラートレースノードは、画像演算の単一ステップで導入された状態の集合Ｓに対応するＢＤＤを格納し得る。また、次の情報も格納されることが可能であり、それらは：どのように生成されたか＿（その集合Ｓを得るために行われた演算種別）、ｐｒｅｖ＿（ＢＤＤの集合への復帰ポインタ、各々は候補であり、その候補からＳ中の状態が生成される。‘Ｓ’中の各状態はｐｒｅｖ＿の１つにおける状態のものから生成される。これは、タイプ区分フロンティアのオブジェクトであり）、ｉｄ＿（このノードについての固有数）、フロンティア＿（上記のように定められた集合‘Ｓ’のＢＤＤ表現）、及びウインドウ＿（演算画像は、フロム（ｆｒｏｍ）＿区分及びトゥ（ｔｏ）＿区分を有する。ウインドウ＿はフロム＿区分のウインドウ関数である。）である。
【０１５５】
エラートレースに加えて（又はそれに関連して）、補助データ構造５０は、ターゲット回路４４に関連した演算を実行するよう動作し得る任意数の適切なアルゴリズムを包含し得る。これらのアルゴリズムは、例えばアルゴリズム要素４８内のように、補助データ構造５０内に格納され、又はその外部に設けられる。アルゴリズムは任意数の演算を実行し得る。例えば、格納アルゴリズムは、転送アルゴリズム中にどのトレースが格納されるかを識別するよう実現される。各区分に関し、フロンティアは、フロンティアの現在の集合を一群のＢＤＤとして格納するように取り扱われる。フロンティアはそのような多くのＢＤＤから構成され、それらの内あるものは最新の最小固定点の様々な状態により導入され、別のものは（可能な）他の総ての区分からの最新の通信によって導入される。
【０１５６】
このフロンティアでのＢＤＤ数は、最悪の場合に、Ｏ（Ｍ＋ｄ＿ｉ）として与えられ、ここでＭは区分数であり、ｄ＿ｉはｉ番目の区分における固定点の深度である。対応するグラフに関し、これは、最悪の場合にＯ（Ｍ＊（Ｍ＋ｄ＿ｍａｘ））となり、エラートレースデータ構造は情報が注釈付けされ、その情報は、時間、スペース（ピークに加えて平均）、深度、結合性／定量化スケジュールを測定する「良好度基準」、再配列統計値（このポイントまでの再配列化最大グラフ、再配列呼び出し数）又は従前の通信におけるこのノード「ｎ」になされた通信数等のような後の計算に使用され得るものである。固定点の場合に、ソース及びターゲットは同一区分である可能性があり、ＢＤＤはその区分に関する管理要素内に格納される。通信の場合には、フロンティアＢＤＤは宛先区分の管理要素に格納され、そのウインドウはソース区分のものに関連する。
【０１５７】
また、経路検索アルゴリズムは、補助データ構造５０によって実行され又は使用される。初期状態から所与の状態にわたって経路を検索するために、以下のステップが行われる。先ず、その状態を含む演算ツリー中のノードが判別される。一般に、このノード又は少なくともこの集合を包含するフロンティアは、状態ｓが発見される場合に利用可能である。従って、そのような集合は復帰経路に与えられる。或いは、演算ツリー全体がそのようなノードを判別するためにスキャンされる。第２に、所与のノードＮ＿ｉの下で、それが従前の区分フロンティアＰ＿｛ｉ＋１｝を有することを判別する。状態ｓ＿｛ｉ＋１｝を含むＰ＿｛ｉ＋１｝中のノードＮ＿｛ｉ＋１｝は、状態ｓ＿ｉの従算の単独ステップを包含し、その後に取得される。第３に、回帰（ｒｅ−ｃｕｒｓｅ）がｉの連続値と共にステップ２で実行され、あるＮ＿ｋが演算ツリーのルートノード、即ち初期状態を含むノードになるまで実行される。第４に、経路ｓ＿０．．．ｓ＿ｉ．．．ｓ＿ｋは、良好でない状態ｓから初期状態に至る経路を表現する。初期状態から必要な状態ｓへの経路を求めるためにそれは反転され得る。
【０１５８】
実施例及び教示内容を説明するのみのために、以下にアルゴリズム実施例に関する詳細が与えられる。以下の説明は、例示目的のためにのみ提示されるものであり、従って補助データ構造５０によって実行される（又は使用される）特定のアルゴリズムの用途や柔軟性を限定するように解釈されるべきではない。
【０１５９】
これらは一般にエラートレースプロトコル内での相異なる３種類の演算である。第１は、最小固定点である。画像演算が新規状態を生成する場合には、新たなエラートレースノードが形成され、そのノードの従前のポインタがフロンティア群に割り当てられる。このノードは区分化のためのフロンティアに付加され得る。第２種別の演算は区分ｉからｊへの演算である。画像演算が新たな状態を生成する場合には、新たなエラートレースノードが生成され、その従前のポインタは、通信が始まる前に（旧）フロンティア群に割り当てられる。そのようなノードはｊのフロンティア群に割り当てられる。第３種の演算は再区分化であり、区分ｉ，ｒ，ｓを生成する際に区分ｉと共に使用される。ｉ，ｒ，ｓ各々についてのフロンティアはｉのフロンティアに設定される。一般に、形成されることを要する新たなエラートレースノードは何ら存在しない。
【０１６０】
更なる説明としての実施例が与えられる。演算ツリーは以下の手法で生成される。初期に１つの区分があるとする。新たな状態が追加されるＩ演算の１ステップを行う。それは静的に２つの区分に分割され（ｎ＝１に起因して、又はｎ＞１ｍ＝２に起因して）、それらの区分は１及び２と番号付けされる。両区分は最小固定点で各々２つのステップを有し、即ちそれが分割されるときに何らの新たな状態も付加されない。区分化はその後に通知される。この後に、別の固定点演算がなされる。区分２で不具合が生じ、動的な再区分化によって形成される３つの新規区分となり、２，３，４と番号付けられる。固定点は区分４で実行される。区分４での状態の１つは不具合となり、この状態を戻すようトレースすることが適切である。別の固定点は早期の復帰に起因して一般には実行されない。
【０１６１】
図５は、ターゲット回路４４に関連するエラー状態を評価する方法に関連する一連のステップ例を示す概略的フローチャートである。本方法はステップ３００から始まり、設計者は、ターゲット回路４４のような特定の回路を評価し、検査される必要のある何らかの特性に着目している。パラメータはＰＯＢＤＤデータ構造４６に通知又は提供され、タイムアウト時間間隔もそのプログラムに与えられる。例えば、ＰＯＢＤＤデータ構造４６によって実行されるプログラムが５０００秒を超えるべきでないことが指定される。このプロセスがその時間間隔内で実行される場合には、そのプロセスは申し分ないものとされる。プログラムがその時間間隔内に完了しなかった場合には、到達した最大深度が表示される。或いは、タイムアウト期間が修正され、プログラムが再度実行され得る。別の場合には、部分空間サンプリング位置が適切に変更され、最適な深度が達成されるようにする。
【０１６２】
ターゲット回路４４に関連する情報が受信された後に、１以上のＰＯＢＤＤ処理がステップ３０２にてＰＯＢＤＤデータ構造４６によって実行される。ＰＯＢＤＤデータ構造４６は、ターゲット回路４４内の部分空間に関連するエラー状態を識別するために、設計者情報５２を利用する。ステップ３０４では、補助データ構造５０が、ターゲット回路４４に関連する１以上の演算を実行するために選択されたアルゴリズムを起動する。ステップ３０６では、エラーに関連する経路を識別するための演算処理が利用される。その経路は、エラーに関連する初期状態と識別されたエラー状態との間の相関関係を反映する。ステップ３０８では、設計者はエラー状態とそれらに関連する経路を識別し、ターゲット回路４４内の不完全性又は不具合が解決され又はそれらに対処されるようにする。例えば、この情報は、製造段階又は設計段階に関連する問題又は仕様に対処する又は修正するために使用される。加えて、その情報及び成果は対応する製品に対処するために使用され、それが設計者により提供された基準に合致するようにする。或いは、この情報は任意の他の適切な目的に使用される。
【０１６３】
図５に示されるステップのいくつかは変更又は削除されることが可能であり、適切な及び付加的なステップがフローチャートに付加されることも可能である。これらの変更は、本発明の範囲又は教示内容から逸脱せずに、具体的な検査構造、特定のエラートレースプロトコル、回路配置、コンフィギュレーションに準拠することが可能である。
【０１６４】
本発明は特定の実施例を参照しながら説明されてきたが、システム４２は任意の場面に拡張されることが可能であり、その場面では、選択されたタスクを実行し、指定された特性を有するように設計又は製造された所与のターゲットに関して検査が求められる。更に、システム４２によって顕著な柔軟性が与えられ、任意の適切な１以上の要素が、それらの動作を向上させる別の要素と置換され得る。例えば、システム４２は、補助データ構造５０、ＰＯＢＤＤデータ構造４６及びアルゴリズム要素４８のような具体的な要素を参照しながら説明されてきたが、これらの要素は、それが適切ならば単一の一体的装置内に設けられることも可能であり、又はそれらの機能をもたらす装置と置換されることも可能である。ＰＯＢＤＤデータ構造４６は、システム４２の検査能力を強化するために、他の適切な検査エラートレースプロトコルと共に使用され得る。
【０１６５】
加えて、システム４２は１以上の個別素子を参照しながら説明されてきたが、処理動作を向上させるために、追加的な中間的要素がシステム４２に設けられることも可能である。例えば、追加的な要素は、補助データ構造５０及びＰＯＢＤＤデータ構造４６間の情報通信に使用され得る。本発明は広範な汎用性の恩恵に浴することが可能であり、これらの要素は様々な中間的処理要素に関連して適切な形式で動作することが可能であり、所与のターゲット要素又はオブジェクトに関する検査手順を支援する。
【０１６６】
図６は、ターゲット回路５６に関連する画像処理演算を実行するシステム５４の概略ブロック図を示す。システム５４は、アルゴリズム要素６０を含む区分化され順序付けられた２進判定図（ＰＯＢＤＤ）データ構造５８を有する。更に、システム５４は、ＰＯＤＤデータ構造５８と通信する設計情報部６２とを含み、その情報はエンドユーザにより入力又は検査されるよう求められる特定の情報を反映する。システム５４は、一般的には、集積回路、ディジタル要素、処理構成要素又は検査手順や処理が行なわれる２進アーキテクチャ内で区分化され、又はそうでなければそれらに関連して動作する。加えて、システム５４は、情報又はデータのディジタル処理に関連する任意の装置、部品、ハードウエア、ソフトウエア、オブジェクト又は要素と協働して設けられる。
【０１６７】
本発明の教示内容によれば、システム５４は、ターゲット回路５６の部分空間内のかなりの深度に達することの可能な検査プロセスを提供する。システム５４は、ターゲット回路５６に関連する画像演算で局所的な又はローカルな区分けを実行する。画像処理では、結合又は論理積（ｃｏｎｊｕｎｃｔｉｏｎ）は困難な処理であり、定量化は演算プロセスに関するより簡易なセグメントを表現する。定量化の後に、典型的には、分析に関連するグラフは小さくなる。一般に、データ構造のグラフは所与の関数を表現するために生成され得る。ＢＤＤのデータ構造が大きすぎて過剰な情報を所有するような場合には、それは過剰に大きいものと解釈される。そのような場面は局所的な暴走又は不具合として説明される又は言及される。
【０１６８】
仮に結合が容易になされ得るならば、全体的な計算の問題も容易にされ得る。区分けされたＢＤＤ状のデータ構造（ＰＯＢＤＤデータ構造５８）を形成することで、論理積の問題点又はボトルネックは効果的に排除され得る。所与のＰＯＢＤＤの各セグメント（又はリーフ）は、最終的な画像の部分集合（既に完了済みの論理積及び定量化処理を包含する）である。画像の各リーフ又は部分集合は、演算が実行された後に別の管理部に転送される。各リーフは（適切であるならば）別の変数順序を用いて別々に演算され得る。この分離的処理は、主要入力、状態変数又は局所的分解変数等にて実行される。
【０１６９】
システム５４は共通の順序で画像を分離するよう動作する。この分離は、高価ではない処理を表し、他の検査手法よりも直接的である。論理積／定量化も高速である、というのは、それは一般的に区分けされた構造に関して実行されるからである（別の順序を利用することも可能である）。加えて、各画像の部分集合はそれが完了すると速やかに転送されるので、部分空間の不具合時でさえも、処理は、異なる別の直交する部分空間を既に演算する。これは、システム５４が部分的な画像分析に使用されることを可能にする。更にこれは様々な特性の部分的検査を可能にし、それは検査ツール及び手順についての実用的な機能を表現する。
【０１７０】
加うるに、システム５４は検査基盤又は検査プラットフォームを提供し、それは検査されることが求められる多数の様々なアーキテクチャを収容する。システム５４は、検査プロセスにおける任意の種別のＢＤＤを利用する正式な検査ツールを与える。更に、システム５４は、画像処理に準拠して非ＰＯＢＤＤを並列化するために使用され得る。また、システム５４は、可到達性手順の速度を顕著に増進する。そのような速度に関する機能強化は、より迅速な検査ツールを生成することを支援し、特定のニーズによる準正式な検査ツールを生成して支援する。
【０１７１】
システム５４は検査アーキテクチャを提供し、それは別の検査又はシミュレーション技法よりも顕著に高速である。このことは、部分的には、ローカルな区分化を検査プロセスに統合することに起因する。ある実施例では、そのような検査法は、ターゲット回路５６に関連する可到達性パラメータを増長させる。ターゲット回路５６内の新規の又は未探査の状態（或いは未調査の状態）は、システム５４を用いてより短時間には網羅されない。深い状態は一般的には可充足性（ＳＡＴ）手順、又は所与の回路の検査を実行するＢＤＤ処理を使用する際に無視される。システム５４はより多くの完備な分析を収容し、別の手法では制限されてしまうような検査が回路内に深く実行されることを可能にする。
【０１７２】
ターゲット回路５６は、所定の又は意図される機能に従ってそれが動作することを確認するためにテストされる電子的又はディジタル的な対象物である。ターゲット回路５６の部分空間の整合性、有効性、又は設計仕様は、ＰＯＢＤＤデータ構造５８を用いて分析される。ターゲット回路５６は、論理ゲート、カウンタ、インバータ、バッファその他適切なデバイスを含む任意の関連回路、部品、又はターゲット回路５６と共に協働し又は相互作用することの可能なオブジェクトを包含し得る。また、ターゲット回路５６は、検査環境下で２進データやディジタル情報を処理することの可能な他の適切な装置、部品、アーキテクチャ、回路配置、ハードウエア、ソフトウエア、オブジェクト又は要素であり得る。ターゲット回路５６は何らかの特性を含む（又はそれを実行し得る）ように適切に設計される。「特性」なる語は、本明細書で使用されているように、ターゲット回路５６に関連付けられる任意の能力、特徴、操作、動作、又は挙動を包含する。動作時にあっては、それが設計された特性や特徴を保持すること、又は指定された動作を適切に実行することを保証するために、ターゲット回路５６は検査され、或いは有効化される。
【０１７３】
ＰＯＢＤＤデータ構造５８は、２進又はディジタル環境でＢＤＤ要素の区分化を実行するよう動作し得る要素である。ＰＯＢＤＤデータ構造５８は、操作に関する論理関数を表現したものである。ここに言及されるように、ＰＯＢＤＤデータ構造５８は、適切であるならば、区分化され減縮され順序付けられた２進判定図（ＰＲＯＢＤＤ）又はＢＤＤデータ構造（区分化され得る）を包含し得る。ＰＲＯＢＤＤ及びＰＯＢＤＤなる語は、可換であり、それらのアプリケーションを説明する際に（場合によっては簡略化のため）適切な様々な形式で一般的に使用される。ＰＢＤＤデータ構造５８は、設計者情報６２を受信し、設計者情報６２に基づいて第１群の状態を抽出するためにターゲット５６に関して予備的分析を行なう。サンプルされた部分空間からの第１群の状態は、システム５４の能力を増大させる或いは強化するために使用され得る。ＰＯＢＤＤデータ構造５８は、ターゲット回路５６に関連して選択された特性を評価するために、アルゴリズム要素６０に包含されている１以上のアルゴリズムを起動する。
【０１７４】
ＰＯＢＤＤは、一般的には正準であり、それ故に複合的等価的な検査に使用され得る。ＰＯＢＤＤは、シーケンス回路検査用の到達可能性分析に連続的に適用され得る。可到達状態集合はＰＯＢＤＤとして表現される。これは、所与の時間間隔の間に対応するメモリ内で１つの区分のみを維持することで、メモリ要請を最小化する。加えて、可到達アルゴリズムを別々に用いて各区分について固定点演算が実行され、そのアルゴリズムは、ＰＯＢＤＤデータ構造５８により使用されるＰＯＢＤＤプロトコルに関連して、アルゴリズム要素６０内に包含され得る。
【０１７５】
ＰＯＢＤＤデータ構造５８は、一般的には検査処理で使用される他の手法よりも顕著に高速である。更に、ＰＯＢＤＤデータ構造５８の区分化された構造は、コンパクトであり、より簡易な並列処理を可能にする。加えて、ＰＯＢＤＤデータ構造５８は、動的な区分化を行ない、メモリの機能低下を回避し、あるアプリケーションではその機能低下は「メモリ暴走」として言及される。ＰＯＢＤＤデータ構造５８は、ターゲット回路５６内の膨大な状態を迅速に網羅することができ、更に、相互作用する有限状態マシーンの緩やかに接続された複数セットに設計内容を分割する。
【０１７６】
実施例の動作に関しては、設計者及び製造者は、試験又は検査される特性、特徴、動作又は挙動を識別する何らかのプログラムをターゲット回路５６に書いている。特性又は特徴は、それがＰＯＢＤＤデータ構造５８に通知される前に特定の構文で適切に書き込まれる。プログラムはその後にＰＯＢＤＤデータ構造５８に通知され、ＰＯＢＤＤデータ構造５８はターゲット回路５６にて指定された特性を検査する。
【０１７７】
アルゴリズム要素６０は１以上のアルゴリズムを包含するデータ処理オブジェクトであり、そのアルゴリズムは、特定の又は指定された特性がターゲット回路５６内で調査又は検査されることを可能にする。アルゴリズム要素６０は、特定の処理要請又は回路配置に従って、ＰＯＢＤＤデータ構造５８内に包含され、或いはその外部に設けられる。加えて、アルゴリズム要素６０は他の外部要素と通信することが可能であり、その外部要素は、ターゲット回路５６内の部分空間を検査するために使用される１以上の命令又は特徴を与える。更に、アルゴリズム要素６０は、ターゲット回路５６に関連する１以上の特性を確認するために、設計者情報６２を直接的に受信し得る。また、設計者情報６２は、検査プロセスに委ねられる回路又は要素の種別を包含する又は指定し得る。アルゴリズム要素６０は、ＰＯＢＤＤデータ構造５８で実行される検査動作を支援し得る任意の適切なハードウエア、ソフトウエア、オブジェクト、又は要素を包含し得る。一実施例では、アルゴリズム１４は、最終的な画像の部分集合として形成される各区分を分析するために使用され得る適切なプロセスを包含する。
【０１７８】
実施例の動作では、ＰＯＢＤＤデータ構造５８は検査プロセスを始めるために起動される。パラメータはＰＯＢＤＤデータ構造５８に通知又は与えられ、時間間隔も所与のプログラム用に選択され得る。ターゲット回路５６に関連する可到達性分析を実行するために、遷移関係が構築される。ＰＯＢＤＤデータ構造５８は、部分空間分割を開始し、選択された深度での調査を可能にする部分空間が見分けられたか否かを判別する。集合のメンバ各々が結合され、不具合が生じる虞が生じる。変数が採用され区分化に委ねられると、それは複数の区分に分割される。それらの区分はリーフとして言及される。ＰＯＢＤＤデータ構造５８は、最終的画像の部分集合を表現するリーフを含むように提供される。各区分けはそれ自身有効であると考えられ、各々が最終画像の部分を反映し得る。
【０１７９】
区分化は選択された変数について注意深く実行され得る。各リーフは（適切であるならば）別々の変数順序を用いて別々に演算され得る（結合及び定量化演算の双方を包含する）。別々の管理部が、各区分又はリーフを分析するために起動され得る。各リーフ（又は区分け）はその特定の属性（例えば、対応する変数順序）に基づいて異なって取り扱われ得るので、特定の区分けに関し、特定のプロセッサ（別の管理部）が設けられる。特定の演算が完了すると、対応するリーフは準備完了又は終了したものとして表示される。従って、各リーフは別々に処理され（及び適切な場合には同時に処理され）、総てのリーフが（分離された）論理和（ＯＲ）に結合され、単独の管理部に与えられる。或いは、リーフは別々の機能要素又はエンティティ（ｅｎｔｉｔｙ）として取り残される。所定の複数の区分は１つのＢＤＤに結合され、適切且つ残余のものが全体的な区分けとして押し出される。
【０１８０】
この動作は高価でない処理であり、総ての画像が共通順序で分離される（即ち、論理輪がとられる（ＯＲｅｄ））。加うるに、画像の各部分集合は、それが完了した時点で転送され、ある部分集合が暴走した又は不具合が生じた場合でさえも、その処理は、異なるものとはされなかった直交する部分集合の計算を既に完了する。この手順は、部分的な画像分析を導出する。この手順に関する更なる詳細は、図７，８を参照しながら以下に説明される。
【０１８１】
実施例及び教示内容を説明するために、ターゲット回路５６の部分空間に関連する選択された特性を検査する場合に使用され得るいくつかのアルゴリズムを更に説明することが有益であろう。論理関数処理のための多くの演算は、ＯＢＤＤにより表現される関数に関して効率的に実行され得る。例えば、その基本的処理のいくつかは次の通りである：
１．評価。ＯＢＤＤに関し、ｆ及び入力ａに関するＧは、その値ｆ（ａ）を計算する。
【０１８２】
２．減縮。ＯＢＤＤに関し、Ｇは等価的な減縮されたＯＢＤＤを算出する。
【０１８３】
３．等価試験。ＯＢＤＤにより表現される２つの関数が等しいか否かを検査する。
【０１８４】
４．充足可能性問題。問題に含まれるものは次のとおりである：
−充足可能性。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力ａを見出す、又はそのような入力が存在しないことを出力する。
【０１８５】
−ＳＡＴカウント。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力数を計算する。
【０１８６】
５．合成（適用としても言及される）。ＯＢＤＤによって表現される関数ｆ及びｇに関し、Ｇは、Ｇ内に
【０１８７】
【数３０】
2004213619.tif 000032
に関する表現を含み、ここで
【０１８８】
【数３１】
2004213619.tif 000033
は２進論理演算（例えば、Λ）である。
【０１８９】
６．置換（交換とも呼ばれる）。
【０１９０】
−定数による置換。ＯＢＤＤにより表現される関数ｆ、変数ｘｉ、及び定数ｃ∈｛０，１｝に関し、ｆ｜ｘｉ｜＝ｃに対するＯＢＤＤを計算する。
【０１９１】
−関数による置換。ＯＢＤＤにより表現される関数ｆ及びｇ、変数ｘｉに関し、ｆ｜ｘｉ｜＝ｇに対するＯＢＤＤを計算する。
【０１９２】
７．一般的定量化及び実際的な定量化。ＯＢＤＤにより表現されるｆ及び変数ｘｉに関し、それぞれ
【０１９３】
【数３２】
2004213619.tif 000034
を満たすＯＢＤＤを計算する。
【０１９４】
ＯＢＤＤパッケージでは、通常的には、減縮したＯＢＤＤのみが表現されるように、演算負担軽減は他の演算の中に統合される。ＯＢＤＤの多くのアプリケーションは、回路として与えられる関数に関する。従って、１つの重要な処理は、回路により与えられる関数についての演算であり、それは通常的にはその回路に関する記号を用いたシミュレーションで実行される。これは、入力変数を表現する関数についてのＯＢＤＤが構築されることを意味する。これは容易である、というのは、その関数ｘｉに関するＯＢＤＤは、０後継部（０−ｓｕｃｃｅｓｓｏｒ）としての０シンク（０−ｓｉｎｋ）及び１後継部としての１シンクと共にｘｉでラベル付けされたノードのみから成るためである。回路はあるトポロジ的順序で評価され（各ゲートは、先行する総てのものが考察された後に考察される）、演算は各ゲートについてなされる。演算は、合成操作を用いて入力での関数を表現するＯＢＤＤを結合することによる、出力における関数表現である。
【０１９５】
別の可能性は、所与の回路がより大きなブロックを形成することである。そのような場合には、ＯＢＤＤは、各ブロックによって計算される関数について計算され、関数による処理置換と共にＯＢＤＤを結合する。算出されるＯＢＤＤの場合には、２つの回路により表現された関数に関し、等価性について回路を検査するためにＯＢＤＤに関する等価的な処理が行なわれる。
【０１９６】
論理照合のようなアプリケーションでは、考察される関数についての署名が演算される。署名は、効率的に算出されることの可能な及び異なる関数については異なっているような関数特性である。署名は所与の関数が異なっていることを検出するために使用され得る。非常に簡易な署名は、ある関数の入力を満たす数である。ＳＡＴカウントの処理は、それを算出するため及び適切であれば他の署名を算出するために使用され得る。
【０１９７】
図７は、システム５４内に包含され得る１以上の素子間の例示的な相互作用を示す概略図である。図７は、例示的な一群の開始点６４ａ−ｃ、一群のＰＯＢＤＤ要素６６ａ−ｃ及びＢＤＤ要素６８を示す。これらの要素は概念的に表現されており、システム５４に関連する一般的な原理を説明することが意図されている。ＰＯＢＤＤ技法が使用され、そのようなアーキテクチャについて分析が実行される。ＰＯＢＤＤ要素６６ａ−ｃは、ターゲット回路５６に関するリーフ又は区分を表現する。各々のＰＯＢＤＤ要素３４ａ−ｃは、ＢＤＤ要素６８に結合され、各々はシステム５４に備わる可到達性の分析についての画像処理手順を表現する。可到達成分析は正式な又は準正式な検査でシーケンス回路について実行される。
【０１９８】
正式な検査に関し、可到達性の分析はターゲット回路５６の所与のセグメントについて実行されることが、一般に適切である。どの状態が初期状態から到達可能であるかについての問い合わせは検査内容を反映する。一般的には、可到達成分析は別の問題をまねく。可到達性分析は、一群の遷移関係を構築すること及びその群のメンバ総てを結合することで実行される。回路に関する主要な入力及び現在の状態変数は、この態様から実在的に定量化され得る。概念的には、論理積が最初に行なわれ、定量化が２番目に実行される。この分析（特に、論理積段階）のグラフは、不具合を起こす又は過剰に大きくなり得る。その不具合に起因して、ＢＤＤ公式的検査は実用的ではない。システム５４は画像のローカルな区分化を行なうことでこれらの問題を回避する。画像演算の問題は、その連結の問題を解決するためにＰＯＢＤＤデータ構造５８を利用しながら解決される。対応するＰＯＢＤＤ構造の各リーフ（ＰＯＢＤＤ要素６６−ｃ）は、最終的な画像の部分集合を表現する。各リーフは、論理積及び定量化の処理の完了を反映する。各リーフ（又はその画像の部分集合）は、演算が完了した後に特定の機能を有する別の管理部に転送される。別の演算は、（適切であるならば）別の変数順序を用いて各リーフについて行なわれる。或いは、それらのリーフが結合され、特定のニーズにより適切にプロセッサに与えられる。適切な区分化は、主要な入力、状態変数又はローカルな分解変数にて実行され得る。
【０１９９】
画像は共通の順序で分解され、その分解はターゲット回路５６の検査に関する安価な処理を提供する。連結／定量化処理は概して高速である、というのは、それが別の順序で利用され得る区分けされた構造に関して行なわれるからである。また、任意の検査ツールについて、実際の検査が行なわれ且つ特定の機能を提供し得る。
【０２００】
システム５４は、高価になる論理積（ＡＮＤ）演算を回避する改善された検査プロセスを提供し得る。ＡＮＤ処理は一般に演算中に不具合を起こすが、定量化後は小さくなる。場合によっては、グラフは、たとえ後に小さくなり得るとしても、画像処理中に非常に大きくなり、検査手順がもはや停止してしまう。システム５４はローカル区分化でこれらの困難性を未然に防ぎ、その区分化は顕著に高速であり、実質的に廉価なコストで済み、論理和（ＯＲ）機能を起動し得る。
【０２０１】
システム５４のいくつかの動作を説明するために実施例が与えられる。この内容は説明目的のためのみに使用されるので、この実施例はここに含まれる事項を限定するよう解釈されるべきでないことは、重要である。多くの演算（ＯＲ若しくはＡＮＤ機能又は双方）は、一般的には固定点に到達する前に実行される。例えば、ステップ１０及び１１の間で不具合が生じる。そして区分化が実行される。問題は、区分化が必要とされることを、ＢＤＤが不具合になった後でしか知らされないことである。変数はその不具合を軽減するように選択されるが、不具合が既に生じているので、不具合以前の最後の状態に戻ることは一般に冒険的で困難である。これは、部分的には、演算が可逆的でないことことに起因する。
【０２０２】
他のアプリケーションでは、ミクロなステップ（この例ではステップ１乃至９）は一般的には破棄され、これは高価にしてしまうことに留意を要する。システム５４は、不具合が論理積（ＡＮＤ）段階にて深刻でないことを見分けることで、そのような浪費を回避する。演算が実行される各時点では、記録が維持される、又はそれらが共に結合される場合に、与えられる監視関数がＢＤＤのクラスタにより示される異常な挙動を記録する。異常な挙動は大きなグラフによって表現され、そのグラフは予測されるものより顕著に大きい。このグラフが過剰に大きい場合は、特定の処理についての演算が始まる。
【０２０３】
例えば、クラスタ＃７９及び＃８０が、それらが結合される場合に不具合を起こすことが２つのステップにて見出された場合に、コストを得るためにコスト計算が実行される（例えば、グラフ中の変数の順序）。将来的に、クラスタ＃７９及び＃８０が不具合を起こすと見受けられるならば、リストを算出するためにコスト計算が（結果の予測に）使用される。その予測リストは適切な区分けを選択するために使用される。
【０２０４】
以後の評価における＃８０及び＃８１の間で不具合が起こる場合にも、そのような対応がなされる。予測リストは改善され、より多くのクラスタを与えるために、より多くのクラスタが対応する方程式に付加され得る。コスト計算は適切な場所で行なわれる。この予測リストは、実際に不具合が生じる場合の将来的な計算に使用され得る。
【０２０５】
複数の区分中ローカルな区分けを単独のＢＤＤにＡＮＤ処理する間に、任意の２つの不具合に関し、システム５４は全体的な又はグローバルな区分けに関する影響を収集するために使用される。動的な区分けの場合には、区分けツリーは均衡している又は不均衡であり得る。所与のツリーに関し、トップレベル変数は‘Ｘ’に等しく：０に等しいＸはある区分を生成し、１に等しいＸは別のものを生成する。これは、動的であり得る付加的な区分けの契機又はそのトリガとなる。予測リストが使用され、可能性のある結果の予測にて生成される。
【０２０６】
また、いくつかのウインドウでは（それらを結合することを意図する場合に）、所定のウインドウ（例えば、＃１及び＃２）が共に包含されるべきことが判別される。分析の終わりには、複雑な一群のＢＤＤ結果が生成される。ローカルな予測は、最適な結果を得るために複数区分を共通のウインドウに結合するために使用される。そのような手法は、効率を改善し、ＢＤＤ処理に付随するコストを減らすように動作し得る。
【０２０７】
教示内容を説明するために、ＰＯＢＤＤ技法に関連して実行されるいくつかの画像処理及び事前画像処理を説明することが有益であろう。関数は、一般に、ある領域を共通する領域に対応付ける。変数はＸで表現され、出力はＹで表現される。Ｘの組合せの各々はＹに関するいくつかの表現になる。Ｘの組合せの各々ついて、結果として生じる固有の組合せが存在し、それはその関数を定義し得る。画像は、その関数に関連する所定の操作結果として生成されるものである。ある操作又は処理がその領域に適用され、その結果生じるものが画像である。例えば、複数の状態が用意され、それらの状態から多くの他の状態に到達可能である。ターゲット回路５６内では、１０個の状態から１０００個の状態に到達可能である。その１０００個の状態は、１０個の状態に関連する画像を反映するものとして考察される。
【０２０８】
画像処理は、対応する画像を投影する何らかの写すものを与えるプリズム又は鏡と考えられる。所与の画像に対して、対象物又はオブジェクト及び鏡又はミラーは、その画像を導出するために使用される。オブジェクトは、当初の１０個の状態として言及され、ミラーはその処理であり、１０００個の状態は画像群である。同様に、事前画像処理が定められる。この例での事前画像処理は、１０００個の状態によって表現され得る。その処理もミラーによって表現され、これら２つの変数を用いてオブジェクトが導出される。従って、画像処理の場合に、オブジェクト及びミラーが存在し、その影響又はリフレクションが求められる。事前画像処理の場合は、リフレクション及びミラーが存在し、求められるものは、その画像を投影した当初のオブジェクトである。
【０２０９】
状態分析における画像処理は、遷移／関連付け処理として言及される。遷移／関連付け処理は、所与の状態空間で可能な遷移を結びつけ、そこでは、対応付け又はリンクが存在しないことに起因して、状態１から状態１０へ動くのを禁止する所定の規則が存在する。可能な及び不可能な遷移は、その後に捕捉され得る。そして、ミラー（遷移／関連付け処理）は、そのシステム／回路／状態でどのような遷移が可能であるかを示す。
【０２１０】
遷移／関連付け処理に関するあるアプリケーションの後にアクセスされ得るほんのいくつかの状態が存在する。従って、遷移／関連付け処理を適用した後にその地点からより深い深度への移動がもたらされる。同様に、状態１０００から、遷移／関連付け処理を用いて当初の状態の値が判別され得る。従って、事前画像処理は所与の状態群について行なわれる。画像は、ミラー（遷移／関連付け処理）によって与えられるような状態のリフレクションである。画像及び／又は事前画像処理法は、ターゲット回路１２内で何が深いかを判別するために使用され得る。
【０２１１】
実施例における「より深い（ｄｅｅｐｅｒ）」という語は、分析されるターゲット回路１２に関連付けられる深度パラメータに言及している。所与の状態が到達可能であり、他の状態は事前の作業を最初に行うことなしには到達され得ない。状態は一般的には異なる深度を有する、というのは、ある固定点演算は早期に終了し、別のものは所与の試験回路内に深遠に伸びる。このことは、所与の関数の属性に準拠している。所与の関数は、あるウインドウ又は部分空間の下で、分析が深く伸びて続くように構成される。加えて、実証的に深い状態及び帰納的な状態群が存在し得る。実証的に深い状態は、一般にそれらが深いか否かを判別するために相当の作業量を必要とする。帰納的な状態群は一般的には深度に関して何らの保証も与えない。機能的な状態は（潜在的には速やかに）与えられるが、それらの状態が深いか否かは未知である。従って、それら２つの原理のバランスをとるのが一般的である。適切に検査技法を実行するには、速度も深度も無視され得ない。ＰＯＢＤＤデータ構造５８を用いることで、潜在的に深いいくつかの状態が計算され、又は所与の状態が「通常的に」深いものとして射影され、これらの状態がサンプリングに関して目標視される。
【０２１２】
また、適切な時間間隔が、試験対象の所与の回路内の複数の部分空間のサンプリングに関連して設けられる。所定の期間は、ターゲット内の様々な部分空間を評価するために用意される。その期間が満了すると、プロセスは停止し、判定が行われる。その期間は、所与の検査プロセスに関連する便宜的な項目又は実際的なパラメータに準拠し得る。指定された期間内で何らの深い状態も見出されなかった場合は、そのプログラムは、より大きなタイムアウト値を含む別のモードで動作し得る。或いは、選択を実行する手法は、既にサンプリングした任意の部分空間（又は空間の種別）が再度訪問されないように変更可能である。深い状態に遭遇することの保証又は確実な証明を与えることで、効率に関する顕著な利益が最小の損失で達成され得る。効率に関するこの利益は、その損失に比較して不釣合いに大きくなり得る。
【０２１３】
図８は、ターゲット回路５６に関連する画像演算を実行する方法に関する一連の例示的ステップを示す概略的フローチャートである。本方法は、設計者がターゲット回路５６のような特定の回路を評価する場合であって、検査される必要のある特性に着目する場合に開始される。ＰＯＢＤＤデータ構造５８はステップ４００にて起動される。パラメータがＰＯＢＤＤデータ構造５８に通知され又は与えられ、時間間隔もプログラムに与えられる。例えば、ＰＯＢＤＤデータ構造５８によって実行されるプログラムは５０００秒を超えることができないことが指定され得る。
【０２１４】
ステップ４０２では、可到達性分析を実行するために一群の遷移関係が作成される。ステップ４０４では、ＰＯＢＤＤデータ構造５８が部分空間を分割し始め、選択された深度での検査を許容するように部分空間が識別され得るか否かを判別し、その部分空間は割り当てられた特性を与える又はそれによって決定されるものである。この手順がその時間間隔内に実行されるならば、その手順は申し分ないものとされる。プログラムがその時間間隔内で実行されなかった場合には、達成した最大深度が表示され得る。或いは、タイムアウト期間が修正され、再度プログラムが実行され得る。別の場合では、部分空間のサンプリング場所は、最適な深度に達するように適切に変更され得る。
【０２１５】
ステップ４０６では、集合中の各メンバは連結され、それにより不具合が生じ得る。この不具合はこの結合段階で最も生じやすい。ステップ４０８では、ＰＯＢＤＤデータ構造５８が起動され、最終的画像の部分集合を表現するリーフを包含する。選択された変数に関して区分けが注意深く行なわれる。選択基準（例えば、アルゴリズム要素６０のような任意の適切な場所に含まれる）は、不具合時点でメモリ中のスナップショット（ｓｎａｐｓｈｏｔ）を収集又は抽出する。これは、形成されたＢＤＤを全体的及び部分的双方を反映する。この情報は、変数がデータの区分けに関して最良に位置付けられることを判別するように使用される。加うるに、区分けは、例えば主要な入力、状態変数又はローカル分離変数に準拠して実行され得る。従って、変数は、検査プロセスを開始するため使用される、より多くの有利な変数を見分けるために変数の部分集合中から注意深く選択される。
【０２１６】
ステップ４１０では、各リーフが別々に計算される（連結及び提供化の双方）。これは、別々の変数順序（可能であるならば）を利用して実行される。各区分又はリーフを分析するために別々の管理部も使用され得る。いくつかの区分は単独のＢＤＤに結合され、残りは全体的区分として押し出される。これは、高価でない処理を与え、総ての画像が共通の順序で分離される又は論理和がとられる（ＯＲｅｄ）。加うるに、画像の各部分集合（又はリーフ）はそれが完了すると速やかに転送される。このことは、（いくつかの部分集合が不具合を有する場合でさえも）、直交する部分集合が、部分的な画像分析を達成することを可能にし、それは困難ではなく；これは検査装置又は設計者にとって有益である。違反した特性に遭遇したことを識別し、或いは、結果的に潜在的に影響される整合性パラメータがシステム５４によって生成され、ターゲット回路５６に関連する不完全性や不具合を見分ける。この情報は、製造工程や設計工程に関連する問題点や仕様を修正したり対処したりするために使用される。或いは、ＰＯＢＤＤデータ構造５８によって生成されるその情報や成果は、関連する製品が設計者によって与えられる基準に合致するように対処するために使用され得る。
【０２１７】
所与の領域に関するランダムサンプリングは、ターゲット回路５６に関連する合理的な評価を与える。サンプリングは、他の部分空間がサンプリングされると他のエラーに遭遇するような保証を要しない。実際には、製品設計者又はディジタルシステムオペレータは、所与の検査手順に関連するその目的及び精度パラメータを定める。
【０２１８】
図８に示されるいくつかのステップは、それが適切な場合には変更又は削除されることが可能であり、追加的なステップがフローチャートに付加されることも可能である。これらの変更は、本発明の範囲又は教示内容から逸脱せずに、具体的な検査アーキテクチャや特定の境界モデル検査構成やコンフィギュレーションに準拠するものである。
【０２１９】
本発明は、特定の実施例に関連して詳細に説明されているが、システム５４は任意の状況に拡張されることが可能であり、その状況では、選択されたタスクを実行する又は指定された特性を包含するように設計又は製造される所与のターゲットについて、検査が行なわれる。更に、システム５４によって顕著なフレキシビリティが得られ、任意の適切な１以上の要素が、それらの動作を向上させる別の要素と置換され得る。例えば、システム５４は、ＰＯＢＤＤデータ構造５４及びアルゴリズム要素６０のような具体的な要素を参照しながら説明されてきたが、これらの要素は、それが適切ならば単一の一体的装置内に設けられることも可能であり、又はそれらの機能をもたらす装置と置換されることも可能である。ＰＯＢＤＤデータ構造５８は、その検査能力を強化するために、他の適切な検査又はシミュレーションプロトコルと共に使用され得る。加えて、設計者情報６２は任意の適切な手法でＰＯＢＤＤデータ構造５８に通知され或いは与えられる。
【０２２０】
加えて、システム５４は１以上の個別素子を参照しながら説明されてきたが、処理動作を向上させるために、追加的な中間的要素がシステム５４に設けられることも可能である。例えば、追加的な要素は、適切な要素及びＰＯＢＤＤデータ構造５８間の情報通信に使用され得る。本発明は広範な汎用性の恩恵に浴することが可能であり、これらの要素は様々な中間的処理要素に関連して適切な形式で動作することが可能であり、所与のターゲット要素又はオブジェクトに関する検査手順を支援する。
【０２２１】
図９は、ターゲット回路７２に関連する２進判定図（ＢＤＤ）を形成するシステム７０の概略ブロック図である。システム７０はＢＤＤデータ構造７４を含み、それは、ＢＤＤデータ構造７４を構築するよう動作するアルゴリズム７６に結合される。加うるに、システム７０はＢＤＤデータ構造７４の構成に影響する情報を通信するために使用される設計情報部７８を含む。設計者情報７８は、エンドユーザにより入力され又はテストされるよう求められる特定の情報を反映することができる。システム７０は、一般的には、集積回路、ディジタル要素、処理構成要素又はＢＤＤ手順や処理が行なわれる２進アーキテクチャ内で区分化され、又はそうでなければそれらに関連して動作する。加えて、システム７０は、情報又はデータのディジタル処理に関連する任意の装置、部品、ハードウエア、ソフトウエア、オブジェクト又は要素と協働して設けられる。
【０２２２】
本発明の教示内容によれば、システム７０は最適な結果を得ることの可能なＢＤＤ構築法を与えるよう動作する。システム７０はチェックポイント手順（ｃｈｅｃｋｐｏｉｎｔｉｎｇ  ｐｒｏｃｅｄｕｒｅ）を与え、（所与のグラフに対応するノード数に関連して）２つの閾値が印される又はマークされる。これら閾値は少数又はマイナー閾値と多数又はメジャー閾値とで識別され、適切なＢＤＤ管理部はそれら各自のＢＤＤを適切なファイルに（又は任意の適切な格納装置、オブジェクト又は要素を通じて）格納し得る。所与のＢＤＤの構築中にメジャー閾値に到達し、ＢＤＤが更に減少され得ない場合には、別のＢＤＤパラメータを包含する複数のＢＤＤ作成スクリプトが使用される。そのスクリプトによるＢＤＤが使用され、そのＢＤＤのサイズは許容可能な限界に合致する。このことは、ＢＤＤサイズが、例えば合成、検査、等価性検査又はシミュレーションを包含する任意のアプリケーションに対して制御され得ることを可能にする。ＢＤＤサイズは、メジャー又はマイナー閾値に対応してそのＢＤＤに関して減少され得る。マイナー閾値を目標視する場合には、より大きなＢＤＤをアドレス指定する必要性はほとんど無い。ＢＤＤを減少させるスクリプトが最も使用される。システム７０は、リソース消費及び設計者やエンドユーザに関する労力を最小化しつつ、チェックポイントＢＤＤ削減が迅速且つ適切に行なわれることを可能にする。
【０２２３】
教示内容を説明するために、システム７０によって対処され得る、いくつかの問題についての一般的な説明を行なうことが有利であろう。この内容は、例示として与えられ、任意の適切な回路環境に対するシステム７０の目的及び用途を制限するように解釈されるべきでないことに留意することが重要である。正式な検査に関し、一般に、装置の初期状態から到達可能な状態を判別するために、可到達成分析が所与の設計内容について行なわれることが必要とされる。また、合成又は等価性検査において、大規模且つ複雑な公式（ｆｏｒｍｕｌａ）についての充足可能性が判別される。しかしながら、ＢＤＤ（一般的には、殆どのアプリケーションについての計算に対する選択された伝達手段（ｖｅｈｉｃｌｅ）を反映する）は、深刻な困難性の被害を被る。
【０２２４】
一般的には、所与の演算は連結及び定量化セグメントを含む。定量化の後に、一般的には、分析に関連するグラフは小さくなる。一般に、データ構造のグラフは所与の関数を表現するために生成される。ＢＤＤのデータ構造が大きすぎて、過剰な情報を保持するような場合には、それは過剰に大きいものと解釈される。そのような状況はローカルな不具合として説明又は言及される。
【０２２５】
（例えば）５百万ノードにわたる結果を生成する任意の分析はＢＤＤを生成し、その分析は非実用的であり、又は各々の再配列化呼出用の許容可能な期間を上回る必要がある。グラフはそのような大きなサイズに到達することから妨げられることは重要である。多くの合成及び検査ツールはＢＤＤを用いる。しかしながら、ＢＤＤは非予測性の性質を有する。例えば、ある方法は所与の演算で小さなＢＤＤを生成するが、以後のステップで全体的には非実用的な場合がある。一般に、そのサイズが過剰に大きく、再配列化がＢＤＤを許容可能なサイズに減少させ得ない場合に、ＢＤＤアプリケーションは停止又はアボートされる。
【０２２６】
システム７０はそのようなサイズの問題に対処し、連結又は定量化段階で不具合に関する問題を解決するために使用される。ＢＤＤはコンピュータ技術分野でそのような広範な用途を有するので、システム７０は例えば合成、検査、等価性検査又はシミュレーションに関連付けられた適切な環境に適用され得る。ＢＤＤは特定の形式に構築され得る。許容可能なＢＤＤが構築されると、所与の設計者に関する問題又は課題が解決される。その形式は回路又は別の形態であり、その形態は所与の回路に関して導出され得る。その形態は、それが解決された場合に（その形態に対するＢＤＤを構築する）、アプリケーションが良好に完了したものとして見受けられるようにするものである。従って、適切なＢＤＤを形成することは、そのような場面で優れた成功を収めることを可能にする。
【０２２７】
出力を形成する関数（例えば、‘ｆ’）を有する所与の回路に関し、ＢＤＤは、アルゴリズム要素７６に格納された適切なアルゴリズムを用いて、‘ｆ’が形成されるようにその回路に関して構築される。アルゴリズム要素７６はＢＤＤを生成し、その要素はターゲット回路７２についての所与の出力に相当する。この意味において、アルゴリズム要素７６は、ターゲット回路７２内の要素に対応するゲートを構成する。１以上のＢＤＤ管理部は対応するプログラム内に包含され、各ＢＤＤ管理部は所与の回路における総てのＢＤＤ中の一部を所有するものとされる。各ＢＤＤ管理部は総てのＢＤＤにある順序を課し、システム７０は選択される管理部を破壊、生成、又は制御／修正する能力を与える。各ＢＤＤ管理部はその管理部の下で総てのＢＤＤについての責任を有する。
【０２２８】
動作時にあっては、ＢＤＤが特定の閾値を越えると、総ての選択されたＢＤＤ、その特定の地点に関するＢＤＤ、ゲート又は動作内容が格納され得る。ＢＤＤが形成される場合は常に、それはシーケンス的な又は時系列的なプロセスのものである。例えば、ポイント／ゲートＡ１，Ａ２はＢ１を生成するために使用され得る。Ｂ１が格納又は識別されると、ポイントＡ１，Ａ２はＢ１は破棄又は削除される。同様に、Ｂ１は、Ｃ１を生成するためにＢ２と共に使用され、Ｂ１，Ｂ２は不適当なものになる。そして、選択されたＢＤＤがマッピングされ及び格納され、そのＢＤＤはメジャー及びマイナー閾値ポイントに対応し、Ｂ１が識別された後にＡ１又はＡ２のようなポイントに消費されないように最適化されるようにする。所与のファイルはメジャー及びマイナー閾値ポイントを包含し、そのファイルは所与のターゲット回路７２の評価又は検査に従事するエンドユーザを案内する。
【０２２９】
システム７０は、エンドユーザ又は設計者が、別のパラメータを用いて所与のアプリケーションを再実行することを可能にし、そのアプリケーションはより有利な結果をもたらし、不具合を回避することが可能である。ＢＤＤは一般に不安定であり、パラメータの小さな変化でさえ、関連するグラフを過剰に大きくさせる虞がある。従って、何らかの結果を得るために所与のスクリプト又はパラメータを置換する又は変更する無数の可能性が存在する。ある重要なアプリケーションは実行され、それによりグラフは大きくなり始める。グラフが不具合を生じると、設計者は特定のポイントの記録をとり、グラフの特定のサイズを識別する。そして設計者は以前のＢＤＤ（例えば、マイナー閾値におけるＢＤＤ）に戻り、その情報を利用して分析を続けることができる。例えば、メジャー閾値はターゲット回路７２に関連付けられた所与のＢＤＤ中での１千万ノードとして表現され、マイナー閾値は２百万ノードとして与えられることが可能である。従って、設計者は、グラフが１千万（この例でのメジャー閾値）を超える場合には２百万ノードのグラフを利用し、その分析を続けるために別の方法又はスクリプトの仕様を試みることが可能である。そして、以後の試行における２百万転送（ｆｏｒｗａｒｄ）から採用される経路は、従前の場合に採用された当初の経路とは異なる。
【０２３０】
システム７０は、基本的なＢＤＤアルゴリズム、及びアルゴリズムを導出するために使用されるスクリプト内のパラメータを判別するために使用され得る。アルゴリズムはＢＤＤを構築するために使用され、関数（ｆ）は達成されることが求められる対象を表現する。使用されるパラメータは典型的にはスクリプト内に包含され、そのアルゴリズムは別々に包含され、システム７０が、全プロセス環境に影響を及ぼすことなしに、分析内容に影響を与える簡易な手法を与えるようにする。従って、メジャー閾値に遭遇すると、処理はマイナー閾値に復帰することができ、且つそのマイナー閾値から、グラフはパラメータ設定に関する所定の修正内容と共に再度開始させられる。例えば、設計者は、変数順序、クラスタサイズ、分解ポイント、変数分離、生成されるウインドウ数、使用されるウインドウ種別、使用される変数又は使用される区分数等に関連するパラメータを調整し得る。そして、修正されたパラメータと共にスクリプトが実行又は使用され、そのスクリプトは以後のグラフに関する一層良好な経路を与えようとする。
【０２３１】
動作時にあっては、システム７０は、グラフ（ＢＤＤ）が大き過ぎる場合にフェイルオーバー（ｆａｉｌｏｖｅｒ）機能を与える。所与の関数‘ｆ’が生成されることを要する。しかしながら、‘ｆ’に関連するＢＤＤは過剰に大きくなり得る。以前の試行内容が許容できないグラフを生成した場合に、調査（ｉｎｑｕｉｒｙ）は、どのようにして‘ｆ’を生成するかに対処する。不具合の際に、任意的な地点‘ｇ’（マイナー閾値）に到達し、第２の地点‘ｈ’（メジャー閾値）にも到達し得る。しかし、何らかの異なる手法で‘ｇ’を用いてグラフが再度開始される。そして、ＢＤＤに関連する閾値ノードレベルが、グラフの再試行用の開始点として記録され及び使用される。この意味において、システム７０は、ＢＤＤグラフに関する所与の手法を良好に評価するプラットフォーム又は基盤を提供する。細心の検査又は強化された精査若しくは観察が、それらが形成されるＢＤＤになされる。適切なＢＤＤを形成するために処理を再実行させることで、スクリプト内のパラメータを操作することによって、（所与の関数を有するＢＤＤを形成する際に）成功する機会が増える。
【０２３２】
また、システム７０は並列処理を確立する機会を与える。マイナーポイントが識別された後に、スクリプト内でいくつかのパラメータを変更する複数の構成又はコンフィギュレーションが構築される。修正されたスクリプトは、それら所与のＢＤＤに関して最適なグラフを得ようとするために、並列的にいくつかの装置を走らせる。そのような機構は、不具合に遭遇しない、装置を良好にアプリケーションを作動させる可能性を顕著に増進する。適切なスクリプトは、そのような最適な結果を生成するために各コンフィギュレーションに使用され得る。
【０２３３】
加うるに、システム７０は、検査されることが求められる様々な多数のアーキテクチャを収容する基盤又はプラットフォームを与える。システム７０はツールを提供し、そのツールは例えば検査プロセスに使用される任意の種別のＢＤＤを構築し得るものである。更に、システム７０は、処理を並列化し、且つ到達可能性手順の速度を顕著に増進させるのに有利に使用される。また、ＢＤＤ形成速度におけるそのような機能強化は、より迅速な検査ツールを形成することも支援し、特定の要請に従う準正式な検査ツールを形成することも支援する。加うるに、ＢＤＤアーキテクチャ形成の迅速性は、部分的には、チェックポイント機構に起因し、その機構は、ＢＤＤがファイルにマッピングされ、それらが過剰の大きくなる場合に適切に格納されることを可能にする。複数のスクリプト特定のＢＤＤ（例えば、所与のＢＤＤにおける複数の変数順序）にて実行されるために招集され得る。任意の特定のスクリプトがＢＤＤのサイズを減らすことが可能な場合には、その他のスクリプトは破棄され、良好なＢＤＤが反復される。検査される特性が非常に臨界的（ｃｒｉｔｉｃａｌ）であるため、検査手法の不具合が容易に又は簡易に許容され得ないような場合に、そのような手法は実用的である。そのような場合には、一群の変数順序、サイズのクラスタ化、定量化スケジュール、変数分離選択肢等は、どの選択が最も効率的であるかを見分けるために使用され得る。不具合演算以前に適切に実行されていた演算に関するスクリプトを実用化することで、小さなＢＤＤに対してでさえも、最適なスクリプトが識別され得る。加うるに、一群のコンピュータが利用可能である場合に、複数の装置が使用され得る。これが特に有利であるのは、ＢＤＤは本質的には並列化が困難であるためである。従って、各々の異なる演算の間に、設計内容は複数のウインドウに分割され、各ウインドウは、分散されたクラスタ形式の演算環境下で別々のプロセッサで処理される。
【０２３４】
ターゲット回路７２は、所与の関数‘ｆ’を有する電子的又はディジタル的なオブジェクトであり、そのオブジェクトはＢＤＤデータ構造７４により模擬されるよう求められる。ターゲット回路７２は、ターゲット回路７２と協働又は相互作用することの可能な、論理ゲート、カウンタ、インバータ、バッファその他適切な装置を包含する任意の関連回路、素子又はオブジェクトを包含し得る。ターゲット回路７２は代替的には任意の回路環境下における２進データ又はディジタル情報を処理することの可能な、任意の他の適切な装置、素子、アーキテクチャ、回路配置、ハードウエア、ソフトウエア、オブジェクト又は要素であり得る。ターゲット回路７２はいくつかの特性を包含するように（又はそれを実行し得るように）特別に設計され得る。本明細書で使用されているように、「特性」なる語は、ターゲット回路７２に関連し得る任意の能力、特徴、処理、動作又は挙動を包含する。動作時にあっては、ターゲット回路７２はＢＤＤデータ構造７４によって模擬され又は見せかけられ、ＤＤデータ構造７４が複数の指定された特性や特徴を実行するようにし、又は指定された動作特性をそれが実行するようにする。
【０２３５】
ＢＤＤデータ構造７４は、アルゴリズム要素７６により形成され且つターゲット回路７２により関連付けられた所与の関数‘ｆ’を実行する要素である。ＢＤＤデータ構造７４は、操作に関する論理関数を表現したものである。ここに言及されるように、ＢＤＤデータ構造７４は、適切であるならば、区分化され（又は区分化され減縮された）順序付けられた２進判定図（ＰＯＢＤＤ又はＰＲＯＢＤＤ）又はＢＤＤデータ構造（区分化される可能性はある）を包含し得る。ＰＲＯＢＤＤ及びＰＯＢＤＤなる語は、可換であり、それらのアプリケーションを説明する際に（場合によっては簡略化のため）適切な様々な形式で一般的に使用される。ＰＢＤＤデータ構造７４は、設計者情報７８を受信し、選択されたパラメータ群を包含する所与のスクリプトに従って構築される。
【０２３６】
ＢＤＤは、一般的には正準であり、それ故に複合的等価的な検査に使用され得る。ＢＤＤは、シーケンス回路検査用の到達可能な（可到達）分析に良好に適用され得る。可到達状態集合はＢＤＤとして表現される。これは、所与の時間間隔の間に対応するメモリ内で１つの区分のみを維持することで、メモリ要請を最小化する。加えて、可到達アルゴリズムを別々に用いて各区分について固定点演算が実行され、そのアルゴリズムは、ＢＤＤデータ構造により使用されるＰＯＢＤＤプロトコルに関連して、アルゴリズム要素７６内に包含され得る。
【０２３７】
実施例の動作に関しては、設計者及び製造者は、ＢＤＤデータ構造７４によって模擬されることを要する特性、特徴、動作又は挙動を識別する何らかのアルゴリズム又はプログラムを書いている。特性又は特徴は、それがＢＤＤデータ構造７４に通知される前に特定の構文で適切に書き込まれる。ＢＤＤデータ構造７４が形成され、ターゲット回路７２に関して指定された特性又は関数を反映するようにプログラムはその後に適切に実行される。
【０２３８】
アルゴリズム要素７６は１以上のアルゴリズムを包含するデータ処理オブジェクトであり、そのオブジェクトは具体的な又は指定された特性がＢＤＤデータ構造７４によって模擬されるのを可能にする。アルゴリズム要素７６は１以上のパラメータを包含し得る１以上のスクリプトを含み、そのスクリプトは一層小型のＢＤＤを生成するために修正され得る。アルゴリズム要素７６はＢＤＤデータ構造７４内に包含され、又は特定の処理要請又は配置形態に従ってそれらの外部に設けられ得る。加えて、スクリプト又はパラメータは、適切であるならば、具体的なニーズに応じて、別々の素子、モジュール又は要素としてアルゴリズム要素７６の外部に設けられる。加うるに、アルゴリズム要素７６は他の任意の外部素子と通信することが可能であり、その素子はターゲット回路７２内の部分空間を検査するために使用される１以上の命令又は特性を与える。更に、アルゴリズム要素７６は、ターゲット回路７２に関連付けられる１以上の特性を検査するために設計者情報７８を直接的に受信し得る。また、設計者情報７８は、ＢＤＤ構築手順に委ねられる回路又はヨウ素の種別を包含する又は指定する。アルゴリズム要素７６は、ＢＤＤデータ構造７４によって実行される検査動作を支援するように動作することの可能な任意の適切なハードウエア、ソフトウエア、オブジェクト又は要素を包含し得る。
【０２３９】
実施例及び教示内容を説明するために、ターゲット回路７２の部分空間に関連する選択された特性を模擬する場合に使用され得るいくつかのアルゴリズムを更に説明することが有益であろう。論理関数処理のための多くの演算は、ＯＢＤＤにより表現される関数に関して効率的に実行され得る。例えば、その基本的処理のいくつかは次の通りである：
１．評価。ＯＢＤＤに関し、ｆ及び入力ａに関するＧは、その値ｆ（ａ）を計算する。
【０２４０】
２．減縮。ＯＢＤＤに関し、Ｇは等価的な減縮されたＯＢＤＤを算出する。
【０２４１】
３．等価試験。ＯＢＤＤにより表現される２つの関数が等しいか否かを検査する。
【０２４２】
４．充足可能性問題。問題に含まれるものは次のとおりである：
−充足可能性。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力ａを見出す、又はそのような入力が存在しないことを出力する。
【０２４３】
−ＳＡＴカウント。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力数を計算する。
【０２４４】
５．合成（適用としても言及される）。ＯＢＤＤによって表現される関数ｆ及びｇに関し、Ｇは、Ｇ内に
【０２４５】
【数３３】
2004213619.tif 000035
に関する表現を含み、ここで
【０２４６】
【数３４】
2004213619.tif 000036
は２進論理演算（例えば、Λ）である。
【０２４７】
６．置換（交換とも呼ばれる）。
【０２４８】
−定数による置換。ＯＢＤＤにより表現される関数ｆ、変数ｘｉ、及び定数ｃ∈｛０，１｝に関し、ｆ｜ｘｉ｜＝ｃに対するＯＢＤＤを計算する。
【０２４９】
−関数による置換。ＯＢＤＤにより表現される関数ｆ及びｇ、変数ｘｉに関し、ｆ｜ｘｉ｜＝ｇに対するＯＢＤＤを計算する。
【０２５０】
７．一般的定量化及び実際的な定量化。ＯＢＤＤにより表現されるｆ及び変数ｘｉに関し、それぞれ
【０２５１】
【数３５】
2004213619.tif 000037
を満たすＯＢＤＤを計算する。
【０２５２】
ＯＢＤＤパッケージでは、通常的には、減縮したＯＢＤＤのみが表現されるように、演算負担軽減は他の演算の中に統合される。ＯＢＤＤの多くのアプリケーションは、回路として与えられる関数に関する。従って、１つの重要な処理は、回路により与えられる関数についての演算であり、それは通常的にはその回路に関する記号を用いたシミュレーションで実行される。これは、入力変数を表現する関数についてのＯＢＤＤが構築されることを意味する。これは容易である、というのは、その関数ｘｉに関するＯＢＤＤは、０後継部（０−ｓｕｃｃｅｓｓｏｒ）としての０シンク（０−ｓｉｎｋ）及び１後継部としての１シンクと共にｘｉでラベル付けされたノードのみから成るためである。回路はあるトポロジ的順序で評価され（各ゲートは、先行する総てのものが考察された後に考察される）、演算は各ゲートについてなされる。演算は、合成操作を用いて入力での関数を表現するＯＢＤＤを結合することによる、出力における関数表現である。
【０２５３】
別の可能性は、所与の回路がより大きなブロックを形成することである。そのような場合には、ＯＢＤＤは、各ブロックによって計算される関数について計算され、関数による処理置換と共にＯＢＤＤを結合する。算出されるＯＢＤＤの場合には、２つの回路により表現された関数に関し、等価性について回路を検査するためにＯＢＤＤに関する等価的な処理が行なわれる。
【０２５４】
論理照合のようなアプリケーションでは、考察される関数についての署名が計算される。署名は、効率的に算出されることの可能な及び異なる関数については異なっているような関数特性である。署名は所与の関数が異なっていることを検出するために使用され得る。非常に簡易な署名は、ある関数の入力を満たす数である。ＳＡＴカウントの処理は、それを算出するため及び適切であれば他の署名を算出するために使用され得る。
【０２５５】
教示内容及び実施例を説明するため、ＰＯＢＤＤ、ＰＲＯＢＤＤ及びＢＤＤ処理に関連するいくつかの原理及び概念が以下に与えられる。与えられる説明は、区分化ＢＤＤ技法に関連する幾分複雑な理論の理解を支援するためのみに行なわれる。その説明は、システム７０の任意の要素の動作を限定するように解釈されるべきではない。以下の説明は、例示のみを目的としていること、及びＰＯＢＤＤデータ構造７４により実行され得る又はＢＤＤ構築プロセスに包含される任意の要素で実行され得る他の任意の適切な処理内容を限定するように解釈されるべきでないことを認識することが不可欠である。
【０２５６】
区分化ＲＯＢＤＤを説明するために、以下の例を考察することが有益である。ｎ入力Ｘｎ＝｛ｘ１，．．．，ｘｎ｝について定義される論理関数
【０２５７】
【数３６】
2004213619.tif 000038
を想定する。ｆの区分化ＲＯＢＤＤ表現Ｘｆは次のように定義される：
Ｘｎ上で定義される所与の論理関数
【０２５８】
【数３７】
2004213619.tif 000039
に関し、ｆの区分化ＲＯＢＤＤ表現Ｘｆは、ｋ個の関数対の組
【０２５９】
【数３８】
2004213619.tif 000040
であり、ここで、１≦ｉ≦ｋに関して
【０２６０】
【数３９】
2004213619.tif 000041
であり、Ｘｎ上で定義され、以下の条件を満足する：
１．
【０２６１】
【数４０】
2004213619.tif 000042
は、１≦ｉ≦ｋに関して、可変順序πｉを有するＰＯＢＤＤとして表現される。
【０２６２】
２．ｗ１＋ｗ２＋．．．＋ｗｋ＝１。
【０２６３】
３．１≦ｉ≦ｋに関して、
【０２６４】
【数４１】
2004213619.tif 000043
である。
【０２６５】
この例における＋及びΛは、それぞれ論理的な和（ＯＲ）及び積（ＡＮＤ）を表現する。集合｛ｗ１，．．．，ｗｋ｝はＷで記される。
【０２６６】
各ｗｉは、ウインドウ関数として言及される。直感的には、ウインドウ関数ｗｉは、ｆが定義されている論理空間の部分を表現し得る。総てのペア
【０２６７】
【数４２】
2004213619.tif 000044
は、関数ｆの区分化を表現する。この例では、「区分化」なる語は、複数の区分けが分離しなければならない意味に使用されるものではない。（上記に与えられている）条件１−３に加えて、ｉ≠ｊに関してｗｉΛｗｊ＝０ならば、それらの区分は直交している。
【０２６８】
【数４３】
2004213619.tif 000045
の各々は、通常の意味での区分けとして考察される。
【０２６９】
区分化ＰＯＢＤＤを構築する場合に、区分化ＰＯＢＤＤの実効性又はパフォーマンスは、一般に、その関数がコンパクトに表現され得る論理空間の実効的な区分けを生成する能力に依存する。論理空間の適切な区分けを見出すことは、区分化ＰＯＢＤＤ表現に関する核心的事項である。ここに説明されるものは発見的な例であり、それらはコンパクトな直交する区分化ＰＯＢＤＤを生成するのに効果的である。提示される手法では論理ネットリストが使用されるが、説明される技法は汎用的であり、任意の代替的な論理演算シーケンスに使用される又は拡張されることが可能である。
【０２７０】
ＢＤＤ区分化法の例では、ウインドウ数が事前に又はその都度動的に決定される。ウインドウｗｉが決定された後に、ウインドウｗｉに対応する論理空間内でＦを構成することで、それに対応する区分化ＲＯＢＤＤが得られる。区分化では、ある関数Ｆに関するＢＤＤ、分解されたＢＤＤ再表現物（即ち、入力変数によるものではないが、所与のターゲット関数ＦについてＢＤＤを構築するプロセスで生成されるいくつかの擬似的な入力変数によるもの）が考察される。Ｆに関して区分化ＢＤＤを作成するために、関連する分解されたＢＤＤが、その区分化を与えるために分析される。この区分化判別は一般的に行なわれる、というのは分解ポイントΨ１，．．．，Ψｋで表現されるＦに関して分解されたＢＤＤは構築されないからである。分解されたＢＤＤから、Ｆに関する区分化ＢＤＤは、以下の３つの方法で形成される：
（１）入力変数を用いる区分化。入力変数の数が動的に変更される又は所定の定数に設定され得る。
【０２７１】
（２）「内部」変数を用いる区分化、即ち入力変数でない変数。そのような変数は、内部のゲートで導入される擬似変数であり得る。
【０２７２】
（３）１及び２の適切な組合せを利用する区分化。
【０２７３】
目下のフィルタリング形式の検査プロセスにおける任意の所与の時点で、分解された表現はｆｄ（Ψ，Ｘ）によって表され、ここで、Ψ＝｛Ψ１，．．．，Ψｋ｝は分解集合と呼ばれ、典型的には、ナイーブカット又はスマートカットプロセスによって選択された内部カットセットに対応し、
【０２７４】
【数４４】
2004213619.tif 000046
の各々は分解ポイントである。Ψｂｄｄ＝｛Ψ１ｂｄｄ，．．．，Ψｋｂｄｄ｝が、分解ポイントのＲＯＢＤＤを包含する配列又はアレイを表現するものとする、即ち、
【０２７５】
【数４５】
2004213619.tif 000047
の各々が、主要な入力変数に加えて（可能性のある）他の
【０２７６】
【数４６】
2004213619.tif 000048
の対応するＰＯＢＤＤ
【０２７７】
【数４７】
2004213619.tif 000049
を有し、但し、
【０２７８】
【数４８】
2004213619.tif 000050
である。同様に、Ψｉｂｄｄｗｉ＝の配列はΨｉｂｄｄｗｉによって表現され得る。ｆｄ（Ψ，Ｘ）におけるΨｉの構成［？］は、
【０２７９】
【数４９】
2004213619.tif 000051
により示され、ここで、
【０２８０】
【数５０】
2004213619.tif 000052
である。ｆｄ（Ψ，Ｘ）のベクトル分解は、
【０２８１】
【数５１】
2004213619.tif 000053
により示され、Ψｉのｆｄへの一連の構成を表現する。
【０２８２】
所与のウインドウ関数ｗｉ、分解表現ｆｄ（Ψ，Ｘ）及びｆのＲＯＢＤＤ配列Ψｂｄｄの下で、分解表現の区分化を考察する場合に、ｆｉは、ｆｉ＝ｗｉΛｆｉを表現するＲＯＢＤＤがｆより小さくなるように求められる。立方体だけであるところの総てのｗｉはこの要請を充足し得ることが、証明され得る。
【０２８３】
所与のｆｄ、Ψｂｄｄ、及びｗｉｓに関し、余因子Ψｗｉ及びｆｄｗｉが形成される。ＦｄｗｉにてΨｂｄｄｗｉを構成することによって、区分化関数ｆｉ＝ｆｗｉｆｉ＝ｆｗｉが得られる。所与の一群のウインドウ関数ｗｉの下で、ｆの区分化ＲＯＢＤＤｘｆは、
【０２８４】
【数５２】
2004213619.tif 000054
によって与えられる。上記の定義が定義１の総ての条件を満足するのを確認することは一般に容易である。
【０２８５】
ｗｉが立方体であるならば、ｆｉは、ｆについてのＲＯＢＤＤより小さなサイズを有する。また、ｗｉを表現するＲＯＢＤＤはｋ個の内部ノードを有し、ここでｋはｗｉ内のリテラル数である。ｗｉ及びｆｗｉは互いに素の関係を有するので、
【０２８６】
【数５３】
2004213619.tif 000055
である。また、ｆｉを構成する各々の中間結果は、ｆを構成するものよりも小さく、中間的なピーク的なメモリ要請も少なくなる。これは、ｆとｆｉが異なる変数順序を有する場合であって動的な変数再順列化を行なう場合には成立しない。実際には、動的な変数再順列化は区分化の場合における一層小さなグラフにて処理されるため、それは更に効果的である。
【０２８７】
ウインドウ関数がキューブ又は立方体よりも複雑な関数ＰＩである場合には、ｆｉ＝ｆｗｉが使用される。ｆｗｉはｗｉに関するｆの一般化された余因子である。ｗｉに関するｆの一般化された余因子は、一般的には、ｆよりも充分に小さい。しかし、想定される例では、ｉ番目の区分化ＰＯＢＤＤの大きさ
【０２８８】
【数５４】
2004213619.tif 000056
は、最悪の場合に０（｜ｗｉ‖ｆｉ｜）であり得る。これを回避するために、一般的なウインドウ関数を用いる場合に、一般的には小さいｗｉｓが使用される。
【０２８９】
ウインドウ関数の選択に関し、所与のウインドウ関数から区分化関数を構築する手法を決定した後に、適切なウインドウ関数を取得する方法が評価される。その方法は、２つのカテゴリに分解されることが可能であり、それらは：先験的選択と「探索的（ｅｘｐｌｏｓｉｏｎ）」選択である。
【０２９０】
先験的区分化では、所定数の主要な入力（ＰＩｓ）が区分化に選択される。‘ｋ’ＰＩｓに関する区分化を決定すると、２ｋの区分けが形成され、それらは変数の２進割当総てに対応する。例えば、ｘ１，ｘ２に関する区分化を決定すると、４つの区分けが形成される：
【０２９１】
【数５５】
2004213619.tif 000057
。この種の所与のウインドウ関数に関し、区分化ＲＯＢＤＤが形成されることが可能であり、それらはモノリシックＲＯＢＤＤより小さいことが保証される。所与の時点で唯１つの区分化がメモリ内に存在することを必要とするので、選択された空間内で成功する可能性が高い。メモリの減縮は大きく、総ての区分化を処理するのに要する時間における全体的な減縮によっても達成される。
【０２９２】
別の区分化を形成する際に独立して生じる冗長性を最小化しつつ、達成される区分化を最大化するような変数が選択されるべきである。これは、多くの装置及び攻略法の基本的原理を反映する。変数ｘに関する関数ｆを区分化することのコストは、
ｃｏｓｔｘ（ｆ）＝α［ｐｘ（ｆ）］＋β［ｒｘ（ｆ）］          （２）
により定義され、ここでｐｘ（ｆ）は区分化因子を表現し、
【０２９３】
【数５６】
2004213619.tif 000058
により与えられ、ｒｘ（ｆ）は冗長性因子を表現し、
【０２９４】
【数５７】
2004213619.tif 000059
により与えられる。２つの区分化の良好でないものが小さく且つ同様である場合にはより低い区分化因子が有利であり、２つの区分けを作成する際に包含される作業全体が少ないことを示すので、より低い冗長性因子が有利である。より低い全体的なコストを有する変数ｘが、区分化に選択される。
【０２９５】
所与の関数Ｆのベクトル及び変数ｘにつき、区分化のコストは、
【０２９６】
【数５８】
2004213619.tif 000060
として定義される。
【０２９７】
ＰＩは区分化ｆｄ及びΨのそれらのコストに関して増加する順に計数され、最良の‘ｋ’（ここで、‘ｋ’はユーザにより指定された所定の数である）も選択される。同様なコスト関数を利用して、ＰＩ変数が選択され、区分化ＲＯＢＤＤを作成するためにＰＩで表現されるΨｉｂｄｄのような擬似的変数も選択される。この例の場合には、余因子演算は、立方体でないウインドウ関数についての一般化された余因子演算になり得る。この種の選択は、総てのＰＩがｆｄ及びΨに関するそれらの区分化のコストに従って等級付けされ、静的区分選択と呼ばれる。
【０２９８】
或いは、動的区分化法が使用され、最良のＰＩ（例えば、ｘ）がｆｄ及びΨに基づいて選択され、以後のＰＩは、ある区分におけるｆｄｘ及びΨｘ並びに別の区分におけるｆｄｘ及び
【０２９９】
【数５９】
2004213619.tif 000061
に基づいて再帰的に選択される。動的区分化法は余因子の指数を必要とし、場合によってはコスト的に高価で使用できない。関心のある値のみがｆｄ及びΨｉｂｄｄｓの余因子のサイズであることを用いて、コストを幾らか減らすことが可能である。｜ｆｄｘ｜の上限値は、ｆｄのＲＯＢＤＤを横切り又は検索し、ｘに対応する変数ｉｄを有するノードに遭遇すると常にｘ＝１ブランチをとることによって、算出される。本方法は、この手法でＲＯＢＤＤを横切ることで取得されるＢＤＤが減少しない場合には、正確なカウント値を与えない。そのような実現化の１つの利点は、形成される新たなノードを何ら必要とせず、その横断又は検索が比較的速やかなことである。
【０３００】
区分化は、区分け数が動的に選択されるようになされ得る。ある場合には、ＢＤＤ不具合の時点毎に、ＢＤＤ不具合が克服されたと判定されるまで、区分化が、変数を分離しながら動的に実行され、１つの増分で選択される。
【０３０１】
区分化を用いる場合に、ｆｄ中のΨｉｂｄｄｓは連続的に構築される。グラフのサイズがある構成（例えば、Ψｊ）について顕著に増加する場合には、ウインドウ関数は現在のｆｄ及びΨｊｂｄｄに準拠して選択される（例えば、ｗ）。ウインドウ関数は、ＰＩ及びその相補的なもの、又は何らかのΨｋｂｄｄ及びその相補的なものあり、その相補的なものはＰＩによってのみ表現され、より小さなサイズを有する。
【０３０２】
ウインドウ関数ｗが取得されると、２つの区分化（ｗΛｆｄｗ，Ψｗ）及び
【０３０３】
【数６０】
2004213619.tif 000062
が形成され、区分化の各々における処理又はルーチンは再帰的に呼び出される。一般に、構築後の結果的なＢＤＤが、既に構築された以前に分解されたＢＤＤ及び当初の分解されたＢＤＤのサイズ総ての総和より１０倍大きい場合には、区分化に基づく探索が実行される。
【０３０４】
先験的な変数選択では、区分化に基づく探索に加えて、固定数の分割変数が定められる。固定数の主要な入力変数に準拠する区分化に続く展開的区分化（又はその逆）が実行され得る。展開的区分化は、主要な入力に加えて、擬似的な変数／分離ポイントの双方を使用し得る。
【０３０５】
ウインドウ関数を選択し、ｆｄｗｉ及びΨｗｉにより与えられるｉ番目の区分けについての分解表現を作成した後で、最終的な段階は、ｆｄｗｉにてΨｗｉを構築することであり、即ち、
【０３０６】
【数６１】
2004213619.tif 000063
である。採取的なＲＯＢＤＤサイズは所与の変数の順序に対して定数であるが、中間的なメモリ条件及び構築中の時間は、分解ポイントが構成される順序のストロング関数である。ｆｄ内で構成され得る候補変数に対して、結果的に構成されるＲＯＢＤＤのサイズを推定するコストが割り当てられる。構築後にＲＯＢＤＤの支持集合のサイズの増加を最小化する分解変数が選択される。各ステップにおいて、候補Ψｓは構成に関してそれらの分解ポイントに拘束され、それらのポイントは他の任意のΨｂｄｄＳには存在しないものである。このことは、分解変数はｆｄにて一度だけ構成される必要性を保証する。
【０３０７】
システム７０のいくつかの機能を説明する動作例が示される。この情報内容は教示目的のためのみに与えられるので、本実施例が本願の内容を制限するように解釈されるべきでないことは重要である。多くの演算（ＯＲ若しくはＡＮＤ機能又はその双方を包含し得る）は、固定点に達する前に行なわれるのが一般的である。例えば、ディジタル処理のステップ１０及び１１の間で、不具合が生じている。そして区分化が実行される。問題は、区分化が必要であることを、そのＢＤＤが不具合を起こした後でしか知らされないことである。不具合を減らすように変数が選択され得るが、不具合が既に生じているので、不具合以前に存在した最後の状態に戻ることは一般に冒険的で困難である。このことは、部分的には、演算が可逆的でないことに起因する。この問題を軽減するために、メジャー及びマイナーの閾値を印す技法が用いられ得る。
【０３０８】
ミクロステップ（例えば、本事例ではステップ１乃至９）は、別のアプリケーションでは一般的には破棄され、これは高価になる。システム７０は、不具合が生じた特定の段階を見分けることでそのような浪費を回避することができる。演算が実行される各時点で、ＢＤＤのクラスタにより示される異常な挙動の記録が、それらが結合される場合に維持される。異常な挙動は、予想されるものよりも顕著に大きな大グラフを反映し得る。グラフが大きすぎる場合には、演算はそのプロセス内で識別される保存地点（閾値）で始まる。
【０３０９】
教示内容を説明するために、ＰＯＢＤＤ技法に関連して実行されるいくつかの画像処理及び事前画像処理を説明することが有益であろう。関数は、一般に、ある領域を共通する領域に対応付ける。変数はＸで表現され、出力はＹで表現される。Ｘの組合せの各々はＹに関するいくつかの表現になる。Ｘの組合せの各々ついて、結果として生じる固有の組合せが存在し、それはその関数を定義し得る。画像は、その関数に関連する所定の操作結果として生成されるものである。ある操作又は処理がその領域に適用され、その結果生じるものが画像である。例えば、複数の状態が用意され、それらの状態から多くの他の状態に到達可能である。ターゲット回路７２内では、１０個の状態から１０００個の状態に到達可能である。その１０００個の状態は、１０個の状態に関連する画像を反映するものとして考察される。
【０３１０】
画像処理は、対応する画像を投影する何らかの写すものを与えるプリズム又は鏡と考えられる。所与の画像に対して、対象物又はオブジェクト及び鏡又はミラーは、その画像を導出するために使用される。オブジェクトは、当初の１０個の状態として言及され、ミラーはその処理であり、１０００個の状態は画像群である。同様に、事前画像処理が定められる。この例での事前画像処理は、１０００個の状態によって表現され得る。その処理もミラーによって表現され、これら２つの変数を用いてオブジェクトが導出される。従って、画像処理の場合に、オブジェクト及びミラーが存在し、その影響又はリフレクションが求められる。事前画像処理の場合は、リフレクション及びミラーが存在し、求められるものは、その画像を投影した当初のオブジェクトである。
【０３１１】
状態分析における画像処理は、遷移／関連付け処理として言及される。遷移／関連付け処理は、所与の状態空間で可能な遷移を結びつけ、そこでは、対応付け又はリンクが存在しないことに起因して、状態１から状態１０へ動くのを禁止する所定の規則が存在する。可能な及び不可能な遷移は、その後に捕捉され得る。そして、ミラー（遷移／関連付け処理）は、そのシステム／回路／状態でどのような遷移が可能であるかを示す。
【０３１２】
遷移／関連付け処理に関するあるアプリケーションの後にアクセスされ得るほんのいくつかの状態が存在する。従って、遷移／関連付け処理を適用した後にその地点からより深い深度への移動がもたらされる。同様に、状態１０００から、遷移／関連付け処理を用いて当初の状態の値が判別され得る。従って、事前画像処理は所与の状態群について行なわれる。画像は、ミラー（遷移／関連付け処理）によって与えられるような状態のリフレクションである。画像及び／又は事前画像処理法は、ターゲット回路１２内で何が深いかを判別するために使用され得る。
【０３１３】
実施例における「より深い（ｄｅｅｐｅｒ）」という語は、分析されるターゲット回路７２に関連付けられる深度パラメータに言及している。所与の状態が到達可能であり、他の状態は事前の作業を最初に行うことなしには到達され得ない。状態は一般的には異なる深度を有する、というのは、ある固定点演算は早期に終了し、別のものは所与の試験回路内に深遠に伸びる。このことは、所与の関数の属性に準拠している。所与の関数は、あるウインドウ又は部分空間の下で、分析が深く伸びて続くように構成される。加えて、実証的に深い状態及び帰納的な状態群が存在し得る。実証的に深い状態は、一般にそれらが深いか否かを判別するために相当の作業量を必要とする。帰納的な状態群は一般的には深度に関して何らの保証も与えない。機能的な状態は（潜在的には速やかに）与えられるが、それらの状態が深いか否かは未知である。従って、それら２つの原理のバランスをとるのが一般的である。適切に検査技法を実行するには、速度も深度も無視され得ない。ＰＯＢＤＤデータ構造７４を用いることで、潜在的に深いいくつかの状態が計算され、又は所与の状態が「通常的に」深いものとして射影され、これらの状態がサンプリングに関して目標視される。
【０３１４】
図１０は、ターゲット回路７２に関連するＢＤＤを構築する方法に関する一連のステップ例を示す概略的フローチャートである。本方法はステップ５００から始まり、そこでは、設計者がターゲット回路７２のような特定の回路を評価し、関数（ｆ）の形成に必要なあるアプリケーションを走らせようとする。ターゲット回路７２が評価され、特定のアプリケーションを実行させる要請により、関数が識別される。初期のＢＤＤがステップ５０２で構築され、それはターゲット回路７２の所与の関数に対応する論理関数を反映する。アルゴリズム要素７６は選択されたＢＤＤを構築する（又は構築するのを支援する）ために使用される。ＢＤＤの構築を試みる場合に、メジャー及びマイナー閾値がステップ５０４にて識別される。
【０３１５】
ステップ５０６では不具合が生じており、その不具合は過剰に大きなグラフを表現する。ステップ５０８では、以前の場合からのマイナー閾値が、そのプロセスを再スタートさせるために変更される。ステップ５１０では、所与のスクリプト内のパラメータが、過剰に大きくない別のＢＤＤを作成するために修正される。最適なスクリプトは並列的な構成を導入するために使用され得る。このことは、ステップ５１２の並列的な処理にて、複数の装置が最適なスクリプト（又は好適なパラメータ群）を利用することを可能にする。
【０３１６】
不具合及びマイナー閾値が識別され、ＢＤＤ構築プロセスを改善する試みが不成功であった場合には、マイナー閾値でグラフを区分けする選択肢が存在し、そしてその関数についての部分的な情報のみを用いてその遅延から順に処理を行ない得ることに留意を要する。従って、論理空間のｍ個の区分が形成され、ｍ個の内のいくつか（ｋ個）の区分が選択され（ｋ＜ｍ）、その関数についての表現がなされ得る。このことは、問題に対する部分的な解又はソリューションを与え、何も返さないのではなく何らかの答えを返す点で有利である。また、この段階では、所与のエンドユーザ又は設計者は、所与の関数のＢＤＤの構築を完了させる（仮想的な）解又は能力が無いのを把握し得ることに留意を要する。従って、この部分的な構築は、それがなされない場合に比較して有利になる。
【０３１７】
図１０に示されるステップの一部は、適切であるならば変更又は削除されることが可能であり、追加的なステップがフローチャートに付加されることも可能である。これらの変更は、本発明の目的又は教示内容から逸脱せずに、具体的なＢＤＤ構築手法や特定の回路配置やコンフィギュレーションに依存し得る。
【０３１８】
本発明は特定の実施例を参照しながら詳細に説明されているが、システム７０はある任意の状況に拡張されることが可能であり、その状況では、選択されたタスクを実行するように又は指定された特性を備えるように設計又は製造される所与のターゲット回路、装置、部品又は要素についてＢＤＤ構築が求められる。更に、システム７０によって顕著なフレキシビリティが得られ、任意の適切な１以上の要素が、それらの動作を向上させる別の要素と置換され得る。例えば、システム７０は、ＢＤＤデータ構造７４及びアルゴリズム要素７６のような具体的な要素を参照しながら説明されてきたが、これらの要素は、それが適切ならば単一の一体的装置内に設けられることも可能であり、又はそれらの機能をもたらす装置と置換されることも可能である。ＢＤＤデータ構造７４は、ＢＤＤ作成能力を強化するために、他の適切な検査、シミュレーション、合成又は設計プロトコルと共に使用され得る。加えて、設計者情報７８は任意の適切な手法でＢＤＤデータ構造７４に通知され或いは与えられる。
【０３１９】
加えて、システム７０は１以上の個別素子を参照しながら説明されてきたが、処理動作を向上させるために、追加的な中間的要素がシステム７０に設けられることも可能である。例えば、追加的な要素は、適切な要素及びＢＤＤデータ構造７４間の情報通信に使用され得る。本発明は広範な汎用性の恩恵に浴することが可能であり、これらの要素は様々な中間的処理要素に関連して適切な形式で動作することが可能であり、所与のターゲット要素又はオブジェクトに関するＢＤＤ構築手順を支援する。
【０３２０】
図１１は、１以上の区分化されたデータ構造を用いて回路（例えば、ターゲット回路８２）内で到達可能な１以上の状態を判別するためのシステム例８０を示す。システム８０は、アルゴリズム要素８６を含む区分化され順序付けられた２進判定図（ＰＯＢＤＤ）データ構造８４を有する。更に、システム８０は、境界モデル検査（ＢＭＣ）ツール要素８８と、ＰＯＤＤデータ構造８４と通信する設計情報部９０のセグメントとを含む。システム８０は、一般的には、集積回路、ディジタル要素、処理構成要素又は検査手順や処理が行なわれる２進アーキテクチャ内で区分化され、又はそうでなければそれらに関連して動作する。加えて、システム８０は、情報又はデータのディジタル処理に関連する任意の装置、部品、ハードウエア、ソフトウエア、オブジェクト又は要素と協働して設けられる。
【０３２１】
システム８０は、ターゲット回路８２の部分空間内に非常に深い深度に到達し得る検査プロセスを提供するよう動作する。ＰＯＢＤＤデータ構造８４と画像処理及び事前画像処理動作を含む分析とを用いることで、検証的に深い選択された状態が識別される。これらの状態はＢＤＤフォーマットで表現され、関連する通常形の（ＣＮＦ）形態としてマッピングされる。ＣＮＦ形態は、機能強化された検査分析を始める開始状態の集合としてＢＭＣツール要素８８に与えられる。ＢＭＣツール要素８８は、ターゲット回路８２に関連する検査プロセスを行なうために（単独の状態からその動作を開始させる代りに）それらの開始状態を利用しながら境界モデル検査動作を実行する。単独の状態は、一般に、主に浅い初期状態を表現する。既に深い開始状態を与えることで、ＢＭＣツール要素８８は改善された検査結果を得る、というのはそれがターゲット回路８２に一層深く達し得るからである。加えて、初期の深い状態は、最適時間間隔でＰＯＢＤＤデータ構造８４を用いて取得され、このことは、検査プロセスに関する効用の観点から非常に有利になる。
【０３２２】
システム８０は、他の検査及びシミュレーション法よりも顕著に高速な検査構造を与える。これは、部分的には、いくつかの検査手法を統合することに起因し、それらの手法は境界検査動作に関連する開始点を改善するために組み合わせられ得る。ある実施例では、そのような検査法は、大きなシーケンス深度を有する要素にとって特に有利であり得る。
【０３２３】
また、システム８０はターゲット回路８２に関連する可到達性パラメータを拡張し得る。ターゲット回路８２内の新規の又は未探査の深い状態は、システム８０を用いては網羅されない。システム８０は検査が回路内に深く実行されることを可能にし得る。システム８０は、検査プロセスに付随する待ち時間の顕著な削減を達成し得る。深度は、ユーザが求めるものに依存して正確な深度又は近似的な深度であり得る。近似的な深度は実際の深度に関する単なる上限である。状態の深度を算出するために、以下の動作が実行される。ユーザは一群の状態ｓ＿０から始め、所与のウインドウｗ，ｗ’が想定され、ここでｗ’はｗの相補的な対応物である。ｓ＿０を基本集合又はベースセットと呼ぶこととし、以下の動作が実行される：
１．  ベースセットに関する画像処理及びｓ＿１の取得；
２．  ウインドウｗ’内でｓ＿１に関する事前画像処理及びプレｓ＿１（ｗ’）の取得；
３．  プレｓ＿１（ｗ’）に関する画像処理（ウインドウｗの下で）及びｓ＿１’の取得；
４．  そのウインドウ外から到達不可能なウインドウｗにおける状態集合を反映するｓ＿１”＝ｓ＿１−ｓ＿１’ｓ＿１”の算出。ｓ＿１”は更なる深度の状態を計算するための新たな開始点（ベースセット）となる。
【０３２４】
一般に、ステップ１−４は適切に反復され、徐々により深い状態を与えることが可能である。これは、ウインドウｗ内で算出されたような所与の深度の状態を考慮に入れている。適切であれば、その深度が何らかの最少の“ｄ”である状態を包含するよう適切に修正されることが可能であり、長さ“ｄ”の経路はあるウインドウから別のものに移る。これは、画像／プレ画像の各ステップの間に深さが更新される集合又はセットを維持することによって達成され得る。何らかの状態の深度の走行数を維持するいくつかの手法が存在し得る。この計算を行なう簡易な方法は、可到達性が幅優先法で行なわれる場合になされ得るものである。各区分ｗ＿１，．．．，ｗ＿ｋに関し、上記手順が適用され、初期状態から始まる交差経路によって得られる場合でさえも、ある状態の実際の深度を反映しながら計算が実行され得る。
【０３２５】
ターゲット回路８２は、所定の又は意図される機能に従ってそれが動作することを確認するためにテストされる電子的又はディジタル的な対象物である。ターゲット回路８２の部分空間の整合性、有効性、又は設計仕様は、ＰＯＢＤＤデータ構造８４を用いて分析される。ターゲット回路８２は、論理ゲート、カウンタ、インバータ、バッファその他適切なデバイスを含む任意の関連回路、部品、又はターゲット回路８２と共に協働し又は相互作用することの可能なオブジェクトを包含し得る。また、ターゲット回路８２は、他の適切な装置、部品、アーキテクチャ、回路配置、ハードウエア、ソフトウエア、オブジェクト又は検査環境下で２進データやディジタル情報を処理することの可能な要素であり得る。ターゲット回路８２は何らかの特性を含む（又はそれを実行し得る）ように適切に設計される。「特性」なる語は、本明細書で使用されているように、ターゲット回路１２に関連付けられる任意の能力、特徴、操作、動作、又は挙動を包含する。動作時にあっては、それが設計された特性や特徴を保持すること、又は指定された動作を適切に実行することを保証するために、ターゲット回路８２は検査され、或いは有効化される。
【０３２６】
ＰＯＢＤＤデータ構造８４は、２進又はディジタル環境でＢＤＤ要素の区分化を実行するよう動作し得る要素である。ＰＯＢＤＤデータ構造８４は、操作に関する論理関数を表現したものである。ここに言及されるように、ＰＯＢＤＤデータ構造８４は、適切であるならば、区分化され減縮された順序付けられた２進判定図（ＰＲＯＢＤＤ）又はＢＤＤデータ構造（区分化される可能性はある）を包含し得る。ＰＲＯＢＤＤ及びＰＯＢＤＤなる語は、可換であり、それらのアプリケーションを説明する際に（場合によっては簡略化のため）適切な様々な形式で一般的に使用される。ＰＢＤＤデータ構造８４は、設計者情報９０を受信し、設計者情報９０に基づいて第１群の状態を抽出するためにターゲット８２に関して予備的分析を行なう。サンプルされた部分空間からの第１群の状態は、ＢＭＣツール要素８８の能力を増大させる或いは強化するために使用され得る。ＰＯＢＤＤデータ構造８４は、ターゲット回路８２に関連して選択された特性を評価するために、アルゴリズム要素８６に包含されている１以上のアルゴリズムを起動する。第１群の状態は、ＢＭＣツール要素８８が、ターゲット回路８２内に深く伸びることを可能にする。
【０３２７】
ＰＯＢＤＤは、一般的には正準であり、それ故に複合的等価的な検査に使用され得る。ＰＯＢＤＤは、シーケンス回路検査用の到達可能な（可到達）分析に連続的に適用され得る。可到達状態集合はＰＯＢＤＤとして表現される。これは、所与の時間間隔の間に対応するメモリ内で１つの区分のみを維持することで、メモリ要請を最小化する。加えて、可到達アルゴリズムを別々に用いて各区分について固定点演算が実行され、そのアルゴリズムは、ＰＯＢＤＤデータ構造８４により使用されるＰＯＢＤＤプロトコルに関連して、アルゴリズム要素８６内に包含され得る。
【０３２８】
ＰＯＢＤＤデータ構造８４は、一般的には検査処理で使用される他の手法よりも顕著に高速である。更に、ＰＯＢＤＤデータ構造８４の区分化された構造は、コンパクトであり、より簡易な並列処理を可能にする。加えて、ＰＯＢＤＤデータ構造８４は、動的な区分化を行ない、メモリの機能低下を回避し、あるアプリケーションではその機能低下は「メモリ不具合」としても言及され得る。ＰＯＢＤＤデータ構造８４は、ターゲット回路８２内の膨大な状態を網羅することができ、更に、相互作用する有限状態マシーンの緩やかに接続された複数セットに設計内容を分割する。
【０３２９】
実施例の動作に関しては、設計者及び製造者は、試験又は検査される特性、特徴、動作又は挙動を識別する何らかのプログラムをターゲット回路８２に書いている。特性又は特徴は、それがＰＯＢＤＤデータ構造８４に通知される前に特定の構文で適切に書き込まれる。プログラムはその後にＰＯＢＤＤデータ構造８４に通知され、ＰＯＢＤＤデータ構造８４はターゲット回路８２にて指定された特性を検査する。ＰＯＢＤＤデータ構造８４は、その後に第１群の状態を生成し、ＢＤＤフォーマット内でその第１群を表現し、ＢＭＣツール要素８８に転送されるようにＢＤＤフォーマットをＣＮＦ形態にマッピングする。
【０３３０】
ＣＮＦは、クローズの論理積であり、クローズは属性値論理積又は属性値の論理和である。｛ＡＮＤ，ＯＲ｝の接続部を有する論理表現は、何らの接続も否定されず、どのＡＮＤ接続もＯＲ接続によって支配されないならば、論理積の通常形式である。例えば、（色＝赤  又は  色＝緑）且つ（形状＝四角形）は、ＣＮＦでの形態である。この形式における論理表現は、クローズのＡＮＤとして表現され、その各々は１以上のリテラルのＯＲである。また、ＣＮＦの理論は、論理和の論理積としても考えられる。各論理和は、肯定的なリテラル及び否定的なリテラルを含むクローズとして表現され得る。変数は汎用的に定量化される。論理プログラミングの場合には（プロローグ、フリル等）、センテンスをコンピュータが収容し得るステートメントに変換し得ることが有利である。ステートメントの論理プログラミングは、ホーンクローズの形式を採用することができ、そのクローズは特に簡易な構造を有する条件付のセンテンスである。総ての命題の論理センテンスは、論理積の通常形式でのセンテンスに等価であることが示され得る。
【０３３１】
アルゴリズム要素８６内で選択されたアルゴリズムを起動する又は実行することで、ＰＯＢＤＤデータ構造８４は、回路アーキテクチャ又はコンフィギュレーションの全体を眺めることなしに、ターゲット回路８２内を選択的に深く探査し得る。回路要素全体を眺めることは、検査プロセスを顕著に遅くする。その代りに、アルゴリズム要素８６が起動され、深淵形式で複数状態の小部分（部分空間内）を評価するために、ターゲット回路８２内の所定の場所が調査される。
【０３３２】
アルゴリズム要素８６は１以上のアルゴリズムを包含するデータ処理オブジェクトであり、そのアルゴリズムは、特定の又は指定された特性がターゲット回路８２内で調査又は検査されることを可能にする。アルゴリズム要素８６は、特定の処理要請又は回路配置に従って、ＰＯＢＤＤデータ構造８４内に包含され、或いはその外部に設けられる。加えて、アルゴリズム要素８６は他の外部要素と通信することが可能であり、その外部要素は、ターゲット回路８２内の部分空間を検査するために使用される１以上の命令又は特徴を与える。更に、アルゴリズム要素８６は、ターゲット回路８２に関連する１以上の特性を確認するために、設計者情報９０を直接的に受信し得る。また、設計者情報９０は、検査プロセスに委ねられる回路又は要素の種別を包含する又は指定し得る。アルゴリズム要素８６は、ＰＯＢＤＤデータ構造８４で実行される検査動作を支援し得る任意の適切なハードウエア、ソフトウエア、オブジェクト、又は要素を包含し得る。
【０３３３】
実施例及び教示内容を説明するために、ターゲット回路８２の部分空間に関連する選択された特性を検査する場合に使用され得るいくつかのアルゴリズムを更に説明することが有益であろう。論理関数処理のための多くの演算は、ＯＢＤＤにより表現される関数に関して効率的に実行され得る。例えば、その基本的処理のいくつかは次の通りである：
１．評価。ＯＢＤＤに関し、ｆ及び入力ａに関するＧは、その値ｆ（ａ）を計算する。
【０３３４】
２．減縮。ＯＢＤＤに関し、Ｇは等価的な減縮されたＯＢＤＤを算出する。
【０３３５】
３．等価試験。ＯＢＤＤにより表現される２つの関数が等しいか否かを検査する。
【０３３６】
４．充足可能性問題。問題に含まれるものは次のとおりである：
−充足可能性。ＯＢＤＤに関し、ｆを表現するＧはｆ（ａ）＝１を満たす入力ａを見出す、又はそのような入力が存在しないことを出力する。
【０３３７】
−ＳＡＴカウント。ＯＢＤＤに関し、ｆを表現するＧは、ｆ（ａ）＝１を満たす入力数を計算する。
【０３３８】
５．合成（適用としても言及される）。ＯＢＤＤによって表現される関数ｆ及びｇに関し、Ｇは、Ｇ内に
【０３３９】
【数６２】
2004213619.tif 000064
に関する表現を含み、ここで
【０３４０】
【数６３】
2004213619.tif 000065
は２進論理演算（例えば、Λ）である。
【０３４１】
６．置換（交換とも呼ばれる）。
【０３４２】
−定数による置換。ＯＢＤＤにより表現される関数ｆ、変数ｘｉ、及び定数ｃ∈｛０，１｝に関し、ｆ｜ｘｉ｜＝ｃに対するＯＢＤＤを計算する。
【０３４３】
−関数による置換。ＯＢＤＤにより表現される関数ｆ及びｇ、変数ｘｉに関し、ｆ｜ｘｉ｜＝ｇに対するＯＢＤＤを計算する。
【０３４４】
７．一般的定量化及び実際的な定量化。ＯＢＤＤにより表現されるｆ及び変数ｘｉに関し、それぞれ
【０３４５】
【数６４】
2004213619.tif 000066
を満たすＯＢＤＤを計算する。
【０３４６】
ＯＢＤＤパッケージでは、通常的には、減縮したＯＢＤＤのみが表現されるように、演算負担軽減は他の演算の中に統合される。ＯＢＤＤの多くのアプリケーションは、回路として与えられる関数に関する。従って、１つの重要な処理は、回路により与えられる関数についての演算であり、それは通常的にはその回路に関する記号を用いたシミュレーションで実行される。これは、入力変数を表現する関数についてのＯＢＤＤが構築されることを意味する。これは容易である、というのは、その関数ｘｉに関するＯＢＤＤは、０後継部（０−ｓｕｃｃｅｓｓｏｒ）としての０シンク（０−ｓｉｎｋ）及び１後継部としての１シンクと共にｘｉでラベル付けされたノードのみから成るためである。回路はあるトポロジ的順序で評価され（各ゲートは、先行する総てのものが考察された後に考察される）、演算は各ゲートについてなされる。演算は、合成操作を用いて入力での関数を表現するＯＢＤＤを結合することによる、出力における関数表現である。
【０３４７】
別の可能性は、所与の回路がより大きなブロックを形成することである。そのような場合には、ＯＢＤＤは、各ブロックによって計算される関数について計算され、関数による処理置換と共にＯＢＤＤを結合する。算出されるＯＢＤＤの場合には、２つの回路により表現された関数に関し、等価性について回路を検査するためにＯＢＤＤに関する等価的な処理が行なわれる。
【０３４８】
論理照合のようなアプリケーションでは、考察される関数についての署名が計算される。署名は、効率的に算出されることの可能な及び異なる関数については異なっているような関数特性である。署名は所与の関数が異なっていることを検出するために使用され得る。非常に簡易な署名は、ある関数の入力を満たす数である。ＳＡＴカウントの処理は、それを算出するため及び適切であれば他の署名を算出するために使用され得る。
【０３４９】
ＢＭＣツール要素８８は、ターゲット回路８２についての境界モデル検査処理を実行するための要素である。ＢＭＣツール要素８８は、ＰＯＢＤＤデータ構造８４から情報を受信し、ターゲット回路８２に関する検査を実行するためにその情報を使用する。ＢＭＣツール要素８８は、形式的な又は準正式な（ｓｅｍｉ−ｆｏｒｍａｌ）検査法を使用し、更に、ＰＯＢＤＤデータ構造８４により与えられる第１の状態群を用いることで機能強化され得る。ＢＭＣツール要素８８は、適切な境界モデル検査を実行するためにＳＡＴ技法を使用する。境界モデル検査では、対象とする状態遷移システムが、関心のある状態に到達する状態遷移の有限シーケンスを実現し得る場合に、充足可能な論理構造が構築される。ＢＭＣツール要素８８は、任意の適切な装置、部品、ハードウエア、ソフトウエア、オブジェクト、又は要素を包含し、それらはターゲット回路８２の選択された部分空間が検査又は検証されるように１以上の境界検査処理又は演算を実行し得るものである。
【０３５０】
また、ＢＭＣツール要素８８は、単独の初期状態の代りに第１群の状態を利用し得るように適切に修正され得る。これは、システム８０がターゲット回路８２内で検証的に深い部分空間に到達することを可能にする。従って、ＢＭＣツール要素８８内のプログラムの容量は、検証プロセスを改善するように、効率的に強化され得る。ＢＭＣプログラムが実行された後で、隣接するセグメントはしらみつぶしに検査され、ターゲット回路８２に関する適切なサンプリングがなされるようにする。ターゲット回路８２の部分空間をサンプリングすることを継続するか否かの判定は、エンドユーザに委ねられ、又はＢＭＣプログラム属性によって制御される。
【０３５１】
図１２は、図１１に示されるシステムの要素間に関する例示的な相互作用を示す。図１２は、一群の開始点９２ａ−ｃ、一群のＰＯＢＤＤ要素９４ａ−ｃ、ＢＭＣ要素９６、及びＢＤＤ要素９８を示す。これらの要素は、概略的に描かれており、システム８０に関連する一般的な原理を説明することを意図している。ＰＯＢＤＤ技法が使用され、画像処理／事前画像処理動作を含む分析が実行され、実証的に深く且つＢＭＣツール要素８８に通知される第１の状態群を判別する。ＰＯＢＤＤ技法は、それを正準形に変換するためにデータ構造上で実行され得る。区分化は、論理空間が個々の部分空間に分解されることを示す。
【０３５２】
教示内容を説明するために、ＰＯＢＤＤ技法に関連して実行されるいくつかの画像処理及び事前画像処理を説明することが有益であろう。関数は、一般に、ある領域を共通する領域に対応付ける。変数はＸで表現され、出力はＹで表現される。Ｘの組合せの各々はＹに関するいくつかの表現になる。Ｘの組合せの各々ついて、結果として生じる固有の組合せが存在し、それはその関数を定義し得る。画像は、その関数に関連する所定の操作結果として生成されるものである。ある操作又は処理がその領域に適用され、その結果生じるものが画像である。例えば、複数の状態が用意され、それらの状態から多くの他の状態に到達可能である。ターゲット回路８２内では、１０個の状態から１０００個の状態に到達可能である。その１０００個の状態は、１０個の状態に関連する画像を反映するものとして考察される。
【０３５３】
画像処理は、対応する画像を投影する何らかの写すものを与えるプリズム又は鏡と考えられる。所与の画像に対して、対象物又はオブジェクト及び鏡又はミラーは、その画像を導出するために使用される。オブジェクトは、当初の１０個の状態として言及され、ミラーはその処理であり、１０００個の状態は画像群である。同様に、事前画像処理が定められる。この例での事前画像処理は、１０００個の状態によって表現され得る。その処理もミラーによって表現され、これら２つの変数を用いてオブジェクトが導出される。従って、画像処理の場合に、オブジェクト及びミラーが存在し、その影響又はリフレクションが求められる。事前画像処理の場合は、リフレクション及びミラーが存在し、求められるものは、その画像を投影した当初のオブジェクトである。
【０３５４】
状態分析における画像処理は、遷移／関連付け処理として言及される。遷移／関連付け処理は、所与の状態空間で可能な遷移を結びつけ、そこでは、対応付け又はリンクが存在しないことに起因して、状態１から状態１０へ動くのを禁止する所定の規則が存在する。可能な及び不可能な遷移は、その後に捕捉され得る。そして、ミラー（遷移／関連付け処理）は、そのシステム／回路／状態でどのような遷移が可能であるかを示す。
【０３５５】
遷移／関連付け処理に関するあるアプリケーションの後にアクセスされ得るほんのいくつかの状態が存在する。従って、遷移／関連付け処理を適用した後にその地点からより深い深度への移動がもたらされる。同様に、状態１０００から、遷移／関連付け処理を用いて当初の状態の値が判別され得る。従って、事前画像処理は所与の状態群について行なわれる。画像は、ミラー（遷移／関連付け処理）によって与えられるような状態のリフレクションである。画像及び／又は事前画像処理法は、ターゲット回路８２内で何が深いかを判別するために使用され得る。
【０３５６】
教示内容を説明するために与えられる別の例では、ライン１及びライン２が状態であることを想定し、ライン１及びライン２は並行であり、遷移／関連付け要素によって分離されているものとする。ある筋書き又はシナリオでは、ライン２のリフレクションはライン１に関連する情報に影響を及ぼす。しかしながら、一般的に求められるものは、ライン１又はライン２の何れかによって排他的に影響されるもの総てである。画像及び事前画像処理は、ラインの各々から何が受信されたかを判別するために使用され得る。置換プロセスを利用して、ライン１及びライン２に何が含まれているかが判別され得る。残るものは、それらの整合性を維持する真のオブジェクト、競合物又は選択肢を示す。この情報により、混乱又はエラーを生じさせるものが何であるかを判別し、そのプロセスに起因する要素を削除することが可能になる。
【０３５７】
別の例として、集合１が状態１，２，３を包含する場合を考察する。更に、状態４，５を含む集合２を考える。これら総ての要素は状態１０，１１に反映される。状態１０，１１を分析する場合に、状態１，２，３，４，５から到来するリフレクションが与えられる。集合１に関連する分析で４，５を考察するのは不適切である、というのは、これらの要素は集合２に関連するからであることが、理解されるであろう。従って、状態４，５がその集合から除去され、残ったものが集合１からの真正な集合である（状態１，２，３）。集合１，２間の距離は、１単位として識別され得る。集合２と集合０との間の距離は、２単位である。以後同様に計算がなされ、集合１と集合０との間も１単位の距離である。次のステップでは、分析は集合−１にシフトし、そして分析は集合−２に続き、以下同様である。このようにして、情報は帰納的に蓄積され、より大きな距離及び深度をなすために分析が続くようにする。この手順は、状態の検査がターゲット回路８２内で深まることを可能にする。
【０３５８】
実施例における「より深い」なる語は、分析されるターゲット回路８２に関連付けられる深度パラメータに言及している。所与の状態が到達可能であり、他の状態は事前の作業を最初に行うことなしには到達され得ない。状態は一般的には異なる深度を有する、というのは、ある固定点演算は早期に終了し、別のものは所与の試験回路内に深遠に伸びる。このことは、所与の関数の属性に準拠している。所与の関数は、あるウインドウ又は部分空間の下で、分析が深く伸びて続くように構成される。加えて、実証的に深い状態及び帰納的な状態群が存在し得る。実証的に深い状態は、一般にそれらが深いか否かを判別するために相当の作業量を必要とする。帰納的な状態群は一般的には深度に関して何らの保証も与えない。機能的な状態は（潜在的には速やかに）与えられるが、それらの状態が深いか否かは未知である。従って、それら２つの原理のバランスをとるのが一般的である。適切に検査技法を実行するには、速度も深度も無視され得ない。ＰＯＢＤＤデータ構造８４を用いることで、潜在的に深いいくつかの状態が計算され、又は所与の状態が「通常的に」深いものとして射影され、これらの状態がサンプリングに関して目標視される。
【０３５９】
図１２に戻って、ＢＭＣ要素９６は、小規模なサンプリング又は部分空間のセグメントが、固定点に関連して探索されることを可能にする。固定点に到達すると、固定点演算が別の部分空間で実行され得る。複数の部分空間でランダムなサンプリングが実行され、それにより、第１の状態群がＰＯＢＤＤ要素９４ａ−ｃからＢＭＣ要素９６に効果的にハンドオフする又は移行することが可能である。第１群の状態を判別した後で、どの部分空間が最も深い深度を有するかを判別する。最も深い深度を有する部分空間について、特定の状態群は、容易に計算される最も深い状態群であることが想定される。これらの状態は、検査環境下の所与の回路に関する一層深い検査を実行する場合の初期状態群として採用するために、ＢＭＣ要素９８に与えられる。ＢＤＤ要素９８は、ＰＯＢＤＤ及びＢＭＣ処理が記述される基盤又はコアプロトコルとして機能する。
【０３６０】
ＰＯＢＤＤに準拠したＢＭＣは、深く探索する方向を選択する際に「ナビゲート付き進行」機能を可能にする。システム８０は、更に、初期幅探索（ＢＦＳ）と初期深度探索（ＤＦＳ）との調整された混合を可能にする、というのも、それが深い状態に（潜在的に選択可能に）到達可能だからである。
【０３６１】
また、適切な時間間隔が、試験対象の所与の回路内の複数の部分空間のサンプリングに関連して設けられる。所定の期間は、ターゲット内の様々な部分空間を評価するために用意される。その期間が満了すると、プロセスは停止し、判定が行われる。その期間は、所与の検査プロセスに関連する便宜的な項目又は実際的なパラメータに準拠し得る。指定された期間内で何らの深い状態も見出されなかった場合は、そのプログラムは、より大きなタイムアウト値を含む別のモードで動作し得る。或いは、選択を実行する手法は、既にサンプリングした任意の部分空間（又は空間の種別）が再度訪問されないように変更可能である。深い状態に遭遇することの保証又は確実な証明を与えることで、効率に関する顕著な利益が最小の損失で達成され得る。効率に関するこの利益は、その損失に比較して不釣合いに大きくなり得る。
【０３６２】
回路の正式な（ｆｏｒｍａｌ）検査は、到達可能性分析がその回路で実行され、回路の初期状態からどの状態が到達可能であるかを判別することを要し、その分析は、一群の遷移関係（ＴＲ）を構築すること及び集合のメンバ又は要素の論理積をとることを包含し得る。総ての主要な入力及び回路の現在の状態変数は、その結果の公式を利用して実際に定量化され得る。到達可能性分析の間に、特に論理積の間に、１以上のグラフが不具合を起こす虞がある。この種の不具合に関連する問題に起因して、ＢＤＤに準拠した正式な検査は不適切である。正式な検査は、近似的に１００個前後のラッチや他の回路要素を包含する実際のアプリケーションでは制限される虞がある。しかしながら、多くの回路は１００００（又はそれ以上）の回路要素を包含する。
【０３６３】
回路を処理又はカバーするために、準正式な検査が用いられる。図１３は１以上のＰＯＢＤＤを用いる準正式な検査の例を示す。区分１００ａは５つの部分空間１０２を含み、区分１００ｂも５つの部分空間１０２を含む。部分空間１０２ａ内の領域又はカバレッジ１０４ａは、１以上の論理処理を用いて部分空間１０２ｆ内のカバレッジ１０４ｄと結合され、部分空間１０２ｂ内のカバレッジ１０４ｂは１以上の論理処理を用いて部分空間１０２ｇ内のカバレッジ１０４ｅと結合され、部分空間１０２ｅ内のカバレッジ１０４ｃは上述したように１以上の論理処理を用いて部分空間１０２ｊ内のカバレッジ１０４ｆと結合される。部分空間１０２ｃ，２８ｄ，２８ｈ，２８ｉは、以下に更に説明されるようにアルゴリズムに従って無視される。特定の実施例では、１以上の改善されたＢＤＤ技法が回路に関する適切なカバレッジを設けるために使用される。特定の実施例は準正式な検査に関する２つの一般的な手法を包含する。準正式な検査における第１の一般的手法は優れた又はグリーディな（ｇｒｅｅｄｙ）探索である。グリーディ探索法に従うと、状態空間が探索される場合に、より大きなＢＤＤは無視されるが、同時に大きな部分空間（可能な限り大きな部分空間でさえあり得る）のカバレッジが多かれ少なかれ最大化される。
【０３６４】
大きなＢＤＤを無視することは、望まれない度合いであったとしても、状態空間領域を顕著に減らす。ＢＤＤのサイズ（回路を記述するのに要する情報量によって測定され得る）は、そのＢＤＤによって網羅される状態数（又は最少項（ｍｉｎｔｅｒｍ））を示すことを要しないので、ＢＤＤの密度関数が、状態空間全体の領域に対するＢＤＤの寄与を判別するために使用され得る。特定の実施例では、ＢＤＤのサイズはＢＤＤの状態空間領域と釣り合っている。ＴＲの任意的な減縮は、ＴＲが回路内で１以上の遷移を行なうことを妨げる。一方、ＴＲが必要とされない場合には、ＴＲを用いる意味のあるＢＤＤ演算は実用的でなくなる。更に、ＢＤＤが区分けされる場合に、どの区分が探索されるかを判別することは困難である。
【０３６５】
準正式な検査における第２の一般的手法は、設計要約（ｄｅｓｉｇｎ  ａｂｓｔｒａｃｔｉｏｎ）である。回路の状態の部分集合を探索するため又は回路の初期状態からの状態空間探索を実行するため、準正式な探索が複数のウインドウに向けられる。特定の実施例では、それらのウインドウは回路設計者によってマニュアルで指定される。準正式な検査に適用可能な１以上の状態及び入力制約は、設計者によって指定され又はシミュレーションダンプ（ｄｕｍｐ）から決定される。
【０３６６】
状態空間をカバーするために複数のＰＯＢＤＤが使用され得る。各ＰＯＢＤＤはウインドウに対応し、各々はＢＤＤノード当たりの状態カバレッジ密度によって特徴付けられ及びＢＤＤサイズによって特徴付けられる。ＢＤＤ演算がより大きな不具合となる１以上のウインドウが印される又はマークされる。１以上のマークされたウインドウは、将来的なポイントで問題を生じる虞がある。ウインドウ内のＢＤＤ履歴に基づいて、ウインドウは「簡易（ｅａｓｙ）」又は「困難（ｄｉｆｆｉｃｕｌｔ）」として特徴付けられる。状態空間の複数の部分のカバレッジを促進するグリーディ通信は、状態カバレッジを多少なりとも最大化するために使用され得る。例として、特定の実施例では、複数の区分けの中での通信は次のように優先順位付けされる：（１）より高密度でより簡易な区分からより低密度でより簡易な区分への通信は、第１優先度である；（２）より高密度でより簡易な区分からより高密度でより簡易な区分への通信は、第２優先度である；及び（３）より高密度でより簡易な区分からより低密度でより困難な区分への通信は、第３優先度である。多少なりとも支援されそうにない１以上の通信は最後に選択され得る。
【０３６７】
大きなＴＲを取り扱うために、１以上の区分割当を利用して、ＴＲが構築される前に回路を減縮する。特定の実施例では、別の回路を取り扱うために（全区分より少ないものが構築可能である）、Ｎ個の区分の中からＭ好みが選択され、選択された区分の中で固定点反復及び通信が実行される。１つの選択肢として、生成された新たな一群の状態が、以前に算出した一群の状態の所定のｋパーセントより少ない状態を含む場合には、１以上の固定点相互作用が終了する。ＴＲが削減されると又は区分が生成されると、特定の区分から、状態空間の１以上の残余の部分への有意義な遷移が生じるか否かが判別される。ＢＤＤはシミュレーションダンプ中で調査済みの状態の部分集合から構築され得る。その後に状態はＰＯＢＤＤ分割可変的発見的方法を利用して区分けされる。１以上の計算済みのウインドウは、１以上の大きなＴＲを減縮するための割当を作成するために使用される。
【０３６８】
図１２に戻るに、特定の実施例では、ターゲット回路８２の正式な検査は、到達可能性分析がターゲット回路８２にて実行され、ターゲット回路８２の１以上の初期状態からどの状態が到達可能であるかを判別することを要し、その分析は一群の遷移関係（ＴＲ）を構築すること及びその集合のメンバ総ての論理積とることを包含する。総ての主要な入力及びターゲット回路８２に関する現在の状態変数は、その結果の公式を利用して実際に定量化され得る。到達可能性分析の間に、特に論理積の間に、１以上のグラフが不具合を起こす虞がある。この種の不具合に関連する問題に起因して、ＢＤＤに準拠した正式な検査がその時点で実際的でなくなる。正式な検査は、約１００個前後のラッチ又は他の回路要素を包含する回路に対する実用的な用途に制限される。しかしながら、多くの回路は１００００（又はそれ以上）の回路要素を包含する。ＰＯＢＤＤはＢＤＤサイズを更に小さくするために使用されるが、到達可能性分析を実行するために使用される多くのＰＯＢＤＤ技法は、立方体又はキューブ（ｃｕｂｅ）を用いる回路の分割を前提とする。キューブは１以上の入力リテラルについての割当内容（入力変数又は状態空間変数）である。また、非拘束又はフリーＢＤＤは、所定の解釈に従って、キューブに準拠した区分けを表現するが、キューブに準拠した区分けは、１以上のウインドウが任意的な関数を利用して生成される区分けに比して実証的に非効率的である。特定の実施例では、到達可能性分析に要する時間を削減するために及び分析を一層空間的に効率的にするために、１以上の任意関数が１以上のウインドウとして使用され得る。これらのＢＤＤは、各ウインドウが別々の根元又はルート変数を有することに起因して、「複数ルートＢＤＤ（ｍｕｌｉｔｉｐｌｙ  ｒｏｏｔｅｄ  ＢＤＤ）」と言及される。
【０３６９】
特定の実施例は、分解ポイントに準拠した分割変数を識別する。分割ポイントは、（主要変数のキューブ状割当ではなく）１以上の一般的関数を表現し、それら関数の部分的割当も一般的関数となり得るようにする。初期演算及びモデルが分解物及び構成物で表現され得る１以上の関数が処理される。２つの手順が使用され得る。
【０３７０】
第１の手順によれば、回路中の各ラッチのＢＤＤが構築される。分解地点は、ＴＲのＢＤＤを構築するために使用され得る。構成手順は主要な変数（入力及び状態変数を包含する）でＴＲを構築するために使用され得る。ＴＲグラフを構築するために、分解点変数の構成は、ＴＲグラフを不具合にさせる構成が作成されるまで継続される。ＴＲグラフを不具合にさせる構成が何ら作成されなかったならば、最終的なＴＲは小さく且つ困難な構成は何ら存在しない場合がある。しかし、小さなＴＲグラフが生じるのは比較的頻繁ではない。ＴＲグラフを不具合にさせる構成が何ら作成されなかった場合に、最終的ＴＲグラフは大きく且つ多数の構成を経由するサイズに達することが可能であり、その構成の各々はＴＲグラフのサイズに比較的小さな寄与を与える。しかしながら、累積的効果はＴＲグラフのサイズに関する爆発的増加又は不具合を招き得る。この場合に、発見的な分解はより小数の分解点を生成するために変更される。大きなＴＲグラフサイズの増加が、小数の構成の後に生じるので、それらは、各々の更生後のＴＲグラフサイズにて良好な限定された急増となる。
【０３７１】
２つの論理和的な区分けが、１以上の標準的なＢＤＤ技法を用いてその構成のために生成され得る、及び論理和区分各々が所定の閾値を下回るならば、その区分けは非立方体の区分化ツリー（ＮＣＰＴ：ｎｏｎｃｕｂｅ−ｂａｓｅｄ  ｐａｒｔｉｔｉｏｎｉｎｇ  ｔｒｅｅ）の根元又はルートになる。ＢＤＤサイズは、新たに割り当てられたノード数を監視することによって又は別の手法に従って監視され得る。このことは、総てのアトミック（ａｔｏｍｉｃ）な処理の後の全検索（ｔｒａｖｅｒｓａｌ）により、ＴＲサイズを測定する必要性を軽減する。ＴＲグラフサイズが所定の閾値を下回らないならば、立方体区分はそのグラフサイズを減らすために使用される。
【０３７２】
条規に定められたＮＣＰＴの各リーフに関し、分解点が構成され且つ総ての区分けが作成されるまで、従前の２つのステップが再帰的に実行される。ＴＲの各区分けを利用して、到達可能性分析が、固定点に達するまで実行される。上述した区分けは、画像演算中の論理和−定量化の間に導入される。区分Ｐ＿ｊから別の区分Ｐ＿ｋへ通信するために、１以上の定量化が、区分Ｐ＿ｋの一般化された余因子を用いて実行される。区分Ｐ＿ｊ内の定量化は、「不問（ｄｏｎ’ｔ  ｃａｒｅ）」としてＰ＿ｊの相補的な空間を利用して同様に導出される。これは、一般化された余因子処理を利用してもたらされる。
【０３７３】
第２の手順によれば、分解集合ｄ１，ｄ２，．．．，ｄ＿ｋからの分解点を利用して、他の分解点に関連するＢＤＤサイズを減少させるウインドウを作成する。各ＢＤＤ、ｄ１，ｄ２，．．．，ｄ＿ｋ更にはＴＲのＢＤＤに関し、ＢＤＤ  ｄ＿ｊに関する一般化された余因子及び相補的なものが採用される。１以上の適切なＢＤＤ  ｄ＿ｊは、分解集合から選択される。可能な限り多くの分解点ＢＤＤと同程度に減少する分解関数ｄ＿ｊが採用され得る。削減能力は、１以上の手法により、生成されるＢＤＤのバランス及び非冗長性の観点から測定され得る。両者の手順によれば、ウインドウ生成は、到達可能性分析中の特定の時間でのみ実行されることに制限されない。ウインドウ生成は、ＴＲの生成中に加えて１以上の画像処理又はプレ画像処理関数のアプリケーションの際に導出され得る。
【０３７４】
以前の区分化手法は、現在の状態変数についての最少キューブ（ｍｉｎｔｅｒｍ  ｃｕｂｅ）として規定されるウインドウの利用に一般的には準拠している。この形態で構築される一群のウインドウはツリーに結合され、ツリーの簡易なリーフが１つの区分けを表現し、ツリーに沿う各経路が固有のウインドウを表現する。そのような区分化ＢＤＤは非拘束ＢＤＤの特殊な場合として取り扱われ、所定の深度を超えるルートのサブツリー総てが共用する変数から許容されない。変数の数が増えるにつれて、ＢＤＤの簡潔性は正規のＲＯＢＤＤの漸近的な場合のものに近づく。区分けされたＢＤＤデータ構造によって与えられた非決定性の簡潔性は、立方体の区分けが使用される場合に実際的に失われる。従って、よりコンパクトな表現が、区分化に関する非立方体ウインドウを利用することで生成されることが可能である。状態急増に関連する１以上の問題を分析すること、及びコンパクトな区分けされた表現を作成することは有利である。これは、良好なウインドウ関数を選択することを必要とする。特定の実施例では、区分けの手法は最少キューブに準拠し、即ち、ウインドウはリテラルの論理積として取り扱われ得る。加えて又は代替的に、特定の実施例では、区分け手法は一般化された論理関数に準拠する。
【０３７５】
順次的又はシーケンス的な検査では、「構成される（ｃｏｍｐｏｓｅｄ）」処理の複合（ｃｏｍｐｌｅｘｉｔｙ）は、ＲＯＢＤＤに関する立方体及び区分化ＢＤＤに関する四角形である。従って、区分化を利用することで、複数の順次的な組み込まれた構成に関して指数的な利得（ｇａｉｎ）が得られる。複数構成処理を区分けする１以上の利点が存在し得る。構成地点で区分けを定めることは１以上の利点を与える、というのは、任意の所与の設計内容更には画像演算についての遷移関係の構成は、組み込まれた関数構造のシーケンスを実行するからである。到達可能性分析は、一般的には、一群の遷移関係を構築し、その集合要素総ての論理積をとることで行なわれ得る。主要な入力及び回路の現在の状態変数は、この公式から実際に定量化され得る。この演算の際に、特に論理積の間にグラフはそのサイズに関して不具合を生じる虞がある。この不具合に起因して、ＢＤＤの正式な検査は、大規模な工業的設計に不適切になる虞がある。これらの手順は、数百程度のラッチを備えた回路にしか適用され得ない。しかしながら、工業製品は１００００ラッチを、更にはそれ以上を有する。ＰＯＢＤＤはＢＤＤサイズを一層小さくするために使用され得る。しかしながら、総ての区分化技法は、立方体を用いて回路を分割することを前提としている（それは、一群のリテラルの割当と入力変数又は状態空間変数とを包含する。）。キューブ状区分化は、非拘束ＢＤＤの表現の特殊な場合として解釈され得る。しかしながら、非拘束ＢＤＤ（及びそのようなキューブ状区分け）は、各ウインドウが任意的な関数を用いて生成される区分化手法よりもコンパクトでないことが知られている。従って、ウインドウとして任意的関数を利用することが望ましい。各ウインドウは別々のルート変数を有するので、この手法で生成されるＢＤＤはルートＢＤＤを乗算する。これは、画像演算（及び到達可能性分析）を高速化し且つよりスペース効率的にする。
【０３７６】
分割変数は、分解点に準拠して見出される。分解点は（主要変数のキューブ状割当ではなく）一般的関数を表現するので、そのような関数についての部分的割当も一般的関数になる。従って、初期演算とモデルが分解及び合成で表現され得る関数を処理することが望ましい。特定の実施例では、遷移関係のＢＤＤが以下のように構築される。分解点は遷移関係のＢＤＤを構築するために使用され得る。実際の検査ツールでは、例えば、ＶＩＳ、総てのＢＤＤは分解点を用いて構築される。分解点変数は、ある構成が不具合になるまで構成される。２つの論理和的な区分が、標準的なＢＤＤ技法を用いて所与の構成について作成され、各々の論理和が所定の閾値より低いならば、その区分は非キューブ形式の区分化ツリー（ＮＣＰＴ）のルートとして使用され得る。ＮＣＰＴの各リーフに関し、総ての分解点が構成され且つ総ての区分が形成されるまで、以前の２つのステップ再帰的に実行される。遷移関係の各区分を用いて、到達可能性分析が固定点に達するまで実行され得る。この区分化は、実際の論理積／定量化が画像演算中に実行される場合でさえも導入され得る。この分析手順は、特定の実施例では、非キューブ形式の重複するＰＯＢＤＤであるＰＯＤＤの最もコンパクトな形式を利用する。キューブ形式のＰＯＢＤＤを利用する場合でさえ良好な結果が得られるので、区分化データ構造に関するこの一般化された形式が用いられる場合には、大きな節約効果が実現される。加えて、一連の分解オペレータで書き表され得る到達可能性分析の計算が、検査され得る。上述の手順では、区分化ウインドウの構成的生成は、遷移関係の構築中に使用される。上記のようにして画像演算が表現される場合には、その技法は画像演算中の動的な再区分化に関する技法になる。ＢＤＤが非常に大きくなり得る実際の回路について、メモリ利用を減らすそのような可能性は、１以上の利点をもたらす。そのような複数ルートデータ構造は、特定の実施例におけるキューブ状ＰＯＢＤＤに関する指数関数的サイズ削減を与える。
【０３７７】
図１４は、分散的に演算を行なう１以上の区分けされたデータ構造を用いる、１以上の到達可能な回路状態を判別するシステム例１１０を示す。上述したように、１以上のＰＯＢＤＤは、１以上の回路特性を検査するための、（ターゲット回路８２のような）回路に到達可能性分析を実行するために使用される。ＰＯＢＤＤは正準であり、複合的等価性検査に使用される。１以上のＰＯＢＤＤを用いる到達可能性分析では、到達可能な状態群がＰＯＢＤＤによって表現される。メモリ要請は、特定のメモリ装置における唯１つの区分を一度に格納することによって、及びディスクその他の記憶媒体に、現在処理されていない区分を保存することによって減縮される。固定点演算は、到達可能性アルゴリズム及びＰＯＢＤＤパッケージを利用して、各区分について別々に実行され得る。
【０３７８】
システム１１０は（ターゲット回路８２のような）回路に到達可能性分析を実行するために使用され、回路の初期状態から到達可能な状態を見分ける。システム１１０は、１以上のリンクを用いて互いに接続された複数のコンピュータシステム１１２を包含し、各リンクには、１以上のコンピュータバス、広域ネットワーク（ＷＡＮ）、インターネットの部分、若しくは別の有線、光、無線その他のリンクが含まれ得る。システム１１０は４つの演算システム１１２を包含するように描かれているが、本発明は２以上の演算システム１１２を意図している。特定の実施例では、２以上の演算システム１１２は１以上の共通の要素を互いに共用する。ターゲット回路８２に到達可能性分析を実行するために、ターゲット回路８２は区分１００（又はウインドウ）に論理的に分割され、各区分１００は、クラスタ形式の演算環境のような分散された処理環境における演算システム１１２を用いて処理される。ターゲット回路８２の区分１００は、論理的な、関数的な又はターゲット回路８２の他の部分の表現物である。特定の実施例では、区分１００はサイズを変化させ得る（回路を記述するのに要する情報量で測定される）。演算システム１１２は多かれ少なかれ並列的に区分１００を処理する。各区分１００は、固定点に到達するまで駆動され、そして１以上の他の区分１００と通信する。
【０３７９】
システム１１０は、ターゲット８２の到達可能性分析に関連する時間及びメモリ要請を削減し得る。限定ではない１例として、１ギガバイトのランダムアクセスメモリ（ＲＡＭ）と、到達可能性分析についての３２ギガバイトＲＡＭを要する回路とを包含する演算システム１１２を考察する。ディスクアクセスの低速性に起因してディスクを用いることは実用的ではなく、処理システム単独では到達可能性分析を実行することはできないであろう。その代りに、分析は、３２演算システム１１２内で分散され、各々は１ギガバイトＲＡＭを含み、分析に関連するメモリコストを減らすため及びより高速の走行時間を達成するために多かれ少なかれ並列的に動作する。
【０３８０】
特定の実施例では、コンピュータシステム１１２は、ＰＯＢＤＤデータ構造８４（アルゴリズム要素８６を含む）、ＢＭＣツール要素８８、設計情報部９０、区分１００、スケジューラ１０６（以下に説明される）、及びバージョンテーブル１０８（これも以下に説明される）。特定のコンピュータシステム１１２が説明され、特定の形態で特定の要素を包含するように描かれているが、本発明は、任意の適切な形態で任意の適切な要素を包含する任意の適切なコンピュータシステム１１２を意図している。限定的ではない一例として、特定の実施例では、コンピュータシステム１１２は、追加的に又は代替的に、ＰＯＢＤＤデータ構造８４、ＢＭＣツール要素８８、又は設計情報部９０に関する１以上の要素を包含し、上述の検査分析に対する追加的又は代替的な分析を実行する。特定の実施例では、コンピュータシステム１１２は、ＰＯＢＤＤデータ構造８４、ＢＭＣツール要素８８、又は設計情報部９０を包含することを要しない。特定の実施例では、システム１１０における２以上の演算システム１１２は、互いに同様な素子又は素子の構成を包含しない。処理システム１１２は、１以上の入力装置、出力装置、格納媒体、プロセッサ及び付随的メモリ装置を包含する１以上のコンピュータシステムに完全に又は部分的に統合され得る。処理システム１１２は、代替的に、１以上のコンピュータシステムに結合される。
【０３８１】
上述したように、ターゲット回路８２について到達可能性分析を実行するために、ターゲット回路８２は複数の区分１００に論理的に分割される。各区分１００は、固定点に到達するまで演算システム１１２にて処理される。固定点に到達すると、コンピュータシステム１１２は、演算システム１１２にて実行される分析又は別の演算システム１１２で実行される１以上の別の分析について、１以上の別の演算システム１１２と通信を行う。
【０３８２】
画像又は事前画像処理は、ある区分内に初期集合があり且つ別の区分内に最終的集合があるように実行されることを要する。この画像処理は、第１の演算システム１１２により実行され、発見された状態は第２の演算システム１１２に通知される。第２の演算システムは通知された状態を適切に取り扱う。状態はＢＤＤとして格納され、及び、各ＢＤＤはその変数についての順序を有するので、この通信内容に起因して、新たな状態は別の変数順序にある。新たな状態の変数順序は、その結果のＢＤＤサイズでの不具合なしに、第１の演算システム１１２及び第２の演算システムの区分間で調和させる必要がある。変数順序を劇的に変化させる試みは、ＢＤＤサイズに劇的に影響を及ぼし−ＢＤＤを相当大きく又は相当小さくする。一群の新たな状態は特定の関心事であるので、特定の実施例は、この受信する区分に付随したメモリ要請の多大な増加を生み出すことなしに、ある区分から別のものへ新たな状態を通信することに関してかなりの利益を与える。
【０３８３】
アイドル演算システム時間を減らすために限定された前方（ｆｏｒｗａｒｄ）到達可能性分析を利用して、初期状態は複数のウインドウに拡張され、その時間は並列的に動作する演算システムを有することに関連する利得又はゲインを減少させる。区分１００内の通信は、各区分１００のＰＯＢＤＤをタグ付けすることによって削減され、通信が望まれる時及び演算システム１１２を判別され得るようにする。高密度区分１００は、１以上の区分１００におけるカバレッジを増やすために低密度区分１００と通信するように、通信は優先される。１以上の通常的でない大きなＢＤＤを包含する区分１００を拒否することで、空間的不具合は減少させることができ、又は特定の実施例では回避することさえ可能であり、特定の実施例では、サンプリングの結果として誤りのない場合に指数的な速度向上をもたらすことができる。
【０３８４】
１以上の手順は通信オーバーヘッド及び区分１００内での冗長的な演算を減らすために使用されることが可能であり、或いは特定の実施例ではそれを回避することさえ可能である。特定の実施例では、スケジュールアルゴリズムは、区分１００の中での通信に関連するコストを減らすために、区分１００内での通信の予定を立てる（スケジュール化する）ために使用される。スケジュールアルゴリズムは、並列的な演算環境下でのグリーディ通信を促進する。区分１００内の通信に関するあるスケジュールアルゴリズムによれば、各区分１００は、（１）区分１００内で到達した状態の形式又はバージョンの第１ベクトルと、（２）１以上の別の区分１００内で到達した１以上の状態の１以上のバージョンの第２ベクトルとを有する。第１ベクトルは最新（Ｌａｔｅｓｔ）と記され、第２ベクトルは最終通知（ＬａｓｔＣｏｍｍｕｎｉｃａｔｅｄ）と記される。（最終通知［ｉ］［ｊ］のような）最終通知の１以上の対角要素は、最少固定点（ＬＦＰ：ｌｅａｓｔ  ｆｉｘ  ｐｏｉｎｔ）演算の結果を表現する。スケジューラ１０６は、区部１００及び１以上の別の区分１００の間の通信の計画を立てるために使用される。バージョンテーブル１０８は、１以上の現在必要とされる演算を示し、スケジューラ１０６は通信をスケジュールするためにバージョンテーブル１０８にアクセスする。バージョンテーブルは区分１００に関する以下の情報を包含する：
・最終通知［ｉ］［ｊ］＜最新［ｊ］は、区分［ｉ］（Ｐａｒｔｉｔｉｏｎ［ｉ］）が区分［ｊ］と通信しなければならないことを示す。
【０３８５】
・最終通知［ｉ］［ｊ］＝最新［ｊ］は、区分［ｉ］が区分［ｊ］により更新され、区分［ｊ］の通信を要しないことを示す。
【０３８６】
・最終通知［ｉ］［ｊ］＜最新［ｉ］は、区分［ｉ］がＬＦＰ演算を走らせる必要のあることを示す。
【０３８７】
・最終通知［ｉ］［ｊ］＝最新［ｉ］は、区分［ｉ］が固定点に達したことを示す。
最初に、「最終通知」の全要素がゼロに設定され、「最新」の全要素が１に設定され得る。
【０３８８】
ＬＦＰ演算の結果として又は１以上の他の区分１００との通信の結果として、区分１００が新たな状態に到達した場合に、区分１００は区分１００（最新［ｉ］＋＋）の第１ベクトルを増やす。ＬＦＰ演算又はその通信が良好に完了したならば、区分１００の第２ベクトルが更新される（最終通知［ｉ］［ｊ］＝最新［ｊ］）。バージョンテーブル１０８の行の各要素が「最新」の対応する要素に等しいならば、区分［ｉ］について何らの演算も必要とされず、及びこの条件が総ての区分について真であるならば、固定点に到達している。
【０３８９】
演算順序を決定するために、各区分１００には、網羅される状態のＢＤＤサイズ及び数に準拠して優先度指標が割り当てられる。この優先度又は別の適切な指標は、固定点に達するために要する時間量を反映し得る。限定ではない一例として、擬似コードにより表現される以下のアルゴリズムが使用され得る：
選択タスク｛
小さな（少ないＢＤＤノードの）区分（演算されることを要する）を選ぶ
ある区分と通信することをこの区分が必要とするならば、
通信タスクを起動する（ある区分と通信する）
そうでなければＬＦＰタスクを起動する
｝
複数の演算システム１１２に関連した豊富なリソースに起因して、並列的なＰＯＢＤＤ演算は多大な利点をもたらす。これらの利点は、ＰＯＢＤＤ演算を通じてエラーを発見することに関して特に顕著である。適性及び不適正の間の非対称性は、これら利点の１以上を与える。以下の例を考察する。５つの区分が存在し、各区分が１００このステップを実行しなければならないとする。また、区分５のステップ番号３９にバグが存在するとする。順次的な又はシーケンス的な場合には、そのバグを検出するまでに、１００＊４＋３９＝４３９ステップが実行される必要がある。これに対して、（各区分に１つの）５つの演算システム１１２が存在する並列的な場合には、そのバグを検出するまでに３９ステップを要する。より多くの区分が存在するならば、ＰＯＢＤＤ演算の並列化によりもたらされる恩恵は、より顕著になり得る。これは、（現存のＲＯＢＤＤに加えてＰＯＢＤＤ法を包含する）順次的な方法と比較した場合における、並列的なＰＯＢＤＤ法の重要な態様である。
【０３９０】
別の例として、区分３のステップ１０５番にバグがあるとする。１及び５の間で別のメンバであるｉ及びｊについての区分ｉから区分ｊへの通信（全部で５＊（５−１）＝２０の通信）は高価であり、そのような演算は１００ステップ全体の後に動機付けされる又はトリガを受ける。その代りに、特定の実施例では、１乃至５の区分は最初の１００ステップをそれぞれ実行し、（スケジュールに従って）大きな（ｄｅｎｓｅ）区分のみが通信を行う。その結果、２０個の通信の内８個のみが実行され、区分３はある新たな状態を受信する。４つの更なるステップにて、区分３がバグを発見する（到達可能性について１００、通信について１、及び更なる４つが必要とされる。）。従って、演算システム１１２の１乃至５は独立に１００の深さに進行し、２０個の通信ステップの内８個のみを実行する。従って、並列的なＰＯＢＤＤに必要とされる時間全体は、（この例では）近似的に１０５の処理に必要とされるものである。以前の手法では、５＊１００＝５００ステップに対応する演算は、１以上のＰＯＢＤＤにおける１００個の大規模なステップとして、又は１以上の順次的ＰＯＢＤＤにおける５００個の小規模ステップとして実行された後に、２０個全体の通信（又はそれらの等価的なＲＯＢＤＤ演算）が続く。これは、プログラムを生かさない傾向にある、というのは、プログラムは、通信処理９乃至１２（それに続く、５つの区分各々における１００画像の別の集合）の通信処理の困難性に起因して大きなサイズのデータ構造で行き詰まる傾向にあるからである。並列的なＰＯＢＤＤは実質的な節約効果をもたらす、というのは、（第１の例の場合に）区分３にてエラーが発見されたことを区分３が報告すると直ぐに総ての区分化は１０４ステップで停止し、他の残りの通信は実行されることを要しないからである。
【０３９１】
特定の実施例では、１以上の恩恵を享受するために、冗長的演算及びサンプリング又はトレースセントリック（ｔｒａｃｅ−ｃｅｎｔｒｉｃ）法が並列的に利用される。Ｎ個の演算システム１１２を並列的に使用することで、実効性をＮ倍改善することができる。特定の実施例では、そのような改善はＮ倍より大きくなり得る（非線形利得と言及される）。以下に一例を考察する。８つのウインドウを想定する。また、８つの演算システム１１２が存在するものとする。８つのウインドウは演算システム１１２内で分散される。加えて、特定の実施例では、付加的なｋ＊８個の演算システム（例えば、４＊８＝３２）が追加される。従って、各ウインドウについて４つの付加的な演算システム１１２が存在する。各ウインドウは複数の演算システム１１２によって取り扱われる。演算システム１１２は、ｍ１，ｍ２，ｍ３等と記される。ウインドウｗ１は演算システムｍ１，ｍ２，ｍ３，ｍ４，ｍ５によって処理され、ウインドウｗ２は演算システムｍ６，ｍ７，ｍ８，ｍ９，ｍ１０によって処理される、等々である。各ウインドウについて追加的な４つの演算システム１１２と共に、同一のＰＯＢＤＤは演算システム１１２における各ウインドウについて機能的に計算され得るが、各演算システム１１２は別のパラメータを利用してそのウインドウを処理し得る。従って、例えば、演算システム１１２ｍ１にて、ＢＤＤは第１の変数順序を用いて実行され、演算システム１１２ｍ２は第２の変数順序を用いて実行される。演算システム１１２ｍ３では、ＢＤＤは第１のクラスタサイズを利用して実行され、演算システム１１２ｍ２では、ＢＤＤは第２のクラスタサイズを利用して実行される。
【０３９２】
上述したように、ＢＤＤはパラメータに敏感である又は影響を受けやすい。従って、これら５つの実行のうち１つが、デフォルトの当初の選択肢のものと比較して、１０倍以上高速であり得る。場合によっては、デフォルトのような場合に、当初の選択肢が最適なものより小さく、そのような利得は１００倍以上になり得る。従って、５つの実行の各々は、演算システム１１２の任意の１つがその演算を終了するまで、演算システム１１２ｍ１−ｍ５にて継続する。残余の演算システム１１２は別のウインドウに使用されるように解放される。従って、５つの演算システム１１２のみが１０倍以上の利得を達成するために使用される。加えて、演算システム１１２は他のウインドウに使用されるように早期に解放され得る。このようにして、非線形利得が与えられる。
【０３９３】
ＰＯＢＤＤでは任意の区分数が可能なわけではない。８，１６，又は３２以上の区分は過剰に大き過ぎる、というのは、その区分内で通信が必要とされ、そのような通信はしばしば非効率的だからである。しかしながら、準正式な検査ではこのことは重要でないが（ＰＯＢＤＤは準正式な検査についても有利であることを意味する）、正式な検査では、多数の区分を備えることで、問題を生じさせないようにし得る。演算システム１１２は、特定の実施例では、比較的高価ではないので、比較的多数の演算システム１１２が比較的多数のウインドウを処理するために使用され得る。この場合に、上記の手法でなく、ウインドウｗ１−ｗ８及び演算システム１１２ｍ１−ｍ４０が存在する場合には、演算システム１１２ｍ９−ｍ４０は有意義でない。しかしながら、上記の手法によれば、演算システム１１２は有意義であり、非線形利得を与え得る。特定の実施例では、残余の演算システム１１２での処理は、それらの実行の１つが他の実行内容より優れていることが判明すると直ぐに終了する。特定の実施例では、これが典型的な状況である。殆どの実行内容に関し、どの演算システム１１２が最適な演算を行なうかを判別することが可能である。これらの実施例では、５つ総ての演算システム１１２は同じ時間の長さで使用されることを要しない。例えば、最速の実行内容に１００秒かかる場合に、より遅い演算システム１１２は、例えば１００秒後に解放され、これはより高い利得因子を与え得る。
【０３９４】
関数表現は、実質的に効率的なモノリシック表現（即ち、ＲＯＢＤＤのような単独のグラフとして）としては大き過ぎることが間々あり、区分化による利益を受け得る。関数表現の区分化分析を実行するために、１以上の以下の質問が問い合せられる：
１．その関数は分離部分空間にいつ分解されるべきか？
２．部分空間はいくつ生成されるべきか？
３．（可能な指数から）どの部分空間が生成されるべきか？
４．表現は処理として生成されるが、処理結果が簡潔ならばどうなるか？
５．そのような表現の部分集合はいつどのようにして単独のグラフに結合されるか？
６．区分化は複数の独立した表現及び処理を生成するが、どの演算順序が使用されるべきか？
これらの問い合わせは実際の区分化処理アルゴリズムにとっては基礎的なものであり、効果的な解が改善された実用的結果をもたらす。特定の実施例は、様々なベンチマーク回路の効率的な分析を可能にする。特定の実施例は以前のＰＯＢＤＤ技法を上回る利益を与える。特定の実施例は到達可能性演算に使用され得る。特定の実施例は、バグや回路設計の他の問題に対処するような業務用アプリケーションに使用され得る。
【０３９５】
特定の実施例は相当の区分化のフレキシビリティを与える。特定の実施例では、パリティＯＢＤＤがデータ構造に対する機能的パリティノードを導入し、そのノードは、ＲＯＢＤＤが許容するものよりも小さな（おそらくは指数関数的に小さな）関数の表現を許容する。また、（ｋ−ＩＢＤＤ及びｋ−ＯＢＤＤのような）他のデータ構造は、区分化する柔軟性を与えるが、パリティＯＢＤＤと同程度に実用的ではない。
【０３９６】
ＰＯＢＤＤはＢＤＤモデルであり、そのモデルは少なくともいくらかの柔軟性を許容し（受け入れモードは論理和である）、複数の変数順序を包含し得る。ＰＯＢＤＤの一般的な実証的な（ｅｍｐｉｒｉｃａｌ）用途は、各ウインドウが分離した部分空間を表現するのを可能にすることで、実現される。特定の実施例では、ＰＯＢＤＤは、シンボルグラフ表現の柔軟性及び処理性の間で実質的なバランスをとる。その結果、ＰＯＢＤＤは様々な問題について、受け入れ可能な結果を与える。有限状態マシーン（ＦＳＭ）の到達可能な状態空間を演算する場合に、ＰＯＢＤＤは複数の演算選択肢を与え、これは困難な処理問題であり得る。
【０３９７】
到達可能性の問題は、状態空間表現及び状態空間処理を含み、それらは、総ての（又は実質的に総ての）到達可能な状態が探索されるまでになされる、状態空間の一部についての一連の画像演算処理である。特定の実施例は、効率的な部分空間の作成及び画像／固定点演算の実行の双方について改善された実効性を与え得る。
【０３９８】
非両立性の関数及びトレースセントリック演算は、柔軟なＰＯＢＤＤ法がどのように使用されるかを説明し及び理解するために使用される。所与の関数に関し、区分化された表現の複数の選択肢が存在し得る。これら選択肢のいくつかは、他のものを上回る１以上の利益を与える。論理設計は、１以上の実質的に異なる性質を有するモジュール又は関数を包含する。結果的に、統合された表現で同一データ構造にてそれらのモジュール又は関数を表現することは非効率的になる虞がある。そのような関数は、多かれ少なかれ互いに非両立的であり、互いを分離することが有利であり得る。以下のような経験的な定義が使用され得る：それら各自の表現の全体が、それら結合された全体としての表現よりもコンパクトである（おそらくは、指数関数的に一層コンパクトである）ならば、一群の関数は非両立的である。ＲＯＢＤＤの観点による関数のシンボル表現を考察する。関数ｆが、例えば、ｆ１及びｆ２に分離される場合に、それら各自のＲＯＢＤＤサイズの合計（おそらくは、互いに異なる順序の下で）がｆを表現する単独のＲＯＢＤＤのサイズよりも小さいならば、ｆ１及びｆ２は非両立的である。
【０３９９】
区分化の目的は、多くの非両立的な状態空間セグメントを孤立させることである。しかしながら、それらの再表現を構築することなしに、互いに非両立的な２つの関数を見分けることは困難である（又は不可能でさえある）。その結果、関数の静的な分析は、特定の区分化選択肢の有効性を予測するには多かれ少なかれ利用可能でない。特定の実施例では、候補のサブ関数が互いに分利され、多かれ少なかれ最適な順序で独立して表現される場合にそれらの大きさが測定され、それらが互いに非両立的であるか否かが判別される。以下、サブ関数を互いに分離するアルゴリズム、それらのサイズの測定、及びそれら互いの非両立性の当否を判別することについて説明する。
【０４００】
状態空間探索を行なう様々なアルゴリズムは、実効性の点で互いに異なることが間々あり、様々な原理が混合され、動的に代替的な形式で互いに照合される。可能であれば、複数の選択肢を選ぶことで複数の経路を探索することが有利である（これは、例えば、より多くの区分を生成すること、又は区分の処理を止めること、及び第１ウインドウ又は第２ウインドウを選択することを包含し得る）。各選択肢は演算コストに関連付けられる。例として、初期状態及び遷移関係に関し、画像演算及びその後の区分化に関する１以上のステップを実行すること、又は画像演算を実行する前に区分けを生成することが可能である。各々の選択肢は可能な演算の別々のトレースを与える。各選択肢の結果は特定のトレースに関して検査され、特定の方法が選択される。別の例としては、異なる区分化処理スケジュールが選択される場合又はより多くの区分が生成される場合に、空間急増が多かれ少なかれ回避される。
【０４０１】
特定の実施例では、先験的な予測がなされる代りに、１以上の特定の選択肢が、必要とされる場合にのみ選択される。様々な手順が、ローカルな状況に準拠して別のアルゴリズムを動機付ける又はそれにトリガを与えるオラクル（ｏｒａｃｌｅ）に組み込まれたものと考えられる。これは、各演算ステップにて複数の選択肢からの選択を可能にし、１以上の選択がその演算を通じて動的に形成されるようにする。従って、特定の実施例では、メモリのボトルネック又は問題を克服するいくつかの方法が存在する。これに対して、従前のＯＢＤＤ法は、部分空間の急増時に許容可能な代替物を（仮にあるとしても）ほとんど与えない。異なる演算段階にてＰＯＢＤＤアルゴリズム中にインテリジェントな選択肢（例えば、初期グラフ表現、不具合時の動的に増加する区分、及びある部分空間から別の部分空間への通信、又はそのような通信を中断する選択肢のようなもの）を組み込む技法が、以下に説明される。
【０４０２】
初期の区分化の際に、ＢＤＤサイズ不具合が検出されるまで、到達可能性又はモデル検査ツールが実行される。これは、画像の記号表現の最大サイズとして絶対的に、又は画像処理の前後に到達した状態表現の相対的な比率で測定され得る。特定の実施例では、先験的に選択された閾値因子と共に、後者の手法が採用される。本手法は、従来の区分されない手法よりも区分される手法に設計内容が一層適している場合に１以上の利点をもたらす。表現内容のサイズが初期の非区分化の演算時に急増する場合に（及び不具合が検出される）、多数の区分が作成され、新たな区分けを作成するために、それらはｎ個の分離変数と、対応する２ｎ個の割当内容に関する余因子とを選択する。特定の実施例では、新たな区分けは、当初の変数順序とは異なる変数順序をそれぞれ有する。
【０４０３】
分離変数の選択は、その手法の実効性に影響し得る、生成される区分を判別する。分離変数は、コスト関数を用いて選択される。各変数に関し、コスト関数は、当初グラフのＢＤＤサイズに関連する正及び負の余因子の相対的なＢＤＤサイズを考慮に入れる。相対的なＢＤＤサイズは相対的に均衡させるべきであり、それと同時にそれらＢＤＤサイズの和が当初グラフのＢＤＤサイズに匹敵するべきである。これは、適切なコスト関数を用いて測定される。不具合の出現（及び沈降（ｓｕｂｓｉｄｅｎｃｅ））を判別するためのグラフサイズの測定は、ＴＲのＢＤＤサイズ、画像表現又は双方に関連して行なわれる。ＴＲサイズは多かれ少なかれ不変に維持され得るが、ＢＤＤサイズは動的な変数再配列化に起因して実質的に変わる。これらの選択肢の各々について最良の変数が識別され、２つの余因子の全体的なＢＤＤサイズを最小化する変数が選択され、特定の実施例では、その変数は、選択される可能な限りばらばらの２つの区分けを規定する。限定でない一例として、擬似コードで表現される以下のアルゴリズムが使用され得る：
【０４０４】
【数６５】
2004213619.tif 000067
ＢＤＤサイズ急増（不具合）が区分化の処理中に検出されると、動的な再区分化のトリガが与えられる。再区分化は、不具合が生成された各区分けにて改善されるまで、１以上の分離変数に準拠して状態空間全体を余因子化（ｃｏｆａｃｔｏｒｉｎｇ）し、その区分を分割することによって、実行される。初期には、その区分けは（上述したように選択される）分離変数を用いて実行される。各々の新規の区分けは、不具合が治まったか否かを把握するために検査される。それが治まっていなければ、その区分けに関して再区分化が実行される。
【０４０５】
上述したように、画像演算は代わる代わる構成及び論理積の複数のステップを含む。しばしば、画像演算の中間的ステップの間のＢＤＤサイズにおける不具合は、画像演算が完了する時点までに最終的には治まる一時的な現象である。ＢＤＤサイズ不具合が一時的現象である場合に、動的な全体的な（グローバルな）再区分化の起動は、最終的には非常に小さくなる多数の区分けを生成する。従って、特定の画像演算だけのためにローカルに区分を作成し、そして画像演算の終了前にそれらを再結合することが有利である。これらローカルな区分けは、分離変数の以前に生成した順序リストを用いて、余因子化によって生成され得る。非限定的な一例として、擬似コードで表現された以下のアルゴリズムが使用され得る：
【０４０６】
【数６６】
2004213619.tif 000068
以下、困難性に準拠した区分化のスケジューリングに基づく状態空間検索法が説明される。より多くの状態空間が網羅されるにつれて、エラーを捕捉する蓋然性の向上が予想される。従って、より多くの状態空間が速やかに網羅されるならば、いくつものエラーが早期に捕捉され得る。これを行なうために、その区分けの中でどの程度迅速に状態空間が象徴的に（ｓｙｍｂｏｌｉｃａｌｌｙ）網羅されるかという観点から、複数の区分けが特徴付けられ、区分化処理コストで測定され得る。困難度に関するこの特徴付けに関し、処理コストの上昇順に処理する区分けがスケジューリングされ、状態空間は新たな状態が発見される率で増加する手法で探索される。最悪の状況の場合に、総ての区分が処理され、状態空間全体が検索される。これは、例えば、検出可能なエラーが何ら含まれていない回路で起こり得る。
【０４０７】
区分を処理するためのスケジューリングコストを割り当てるために使用される１つのメトリックは、密度（ｄｅｎｓｉｔｙ）を用いたスケジューリングである。大きな関数表現サイズ（即ち、ＢＤＤサイズ）は、記号検査法で深刻な問題を生じることが間々ある。従来の手法が使用される場合は、大きなＢＤＤサイズは更なる状態空間探索をしばしば制限する。これに対して、区分化法が使用される場合には、大きなＢＤＤサイズは再区分化の契機又はトリガを与え、探索される区分数を増加させる。最悪の場合に、劇的な増加はその区分の探索を断念させてしまう。従って、より多くの且つより高速の状態空間カバレッジを達成するために、より高い状態密度を有する区分が、より低い状態密度を有する区分よりも前に処理される。区分けの密度は、特定の実施例では、その区分で発見された到達可能な状態数の、到達可能な状態を表現するＢＤＤのサイズに対する比率として定められる。この比率は、ＢＤＤを用いて到達可能な状態がどのように効率的に表現されるかを測定するために使用される。この比率が大きさに関して規格化されているならば、より大きな密度を有する区分けは「簡易（ｅａｓｙ）」であると考えられ、従って低位の処理コストが割り当てられる。
【０４０８】
区分を処理するためのスケジューリングコストを割り当てるために使用される別のメトリックは、時間を用いたスケジューリングであり、それは、各区分内で最新の固定点演算に使用された時間を考慮に入れるが、その区分への又はそこからの通信に使用される時間を排除するものである。区分けが充分に探索させるように接近しているならば、僅かな画像演算しか存在せず、従って、その区分への又はそこからの通信に使用される時間は比較的小さくなる。しかしながら、一般に、比較的短い時間的要請に各々が関連する顕著な画像演算数が存在する場合にのみ、時間全体が比較的小さくなる。そのような場合には、区分けにおける画像演算は、「簡易」であると言及され、その区分けは１以上のＢＤＤを利用するような記号的処理に一層相応しい。
【０４０９】
その区分けの密度に対する最新の固定点演算にかかった時間の比率は、区分けのコスト関数として使用され得る。このコストが低くなればなるほど早期に、区分けが処理用に予定され、発見することが一層高価になる状態の検索を実際に遅らせる。非限定的な一例として、スケジューリングを含む到達可能性アルゴリズムが以下に説明される：
【０４１０】
【数６７】
2004213619.tif 000069
到達可能性アルゴリズムに対する入力は、遷移関係Ｔ及び初期状態Ｉである。アルゴリズムは、ＢＤＤサイズ不具合が検出されるまで、Ｔ，Ｉにて到達可能性についての標準的モノリシックアルゴリズムを走らせる。不具合は以下のパラメータに従って規定され、それらは：（１）画像演算前のＢＤＤサイズに関する、画像演算中のＢＤＤサイズの比率；及び（２）ＢＤＤサイズの上限である。モノリシックアルゴリズムが到達可能性アルゴリズムを終了していない場合には、ＰＯＢＤＤに準拠した到達可能性演算が利用される。区分けはＲ，Ｔ双方からの情報を用いて作成される。到達可能な状態空間Ｒは、その後にＰＯＢＤＤデータ構造Ｐｏｂｄｄ−Ｒに変換される。ＰＯＢＤＤに準拠した状態検索アルゴリズムで重要なステップは、区分内でＬＦＰを算出することである。他の重要なステップは、１以上の別の区分内で関数の画像を演算することである（ある区分から１以上の他の区分への通信を包含する）。スケジューラは、上述した処理の次のステップを判別するためにその区分を選択するために使用され得る。スケジューラは２つの優先度キューを利用し：上述した処理の各々に関するものである。各区分には、区分けを処理する相対的なコストを表現するコストが割り当てられる。上述したように、コストメトリックは、２つの区分を互いに比較するために使用される。スケジューラは「簡易」な区分を最初にスケジュールしようとする。ｇｅｔＬＦＰＬｉｓｔ関数は、ＬＦＰキューからトップハーフ最少コスト区分（ｔｏｐ−ｈａｌｆ  ｌｏｗｅｓｔ−ｃｏｓｔ  ｐａｒｔｉｔｉｏｎ）を返す。同様に、ｇｅｔＣｏｍｍＬｉｓｔ関数は、共通キューからトップハーフ最少コスト区分を返す。このグリーディ手法は、先ず最少コスト区分内で固定点に到達しようとし、その演算は、より高いコスト区分に向けて進行し、最終的に目標の固定点演算を完了する。
【０４１１】
特定の実施例では、特性検査のために学習法が使用され、その手法は定数を決定する際の柔軟性を与える。典型的な工業的設計内容は、正式な検査についての何千種もの特性を有する。設計者は総ての特性について速やかに検査することを望む。正式な検査ツールはしばしば多くのパラメータを有し、総ての特性の検査をまかなう単独の設定内容を見出すことが困難になる虞がある。この問題に対処するために、以下の手法が使用され得る。１以上の実験を行ないつつ学習法が開発され、総ての特性が回路規模に従って分類される。これは、１以上の同様の手法で動作するある分類中の総ての特性と共に、比較的小さなクラスの集合になる。特性を分類することに関する設計内容の削減は、類似する回路をもたらし、到達可能性演算はその回路内での同様なステップに続く。このことを考慮すると、各クラス（分類）について最良の設定内容が選択される。特定の実施例では、任意の１以上の以下のステップが使用され得る：
（１）候補集合の設計。上述したクラスの各々から３つの特性が選択される。
【０４１２】
（２）候補集合に関する実験からの学習。異なる設定の適用。簡易な特性、困難な特性、中程度に困難な特性について上手く動作する良好な設定内容の集まりが、深い回路での特性検査に見出され、これら総ての設定内容が候補集合に適用される。学習は、実行時間及び総ての実験によるピークノードカウントを選択すること、及び特性の各クラスについて特定の設定内容を選択することからもたらされる結果である。
【０４１３】
（３）検査集合の設計。各クラスからランダム的な特性が再び選択され、試験集合に入力される。
【０４１４】
（４）以前の学習経験の試験集合への適用。候補集合から選択された総ての良好な設定内容が、選択された試験集合に適用される。
【０４１５】
（５）各クラスについての設定内容の決定。最良の設定内容が、上記総ての実験から
各クラスについて選択される。
【０４１６】
（６）多かれ少なかれ盲目的にこれらの設定内容を特性の各クラスに適用すること。
【０４１７】
正式な検査では、設定内容が良好に動作するならば、それは別の設定内容よりも実質的に良好に動作する。比較的多くの時間が適切な設定内容を決定することに費やされ、この時間は比較的多数の特性の検査に費やされ、検査に費やされる全体的な時間を減らす。上述した学習法は正式な検査法に適用されるように説明されたが、上記の学習法は、具体的な実施例にて、回路に関する１以上の特性を検査する任意の適切な技法に適用され得る。
【０４１８】
以前の技法によれば、モデル検査は、論理積／定量化法のような画像演算法を利用しながら、回路を採用することによって及び回路の到達可能な状態空間を判別することによって実行されていた。特性は、演算ツリー論理（ＣＴＬ）のような論理言語で特定される。そして、計算された到達可能な状態にて、検出される違反についてＣＴＬ特性が検査され、その検査は、後方への到達可能性分析を実行することによって達成され得る。これらの技法の１つの欠点は、一方又は双方の方向での到達可能性分析を実行するのが困難であることが間々あることである。
【０４１９】
これに対して、特定の実施例では、ＰＯＢＤＤが使用される。ＰＯＢＤＤ技法は空間を区分に分割し、可能な限り各区分内で作業する。実質的に更なる何らの進展もなされない場合には、各区分は互いに相互作用する。この相互作用は「通信」として言及される。特定の実施例では、そのような通信は高価な処理であり、従って頻繁にはなされるべきでない。
【０４２０】
特定の実施例では、モデル検査、特にＥ（ｆＵｇ）の性質の公式に関して、通信遅延法が使用される。特定の実施例では、区分間の通信を遅延させるための適切な技法が使用される。特定の実施例では、到達可能性における動的な区分けの利用に加えてモデル検査の利用は、不具合が検出された場合により多くの区分けを生成する。特定の実施例では、区分数を減らすための適切な技法が使用される。
【０４２１】
命題論理及び実際の暫定的なオペレータＥＸ，ＥＵ，ＥＧの論理的な接続により任意のＣＴＬ公式を表現することが可能である。そのような表現は、実際的通常形（ｅｘｉｓｔｅｎｔｉａｌ  ｎｏｒｍａｌ  ｆｏｒｍ）と言及される。
【０４２２】
モデル検査は通常的には２段階で実行される。第１段階では、モデル検査される公式について有限状態マシーンが減縮され、その到達可能性が算出される。第２段階は所与の公式に偽である状態群を算出することを包含する。早期に算出された到達可能な状態は、このステップでの中核的集合（ｃｏｒｅ  ｓｅｔ）として使用される。
【０４２３】
ＰＯＢＤＤを包含する記号的ＢＤＤデータ構造での論理演算を効率的に行なう演算手順が存在するので、ＣＴＬ公式のモデル検査は、暫定的なオペレータの記号的アプリケーションに主に関連する。ＥＸｑは後方画像（ｂａｃｋｗａｒｄ  ｉｍａｇｅ）であり、その方向についての調整内容と共に、到達可能性の際の画像処理と同じ装置を使用する。ＥｐＵｐ（ＥＧｐと略す）は、
【０４２４】
【数６８】
2004213619.tif 000070
のオペレータの最少（最大と略す）固定点として伝統的に表現される。
【０４２５】
不変量は形式ＡＧｐのＣＴＬ公式であり、ここでｐは命題であり、従って初期の到達可能性演算自身の際に検査され得る。
【０４２６】
以前の多くの到達可能性アルゴリズムは、有限状態マシーンの幅優先検索に基づいている。そのアルゴリズムは、現在の状態変数ｓで表現された一群の初期状態Ｉ（ｓ）と、次の一群の状態Ｎ（ｓ’）に関連する遷移関係Ｔ（ｓ，ｓ’，ｉ）とを入力として取得し、次の状態とは、システムが入力ｉに基づいてある状態から到達し得るものである。遷移関係Ｔ（ｓ，ｓ’，ｉ）は、個々の状態要素についての遷移関係ｓｋ’＝ｆｋ（ｓ，ｉ）の論理積をとることで得られ、即ち、Ｔ（ｓ，ｓ’，ｉ）＝Π（ｓｋ’＝ｆｋ（ｓ，ｉ））である。システムが到達することの可能な所与の一群の状態Ｒ（ｓ）の下で、一群の状態Ｎ（ｓ’）は、方程式
【０４２７】
【数６９】
2004213619.tif 000071
を用いて算出される。この計算は画像演算として知られている。到達される一群の状態は、（変数ｓ’をｓに置換することで得られる）Ｎ（ｓ）をＲ（ｓ）に付加し、固定点に達するまで上記の画像演算ステップを反復的に実行することで算出される。
【０４２８】
ＰＯＢＤＤに関し、区分ｊから区分ｋへの遷移関係Ｔｊｋは、Ｔｊｋ（ｓ，ｓ’，ｉ）＝ｗｊ（ｓ）ｗｋ（ｓ’）Ｔ（ｓ，ｓ’，ｉ）のように、Ｔと各ウインドウ関数との論理積をとることで導出される。ＰＲＯＢＤＤに準じた検索アルゴリズムは、各自の区分における固定点を演算するために、その内部ループ内でＲＯＢＤＤに準拠したアルゴリズムを使用する。区分けされたＲＯＢＤＤ表現  χＲ＝｛（ｗｊ（ｓ），Ｒｊ）｜１≦ｊ≦ｋ｝を考察する。Ｔｊｊの下でＲｊの画像が取得されると、
【０４２９】
【数７０】
2004213619.tif 000072
が得られる。ｗｊ（ｓ’）は定量化される変数に依存しないので、それは実際の定量化から抜き出すことができ、
【０４３０】
【数７１】
2004213619.tif 000073
となる。
【０４３１】
Ｔｊｊの下でのＲｊの画像は完全に区分ｊ内にある。同様に、Ｔｊｌの下でのＲｊの画像Ｎｌは、完全に区分ｌ内にあり、画像演算は、同じ区分内で演算される画像と、別の区分に通知される画像とで規定され得る。前者は区分画像（ＩｍｇＰａｒｔ）と呼ばれ、後者は通信画像（ＩｍｇＣｏｍｍ）と呼ばれる。同様に、事前画像（ｐｒｅＩｍａｇｅ）演算の事前区分（ｐｒｅＰａｒｔ）と事前通信（ｐｒｅＣｏｍｍ）は、以下の擬似コードを用いて規定され得る：
【０４３２】
【数７２】
2004213619.tif 000074
事前画像（即ち、ＥＸ演算）はそれらの統合によって得られる：
【０４３３】
【数７３】
2004213619.tif 000075
通信される画像の計算に２つの手法が可能である：１つの手法によれば、画像は、遷移関係Ｔｊｋを利用して、区分ｊから各区分ｋ≠ｊへ別々に算出される。或いは、区分ｊから、
【０４３４】
【数７４】
2004213619.tif 000076
により記される区分ｊの補集合である論理空間への画像を演算することも可能である。前者は、遷移関係ＴｊｋのＢＤＤ表現は充分に小さいが、Ｏ（ｎ２）程度の画像演算を実行しなければならない場合に有利であり得る。特定の実施例では、「通信画像」を規定するために第２の方法が使用される。この方法はＯ（ｎ）程度の画像演算しか必要としないが、これの各々にはＯ（ｎ）程度の制限的処理が続く。
【０４３５】
形態（ｍｏｄａｌｉｔｙ）ＥＸ，ＥＵ，ＥＧは、実際的な通常形で任意のＣＴＬ式を表現するのに充分である。特に、デッドロック（ｄｅａｄｌｏｃｋ）特性
【０４３６】
【数７５】
2004213619.tif 000077
は、ＣＴＬに関する最大の固定点非拘束フラグメントで表現され得る。不変性検査及びデッドロックは、設計者にとってしばしば実際上の関心事であるので、特定の態様は最少の固定点オペレータＥ（ｐＵｑ）を呼び出す。
【０４３７】
「区分画像」及び「通信画像」の２つの画像演算の間には基本的な相違が存在する。ｉｍｇＰａｒｔ（Ｒｊ）は、当初のＢＤＤ  Ｒｊと同じ区分ｊ内にあり、従ってその計算に関して唯１つの区分がメモリ内にあることを要する。一方、ｉｍｇＣｏｍｍ（Ｒｊ）は、ｊ’（即ち、ｊ以外の全区分）への画像を演算し、最終的には総ての画像にアクセスし及び修正する必要がある。このことは、通信に関して２つの事項を生じさせる。第１に、全区分に関する到達済み状態群がアクセスされるべきである。より大規模な設計の場合には、単独の区分のＢＤＤでさえ、百万のノード内で動作し、このことは通常的にはディスクから格納された区分にアクセスすることを意味する。第２に、演算される状態群のＢＤＤ変数順序は、新たな状態がターゲット内の到達される集合に加えられる前に、ｊ番目の区分の順序から、そのターゲット区分各々のものに変更されるべきである。大規模な設計では、大きなＢＤＤを再配列化することは高価な処理になる虞がある。
【０４３８】
区分内での画像演算ＩｍｇＰａｒｔは、区分間の通信ＩｍｇＣｏｍｍに比して比較的安価である。従って、ある区分から別のものへのＢＤＤの転送を減らすために、潜在的に可能な場合は常に、通信画像ＩｍｇＣｏｍｍの呼出数を減らすアルゴリズムが使用される。通信前に区分内で反復的に画像通信を実行する利点は、別の手法で捕捉するものよりも早期にエラーが捕捉されることである。ある区分で公式が偽になる場合に、別の区分を更に探索することは不要である。このように、別の手法が必要とするものよりも小さな状態空間部分を探索することによって、エラーを見出すことが可能になる。
【０４３９】
非限定的な一例として、以下に、ＰＯＢＤＤに関する、区分化を活用するよう設計された改善されたモデル検査アルゴリズムが説明される：
【０４４０】
【数７６】
2004213619.tif 000078
Ｅ（ｐＵｑ）の演算で、ｐｒｅＩｍａｇｅ演算はアルゴリズムにより行なわれる作業の大部分をなす。ｐｒｅＩｍａｇｅ全体の中で通信内容を事前に形成するコストは、区分間でＢＤＤを転送すること、そのような転送が可能になる前にＢＤＤを再配列化すること、及び新規状態がｐと論理積をとり且つｑと論理和をとり得るように格納部から区分を取り出すこと、に要するリソースの観点からは比較的大きい。従って、特定の実施例では、事前通信ｐｒｅＩｍａｇｅを呼び出すことは、通信が行われる前に各区分内でローカルに可能な限り多くの画像演算と同程度に実行を遅らせることが可能である。集合Ｅ（ｐＵｑ）を演算するための上述のアルゴリズムは、データ構造の区分化された性質を考慮し得る。各区分は、別の区分がそれぞれ固定点に到達するまで、別の区分とは独立して調査される。そして、区分間の通信が実行される。結果として、１以上の区分が所与の任意の時点でメモリに格納されることを要せず、ＢＤＤ転送に含まれる通信数、ディスクアクセス数及び変数再配列化呼出数が削減される。
【０４４１】
特定の実施例では、検査プロセスが止められるべき時を判別するための技法が使用される。特定の実施例は、準正式な検査が、網羅された状態数と状態が網羅される速度とに準拠した適切な範囲まで実行された時点を判別する。準正式な検査の走行時間は、飽和点（又はニーポイント（ｋｎｅｅ  ｐｏｉｎｔ））に到達したか否かに基づいて制御され得る。準正式な検査での１つの問題は、検査プロセスが停止される時点を知らないことである。より多くの時間が費やされるべきか？  追加的な時間が追加的な有意のカバレッジを与えるか？
飽和点に達したならば、より多くの時間が費やされたとしても、更なる有益な情報は得られない傾向にある。一方、飽和点に達していないならば、検査プロセスは、特に重要な特性に関連して、継続される。例えば、多くの新たな状態が各時点でカバーされ、何らの設計バグも発見されなかったならば、その準正式な検査プロセスを継続することが望ましい。一方、プログラムが遅延して、新たな状態をカバーするのに過剰に多くの時間がかかるならば（以前のカバレッジに比較して）、そのプログラムをより長く（例えば１０時間長く）走らせることは有益ではない（もし利益があるとしてもほとんど無い）。特定の実施例では、簡易な状態総て（又は実質的に総て）が既にカバーされているか否か及び飽和点が到達しているようであるか否かをそのカバーされる状態空間が示すように、カバーされる状態空間は特徴付けられる。
【０４４２】
カバーされる状態空間は到達可能性計算ステップに関してプロットされる。１以上の到達可能性演算を利用して検査が実行され、これらの計算の各ステップは設計の初期状態から遠くの状態に到達し得る。例として、到達可能性計算ステップ番号１０の終わりには、初期状態から少なくとも１０の距離にある状態が到達済みである。Ｙ軸に網羅された状態数、Ｘ軸に到達可能性演算ステップ数をプロットし、曲線が当てはめられる。そしてその曲線が分析される。曲線が膝状部（ｋｎｅｅ）を示すならば、その膝状部は飽和点を示す。任意の適切な曲線プロットソフトウエアが使用され得る。特定の実施例では、ニーポイントに到達してもしなくても良い。ニーポイントに関するリファレンスは曲線に沿うあるポイントを包含し、そこでは曲線がＹ軸に関する増加をほとんど停止しており、少なくとも幾分平坦になっている。特定の実施例では、以下のような、可能性のある飽和点を見出す技法が使用され得る：準正式な検査モードで、検査プロセスが各特性に関して未だ飽和点に達していなかったならば、その検査プロセスは継続される。そうでなければ、検査プロセスは停止される。
【０４４３】
図１５は、分散して演算を行なう１以上の区分けされたデータ構造を用いて、回路内の１以上の到達可能な状態を判別する方法例を示す。本方法はステップ６００から始まり、ターゲット回路８２が複数の区分１００に分割される。ステップ６０２では、区分１００が演算システム１１２にそれぞれ分散される。ステップ６０４では各区分１００が、固定点に達するまで処理さえる。ステップ６０６では、演算システム１１２で実行された到達可能性分析に関する情報が、演算システム１１２内で通信され、その時点で本方法は終了する。上述したように、更なる処理が、通信された情報に基づいて演算システム１１２における区分１００にて実行され得る。図１５に示される方法の特定のステップは、特定の順序で行なわれるように説明及び示されているが、本発明は、任意の適切な順序で上述の方法に関する適切なステップが行なわれ得ることを意図する。
【０４４４】
図１６は、１以上の複数ルート２進判定図を用いる（ターゲット回路８２のような）回路の到達可能性検査用の方法例を示す。本方法はステップ７００にて始まり、ターゲット回路１２のラッチについてＰＯＢＤＤが生成される。ステップ７０２では、ＰＯＢＤＤのＴＲがグラフ化される。ステップ７０４では、ＰＯＢＤＤの２つの論理和集合が生成される。ステップ７０６では、ＰＯＢＤＤの各論理和区分が閾値サイズと比較される。ステップ７０８では、ＰＯＢＤＤの論理和区分双方が閾値サイズを下回る場合に、本方法はステップ７１０に進む。ステップ７１０では、ＰＯＢＤＤがＮＣＰＴのルートに割り当てられる。ステップ７１２では、ＮＣＰＴの各リーフについて、総ての分解点が構成され、総ての区分が生成される。ステップ７１４では、到達可能性分析が、ＮＣＰＴの各リーフの各区分を利用しながら、固定点に達するまで実行され、（固定点に達すると）その時点で本方法は終了する。ステップ７０８に戻って、ＰＯＢＤＤの論理和区分双方が閾値サイズを下回らない場合には、本方法はステップ７１６に進む。ステップ７１６ではＴＲが、キューブ状区分化法を用いて減縮され、再びステップ７１０に合流する。図１６に示される本方法は、ターゲット回路８２の複数のラッチ（おそらくは総てのラッチ）について反復され得る。図１６に示される方法の特定のステップは、特定の順序で行なわれるように説明及び示されているが、本発明は、任意の適切な順序で上述の方法に関する適切なステップが行なわれ得ることを意図する。
【０４４５】
図１７は、スケジューリング法を用いて回路の準正式な検査についての方法例を示す。本方法は、ステップ８００から始まり、各々が回路の状態空間の区分に対応する複数のＰＯＢＤＤが生成される。ＰＯＢＤＤ各々は、上述したように複数の状態及び複数の状態空間を包含する。ステップ８０２では、各ＰＯＢＤＤの密度が判定される。上述したように、ＰＯＢＤＤの密度は、そのＰＯＢＤＤ中の状態数及びノード数を反映する。ステップ８０４では、ＰＯＢＤＤが（予め決定される）閾値を超える密度を有する場合に、ＰＯＢＤＤは無視される。ステップ８０６では、無視されていないＰＯＢＤＤの組又はペアが、スケジュールに従って互いに通信を行い、回路の１以上の到達可能な状態を判別し、その時点で本方法は終了する。非限定的な一例として、特定の実施例では、そのスケジュールに従って、高密度で簡易な区分から低密度で簡易な区分への通信は第１優先度であり；高密度で簡易な区分から高密度で簡易な区分への通信は第２優先度であり；及び高密度で簡易な区分から低密度でより複雑な区分への通信は第３優先度である。図１７に示される方法の特定のステップは、特定の順序で行なわれるように説明及び示されているが、本発明は、任意の適切な順序で上述の方法に関する適切なステップが行なわれ得ることを意図する。
【０４４６】
本発明は、特定の実施例に関連して詳細に説明されているが、システム８０は任意の状況に拡張されることが可能であり、その状況では、選択されたタスクを実行する又は指定された特性を包含するように設計又は製造される所与のターゲットについて、検査が行なわれる。更に、システム８０によって顕著なフレキシビリティが得られ、任意の適切な１以上の要素が、それらの動作を向上させる別の要素と置換され得る。例えば、システム８０は、ＢＭＣツール要素８８、ＰＯＢＤＤデータ構造８４及びアルゴリズム要素８６のような具体的な要素を参照しながら説明されてきたが、これらの要素は、それが適切ならば単一の一体的装置内に設けられることも可能であり、又はそれらの機能をもたらす装置と置換されることも可能である。ＰＯＢＤＤデータ構造８４は、その検査能力を強化するために、他の適切な検査又はシミュレーションプロトコルと共に使用され得る。加えて、設計者情報９０は任意の適切な手法でＰＯＢＤＤデータ構造８４に通知され或いは与えられ、ＢＭＣツール要素８８に、境界モデル検査を実行するのに好都合な開始ポイントが用意されるようにする。
【０４４７】
加えて、システム８０は１以上の個別素子を参照しながら説明されてきたが、処理動作を向上させるために、追加的な中間的要素がシステム８０に設けられることも可能である。例えば、追加的な要素は、ＢＭＣツール要素８８及びＰＯＢＤＤデータ構造８４間の情報通信に使用され得る。本発明は広範な汎用性の恩恵に浴することが可能であり、これらの要素は様々な中間的処理要素に関連して適切な形式で動作することが可能であり、所与のターゲット要素又はオブジェクトに関する検査手順を支援する。
【０４４８】
本発明はいくつかの実施例と共に説明されてきたが、様々な変更、置換、変形、代替及び修正が当業者に示唆され、本発明はそのような変更、置換、変形、代替及び修正の総てを本発明の精神及び特許請求の範囲内に包含することを意図する。いずれにせよ、本発明は、特許請求の範囲に反映されない明細書中の記述には限定されない。
【０４４９】
以下、本発明により教示される手段を列挙する。
【０４５０】
（付記１）
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記情報は検査されるターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために１以上の処理を実行するところのＰＯＢＤＤデータ構造；及び
前記ＰＯＢＤＤデータ構造から前記第１状態群を受信するよう動作する境界モデル検査（ＢＭＣ）ツール要素であって、前記ＢＭＣツール要素は、前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して１以上の境界モデル検査処理を実行し、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのＢＭＣツール要素；
を備えることを特徴とするターゲット回路に関連する特性を検査する装置。
【０４５１】
（付記２）
更に：
前記ＰＯＢＤＤデータ構造に結合されたアルゴリズム要素を備え、前記アルゴリズム要素は、前記ターゲット回路内に含まれる特性を検査するために実行される１以上のアルゴリズムを包含することを特徴とする付記１記載の装置。
【０４５２】
（付記３）
前記第１状態群が、２進判定図（ＢＤＤ）言語プロトコルに変換され、論理積通常形（ＣＮＦ）公式に対応付けられ、前記ＣＮＦ公式は第１状態群として前記ＢＭＣツール要素に通知され、前記ＢＭＣツール要素は前記第１状態群から前記第２状態群を生成することを特徴とする付記１記載の装置。
【０４５３】
（付記４）
１以上の画像処理が、前記第２深度で前記第２状態群を生成するために前記情報に関して実行されることを特徴とする付記１記載の装置。
【０４５４】
（付記５）
１以上の事前画像処理が、前記第１深度で前記第１状態群を生成するために前記情報に関して実行されることを特徴とする付記１記載の装置。
【０４５５】
（付記６）
前記ＢＭＣツール要素が、前記第２深度で前記第２状態群を生成するために１以上の充足可能性（ＳＡＴ）手順を実行することを特徴とする付記１記載の装置。
【０４５６】
（付記７）
前記情報は、前記ＰＯＢＤＤデータ構造が前記第１深度で前記第１状態群を生成するために検査を実行することを特徴とする付記１記載の装置。
【０４５７】
（付記８）
前記ＢＭＣツール要素が、検査される前記特性に関連する整合性パラメータを反映する結果を生成し、前記整合性パラメータは１以上のエラーが前記ターゲット回路内に存在するか否かを区別することを特徴とする付記１記載の装置。
【０４５８】
（付記９）
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査されるターゲット回路内の特性を区別するところのステップ；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行するステップ；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行するステップであって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのステップ；
より成ることを特徴とするターゲット回路に関連する特性を検査する方法。
【０４５９】
（付記１０）
更に：
前記ターゲット回路に関連付けられた特性を検査するために１以上のアルゴリズムを実行するステップより成ることを特徴とする付記９記載の方法。
【０４６０】
（付記１１）
更に：
２進判定図（ＢＤＤ）言語プロトコルに前記第１状態群を変換するステップ；及び
前記ＢＤＤ言語プロトコルを論理積通常形（ＣＮＦ）公式に対応付けるステップであって、前記ＣＮＦ公式は第１状態群を反映し、前記第２状態群は前記第１状態群から生成されるところのステップ；
より成ることを特徴とする付記９記載の方法。
【０４６１】
（付記１２）
前記第２深度で前記第２状態群を生成するために前記情報に関して１以上の画像処理を実行するステップより成ることを特徴とする付記９記載の方法。
【０４６２】
（付記１３）
前記第１深度で前記第１状態群を生成するために前記情報に関して１以上の事前画像処理を実行するステップより成ることを特徴とする付記９記載の方法。
【０４６３】
（付記１４）
前記第２深度で前記第２状態群を生成するために１以上の充足可能性（ＳＡＴ）手順を実行するステップより成ることを特徴とする付記９記載の方法。
【０４６４】
（付記１５）
前記情報は、前記第１深度で前記第１状態群を生成するための期間を含むことを特徴とする付記９記載の方法。
【０４６５】
（付記１６）
更に、検査される前記特性に関連する整合性パラメータを反映する結果を生成するステップより成り、前記整合性パラメータは１以上のエラーが前記ターゲット回路内に存在するか否かを区別することを特徴とする付記９記載の方法。
【０４６６】
（付記１７）
ターゲット回路に関連する情報を受信する手段であって、前記情報は検査されるターゲット回路内の特性を区別するところの手段；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行する手段；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行する手段であって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところの手段；
を備えることを特徴とするターゲット回路に関連する特性を検査するシステム。
【０４６７】
（付記１８）
更に：
前記ターゲット回路に関連付けられた特性を検査するために１以上のアルゴリズムを実行する手段より成ることを特徴とする付記１７記載のシステム。
【０４６８】
（付記１９）
更に：
２進判定図（ＢＤＤ）言語プロトコルに前記第１状態群を変換する手段；及び
前記ＢＤＤ言語プロトコルを論理積通常形（ＣＮＦ）公式に対応付ける手段であって、前記ＣＮＦ公式は第１状態群を反映し、前記第２状態群は前記第１状態群から生成されるところの手段；
より成ることを特徴とする付記１７記載のシステム。
【０４６９】
（付記２０）
前記第２深度で前記第２状態群を生成するために前記情報に関して１以上の画像処理を実行する手段より成ることを特徴とする付記１７記載のシステム。
【０４７０】
（付記２１）
前記第１深度で前記第１状態群を生成するために前記情報に関して１以上の事前画像処理を実行する手段より成ることを特徴とする付記１７記載のシステム。
【０４７１】
（付記２２）
前記第２深度で前記第２状態群を生成するために１以上の充足可能性（ＳＡＴ）手順を実行する手段より成ることを特徴とする付記１７記載のシステム。
【０４７２】
（付記２３）
更に、検査される前記特性に関連する整合性パラメータを反映する結果を生成する手段より成り、前記整合性パラメータは１以上のエラーが前記ターゲット回路内に存在するか否かを区別することを特徴とする付記１７記載のシステム。
【０４７３】
（付記２４）
ターゲット回路に関連する特性を検査するためのコンピュータ読み取り可能な媒体であって、
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査されるターゲット回路内の特性を区別するところのステップ；
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を、前記ターゲット回路内の部分空間に関連する第１深度で第１状態群を生成するために前記情報を利用して実行するステップ；及び
前記ターゲット回路内の部分空間に関連する第２深度で第２状態群を生成するために、前記第１状態群を利用して境界モデル検査処理を実行するステップであって、前記第１状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群に対する基礎として使用されるところのステップ；
を実行させるコードを含むことを特徴とするコンピュータ読み取り可能な媒体。
【０４７４】
（付記２５）
更に：
前記ターゲット回路に関連付けられた特性を検査するために１以上のアルゴリズムを実行するステップを実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４７５】
（付記２６）
更に：
２進判定図（ＢＤＤ）言語プロトコルに前記第１状態群を変換するステップ；及び
前記ＢＤＤ言語プロトコルを論理積通常形（ＣＮＦ）公式に対応付けるステップであって、前記ＣＮＦ公式は第１状態群を反映し、前記第２状態群は前記第１状態群から生成されるところのステップ；
を実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４７６】
（付記２７）
前記第２深度で前記第２状態群を生成するために前記情報に関して１以上の画像処理を実行するステップを実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４７７】
（付記２８）
前記第１深度で前記第１状態群を生成するために前記情報に関して１以上の事前画像処理を実行するステップを実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４７８】
（付記２９）
前記第２深度で前記第２状態群を生成するために１以上の充足可能性（ＳＡＴ）手順を実行するステップを実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４７９】
（付記３０）
更に、検査される前記特性に関連する整合性パラメータを反映する結果を生成するステップであって、前記整合性パラメータは１以上のエラーが前記ターゲット回路内に存在するか否かを区別するところのステップを実行させるコードを含むことを特徴とする付記２４記載の媒体。
【０４８０】
（付記３１）
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記情報は検査されるターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために１以上の処理を実行するところのＰＯＢＤＤデータ構造；及び
エラー状態に関連する経路を見分けるよう動作する補助データ構造であって、前記経路は、エラー状態に関連する初期状態と前記ＰＯＢＤＤデータ構造でエラーに遭遇した場所との間の関連性を反映するところの補助データ構造；
を備えることを特徴とするターゲット回路に関連するエラー状態を評価する装置。
【０４８１】
（付記３２）
更に：
前記ＰＯＢＤＤデータ構造に結合されたアルゴリズム要素を備え、前記アルゴリズム要素は、前記ターゲット回路に含まれる特性を検査するために実行される１以上のアルゴリズムを包含することを特徴とする付記３１記載の装置。
【０４８２】
（付記３３）
前記アルゴリズム要素が、前記経路を見分けるために前記補助データ構造により起動されるエラートレースアルゴリズムを含むことを特徴とする付記３２記載の装置。
【０４８３】
（付記３４）
前記エラートレースアルゴリズムは、前記エラー状態が判明した場合に前記初期状態が決定され得るように、前記経路に関連付けられるデータを格納させることを特徴とする付記３３記載の装置。
【０４８４】
（付記３５）
前記特性に関連する一群の状態を生成するように前記情報に関して１以上の画像処理が実行されることを特徴とする付記３１記載の装置。
【０４８５】
（付記３６）
前記特性に関連する一群の状態を生成するように前記情報に関して１以上の事前画像処理が実行されることを特徴とする付記３５記載の装置。
【０４８６】
（付記３７）
前記補助データ構造が、前記経路のパラメータに関連付けられる演算を実行し、前記演算内容は：
前記エラー状態に関連する区分け；
前記ＰＯＢＤＤデータ構造が前記エラー状態に遭遇した場合に関連する期間；及び
前記エラー状態を判別することに関連するメモリ消費性；
より成る群から選択されることを特徴とする付記３１記載の装置。
【０４８７】
（付記３８）
前記情報は、前記ＰＯＢＤＤデータ構造が前記ターゲット回路の検査を実行する期間を含むことを特徴とする付記３１記載の装置。
【０４８８】
（付記３９）
ターゲット回路に関連するエラー状態を評価する方法であって：
前記ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行するステップ；及び
エラー状態に関連する経路を見分けるステップであって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところのステップ；
より成ることを特徴とする方法。
【０４８９】
（付記４０）
更に：
前記ターゲット回路に関連する特性を検査するために１以上のアルゴリズムを実行するステップより成ることを特徴とする付記３９記載の方法。
【０４９０】
（付記４１）
更に：
前記エラー状態に関連する経路を見分けるためにエラートレースアルゴリズムを実行するステップより成ることを特徴とする付記３９記載の方法。
【０４９１】
（付記４２）
更に：
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の画像処理を実行するステップより成ることを特徴とする付記３９記載の方法。
【０４９２】
（付記４３）
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の事前画像処理を実行することを特徴とする付記４２記載の方法。
【０４９３】
（付記４４）
前記情報が、前記ターゲット回路について検査が実行される期間を含むことを特徴とする付記３９記載の方法。
【０４９４】
（付記４５）
更に：
検査される特性に関連する整合性パラメータを反映する結果を生成するステップより成り、前記整合性パラメータは１以上のエラーが前記ターゲット回路に存在するか否かを区別することを特徴とする付記３９記載の方法。
【０４９５】
（付記４６）
ターゲット回路に関連するエラー状態を評価するシステムであって：
前記ターゲット回路に関連する情報を受信する手段であって、前記情報は検査される前記ターゲット回路内の特性を区別するところの手段；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行する手段；及び
エラー状態に関連する経路を見分ける手段であって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところの手段；
を備えることを特徴とするシステム。
【０４９６】
（付記４７）
更に：
前記ターゲット回路に関連する特性を検査するために１以上のアルゴリズムを実行する手段より成ることを特徴とする付記４６記載のシステム。
【０４９７】
（付記４８）
更に：
前記エラー状態に関連する経路を見分けるためにエラートレースアルゴリズムを実行する手段より成ることを特徴とする付記４６記載のシステム。
【０４９８】
（付記４９）
更に：
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の画像処理を実行する手段より成ることを特徴とする付記４６記載のシステム。
【０４９９】
（付記５０）
更に：
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の事前画像処理を実行する手段より成ることを特徴とする付記４９記載のシステム。
【０５００】
（付記５１）
更に：
検査される特性に関連する整合性パラメータを反映する結果を生成する手段より成り、前記整合性パラメータは１以上のエラーが前記ターゲット回路に存在するか否かを区別することを特徴とする付記４６記載のシステム。
【０５０１】
（付記５２）
更に：
前記経路のパラメータに関連付けられる演算を実行する手段を備え、前記演算内容は：
前記エラー状態に関連する区分け；
前記ＰＯＢＤＤデータ構造が前記エラー状態に遭遇した場合に関連する期間；及び
前記エラー状態を判別することに関連するメモリ消費性；
より成る群から選択されることを特徴とする付記４６記載のシステム。
【０５０２】
（付記５３）
ターゲット回路に関連するエラー状態を評価するためのコンピュータ読み取り可能な媒体であって：
前記ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路内の部分空間に関連するエラー状態を見分けるために前記情報を用いて１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）処理を実行するステップ；及び
エラー状態に関連する経路を見分けるステップであって、前記経路は、エラー状態に関連する初期状態とエラーに遭遇した場所との間の関連性を反映するところのステップ；
を実行させるコードを含むことを特徴とするコンピュータ読み取り可能な媒体。
【０５０３】
（付記５４）
更に：
前記ターゲット回路に関連する特性を検査するために１以上のアルゴリズムを実行させるコードを含むことを特徴とする付記５３記載の媒体。
【０５０４】
（付記５５）
更に：
前記エラー状態に関連する経路を見分けるためにエラートレースアルゴリズムを実行させるコードを含むことを特徴とする付記５３記載の媒体。
【０５０５】
（付記５６）
更に：
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の画像処理を実行させるコードを含むことを特徴とする付記５３記載の媒体。
【０５０６】
（付記５７）
前記特性を検査することに関連する一群の状態を生成するために前記情報について１以上の事前画像処理を実行させるコードを含むことを特徴とする付記５６記載の媒体。
【０５０７】
（付記５８）
更に：
検査される特性に関連する整合性パラメータを反映する結果を生成するステップを実行させるコードを含み、前記整合性パラメータは１以上のエラーが前記ターゲット回路に存在するか否かを区別することを特徴とする付記５３記載の媒体。
【０５０８】
（付記５９）
ターゲット回路に関連する特性を検査する装置であって：
ターゲット回路に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造より成り、前記情報は検査される前記ターゲット回路内の特性を区別し、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行することが可能であり、前記ＰＯＢＤＤデータ構造は、前記ターゲット回路に関連する画像を、前記ＰＯＢＤＤデータ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けすることが可能であり、前記ＰＯＢＤＤデータ構造は、論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行することが可能であることを特徴とする装置。
【０５０９】
（付記６０）
更に：
前記ＰＯＢＤＤデータ構造に結合されたアルゴリズム要素を備え、前記アルゴリズム要素は、前記ターゲット回路内に含まれる特性を検査するために実行される１以上のアルゴリズムを含むことを特徴とする付記５９記載の装置。
【０５１０】
（付記６１）
前記ターゲット回路に関連する主要な入力、状態変数及び局所的分解変数の内で選択されたものに準拠して前記の区分けが実行されることを特徴とする付記５９記載の装置。
【０５１１】
（付記６２）
１以上のリーフが異なる変数順序を用いて別々に演算されることを特徴とする付記５９記載の装置。
【０５１２】
（付記６３）
更に：
複数の管理部を備え、１以上の管理部が複数のリーフの内選択されたものを分析することが可能であり、１以上のリーフが１つのＢＤＤに結合されることが可能であり、１以上のリーフは演算が完了した後に転送され得ることを特徴とする付記５９記載の装置。
【０５１３】
（付記６４）
１以上のリーフに関連する１以上のウインドウを共通のウインドウに結合するために、局所的な区分け（ローカル区分け）が用いられることを特徴とする付記５９記載の装置。
【０５１４】
（付記６５）
１以上のリーフに関連する全体的な区分け（グローバル区分け）を反映する情報を収集するために、局所的な区分けが用いられ、１以上のリーフに関連する追加的な区分を生成するために、動的な区分けが用いられることを特徴とする付記５９記載の装置。
【０５１５】
（付記６６）
前記ＰＯＢＤＤデータ構造は演算処理を監視し、不具合が生じた場合に、該不具合に関連する情報が記録され及び以後の時点で用いられるように、且つ１以上のリーフにより異常な挙動が示された場合に、前記情報が、コスト計算を含む予測リストに含まれるようにすることを特徴とする付記５９記載の装置。
【０５１６】
（付記６７）
ターゲット回路に関連する特性を検査する方法であって：
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行するステップ；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けするステップ；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行するステップ；
より成ることを特徴とする方法。
【０５１７】
（付記６８）
更に：
前記ターゲット回路に含まれる特性を検査するために１以上のアルゴリズムを実行するステップより成ることを特徴とする付記６７記載の方法。
【０５１８】
（付記６９）
前記ターゲット回路に関連する主要な入力、状態変数及び局所的な分解変数の内で選択されたものに準拠して、前記の区分けが実行されることを特徴とする付記６７記載の方法。
【０５１９】
（付記７０）
１以上のリーフが異なる変数順序を用いて別々に演算されることを特徴とする付記６７記載の方法。
【０５２０】
（付記７１）
更に：
演算が完了した後に１以上のリーフを転送するステップより成ることを特徴とする付記６７記載の方法。
【０５２１】
（付記７２）
更に：
検査される特性に関連する整合性パラメータを反映する結果を生成するステップより成り、前記整合性パラメータは、前記ターゲット回路に１以上のエラーが有るか否かを区別することを特徴とする付記６７記載の方法。
【０５２２】
（付記７３）
コンピュータ読み取り可能な媒体に含まれる、ターゲット回路に関連する特性を検査させるソフトウエアであって：
ターゲット回路に関連する情報を受信するステップであって、前記情報は検査される前記ターゲット回路内の特性を区別するところのステップ；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行するステップ；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けするステップ；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行するステップ；
を実行させるコンピュータコードより成ることを特徴とするソフトウエア。
【０５２３】
（付記７４）
更に、前記コードが：
前記ターゲット回路に含まれる特性を検査するために１以上のアルゴリズムを実行させることを特徴とする付記７３記載のソフトウエア。
【０５２４】
（付記７５）
前記ターゲット回路に関連する主要な入力、状態変数及び局所的な分解変数の内で選択されたものに準拠して、前記の区分けが実行されることを特徴とする付記７３記載のソフトウエア。
【０５２５】
（付記７６）
１以上のリーフが異なる変数順序を用いて別々に演算されることを特徴とする付記７３記載のソフトウエア。
【０５２６】
（付記７７）
更に、前記コードが：
演算が完了した後に１以上のリーフを転送するステップを実行させることを特徴とする付記７３記載のソフトウエア。
【０５２７】
（付記７８）
更に、前記コードが：
検査される特性に関連する整合性パラメータを反映する結果を生成するステップを実行させ、前記整合性パラメータは、前記ターゲット回路に１以上のエラーが有るか否かを区別することを特徴とする付記７３記載の媒体。
【０５２８】
（付記７９）
ターゲット回路に関連する特性を検査するシステムであって：
ターゲット回路に関連する情報を受信する手段であって、前記情報は検査される前記ターゲット回路内の特性を区別するところの手段；
前記ターゲット回路に関連する到達可能性分析を実行する一群の遷移関係を生成するために、１以上の処理を実行する手段；
前記ターゲット回路に関連する画像を、区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造によって生成される最終的画像の部分集合をそれぞれ表現する複数のリーフに区分けする手段；及び
論理積及び定量化処理の選択された一方又は双方を別々に利用して１以上のリーフについての分析を実行する手段；
を備えることを特徴とするシステム。
【０５２９】
（付記８０）
更に：
前記ターゲット回路に含まれる特性を検査するために１以上のアルゴリズムを実行する手段より成ることを特徴とする付記７９記載のシステム。
【０５３０】
（付記８１）
更に：
演算が完了した後に１以上のリーフを転送する手段より成ることを特徴とする付記７９記載のシステム。
【０５３１】
（付記８２）
更に：
検査される特性に関連する整合性パラメータを反映する結果を生成する手段より成り、前記整合性パラメータは、前記ターゲット回路に１以上のエラーが有るか否かを区別することを特徴とする付記７９記載のシステム。
【０５３２】
（付記８３）
ターゲット回路に関連する機能を反映するよう動作する第１の２進判定図（ＢＤＤ）データ構造であって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところの第１のＢＤＤデータ構造；及び
前記ターゲット回路に関連する前記機能を反映するよう動作する第２のＢＤＤデータ構造であって、前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して構築され、前記修正は、前記第１のＢＤＤデータ構造よりも小さくなるように前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところの第２のＢＤＤデータ構造；
を備えることを特徴とする装置。
【０５３３】
（付記８４）
更に：
１以上のアルゴリズムを含むアルゴリズム要素を備え、前記アルゴリズム要素は、前記第１及び第２のＢＤＤデータ構造を生成するように動作することを特徴とする付記８３記載の装置。
【０５３４】
（付記８５）
前記第１及び第２スクリプトに含まれるパラメータが：
ａ）  変数順序；
ｂ）  クラスタサイズ；
ｃ）  分解点；
ｄ）  分離変数；
ｅ）  区分数；
ｆ）  生成されるウインドウ数；
ｇ）  使用されるウインドウ種別；
ｈ）  使用される変数；
より成る群要素から選択されることを特徴とする付記８３記載の装置。
【０５３５】
（付記８６）
更に：
前記第１及び第２のＢＤＤデータ構造の構築を各々制御するよう動作する第１及び第２のＢＤＤ管理部を備え、前記第１及び第２のＢＤＤ管理部は、前記第１及び第２のデータ構造の第１及び第２のグラフに各々関連するサイズを制御するために、前記第１及び第２スクリプトを修正するよう動作することを特徴とする付記８３記載の装置。
【０５３６】
（付記８７）
不具合が生じた場合に、前記第１のＢＤＤデータ構造に関連する前記メジャー及びマイナー閾値が、ファイルにマッピングされ及び格納されるように、前記第１のＢＤＤデータ構造が監視され、前記ファイルは前記第１スクリプトに対する修正の基礎として使用されることを特徴とする付記８３記載の装置。
【０５３７】
（付記８８）
更に：
前記ターゲット回路に関連する機能を有する複数の追加的なＢＤＤデータ構造を並列的に構築するために、前記第２スクリプトを使用することが可能な複数のプロセッサを備えることを特徴とする付記８３記載の装置。
【０５３８】
（付記８９）
２進判定図（ＢＤＤ）を構築する方法であって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築するステップであって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところのステップ；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築するステップであって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところのステップ；
より成ることを特徴とする方法。
【０５３９】
（付記９０）
更に：
前記第１及び第２のＢＤＤデータ構造を生成するために、１以上のアルゴリズムを実行するステップより成ることを特徴とする付記８９記載の方法。
【０５４０】
（付記９１）
前記第１及び第２スクリプトに含まれるパラメータが：
ａ）  変数順序；
ｂ）  クラスタサイズ；
ｃ）  分解点；
ｄ）  分離変数；
ｅ）  区分数；
ｆ）  生成されるウインドウ数；
ｇ）  使用されるウインドウ種別；
ｈ）  使用される変数；
より成る群要素から選択されることを特徴とする付記８９記載の方法。
【０５４１】
（付記９２）
更に：
前記第１及び第２のデータ構造の第１及び第２のグラフに各々関連するサイズを制御するために、前記第１及び第２スクリプトを修正することで、第１及び第２のＢＤＤデータ構造の構築を制御するステップより成ることを特徴とする付記９１記載の方法。
【０５４２】
（付記９３）
更に：
不具合が生じた場合に、前記第１のＢＤＤデータ構造に関連する前記メジャー及びマイナー閾値が、ファイルにマッピングされ及び格納されるように、前記第１のＢＤＤデータ構造が監視され、前記ファイルは前記第１スクリプトに対する修正の基礎として使用されることを特徴とする付記９１記載の方法。
【０５４３】
（付記９４）
更に：
前記ターゲット回路に関連する機能を有する複数の追加的なＢＤＤデータ構造を並列的に構築するための前記第２スクリプトを使用するために、複数のプロセッサを駆動するステップより成ることを特徴とする付記９１記載の方法。
【０５４４】
（付記９５）
２進判定図（ＢＤＤ）を構築するためのシステムであって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築する手段であって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところの手段；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築する手段であって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを最小化しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところの手段；
を備えることを特徴とするシステム。
【０５４５】
（付記９６）
更に：
前記第１及び第２のＢＤＤデータ構造を生成するために、１以上のアルゴリズムを実行する手段を備えることを特徴とする付記９５記載のシステム。
【０５４６】
（付記９７）
前記第１及び第２スクリプトに含まれるパラメータが：
ａ）  変数順序；
ｂ）  クラスタサイズ；
ｃ）  分解点；
ｄ）  分離変数；
ｅ）  区分数；
ｆ）  生成されるウインドウ数；
ｇ）  使用されるウインドウ種別；
ｈ）  使用される変数；
より成る群要素から選択されることを特徴とする付記９５記載のシステム。
【０５４７】
（付記９８）
更に：
前記第１及び第２のデータ構造の第１及び第２のグラフに各々関連するサイズを制御するために、前記第１及び第２スクリプトをそれぞれ修正することで、前記第１及び第２のＢＤＤデータ構造の構築を制御する手段を備えることを特徴とする付記９５記載のシステム。
【０５４８】
（付記９９）
不具合が生じた場合に、前記第１のＢＤＤデータ構造に関連する前記メジャー及びマイナー閾値が、ファイルにマッピングされ及び格納されるように、前記第１のＢＤＤデータ構造が監視され、前記ファイルは前記第１スクリプトに対する修正の基礎として使用されることを特徴とする付記９５記載のシステム。
【０５４９】
（付記１００）
更に：
前記ターゲット回路に関連する機能を有する複数の追加的なＢＤＤデータ構造を並列的に処理する手段を備えることを特徴とする付記９５記載のシステム。
【０５５０】
（付記１０１）
コンピュータ読み取り可能な媒体に含まれる、２進判定図（ＢＤＤ）を構築するためのソフトウエアであって：
ターゲット回路に関連する機能を反映するよう動作する第１のＢＤＤデータ構造を構築するステップであって、前記第１のＢＤＤデータ構造は、前記第１のＢＤＤデータ構造がメジャー閾値を超えるような第１のパラメータ群を包む第１スクリプトを利用して構築されるところのステップ；及び
前記第１のパラメータ群の修正を反映する第２のパラメータ群を含む第２スクリプトを利用して、第２のＢＤＤデータ構造を構築するステップであって、前記修正は、前記第２のＢＤＤデータ構造のノードレベルに関連するサイズを減縮しようとし、且つ前記第１のＢＤＤデータ構造を構築することに関連して識別されていたマイナー閾値に準拠するところのステップ；
を実行させるコードを含むことを特徴とするソフトウエア。
【０５５１】
（付記１０２）
更に：
前記第１及び第２のＢＤＤデータ構造を生成するために、１以上のアルゴリズムを実行させるコードを含むことを特徴とする付記１０１記載のソフトウエア。
【０５５２】
（付記１０３）
前記第１及び第２スクリプトに含まれるパラメータが：
ａ）  変数順序；
ｂ）  クラスタサイズ；
ｃ）  分解点；
ｄ）  分離変数；
ｅ）  区分数；
ｆ）  生成されるウインドウ数；
ｇ）  使用されるウインドウ種別；
ｈ）  使用される変数；
より成る群要素から選択されることを特徴とする付記１０１記載のソフトウエア。
【０５５３】
（付記１０４）
更に：
前記第１及び第２のデータ構造の第１及び第２のグラフに関連するサイズを制御するために、前記第１及び第２スクリプトを修正することで、第１及び第２のＢＤＤデータ構造の構築を制御するステップを実行させるコードを含むことを特徴とする付記１０１記載のソフトウエア。
【０５５４】
（付記１０５）
更に、前記コードは：
不具合が生じた場合に、前記第１のＢＤＤデータ構造に関連する前記メジャー及びマイナー閾値が、ファイルにマッピングされ及び格納されるように、前記第１のＢＤＤデータ構造が監視され、前記ファイルは前記第１スクリプトに対する修正の基礎として使用されるように動作させることを特徴とする付記１０１記載のソフトウエア。
【０５５５】
（付記１０６）
更に、前記コードは：
前記ターゲット回路の機能を有する複数の追加的なＢＤＤデータ構造を並列的に構築するように動作させることを特徴とする付記１０１記載のソフトウエア。
【０５５６】
（付記１０７）
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するシステムであって：
複数の演算システムを備え、前記複数の演算システムの内の第１のものは：
回路の第１区分を受信し、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応し；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行し；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄し；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行い；
前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行することを特徴とするシステム。
【０５５７】
（付記１０８）
複数の演算システムの内の前記第１のものが：
検査される区分内の特性を区別する、前記区分に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記区分内の部分空間に関連する第１深度で第１の状態群を生成するＰＯＢＤＤデータ構造；及び
前記ＰＯＢＤＤデータ構造からの第１の状態群を受信するよう動作する境界検査（ＢＭＣ）ツール要素であって、前記区分内の部分空間に関連する第２深度で第２の状態群を生成するために前記第１の状態群を利用して１以上の境界検査処理を実行し、前記第１の状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群の基礎として使用されるところのＢＭＣツール要素；
を備えることを特徴とする付記１０７記載のシステム。
【０５５８】
（付記１０９）
前記複数の演算システムの内の第１のものが、グリーディ通信アルゴリズムに従って通信することが可能であることを特徴とする付記１０７記載のシステム。
【０５５９】
（付記１１０）
前記複数の演算システムの内の第１のものが、前記第１の到達可能性分析の計算順序に関する情報を通信することが可能であることを特徴とする付記１０７記載のシステム。
【０５６０】
（付記１１１）
前記複数の演算システムの内の第１のものが、前記演算システムと１以上の他の演算システムとの間の通信の予定を立てるスケジューラを備え、前記スケジューラは、前記演算システムと他の演算システム各自との間の通信状態を反映するバージョンテーブルに結合されることを特徴とする付記１０７記載のシステム。
【０５６１】
（付記１１２）
前記バージョンテーブルが、前記演算システムによって到達される状態を反映する第１ベクトルと、前記他の演算システムによって到達される１以上の状態についての１以上の形態を反映する第２ベクトルとを有することを特徴とする付記１１１記載のシステム。
【０５６２】
（付記１１３）
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別する方法であって：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信するステップであって、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応するところのステップ；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行するステップ；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄するステップ；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行うステップであって、前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行するところのステップ；
より成ることを特徴とする方法。
【０５６３】
（付記１１４）
複数の演算システムの内の前記第１のものが：
検査される区分内の特性を区別する、前記区分に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記区分内の部分空間に関連する第１深度で第１の状態群を生成するＰＯＢＤＤデータ構造；及び
前記ＰＯＢＤＤデータ構造からの第１の状態群を受信するよう動作する境界検査（ＢＭＣ）ツール要素であって、前記区分内の部分空間に関連する第２深度で第２の状態群を生成するために前記第１の状態群を利用して１以上の境界検査処理を実行し、前記第１の状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群の基礎として使用されるところのＢＭＣツール要素；
を備えることを特徴とする付記１１３記載の方法。
【０５６４】
（付記１１５）
グリーディ通信アルゴリズムに従って通信するステップより成ることを特徴とする付記１１３記載の方法。
【０５６５】
（付記１１６）
前記第１の到達可能性分析の計算順序に関する情報を通信するステップより成ることを特徴とする付記１１３記載の方法。
【０５６６】
（付記１１７）
前記複数の演算システムの内の第１のものが、前記演算システムと１以上の他の演算システムとの間の通信の予定を立てるスケジューラを備え、前記スケジューラは、前記演算システムと他の演算システム各自との間の通信状態を反映するバージョンテーブルに結合されることを特徴とする付記１１３記載の方法。
【０５６７】
（付記１１８）
前記バージョンテーブルが、前記演算システムによって到達される状態を反映する第１ベクトルと、前記他の演算システムによって到達される１以上の状態についての１以上の形態を反映する第２ベクトルとを有することを特徴とする付記１１７記載の方法。
【０５６８】
（付記１１９）
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するロジックであって、媒体内でエンコードされ：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信し、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応し；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行し；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄し；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行い；
前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行することを特徴とするロジック。
【０５６９】
（付記１２０）
検査される区分内の特性を区別する、前記区分に関連する情報を受信するよう動作する区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）データ構造であって、前記区分内の部分空間に関連する第１深度で第１の状態群を生成するＰＯＢＤＤデータ構造；及び
前記ＰＯＢＤＤデータ構造からの第１の状態群を受信するよう動作する境界検査（ＢＭＣ）ツール要素であって、前記区分内の部分空間に関連する第２深度で第２の状態群を生成するために前記第１の状態群を利用して１以上の境界検査処理を実行し、前記第１の状態群は、前記第２深度が前記第１深度より大きくなるように前記第２状態群の基礎として使用されるところのＢＭＣツール要素；
を備えることを特徴とする付記１１９記載のロジック。
【０５７０】
（付記１２１）
グリーディ通信アルゴリズムに従って通信することを特徴とする付記１１９記載のロジック。
【０５７１】
（付記１２２）
前記第１の到達可能性分析の計算順序に関する情報を通信するよう動作することを特徴とする付記１１９記載のロジック。
【０５７２】
（付記１２３）
前記演算システムと１以上の他の演算システムとの間の通信の予定を立てるスケジューラを備え、前記スケジューラは、前記演算システムと他の演算システム各自との間の通信状態を反映するバージョンテーブルに結合されることを特徴とする付記１１９記載のロジック。
【０５７３】
（付記１２４）
前記バージョンテーブルが、前記演算システムによって到達される状態を反映する第１ベクトルと、前記他の演算システムによって到達される１以上の状態についての１以上の形態を反映する第２ベクトルとを有することを特徴とする付記１２３記載のロジック。
【０５７４】
（付記１２５）
分散された演算及び１以上の区分けされたデータ構造を利用して、回路内の１以上の到達可能な状態を判別するシステムであって：
複数の演算システムの内の第１のものにおいて：
回路の第１区分を受信する手段であって、前記第１区分は第１密度を有する第１の２進判定図（ＢＤＤ）に対応するところの手段；
前記第１区分内の固定点に到達するまで、前記第１のＢＤＤを用いて前記第１区分について第１の到達可能性分析を実行する手段；
前記第１の到達可能性分析の間に、前記第１のＢＤＤのサイズが閾値を超えるならば、前記第１のＢＤＤを破棄する手段；及び
前記複数の演算システムの内の少なくとも１つの第２のものと通信を行う手段であって、前記複数の演算システムの内の第２のものは前記回路の第２区分を受信し、前記複数の演算システムの内の第２のものは前記第２のＢＤＤを破棄せずに前記第２のＢＤＤについて第２の到達可能性分析を実行するところの手段；
より成ることを特徴とする方法。
【０５７５】
（付記１２６）
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのシステムであって：
前記回路内の１以上のラッチに対するＰＯＢＤＤを生成するよう動作する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）モジュール；
遷移関係（ＴＲ）モジュール；及び
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行するよう動作する分析モジュール；
を備え、前記遷移関係（ＴＲ）モジュールは、各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連するＴＲをグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成する；
ことが可能であることを特徴とするシステム。
【０５７６】
（付記１２７）
前記ＮＣＰＴの各リーフについて、総ての分解点が編成され、総ての区分が生成されることを特徴とする付記１２６記載のシステム。
【０５７７】
（付記１２８）
ＰＯＢＤＤが前記回路内の全ラッチについて生成されることを特徴とする付記１２６記載のシステム。
【０５７８】
（付記１２９）
ＴＲが不具合になるまで１以上の分解点を構成することで、ＴＲがグラフ化されることを特徴とする付記１２６記載のシステム。
【０５７９】
（付記１３０）
前記閾値が予め定められた閾値であることを特徴とする付記１２６記載のシステム。
【０５８０】
（付記１３１）
２つの論理和区分の各々のサイズが閾値と比較され、前記２つの論理和区分の各々のサイズは新たに割り当てられたノード数に従って決定されることを特徴とする付記１２６記載のシステム。
【０５８１】
（付記１３２）
ＰＯＢＤＤを削減するための１以上の立方体的区分化法を利用するために、前記２つの論理和区分が閾値を下回らない場合に、ＴＲモジュールが更に処理可能であることを特徴とする付記１２６記載のシステム。
【０５８２】
（付記１３３）
第１のＰＯＢＤＤが、一般化された余因子処理を用いて１以上の他のＰＯＢＤＤと通信することが可能であることを特徴とする付記１２６記載のシステム。
【０５８３】
（付記１３４）
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のための方法であって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成するステップ；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成するステップ；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行するステップ；
より成ることを特徴とする方法。
【０５８４】
（付記１３５）
前記ＮＣＰＴの各リーフについて、総ての分解点が編成され、総ての区分が生成されることを特徴とする付記１３４記載の方法。
【０５８５】
（付記１３６）
ＰＯＢＤＤが前記回路内の全ラッチについて生成されることを特徴とする付記１３４記載の方法。
【０５８６】
（付記１３７）
ＴＲが不具合になるまで１以上の分解点を構成することで、ＴＲがグラフ化されることを特徴とする付記１３４記載の方法。
【０５８７】
（付記１３８）
前記閾値が予め定められた閾値であることを特徴とする付記１３４記載の方法。
【０５８８】
（付記１３９）
２つの論理和区分の各々のサイズが閾値と比較され、前記２つの論理和区分の各々のサイズは新たに割り当てられたノード数に従って決定されることを特徴とする付記１３４記載の方法。
【０５８９】
（付記１４０）
ＰＯＢＤＤを削減するために、前記２つの論理和区分が閾値を下回らない場合に、１以上の立方体的区分化法を利用することを特徴とする付記１３４記載の方法。
【０５９０】
（付記１４１）
第１のＰＯＢＤＤが、一般化された余因子処理を用いて１以上の他のＰＯＢＤＤと通信することが可能であることを特徴とする付記１３４記載の方法。
【０５９１】
（付記１４２）
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのロジックであって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成し；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成し；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行する；
ことを特徴とするロジック。
【０５９２】
（付記１４３）
前記ＮＣＰＴの各リーフについて、総ての分解点が編成され、総ての区分が生成されることを特徴とする付記１４２記載のロジック。
【０５９３】
（付記１４４）
ＰＯＢＤＤが前記回路内の全ラッチについて生成されることを特徴とする付記１４２記載のロジック。
【０５９４】
（付記１４５）
ＴＲが不具合になるまで１以上の分解点を構成することで、ＴＲがグラフ化されることを特徴とする付記１４２記載のロジック。
【０５９５】
（付記１４６）
前記閾値が予め定められた閾値であることを特徴とする付記１４２記載のロジック。
【０５９６】
（付記１４７）
２つの論理和区分の各々のサイズが閾値と比較され、前記２つの論理和区分の各々のサイズは新たに割り当てられたノード数に従って決定されることを特徴とする付記１４２記載のロジック。
【０５９７】
（付記１４８）
ＰＯＢＤＤを削減するために、前記２つの論理和区分が閾値を下回らない場合に、１以上の立方体的区分化法を利用することを特徴とする付記１４２記載のロジック。
【０５９８】
（付記１４９）
第１のＰＯＢＤＤが、一般化された余因子処理を用いて１以上の他のＰＯＢＤＤと通信することが可能であることを特徴とする付記１４２記載のロジック。
【０５９９】
（付記１５０）
１以上の多重ルート２進判定図（ＢＤＤ）を利用する回路の到達可能性検査のためのシステムであって：
前記回路内の１以上のラッチに対する区分けされ順序付けられたＢＤＤ（ＰＯＢＤＤ）を生成する手段；
各ＰＯＢＤＤに対して：
ＰＯＢＤＤについての複数の入力及び状態変数を反映するＰＯＢＤＤに関連する遷移関係（ＴＲ）をグラフ化し；
ＰＯＢＤＤの２つの論理和区分を生成し；
２つの論理和区分を閾値と比較し；
２つの論理和区分が閾値を下回る場合に、複数のリーフより成る非立方体的区分ツリー（ＮＣＰＴ）のルートに前記ＰＯＢＤＤを割り当て；及び
前記ＮＣＰＴの各リーフについて、１以上の分解点を編成し、１以上の区分を生成する手段；並びに
前記ＴＲの各区分を利用して、１以上の固定点に達するまで到達可能性分析を実行する手段；
を備えることを特徴とするシステム。
【０６００】
（付記１５１）
スケジュール法を利用して回路を検査するシステムであって：
１以上の区分化され順序付けられた２進判定図（ＰＯＢＤＤ）を生成するように集合的に動作する１以上のＰＯＢＤＤモジュールであって、各ＰＯＢＤＤは前記回路の状態空間の１以上の区分に対応し、前記区分における状態数及びノード数を有する１以上のＰＯＢＤＤモジュール；
各ＰＯＢＤＤの各区分の処理コストを判別するように集合的に動作する１以上のコストメトリックモジュール；及び
回路の準正式な検査に対するＰＯＢＤＤの区分けの処理予定を立てるように集合的に動作する１以上のスケジューリングモジュールであって、前記予定は、少なくとも部分的には、ＰＯＢＤＤの区分けの判別済み処理コストに準拠するところのスケジューリングモジュール；
を備えることを特徴とするシステム。
【０６０１】
（付記１５２）
各ＰＯＢＤＤの区分けの各々の処理コストが、少なくとも部分的に：
前記区分に対応する特定の区分における最新の固定点演算を行なうのに要する時間の長さ；及び
ＰＯＢＤＤに対応する特定の区分の密度であって、前記区分内の状態数及びノード数を反映するところの密度；
の比率に準拠することを特徴とする付記１５１記載のシステム。
【０６０２】
（付記１５３）
各ＰＯＢＤＤの区分けの各々の処理コストが、少なくとも部分的に前記区分の密度に準拠しており、前記密度が前記区分におけるＰＯＢＤＤの状態数及びノード数を反映することを特徴とする付記１５１記載のシステム。
【０６０３】
（付記１５４）
前記１以上のスケジューリングモジュールが、集合的に：
１以上のＰＯＢＤＤの１以上の区分の密度と閾値とを比較し；
前記閾値を超える密度を有する１以上の区分を無視し；及び
以下のスケジュールに従って区分に関する１以上の対の間で通信を行なう；
ように動作することが可能であり：
高密度且つ少ノード数の区分と高密度且つ少ノード数の区分との間の通信の前に、高密度且つ少ノード数の区分と低密度且つ少ノード数の区分との間の通信が行なわれ；及び
高密度且つ少ノード数の区分と低密度且つ多ノード数の区分との間の通信の前に、高密度且つ少ノード数の区分と高密度且つ少ノード数の区分との間の通信を行なうことを特徴とする付記１５３記載のシステム。
【０６０４】
（付記１５５）
飽和点に達するまで、前記回路に関する準正式な検査のためのＰＯＢＤＤの区分の処理が継続し、前記飽和点は、新たな状態に到達する特定のレートを反映することを特徴とする付記１５１記載のシステム。
【０６０５】
（付記１５６）
ＰＯＢＤＤの区分けの処理の間に、１以上の区分の対の間で１以上の通信が行われ、区分対の少なくとも１つにおける固定点に到達するまで各通信は遅延させられることを特徴とする付記１５１記載のシステム。
【０６０６】
（付記１５７）
前記回路は、前記ＰＯＢＤＤが生成される前に１以上の区分割当を用いて減縮されることを特徴とする付記１５１記載のシステム。
【０６０７】
（付記１５８）
ＰＯＢＤＤを利用して１以上の到達可能な状態を判別するために、固定点反復法が用いられることを特徴とする付記１５１記載のシステム。
【０６０８】
（付記１５９）
ＰＯＢＤＤを利用して到達した新たな状態の第１数が、以前に到達済みの状態の第２数に関する指定された比率より小さい場合に、前記固定点反復法が選択的に終了することを特徴とする付記１５８記載のシステム。
【０６０９】
（付記１６０）
１以上のＰＯＢＤＤが、シミュレーションダンプで調査された１以上の状態から生成されることを特徴とする付記１５１記載のシステム。
【０６１０】
（付記１６１）
ＰＯＢＤＤが、ＰＯＢＤＤ分割可変発見法を用いて生成されることを特徴とする付記１５１記載のシステム。
【０６１１】
（付記１６２）
前記回路が、準正式検査法又は正式検査法を用いて検査されることを特徴とする付記１５１記載のシステム。
【０６１２】
（付記１６３）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；及び
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；
より成ることを特徴とする方法。
【０６１３】
（付記１６４）
前記候補特性群が各自の特性分類からの３つの特定の特性を含むことを特徴とする付記１６３記載の方法。
【０６１４】
（付記１６５）
準正式検査法又は正式検査法が、前記回路に関する１以上の特定の特性を検査するのを試行するために使用されることを特徴とする付記１６３記載の方法。
【０６１５】
（付記１６６）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から複数の特定の特性を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、複数の選択された特性の検査を試行するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用することで：
特に、検査するのに非簡易である回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第１集合；
特に、検査するのに適度な非容易性を有する回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第２集合；及び
特に、検査するのに比較的困難である回路特性の検査を可能にする複数の特定の検査パラメータに関する複数の特定値の第３集合；
を決定するために実行時間及びピークノード数を用いるステップ；
より成ることを特徴とする方法。
【０６１６】
（付記１６７）
正式検査法又は準正式検査法が、前記回路の選択された特性を検査するのを試みるために使用されることを特徴とする付記１６６記載の方法。
【０６１７】
（付記１６８）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から１以上の特定の特性に関する第１集合を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、特性に関する第１集合を検査するステップ；
前記回路の複数の特性から１以上の特定の特性に関する第２集合を選択するステップ；及び
複数の特定の検査パラメータに関する複数の特定値の少なくともいくつかを利用して、特性に関する第２集合の検査を試行するステップ；
より成ることを特徴とする方法。
【０６１８】
（付記１６９）
正式検査法又は準正式検査法が、特性に関する第１集合を検査し、特性に関する第２集合の検査を試みるために使用されることを特徴とする付記１６８記載の方法。
【０６１９】
（付記１７０）
１以上の特定の特性に関する第２集合の選択が、ランダムな選択であることを特徴とする付記１６８記載の方法。
【０６２０】
（付記１７１）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路に関する複数の特性から１以上の特定の特性に関する第１集合を選択するステップ；
複数の特定の検査パラメータに関する複数の特定値を利用して、特性に関する第１集合を検査するステップ；
前記回路の複数の特性から１以上の特定の特性に関する第２集合を選択するステップ；
特性に関する第１集合を検査するために複数の特定の特性パラメータについての複数の特定値の内の特定の１つを選択するステップであって、複数の特定値の内選択されるものは、特に、回路の特性に関する第１集合の検査を可能にするところのステップ；及び
特性に関する第１集合を検査するために使用される複数の特定の検査パラメータの複数の特定値の内選択されたものを利用して、特性に関する第２集合の検査を試行するステップ；
より成ることを特徴とする方法。
【０６２１】
（付記１７２）
正式検査法又は準正式検査法が、特性に関する第１集合を検査し、特性に関する第２集合の検査を試みるために使用されることを特徴とする付記１７１記載の方法。
【０６２２】
（付記１７３）
１以上の特定の特性に関する第２集合の選択が、ランダムな選択であることを特徴とする付記１７１記載の方法。
【０６２３】
（付記１７４）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；及び
特性分類の各々に関し、前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；
より成ることを特徴とする方法。
【０６２４】
（付記１７５）
正式検査法又は準正式検査法が、特性に関する第１集合を検査し、特性に関する第２集合の検査を試みるために使用されることを特徴とする付記１７４記載の方法。
【０６２５】
（付記１７６）
複数の特定の検査パラメータについての複数の適切な値を判定するために、学習法を利用して回路に関する１以上の特定の特性を検査する方法であって：
回路規模に従って回路の複数の特性の各々を分類するステップ；
前記複数の特性の中から候補特性群を選択するステップであって、候補特性群は各特性分類による１以上の特定の特性より成るところのステップ；
前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性を検査することを試行するステップ；
特性分類の各々に関し、前記候補特性群と複数の特定の検査パラメータに関する複数の特定の値とを利用して、前記回路に関する１以上の特定の特性に関して試みた検査に従って、複数の特定の検査パラメータに関する複数の適切な値を判別するステップ；及び
特性分類の全特性を検査するために特性分類に対応する複数の特定の検査パラメータの内複数の適切な値を、特性分類の各々に適用するステップ；
より成ることを特徴とする方法。
【０６２６】
（付記１７７）
正式検査法又は準正式検査法が、候補特性群の検査を試みるために、及び各特性分類の総ての特性を検査するために使用されることを特徴とする付記１７６記載の方法。
【０６２７】
（付記１７８）
回路検査手順を終了するための方法であって：
回路に関する既に到達済みの１以上の第２状態から、回路に関する１以上の第１状態に達したことに従って、自動手回路検査手順を実行するステップであって、前記第１状態は時間と共に変化するレートで前記回路検査手順によって到達される所のステップ；
第１状態が回路検査手順で到達される特定のレートを反映する飽和点に自動的に到達するステップであって、前記特定のレートは近似的にゼロに等しいところのステップ；及び
飽和点に達したことに応答して、前記回路検査手順を終了するステップ；
より成ることを特徴とする方法。
【０６２８】
（付記１７９）
前記回路検査手順が準正式な回路検査手順又は正式な検査手順であることを特徴とする付記１７８記載の方法。
【０６２９】
（付記１８０）
回路を検査する方法であって：
回路の状態空間中の１以上の区分を生成するステップであって、各区分はあるサイズを有する表現内容に関連付けられるところのステップ；
前記回路を検査するために生成された区分の表現内容を利用して、生成された各区分の処理を開始するステップ；並びに
前記区分の処理中に、生成された区分の表現内容の１つのサイズが第１閾値を超える場合に：
前記区分から２以上の副次的区分を生成するために使用され得る、コスト関数に従って決定される少なくとも１つの分離変数を決定し；
決定された分離変数を利用して前記区分から、あるサイズを有する表現内容にそれぞれ関連付けられる２以上の副次的区分を生成し、
２以上の副次的区分の各々の処理を開始し；及び
副次的区分の各々の処理中に、前記副次的区分の表現内容のサイズが第２閾値を超える場合に、区分表現内容サイズを制限するために、前記副次的区分から更なる副次的区分を生成するステップ；
より成ることを特徴とする方法。
【０６３０】
（付記１８１）
前記回路を検査するために、正式な検査法又は準正式な検査法が使用されることを特徴とする付記１８０記載の方法。
【０６３１】
（付記１８２）
１以上の区分けされ順序付けられた２進判定図（ＰＯＢＤＤ）を生成するステップであって、各々は回路の状態空間内の１以上の区分に対応するところのステップ；
回路を検査するために：
暫定的な様式で表現され得るある公式又は公式の組合せを利用して各自表現され得る１以上の回路特性と回路を比較するモデル検査法；又は
後方到達可能性技法；
に従ってＰＯＢＤＤの区分を処理するステップ；及び
ＰＯＢＤＤの区分の処理中に、区分の少なくとも１対の間で通信を行うステップであっって、該通信は、区分対の内少なくとも一方の区分内で固定点に達するまで遅延される所のステップ；
より成ることを特徴とする回路検査のための方法。
【０６３２】
（付記１８３）
前記回路の検査が、正式な検査又は準正式な検査を含むことを特徴とする付記１８２記載の方法。
【０６３３】
（付記１８４）
前記暫定的な様式は、ＥＵ，ＥＸ又はＥＧを含むことを特徴とする付記１８２記載の方法。
【０６３４】
（付記１８５）
回路に関する準正式な検査を行なう方法であって：
回路の状態空間に関する１以上の区分を生成するステップ；
準正式な検査手順について１以上の特定の特性を選択するステップであって、前記１以上の特定の特性の各々は：
区分が論理空間内で一様な分布を有すること；又は
前記１以上の区分の内の２以上の間で重複する構造的画像に関連する１以上の分布基準に、その区分が合致していること；
に従って選択されるところのステップ；及び
回路に関する準正式な検査について１以上の選択された特定の区分のみを処理するステップ；
より成ることを特徴とする方法。
【０６３５】
（付記１８６）
回路の検査を行なう方法であって：
回路を検査するために第１回路検査手順を開始するステップであって、前記検査手順は、あるサイズを有する区分けされない順序付けられた２進判定図（ＯＢＤＤ）を用いるところのステップ；並びに
前記第１回路検査手順の間に、区分けされないＯＢＤＤのサイズが閾値を超える場合に：
前記題回路検査手順を終了し；
２以上の区分けされたＯＢＤＤ（ＰＯＢＤＤ）を生成するために、分離変数発見法に従って、１以上の分離変数を選択し；
区分けされないＯＢＤＤ及び１以上の選択された分離変数を利用して、前記回路の特定の部分空間にそれぞれ対応する２以上のＰＯＢＤＤを生成し；及び
前記回路を検査するために第２回路検査手順を開始するステップであって、前記検査手順は、生成された２以上のＰＯＢＤＤを使用するところのステップ；
より成ることを特徴とする方法。
【０６３６】
（付記１８７）
前記第１及び第２回路検査手順が、正式な検査手順又は準正式な検査手順を含むことを特徴とする付記１８６記載の方法。
【０６３７】
（付記１８８）
回路を検査する方法であって：
回路を検査するために回路検査手順を開始するステップであって、前記回路検査手順は、複数の回路検査パラメータの内の複数のパラメータ値に従って実行されるところのステップ；
前記回路の状態空間の特定の区分に関連する回路検査手順の演算トレースを調査するステップであって、前記特定の区分は、前記特定の区分のサイズが比較的小さくなるように発見的手法に従って決定されるところのステップ；及び
前記演算トレースの調査結果を用いて、１以上の回路検査パラメータについての１以上の許容可能な値を決定するために、複数の回路検査パラメータの複数の特定値の内あるものの適切性を評価するステップ；
より成ることを特徴とする方法。
【０６３８】
（付記１８９）
前記回路検査手順が、正式な回路検査手順又は準正式な回路検査手順を含むことを特徴とする付記１８８記載の方法。
【０６３９】
（付記１９０）
前記発見的手法が、分離変数発見法であることを特徴とする付記１８８記載の方法。
【０６４０】
（付記１９１）
１以上の許容可能な値が決定される１以上の回路検査パラメータが：
前記回路検査手順に関する演算順序パラメータ；
前記回路検査手順のクラスタ化パラメータ；及び
前記回路検査手順の分離変数パラメータ；
の１つ以上より成ることを特徴とする付記１８８記載の方法。
【０６４１】
（付記１９２）
回路の状態空間についての複数の区分を回路検査手順のために生成するステップであって、各区分は、各自の有するサイズを表現するものにそれぞれ関連付けられる所のステップ；及び
１以上の第２の複数の区分と両立しない１以上の第１の複数の区分を分離するアルゴリズムを利用するステップであって、２つの特定の区分が互いに両立しないのは、前記２つの特定の区分各々の表現するサイズの全体が、前記２つの特定の区分の組合せについての結合された表現の結合サイズよりコンパクトである場合であり、前記アルゴリズムは、
複数の区分に関連付けられる従属的機能候補を互いに分離し；
他の従属的機能候補と独立な従属的機能候補各々を表現し；及び
複数の区分各々の非両立性を判別するために前記従属的機能候補を用いる；
ことによって、１以上の第１の複数の区分を分離するところのステップ；
１以上の分離された第１の複数の区分を用いて前記回路検査手順を実行するステップ；
より成ることを特徴とする回路を検査する方法。
【０６４２】
（付記１９３）
前記回路検査手順が、正式な検査手順又は準正式な検査手順であることを特徴とする付記１９２記載の方法。
【０６４３】
（付記１９４）
回路を検査する方法であって：
前記回路を検査するために、回路を表現する遷移関係（ＴＲ）を生成することを少なくとも試みるステップであって、あるサイズを有する前記ＴＲは前記回路の状態空間に対応するところのステップ；
生成されたＴＲのサイズが特定の閾値を超えた場合に：
前記ＴＲを、前記状態空間の特定の部分空間に各々が対応する複数のＴＲ区分に機能的に分離し；
前記回路を検査するために、１以上の第１のＴＲ区分を用いて第１の到達可能性分析を実行し；及び
前記第１の到達可能性分析が特定の期間にて特定の状態数に到達しなかった場合に、前記回路を検査するための１以上の第２のＴＲ区分を用いて少なくとも第２の到達可能性分析を実行するステップ；及び
適切な流量地点に到達した場合に前記回路の検査を終了するステップ；
より成ることを特徴とする方法。
【０６４４】
（付記１９５）
前記回路の検査が、正式な検査又は準正式な検査を含むことを特徴とする付記１９４記載の方法
（付記１９６）
電子設計アプリケーション（ＥＤＡ）処理のための方法であって：
ＥＤＡ処理用のインスタンス（ｉｎｓｔａｎｃｅ）を受信するステップ；
前記インスタンスから、前記インスタンスの機能的又は構造的な区分より成る少なくとも１つの副次的インスタンスを抽出するステップ；
特定のＥＤＡ解（ｓｏｌｕｔｉｏｎ）を求めるためのＥＤＡ処理に従って、前記特定のＥＤＡ回路を得るためのＥＤＡ処理に特に適用可能な1以上の処理パラメータについての1以上の特定値を用いて副次的インスタンスを処理するステップ；
前記副次的インスタンスの効率的なＥＤＡ処理を特に可能にする特定値の内の1以上の特定のものを識別するステップ；及び
前記インスタンスに関する1以上の他の副次的インスタンスを処理するために1以上の識別された値を使用するステップ；
より成ることを特徴とする方法。
【０６４５】
（付記１９７）
前記ＥＤＡ処理が、正式なＥＤＡ処理又は準正式なＥＤＡ処理を含むことを特徴とする付記１９４記載の方法。
【図面の簡単な説明】
【０６４６】
【図１】本発明の一実施例による複数の状態を検査するシステムの概略ブロック図である。
【図２】システムに含まれる１以上の要素間の例示的相互作用を示す概念図である。
【図３】本発明の一実施例によるターゲット回路に関連する複数の状態を検査する方法による一連の例示的ステップを示すフローチャートである。
【図４】本発明の一実施例によるターゲット回路に関連する誤りのある状態を評価するシステムの概略ブロック図である。
【図５】本発明の一実施例によるターゲット回路に関連する誤りのある状態を評価する方法の一連の例示的ステップを示すフローチャートである。
【図６】本発明の一実施例による画像演算処理を実行するシステムの概略ブロック図である。
【図７】システムに含まれる１以上の要素間での例示的相互作用を示す概略ブロック図である。
【図８】本発明の一実施例によるターゲット回路に関する画像演算処理を実行する方法による一連の例示的ステップを示すフローチャートである。
【図９】本発明の一実施例による２進判定法を行なうシステムの概略ブロック図である。
【図１０】本発明の一実施例によるターゲット回路に関連する２進判定法を行なうための方法による一連の例示的ステップを示すフローチャートである。
【図１１】１以上の区分されたデータ構造を用いて回路内で到達可能な１以上の状態を判別する例示的システムを示す図である。
【図１２】図１１に示されるシステムの要素の例示的相互作用を示す図である。
【図１３】１以上の区分化され順序付けられた２進判定図（ＰＯＢＤＤ）を用いる形式的検査例を示す図である。
【図１４】分散された演算及び１以上の区分化されたデータ構造を利用して、回路内で到達可能な１以上の状態を判別するシステム例を示す図である。
【図１５】分散された演算及び１以上の区分化されたデータ構造を利用して、回路内で到達可能な１以上の状態を判別する方法例を示す図である。
【図１６】スケジュール法を用いて回路の形式的検査方法例を示す図である。
【図１７】スケジュール法を用いて回路の形式的検査法法例を示す図である。
【符号の説明】
【０６４７】
１０  システム
１２  ターゲット回路
１４  ＰＯＢＤＤデータ構造
１６  アルゴリズム要素
２４  設計情報
２０  ＢＭＣツール要素
３０  開始点
３４  ＰＯＢＤＤ要素
４０  ＢＤＤ要素
４２  システム
４４  ターゲット回路
４６  ＰＯＢＤＤデータ構造
４８  アルゴリズム要素
５２  設計情報
５０  補助データ構造
５４  システム
５６  ターゲット回路
５８  ＰＯＢＤＤデータ構造
６０  アルゴリズム要素
６２  設計情報
６４  開始点
６６  ＰＯＢＤＤ要素
６８  ＢＤＤ要素
７０  システム
７２  ターゲット回路
７４  ＢＤＤデータ構造
７６  アルゴリズム要素
７８  設計情報
８０  システム
８２  ターゲット回路
８４  ＰＯＢＤＤデータ構造
８６  アルゴリズム要素
９０  設計情報
８８  ＢＭＣツール要素
９２  開始点
９４  ＰＯＢＤＤ要素
９８  ＢＤＤ要素
１００  区分
１０２  部分空間
１０４  カバレッジ
１０６  スケジューラ
１０８  バージョンテーブル
１１２  演算システム
【図１】
2004213619.tif 000079
【図２】
2004213619.tif 000080
【図３】
2004213619.tif 000081
【図４】
2004213619.tif 000082
【図５】
2004213619.tif 000083
【図６】
2004213619.tif 000084
【図７】
2004213619.tif 000085
【図８】
2004213619.tif 000086
【図９】
2004213619.tif 000087
【図１０】
2004213619.tif 000088
【図１１】
2004213619.tif 000089
【図１２】
2004213619.tif 000090
【図１３】
2004213619.tif 000091
【図１４】
2004213619.tif 000092
【図１５】
2004213619.tif 000093
【図１６】
2004213619.tif 000094
【図１７】
2004213619.tif 000095
【外国語明細書】
2004213619.tif 000096
2004213619.tif 000097
2004213619.tif 000098
2004213619.tif 000099
2004213619.tif 000100
2004213619.tif 000101
2004213619.tif 000102
2004213619.tif 000103
2004213619.tif 000104
2004213619.tif 000105
2004213619.tif 000106
2004213619.tif 000107
2004213619.tif 000108
2004213619.tif 000109
2004213619.tif 000110
2004213619.tif 000111
2004213619.tif 000112
2004213619.tif 000113
2004213619.tif 000114
2004213619.tif 000115
2004213619.tif 000116
2004213619.tif 000117
2004213619.tif 000118
2004213619.tif 000119
2004213619.tif 000120
2004213619.tif 000121
2004213619.tif 000122
2004213619.tif 000123
2004213619.tif 000124
2004213619.tif 000125
2004213619.tif 000126
2004213619.tif 000127
2004213619.tif 000128
2004213619.tif 000129
2004213619.tif 000130
2004213619.tif 000131
2004213619.tif 000132
2004213619.tif 000133
2004213619.tif 000134
2004213619.tif 000135
2004213619.tif 000136
2004213619.tif 000137
2004213619.tif 000138
2004213619.tif 000139
2004213619.tif 000140
2004213619.tif 000141
2004213619.tif 000142
2004213619.tif 000143
2004213619.tif 000144
2004213619.tif 000145
2004213619.tif 000146
2004213619.tif 000147
2004213619.tif 000148
2004213619.tif 000149
2004213619.tif 000150
2004213619.tif 000151
2004213619.tif 000152
2004213619.tif 000153
2004213619.tif 000154
2004213619.tif 000155
2004213619.tif 000156
2004213619.tif 000157
2004213619.tif 000158
2004213619.tif 000159
2004213619.tif 000160
2004213619.tif 000161
2004213619.tif 000162
2004213619.tif 000163
2004213619.tif 000164
2004213619.tif 000165
2004213619.tif 000166
2004213619.tif 000167
2004213619.tif 000168
2004213619.tif 000169
2004213619.tif 000170
2004213619.tif 000171
2004213619.tif 000172
2004213619.tif 000173
2004213619.tif 000174
2004213619.tif 000175
2004213619.tif 000176
2004213619.tif 000177
2004213619.tif 000178
2004213619.tif 000179
2004213619.tif 000180
2004213619.tif 000181
2004213619.tif 000182
2004213619.tif 000183
2004213619.tif 000184
2004213619.tif 000185
2004213619.tif 000186
2004213619.tif 000187
2004213619.tif 000188
2004213619.tif 000189
2004213619.tif 000190
2004213619.tif 000191
2004213619.tif 000192
2004213619.tif 000193
2004213619.tif 000194
2004213619.tif 000195
2004213619.tif 000196
2004213619.tif 000197
2004213619.tif 000198
2004213619.tif 000199
2004213619.tif 000200
2004213619.tif 000201
2004213619.tif 000202
2004213619.tif 000203
2004213619.tif 000204
2004213619.tif 000205
2004213619.tif 000206
2004213619.tif 000207
2004213619.tif 000208
2004213619.tif 000209
2004213619.tif 000210
2004213619.tif 000211
2004213619.tif 000212
2004213619.tif 000213
2004213619.tif 000214
2004213619.tif 000215
2004213619.tif 000216
2004213619.tif 000217
2004213619.tif 000218
2004213619.tif 000219
2004213619.tif 000220
2004213619.tif 000221
2004213619.tif 000222
2004213619.tif 000223
2004213619.tif 000224
2004213619.tif 000225
2004213619.tif 000226
2004213619.tif 000227
2004213619.tif 000228
2004213619.tif 000229
2004213619.tif 000230
2004213619.tif 000231
2004213619.tif 000232
2004213619.tif 000233
2004213619.tif 000234
2004213619.tif 000235
2004213619.tif 000236
2004213619.tif 000237
2004213619.tif 000238
2004213619.tif 000239
2004213619.tif 000240
2004213619.tif 000241
2004213619.tif 000242
2004213619.tif 000243
2004213619.tif 000244
2004213619.tif 000245
2004213619.tif 000246
2004213619.tif 000247
2004213619.tif 000248
2004213619.tif 000249
2004213619.tif 000250
2004213619.tif 000251
2004213619.tif 000252
2004213619.tif 000253
2004213619.tif 000254
2004213619.tif 000255
2004213619.tif 000256
2004213619.tif 000257
2004213619.tif 000258
2004213619.tif 000259
2004213619.tif 000260
2004213619.tif 000261
2004213619.tif 000262
2004213619.tif 000263
2004213619.tif 000264
2004213619.tif 000265
2004213619.tif 000266
2004213619.tif 000267
2004213619.tif 000268
2004213619.tif 000269
2004213619.tif 000270
2004213619.tif 000271
2004213619.tif 000272
2004213619.tif 000273
2004213619.tif 000274
2004213619.tif 000275
2004213619.tif 000276
2004213619.tif 000277
2004213619.tif 000278
2004213619.tif 000279
2004213619.tif 000280
2004213619.tif 000281
2004213619.tif 000282
2004213619.tif 000283
2004213619.tif 000284
2004213619.tif 000285
2004213619.tif 000286
2004213619.tif 000287
2004213619.tif 000288
2004213619.tif 000289