2015-02-23 4 views
1

У меня есть следующая грамматика, которая использует центральную встроенную рекурсию. Тем не менее, он имеет два случая, используя или: S-> aSbbb | aSbb | ϵ где ε - пустое множество. Есть ли способ генерировать всеобъемлющую математическую формулу (язык), которая определяет эту грамматику?Как определить соответствующий язык грамматики?

+0

Мог бы быть моим невежеством, но грамматика - это лучший способ сообщить [язык] (http://en.wikipedia.org/wiki/Formal_language), и у вас есть грамматика. Не уверен, что вы просите здесь. Вы надеетесь преобразовать свою грамматику в другую форму? –

+0

Я имел в виду, что, учитывая следующую грамматику (написанную в коде выше), как мы могли бы написать свой соответствующий язык. – user1680944

+0

В основном вы спрашиваете: «Что такое слово для яблока?» «Э, яблоко». «Нет, но что это за слово?» «Нет, серьезно, слово яблоко». Ваша грамматика _is_ как мы будем писать соответствующий язык. –

ответ

1

Грамматика - это «всеобъемлющая математическая формула». :) Однако в текущем случае легко дать альтернативное описание. Ваша грамматика будет генерировать строки вида

a^nb^m 

где s^i обозначает «повторить подстроку si раз», и

2n <= m <= 3n 

n также может быть 0 (пустая строка).