ホーム / 計算機 / オンラインFSM有限状態機械シミュレーター
無料オンラインツール

オンラインFSM有限状態機械シミュレーター

決定性有限状態機械の遷移表を入力し、状態遷移経路と最終状態をブラウザで確認できるオンラインツール。例: q0,0,q0 など. 処理はブラウザ内でローカルに行われます。

使ってみる

機能と使い方の詳細

このシミュレーターは、決定性有限状態機械(DFA)の遷移表をブラウザ上で処理します。各遷移規則は「現在状態,入力文字,次状態」の形式で、カンマ区切りで記述します。状態名は空でなく50文字以内、入力文字は1つのUnicodeコードポイント(例: 1文字)である必要があります。規則は1〜200個まで指定できます。

具体的な動作例

例えば、以下の規則を考えます。

q0,0,q0
q0,1,q1
q1,0,q0
q1,1,q1

初期状態を q0、入力文字列を 1011 とすると、遷移経路は q0 → q1 → q0 → q1 → q1 となり、最終状態は q1 です。

制限と注意点

  • 状態と入力文字の組み合わせに対して遷移は1つだけです。重複した規則はエラーになります。
  • 入力文字列は1つのUnicodeコードポイントずつ処理され、最大10000 UTF-16コード単位までです。
  • 遷移が定義されていない状態と入力文字の組み合わせに達すると、その位置でエラーが発生します。
  • 受理状態の指定、ε遷移、非決定性分岐、正規表現変換、最小化、図式化などの機能はありません。

よくある質問

Q1: 状態名にカンマを含めることはできますか?

いいえ。カンマは構造上の区切り文字として使用されるため、状態名や入力文字にカンマを含めることはできません。

Q2: 入力文字列が長い場合、結果はどう表示されますか?

遷移経路はすべての訪問状態をリストとして表示します。入力が長いと経路も長くなるため、最初は短い入力でテストし、各遷移が規則表と一致するか確認することをお勧めします。

Q3: このツールは受理状態を判定できますか?

いいえ。このツールは遷移のシミュレーションのみを行い、受理状態の概念はありません。最終状態が受理されるかどうかの判定は行いません。

処理はブラウザ内でローカルに行われます。