Terminal function
Encyclopedia
A terminal function is a function (node) in a parse tree
Parse tree
A concrete syntax tree or parse tree or parsing treeis an ordered, rooted tree that represents the syntactic structure of a string according to some formal grammar. In a parse tree, the interior nodes are labeled by non-terminals of the grammar, while the leaf nodes are labeled by terminals of the...

 which is a leaf in that parse tree.

Background

A parse tree
Parse tree
A concrete syntax tree or parse tree or parsing treeis an ordered, rooted tree that represents the syntactic structure of a string according to some formal grammar. In a parse tree, the interior nodes are labeled by non-terminals of the grammar, while the leaf nodes are labeled by terminals of the...

 is made up of nodes and branches. In the picture below the parse tree is the entire structure, starting from S and ending in each of the leaf nodes (John,ball,the,hit).

In a parse tree, each node is either a root node, a branch node, or a leaf node. In the above example, S is a root node, NP and VP are branch nodes, while John, ball, the, and hit are all leaf nodes.

Nodes can also be referred to as parent nodes and child nodes. A parent node is one which has at least one other node linked by a branch under it. In the example, S is a parent of both NP and VP. A child node is one which has at least one node directly above it to which it is linked by a branch of the tree. Again from our example, hit is a child node of V.

Nodes as functions

Each of these nodes can also be called a function. However, this type of function (i.e. a node in a parse tree) is not the same as a function in mathematics or computer programming. A function in mathematics takes in zero or more inputs and returns a value.

In parse trees, a function can be a true mathematical function which "uses" its child nodes as inputs, and returns a single output to its parent. More often, however, a node in a parse tree is a static symbol such as a number, letter, or word.

The use of parse tree functions is highly dependent on the area which is using it. In the branch of evolutionary computation
Evolutionary computation
In computer science, evolutionary computation is a subfield of artificial intelligence that involves combinatorial optimization problems....

 called genetic programming
Genetic programming
In artificial intelligence, genetic programming is an evolutionary algorithm-based methodology inspired by biological evolution to find computer programs that perform a user-defined task. It is a specialization of genetic algorithms where each individual is a computer program...

, for instance, tree functions are quite often (but not exclusively) used as mathematical-style function. In linguistics
Linguistics
Linguistics is the scientific study of human language. Linguistics can be broadly broken into three categories or subfields of study: language form, language meaning, and language in context....

 and linguistic theory, tree functions are never mathematical functions, except in certain areas of computational linguistics
Computational linguistics
Computational linguistics is an interdisciplinary field dealing with the statistical or rule-based modeling of natural language from a computational perspective....

.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK