ArticleslgStudy

biology

Tree-adjoining grammar

Tree-adjoining grammar is a biology topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Tree-adjoining grammar rather than just read about it. In short: Tree-adjoining grammar (TAG) is a grammar formalism defined by Aravind Joshi. Tree-adjoining grammars are somewhat similar to context-free grammars, but the elementary unit of rewriting is the tree rather than the symbol.

Tree-adjoining grammar — main illustration
Tree-adjoining grammar — illustration

Key takeaways

  • Tree-adjoining grammar belongs to biology; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Tree-adjoining grammar to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Tree-adjoining grammar from memory before moving on to harder problems.

Reference excerpt

Tree-adjoining grammar (TAG) is a grammar formalism defined by Aravind Joshi. Tree-adjoining grammars are somewhat similar to context-free grammars, but the elementary unit of rewriting is the tree rather than the symbol. Whereas context-free grammars have rules for rewriting symbols as strings of other symbols, tree-adjoining grammars have rules for rewriting the nodes of trees as other trees (see tree (graph theory) and tree (data structure)).

History TAG originated in investigations by Joshi and his students into the family of adjunction grammars (AG), the "string grammar" of Zellig Harris. AGs handle exocentric properties of language in a natural and effective way, but do not have a good characterization of endocentric constructions; the converse is true of rewrite grammars, or phrase-structure grammar (PSG). In 1969, Joshi introduced a family of grammars that exploits this complementarity by mixing the two types of rules. A few very simple rewrite rules suffice to generate the vocabulary of strings for adjunction rules. This family is distinct from the Chomsky-Schützenberger hierarchy but intersects it in interesting and linguistically relevant ways. The center strings and adjunct strings can also be generated by a dependency grammar, avoiding the limitations of rewrite systems entirely.

Description

A TAG can be defined as a 5-tuple ⟨ Σ , N T , I , A , S ⟩ {\displaystyle \langle \Sigma ,NT,I,A,S\rangle } with:

Σ {\displaystyle \Sigma } as the finite set of terminal symbols;

N T {\displaystyle NT} as the finite set of non-terminal symbols, disjunct from Σ {\displaystyle \Sigma } ;

I {\displaystyle I} as a finite set of finite trees called initial trees; Initial trees have non-terminals as inner nodes. The frontier can consist of terminals and non-terminals. Non-terminals at the frontier are marked for substitution (typically by adding the symbol ' ↓ {\displaystyle \downarrow } ' after the non-terminal symbol). Nodes marked for substitution cannot be adjoined to.

A {\displaystyle A} as a finite set of finite trees called auxiliary trees; Auxiliary trees have a special leaf node known as the foot node (typically marked by ' ∗ {\displaystyle \ast } ') which needs to have the same non-terminal symbol as the root of the tree. Foot nodes cannot be substituted; all other non-terminal nodes at the frontier are marked for substitution. As in initial trees, inner nodes have non-terminal symbols.

S {\displaystyle S} as the special start symbol, belonging to the set of non-terminals. Additionally, TAGs with adjunction constraints on nodes have been introduced. An adjunction constraint on a node can: completely disallow adjunction (NA, for null adjunction); make it obligatory (OA); or only allow selected auxiliary trees to adjoin (SA). The two types of basic tree in TAG—initial trees (often denoted by ' α {\displaystyle \alpha } ') and auxiliary trees (' β {\displaystyle \beta } ')—are together called elementary trees. Initial trees represent basic valency relations, while auxiliary trees allow for recursion. A derivation starts with an initial tree, which is combined with further trees via either substitution or adjunction. Substitution replaces a frontier node with an initial tree whose root node has the same label as the leaf for which it is substituted. Adjunction inserts an auxiliary tree—at either a frontier or an internal node—whose root and foot labels both match the label of the node whereat it adjoins. Adjunction can thus have the effect of inserting an auxiliary tree into the center of another tree, which operation may be applied recursively.

Complexity and application For every context-free grammar, a tree-adjoining grammar can be generated which accepts the same string-language. Thus, TAGs can generate all context-free languages; they can generate, as well, some—but not all—context-sensitive languages. Two examples of context-sensitive/non-context-free languages that TAGs (with adjunction constraints) can generate are:

