Я пытаюсь написать CFG по алфавиту Σ = {a,b}
для всех слов, начинающихся и заканчивающихся таким же числом a
, с по крайней мере одним b
посередине.Как я могу написать свою контекстно-свободную грамматику?
Теперь я понимаю основную концепцию CFG, переменные, правила производства и т. Д. К сожалению, у меня закончились идеи для написания вышеупомянутого CFG. Все, что я получил до сих пор
S → aYXYa
X → XbX | b | λ
Y → ???
Я думаю что правила производства S
и X
даст мне строку с двумя ** a
** с обеих сторон, как многие ** b
** в середине, как мне хотелось бы. Тем не менее, я не уверен, как я могу также положить столько ** ** a
** с обеих сторон ** b
** с, убедившись, что точно такое же количество ** a
** s с каждой стороны ,
Любые предложения, решения были бы высоко оценены. Благодарю.
Чтобы убедиться, что на каждой стороне есть одинаковое количество, просто убедитесь, что ваши производственные правила всегда совпадают. – Albert
Привет, Альберт, не могли бы вы привести пример? Спасибо – 2009-04-01 21:47:34
Правило «X → XbX | b | λ» сложнее, чем необходимо, но да, оно создает любое количество букв. – Albert