4635
правок
Glk (обсуждение | вклад)  (Создана новая страница размером '''Дерево вывода''' (''Derivation tree, parse tree, syntax'') -  способ представления множества ''...)  | 
				KEV (обсуждение | вклад)  Нет описания правки  | 
				||
| Строка 1: | Строка 1: | ||
'''Дерево вывода''' (''Derivation tree, parse tree, syntax'') -    | '''Дерево вывода''' (''[[Derivation tree, parse tree, syntax]]'') - способ представления множества ''выводов'' одной и той же ''[[цепочка|цепочки]]'' в ''[[контекстно-свободная грамматика|контекстно-свободной грамматике]]'', различающихся лишь порядком применения правил.  | ||
способ представления множества ''выводов'' одной и той же ''цепочки'' в ''контекстно-свободной грамматике'',  | |||
различающихся лишь порядком применения правил.  | |||
[[Файл:Derivation tree.png|500px]]  | |||
[[Помеченный граф|Помеченное]] [[упорядоченный граф|упорядоченное]] [[дерево]] <math>D</math>  | |||
называется ''деревом вывода''  в контекстно-свободной грамматике <math>G(A)=(N,\Sigma,P,A)</math>, если выполнены следующие условия:  | |||
(  | (1) [[корень]] дерева <math>D</math> помечен символом <math>A</math>;  | ||
(3) если корень дерева имеет единственного сына,  | (2) если <math>D_1,\ldots,D_k</math> --- [[поддерево|поддеревья]], корнями которых являются [[сын|сыновья]] корня <math>D</math>, помеченные символами <math>X_1, \ldots, X_k</math> соответственно,  | ||
помеченного <math>e</math>, то этот сын образует дерево, состоящее  | то <math>A\longrightarrow X_i\ldots X_k</math> --- правило из множества <math>P</math>. Каждое <math>D_i</math> должно либо быть деревом вывода в [[грамматика|грамматике]] <math>G(X_i)=(N,\Sigma,P,X_i)</math>, если <math>X_i</math> - нетерминал, либо состоять из единственной вершины, помеченной символом <math>X_i</math>, если <math>X_i</math> --- [[терминал]];  | ||
из единственной вершины, и <math>A\longrightarrow e</math> --- правило из  | |||
(3) если корень дерева имеет единственного сына, помеченного <math>e</math>, то этот сын образует дерево, состоящее из единственной вершины, и <math>A\longrightarrow e</math> --- правило из  | |||
множества <math>P</math>.  | множества <math>P</math>.  | ||
''Сечением'' дерева <math>D</math> называется такое  | ''[[Сечение|Сечением]]'' дерева <math>D</math> называется такое множество <math>C</math> вершин дерева <math>D</math>, что  | ||
множество <math>C</math> вершин дерева <math>D</math>, что  | |||
(1) никакие две вершины из <math>C</math> не лежат на одном пути в <math>D</math>,  | (1) никакие две вершины из <math>C</math> не лежат на одном [[путь|пути]] в <math>D</math>,  | ||
(2) ни одну вершину дерева <math>D</math> нельзя добавить к <math>C</math>, не нарушив  | (2) ни одну вершину дерева <math>D</math> нельзя добавить к <math>C</math>, не нарушив  | ||
свойства 1.  | свойства 1.  | ||
''Крона сечения'' дерева <math>D</math> определяется как цепочка, которая  | ''[[Крона сечения]]'' дерева <math>D</math> определяется как [[цепочка]], которая получается конкатенацией меток вершин, образующих данное сечение, в их упорядочении слева направо, определяемом по следующему правилу. Рассматривается имеющееся упорядочение на множестве сыновей <math>p_1,</math> <math> \ldots,</math> <math>p_k</math> каждого [[отец вершины ордерева|отца]] <math>p</math> в дереве <math>D</math> и считается, что для любых <math>i<j</math> вершина <math>p_i</math> и все ее [[потомок вершины|потомки]] расположены левее вершины <math>p_j</math> и всех ее потомков.  | ||
получается конкатенацией меток вершин, образующих данное сечение, в их  | |||
упорядочении слева направо, определяемом по следующему правилу.  | |||
Рассматривается имеющееся упорядочение на множестве сыновей <math>p_1,</math> <math>  | |||
\ldots,</math> <math>p_k</math> каждого отца <math>p</math> в дереве <math>D</math> и  | |||
считается, что для любых <math>i<j</math> вершина <math>p_i</math> и все ее потомки  | |||
расположены левее вершины <math>p_j</math> и всех ее потомков.  | |||
''Кроной дерева'' <math>D</math> называется крона сечения, образованного из  | ''[[Кроной дерева]]'' <math>D</math> называется крона сечения, образованного из [[лист|листьев]] дерева <math>D</math>.  | ||
листьев дерева <math>D</math>.  | |||
Другие названия --- ''Дерево разбора, Синтаксическое дерево.''  | Другие названия --- ''[[Дерево разбора]], [[Синтаксическое дерево]].''  | ||
См. также ''Абстрактное синтаксическое представление.''  | ==См. также==   | ||
''[[Абстрактное синтаксическое представление]].''  | |||
==Литература==  | ==Литература==  | ||
[Ахо-Ульман],    | [Ахо-Ульман],    | ||