オートマトン・形式言語の問題
アルファベット 上の決定性有限オートマトン を考える。状態の集合は 、初期状態は 、受理状態は のみであり、遷移関数 は次の表で与えられる。
| 状態 | 入力 | 入力 | 入力 |
|---|---|---|---|
を正の整数とする。 に受理される長さ の文字列の個数を、遷移を数える行列の対角化を用いて の式で表せ。
この問題で使うもの
- 遷移行列による受理文字列数の一般項(説明と入口の問題)
この問題を解けるようになるまで(49 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
一覧で見る(前提が先)
- 決定性有限オートマトンの動作と受理判定
- 樹形図で数え上げる
- 積の法則と和の法則
- 和の法則・積の法則と樹形図
- 状態ごとの文字列数の漸化式
- 三角形の角の大きさ
- 対頂角と平行線の同位角・錯角
- 三角形の外角と角の組み合わせ
- 小数の四則計算
- 分数のたし算・ひき算
- 分数のかけ算・わり算
- 小数と分数のまじった計算
- 逆算(□ を求める)
- 正負の数の加法・減法
- 四則の混じった計算の順序
- 正負の数の乗除・累乗と四則混合
- 分配法則を使った計算のくふう
- 文字式の計算(同類項・分配法則)
- 1 次方程式の解き方
- 二等辺三角形の角
- 平行四辺形と特別な四角形の性質
- 三角形・四角形の面積
- 約数の見つけ方
- 素因数分解と約数の個数
- 平方根の意味と根号の簡単化
- 三平方の定理
- 乗法公式による展開
- 折り返した図形の角と長さ
- 三平方の定理と平面図形
- ベクトルの演算と成分
- 行列の和・積と 2 次の逆行列
- 順列・円順列・重複順列
- 行列式
- 掃き出し法と連立 1 次方程式
- 行列の階数と解の存在
- ベクトル空間・一次独立・基底・次元
- 円の周の長さと面積
- おうぎ形の弧の長さと面積
- 弧の長さからおうぎ形の中心角と面積を求める
- 特別な直角三角形の辺の比
- 弧度法と単位円による三角関数
- 加法定理と 2 倍角・半角・積和の公式
- 線形変換と行列
- 核と像と次元定理
- 固有値と固有ベクトル
- 掃き出し法による逆行列
- 基底の変換と表現行列
- 対角化と行列の累乗
- 遷移行列による受理文字列数の一般項
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
DFA の遷移を数える行列 ( は から へ移る記号の個数)を作り、 を対角化して を求める技能を使います。
ヒント 2
です(状態の順は )。求める個数は の 成分、つまり 成分です。
ヒント 3
特性多項式は で、固有値は と 、固有ベクトルは と です。 として を計算しましょう。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
手順 1:遷移を数える行列を作る。
状態の順を とし、 を「状態 から状態 へ移る記号の個数」とする。
- から: で (1 個)、 で (2 個)
- から: で (2 個)、 で (1 個)
よって
である。 の 成分は、 から出発して長さ の文字列で に到達する文字列の個数になる。初期状態は 、受理状態は なので、求める個数は の 成分、すなわち 成分である。
手順 2:固有値を求める。
より、固有値は である。
手順 3:固有ベクトルを求めて対角化する。
: は なので、固有ベクトルとして がとれる。
: は なので、固有ベクトルとして がとれる。
とおくと、 であり、
となる。
手順 4: を計算する。
手順 5:必要な成分を取り出す。
求める個数は 成分なので
である。
確認: のとき で、受理されるのは「1」「2」の 2 個であり一致する。 のとき である。漸化式で数えると、長さ 1 で に 1 個、 に 2 個あり、長さ 2 で に到達する個数は となり、これも一致する。
別解
遷移を数える行列を とする。ここで は状態 から状態 へ移る入力文字の個数で、行・列の順は とする。たとえば は文字 0 の 1 通り、 は文字 1,2 の 2 通り、 は文字 0,1 の 2 通り、 は文字 2 の 1 通りである。
長さ の文字列で、 から始めて で終わるものの個数は に等しい。
固有値は より である。固有ベクトルは、 で 、 で となる。
とおくと、 で、 である。したがって
よって である。
検算: のとき で、受理される文字列は 1,2 の 2 個であり一致する。 のとき である。実際、 が 1×2=2 通り、 が 2×1=2 通りで、合計 4 であり一致する。