Дерево синтаксического анализа с заданной грамматикой

Мне дают следующую фразу:

The bird tried to escape from the strong cage.

И следующие правила грамматики:

s->np, vp 
np->det, n 
np->det, adjp 
adjp->adj, n 
pp->p, np 
comp->p, vp 
vp->v, pp 
vp->v, comp 

Я попытался вывести дерево из левого большинства, а также просто сделать это с помощью восходящего анализа. Вот простая диаграмма, которую я пробовал:

введите здесь описание изображения

У меня есть вопрос, возможно ли иметь два S, которые приведут к маршруту одного S

Более конкретно это приемлемо:

          s
      /      \
    s          s
  /   \      /   \
NP    VP    VP    NP

person user1234440    schedule 09.11.2013    source источник
comment
Этот вопрос кажется не по теме, потому что он касается генеративных грамматик и не имеет ничего общего с программированием.   -  person rici    schedule 09.11.2013


Ответы (1)


Согласно вашей грамматике, предложная группа (pp) состоит из предлога (p), за которым следует именная группа (np). Но ваше дерево синтаксического анализа показывает pps, состоящие только из предлога ("to" и "from"). Если вы делаете анализ снизу вверх с учетом этого, вы должны прийти к правильному ответу.

Чтобы ответить на ваш прямой вопрос, ваша грамматика не позволяет s состоять из двух s; только из именной фразы (np), за которой следует глагольная фраза (vp).

person rici    schedule 09.11.2013