私はと同じ番号で始まり、終わるすべての単語について、アルファベットのΣ = {a,b}
にCFGを書こうとしています。中央には少なくとも1つのb
があります。文脈自由文法を書くにはどうすればいいですか?
私はCFG、変数、生産ルールなどの基本的な概念を理解しています。残念ながら、私は前述のCFGを書くためのアイディアを使い果たしました。私がこれまで持っているすべては、私はプロダクションルールS
とX
はできるだけ多くしてくれ両側に2つの** a
** sの文字列を与えることを考える
S → aYXYa
X → XbX | b | λ
Y → ???
です** b
**私は好きなように真ん中にいる。しかし、** b
**の両側に** a
**の数をどのように置くことができるのかよく分かりませんが、両側に** a
**の数が正確に同じであることを確認しています。
どのような提案、解決策でも大歓迎です。ありがとう。
両側に同じ数のaがあることを確認するには、制作ルールが常にaと一致していることを確認してください。 – Albert
こんにちはアルバート、例を挙げていただけますか?ありがとう –
ルール "X→XbX | b |λ"は必要以上に複雑ですが、はい、任意の数のbを作成します。 – Albert