【手続補正書】
【提出日】平成22年9月14日(2010.9.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピューティングシステム内で少なくとも１つのツリー構造を指定する少なくとも１つのデータ構造を少なくとも１つのモジュラ有限状態トランスデューサ（ＭＦＳＴ）に変換する方法であって、
順序付き情報および順序なし情報を定義するセマンティックスを含む少なくとも１つの有限状態トランスデューサ（ＦＳＴ）を表す少なくとも１つのツリー構造を指定する、順序付き情報、順序なし情報、または、順序付き情報および順序なし情報のいずれかを含むように構成されたメモリユニット上の少なくとも１つのデータ構造を受け取ることと、
前記少なくとも１つのデータ構造によって表される有限状態機械（ＦＳＭ）モデルの全てのタイプについて、少なくとも１つのＭＦＳＴ内で前記少なくとも１つのデータ構造の前記順序付き情報および順序なし情報を保存しながら前記少なくとも１つのデータ構造を前記少なくとも１つのＭＦＳＴに変換することであって、前記変換することは、前記少なくとも１つのデータ構造に対する共通部分演算、和集合演算、および補集合演算のいずれかを実行することを含む、変換することと
を含むことを特徴とする方法。
【請求項２】
前記変換することは、前記少なくとも１つのデータ構造によって指定される前記少なくとも１つのツリー構造によって表されるＦＳＭモデルの前記タイプに関わりなく前記少なくとも１つのＭＦＳＴ内で前記順序付き情報および順序なし情報を保存する翻訳文法を使用して前記少なくとも１つのデータ構造を変換することを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記変換することは、表現の全てのタイプについて前記少なくとも１つのデータ構造の順序付きセマンティックス情報および順序なしセマンティックス情報を保存する前記少なくとも１つのデータ構造によって表される前記ＦＳＴに対して少なくとも１つの制御フロー分析アルゴリズムを実行することを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記変換することは、前記少なくとも１つのデータ構造によって指定される前記少なくとも１つのツリー構造によって表されるＦＳＭモデルの前記タイプに関わりなく前記少なくとも１つのデータ構造の順序付きネスト情報と順序なしネスト情報との両方を保存する事前に定義された翻訳文法を使用して前記少なくとも１つのデータ構造を変換することを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記受け取ることは、リストパターン情報およびセットパターン情報を定義する順序付きセマンティックスおよび順序なしセマンティックスを含む前記少なくとも１つのＦＳＴを表す少なくとも１つの有向グラフ構造を指定する少なくとも１つのデータ構造を受け取ることを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記受け取ることは、順序付き情報および順序なし情報を定義する前記セマンティックスを含む前記少なくとも１つのＦＳＴを表す少なくとも１つのｅｘｔｅｎｓｉｂｌｅ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ（ＸＭＬ）文書を指定する少なくとも１つのデータ構造１４０ａを受け取ることを含むことを特徴とする請求項４に記載の方法。
【請求項７】
前記変換することは、少なくとも１つのデータ構造に対して空ネストテストを実行することを含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記変換することは、前記順序付き情報および順序なし情報を保存しながら少なくとも２つのデータ構造に対して構造的互換性テストを実行することを含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記受け取ることは、少なくとも１つの非決定性ツリーデータ構造を指定する少なくとも１つのデータ構造を受け取ることを含み、前記変換することは、前記少なくとも１つのデータ構造を決定性ＭＦＳＴに変換することを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
請求項１に記載の方法を実行するコンピュータ実行可能命令を含むことを特徴とするコンピュータ可読メディア。
【請求項１１】
請求項１に記載の方法を実行する手段を含むことを特徴とするコンピューティングデバイス。
【請求項１２】
コンピューティングシステム内で有限状態トランスデューサ（ＦＳＴ）を表す有向グラフデータ構造をモジュラ有限状態トランスデューサ（ＭＦＳＴ）にトランスデュースする変換フレームワークであって、
順序付きセマンティックス情報および順序なしセマンティックス情報を含み、コンピューティングシステム内のＦＳＴを表す、順序付き情報、順序なし情報、または、順序付き情報および順序なし情報のいずれかを含むように構成された変化するタイプの複数の有向グラフデータ構造を、メモリユニット上に、格納する手段と、
事前に定義されたツリー文法に基づいて、前記複数の有向グラフデータ構造を分析し、前記複数の有向グラフデータ構造の前記順序付きセマンティックス情報および順序なしセマンティックス情報を保存しながら前記複数の有向グラフデータ構造を少なくとも１つのＭＦＳＴに変換するトランスデューサであって、前記トランスデューサは、前記複数の有向グラフデータ構造に対して共通部分演算、補集合演算、および和集合演算のいずれかを実行する、トランスデューサと
を含むことを特徴とする変換フレームワーク。
【請求項１３】
前記トランスデューサは、全てのタイプの有向グラフ表現にまたがって前記複数の有向グラフデータ構造の前記順序付きセマンティックス情報および順序なしセマンティックス情報を保存する前記複数の有向グラフデータ構造によって表される前記ＦＳＴに対して少なくとも１つの制御フロー分析アルゴリズムを実行することを特徴とする請求項１２に記載の変換フレームワーク。
【請求項１４】
前記トランスデューサは、前記複数の有向グラフデータ構造をトランスデュースする時に特殊化されたバインディング処理を実行する変換エンジンを含み、前記特殊化されたバインディング処理は、前記複数の有向グラフデータ構造のパターンをマッチングするパターンマッチングプロセス中に前記順序付きセマンティックス情報および順序なしセマンティックス情報のバインディングを実行することを含むことを特徴とする請求項１２に記載の変換フレームワーク。
【請求項１５】
前記トランスデューサは、前記順序付きセマンティックス情報および順序なしセマンティックス情報を保存しながら前記複数の有向グラフデータ構造の有向グラフデータ構造によって定義される少なくとも１つのトランスデューサ定義をインライン化することを特徴とする請求項１２に記載の変換フレームワーク。
【請求項１６】
前記トランスデューサは、前記少なくとも１つのデータ構造に含まれる順序付きネスト情報と順序なしネスト情報との両方のマッチングを含む、前記少なくとも１つのデータ構造を少なくとも１つのＭＦＳＴとマッチングする変換エンジンコンポーネントを含むことを特徴とする請求項１２に記載の変換フレームワーク。
【請求項１７】
前記少なくとも１つのデータ構造は、少なくとも１つの非決定性ツリー構造を指定し、前記変換エンジンコンポーネントは、前記少なくとも１つのデータ構造を決定性ＭＦＳＴに変換することを特徴とする請求項１６に記載の変換フレームワーク。
【請求項１８】
前記事前に定義されたツリー文法に従って有向グラフデータ構造を定義し、翻訳する、前記複数の有向グラフデータ構造の有向グラフデータ構造を受け取るインターフェースＩ１
をさらに含むことを特徴とする請求項１２に記載の変換フレームワーク。
【請求項１９】
コンピューティングシステム内で有限状態トランスデューサ（ＦＳＴ）を表す有向グラフデータ構造をモジュラ有限状態トランスデューサ（ＭＦＳＴ）に変換するコンパイラであって、
コンピューティングシステム内のプロセスの順序付きリストおよび順序なしセットを定義する順序付き情報および順序なし情報を含む前記プロセスのＦＳＴを表し、メモリユニット上に記憶され、かつ、順序付き情報、順序なし情報、または、順序付き情報および順序なし情報のいずれかを含むように構成された複数の有向グラフデータ構造と、
定義されたツリー文法に基づいて、前記複数の有向グラフデータ構造を分析し、前記複数の有向グラフデータ構造の前記順序付き情報および順序なし情報を保存しながら前記複数の有向グラフデータ構造を少なくとも１つのＭＦＳＴに変換する変換エンジンであって、前記変換エンジンは、前記少なくとも１つのＭＦＳＴを生成するために前記複数の有向グラフデータ構造に対して共通部分演算、補集合演算、および和集合演算のいずれかを実行する、変換エンジンと
を含むことを特徴とするコンパイラ。
【請求項２０】
前記複数の有向グラフデータ構造は、順序付き情報および順序なし情報を表す変化するＦＳＴモデルタイプに従って表されることを特徴とする請求項１９に記載のコンパイラ。