The copy language (i.e. the language of squares), in which an arbitrary string is repeated: { w w ∣ w ∈ Σ ∗ } {\displaystyle \left\{ww\mid w\in \Sigma ^{*}\right\}}

The count-4 language: { a n b n c n d n | 1 ≤ n } {\displaystyle \{a^{n}b^{n}c^{n}d^{n}|1\leq n\}} Tree-adjoining grammars are more powerful (in terms of weak generative capacity) than context-free grammars, but less powerful than linear context-free rewriting systems, indexed, or context-sensitive grammars. Two examples of context-sensitive languages that TAGs cannot generate are:

The language of triplicated strings (i.e. the language of cubes): { w w w ∣ w ∈ Σ ∗ } {\displaystyle \left\{www\mid w\in \Sigma ^{*}\right\}}

… excerpt ends here. Continue reading the full article.

Illustrations

Tree-adjoining grammar: Schematic illustration of the substitution operation: two trees (
  
    
      
        α
      
    
    {\displaystyle \alpha }
  
 and 
  
    
      
        β
      
    
    {\displaystyle \beta }
  
; note that these need not be elementary trees) are joined on a node labelled with non-terminal 
  
    
      
        X
      
    
    {\displaystyle X}
  
; this node is one of the leaf nodes marked for substitution in 
  
    
      
        α
      
    
    {\displaystyle \alpha }
  
, and the root of 
  
    
      
        β
      
    
    {\displaystyle \beta }
  
 is a node with the same non-terminal.
Schematic illustration of the substitution operation: two trees ( α {\displaystyle \alpha } and β {\displaystyle \beta } ; note that these need not be elementary trees) are joined on a node labelled with non-terminal X {\displaystyle X} ; this node is one of the leaf nodes marked for substitution in α {\displaystyle \alpha } , and the root of β {\displaystyle \beta } is a node with the same non-terminal.
Tree-adjoining grammar: The three elementary trees necessary to generate the copy language with the alphabet containing only letters a and b.
The three elementary trees necessary to generate the copy language with the alphabet containing only letters a and b.
Tree-adjoining grammar: Trees necessary to generate the count-4 language including the empty word 
  
    
      
        ϵ
      
    
    {\displaystyle \epsilon }
  
, formally defined as 
  
    
      
        
          
            Count
          
          
            4
          
        
        =
        
          {
          
            
              a
              
                n
              
            
            
              b
              
                n
              
            
            
              c
              
                n
              
            
            
              d
              
                n
              
            
            ∣
            n
            ≥
            0
          
          }
        
      
    
    {\displaystyle {\text{Count}}_{4}=\left\{a^{n}b^{n}c^{n}d^{n}\mid n\geq 0\right\}}
  
.
Trees necessary to generate the count-4 language including the empty word  ϵ {\displaystyle \epsilon } , formally defined as Count 4 = { a n b n c n d n ∣ n ≥ 0 } {\displaystyle {\text{Count}}_{4}=\left\{a^{n}b^{n}c^{n}d^{n}\mid n\geq 0\right\}} .

Worked examples

Example 1 — a first encounter with Tree-adjoining grammar

Start with the simplest possible case. Write down what Tree-adjoining grammar claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In biology, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Tree-adjoining grammar before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Tree-adjoining grammar ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Tree-adjoining grammar

In research
Tree-adjoining grammar appears in biology research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Tree-adjoining grammar in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Tree-adjoining grammar is common in secondary-school and first-year university syllabi. It links to neighbouring topics Generative linguistics, Grammar frameworks, so understanding it makes those chapters shorter.
In everyday life
Look for Tree-adjoining grammar outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Tree-adjoining grammar” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Tree-adjoining grammar in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Tree-adjoining grammar means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Tree-adjoining grammar out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Tree-adjoining grammar in simple terms?

Tree-adjoining grammar (TAG) is a grammar formalism defined by Aravind Joshi. Tree-adjoining grammars are somewhat similar to context-free grammars, but the elementary unit of rewriting is the tree rather than the symbol.

Why does Tree-adjoining grammar matter?

Because it connects several biology ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Tree-adjoining grammar?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Tree-adjoining grammar.

Tags

  • Generative linguistics
  • Grammar frameworks

Keep exploring