ディオファントス方程式の解はどのように言語として表現できますか?


7

質問を受けました

次の言語はチョムスキー階層のどこに適合しますか?

ディオファントス方程式非負の解。(x,y)3xy=1

ような言語は理解できますが、この言語では混乱します。言語の単語はどのように見えますか?文法や正規表現を使用してそれをどのように表現できますか?L={0n1nn1}


回答:


5

まず最初に、フレーズ自体を確認し、少しの間、言語への参照をすべて無視します。

それで、ディオファンタス方程式の非負の解は何ですか 3xy=1?いくつか修正するとx、その後 y=3x1。これは、ソリューションのセットが{(x,3x1) | x>0} (ご了承ください x=0 ネガティブ y、そしてポジティブ x プラスになる y)。

これで、文字列を負でない数のペアに関連付けることができます (x,y): 例えば、 (100,299)文字列に関連付けることができます(100, 299)。これをセット内のすべてのペアに適用すると、結果の文字列セットはこのセットの言語になります。この質問では、文字列をソリューションに関連付ける方法が明確にされていないことに注意してください。

今やらなければならないのは、この言語がチョムスキー階層のどのレベルにあるかを理解することだけです。私はこれが宿題の質問だという穏やかな疑いがあるので、すぐに豆をこぼすことはしません。これが宿題ではないことを確認しても問題が解決しない場合は、回答を編集します。


宿題です。これの生成の問題は、チューリングマシンまたは同等のものでのみ解決できることを知っています。認識の問題もどうなるかがわかるので、チョムスキークラスの中で最も具体的なクラスは再帰的だと思います。しかし、状況依存ではないことを示す方法はわかりません。
justausr

@justausr言語は状況依存です。言語は、非決定性と最大線形空間(したがって時間制限なし)を使用するプログラムによって解析できる場合に限り、状況依存です。私はを解析して100100 * 3-1を計算し、それが線形時間で299に等しいかどうかを確認できるので、この言語を状況依存の線形空間にすることができると確信しています。
アレックステンブリンク

それが価値があるもののための宿題の質問に対する私の考え、meta.cs.stackexchange.com
a /

@AlextenBrink:乗算はTMで2次時間を要しますが、それでも線形空間は機能するはずです。
ラファエル

@Raphael 2つの任意の無制限の整数の乗算は二次式ですが、1つの任意の無制限の整数をある固定定数で乗算すると線形になりますね。
ベン

5

問題の記述は確かに不完全ですが、これを見ると、「10進表記で整数を表す」または「2進表記で整数を表す」が意図されたものであると安全に想定できます。


:私たちは、バイナリ表記を前提とした場合ので、ここで、アルファベットは、5つの文字が含まれている01(),。10進表記を想定すると、アルファベットにはさらに2からまでの数字が含まれます9

問題の言語は、正規表現に一致する言語のサブセットです ((0|1),(0|1))(バイナリ表記で行く)。方程式のより単純なケースを仮定した場合2xy=0、言語はすべての数字のペアになります (x,y) そのような y=2x。バイナリでは、これはy です x0最後に追加で。つまり、言語は次の形式の単語で構成されます。(x,x0)。これはチョムスキー階層のどこに適合しますか?

ここに、より複雑な例があります。 y=3x1。の2進(または10進)展開の方法x そして y いつ比較する y=3x11


1

言語はペアではなく単語のセットであるため、質問は完全ではありません。次のようにエンコードするとx$y どこ x,y バイナリであり、次のようにエンコードすると、状況依存ですが、文脈自由ではありません(Gillesの回答を参照)。 x$yR それは文脈自由ですが、規則的ではありません(運動)、 x そして y、レギュラーです!こちらをご覧ください


エンコーディングが単項の場合、答えはさらに簡単です。しかし、この答えはここにあるはずです。
ラファエル

ラファエル:私はそうは思いません、その質問は明確に定義された入力のエンコーディングを持っています。この質問はそうではなく、私はそれが重要であると指摘しています。
sdcvvc

しかし、結果の言語が該当するクラスに関するコメントは、この質問には役立ちません。このようなものをエンコードする方法についてのみです。
ラファエル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.