生成文法
木接合文法(Tree-adjoining grammar、TAG) は計算言語学や自然言語処理でよく用いられているアラヴィンド・ジョーシの案出した形式言語である。文脈自由文法に類似しているが、書き換えの基本単位は記号ではなく樹である。文脈自由文法はある記号を他の記号列に書き換える規則を持つが、TAGは樹の節点を他の樹に書き換える規則を立てる。(木 (数学)及びツリーデータ構造を参照)。TAGにおける規則(「補助樹; auxiliary trees」として知られる)は「脚節点; foot node」という特殊な節点を葉とする樹状図で表される。根の節点と脚節点は同じ記号でなければならない。「始発樹」(文脈自由文法の始発記号と同じ)から始まる。書き換え操作は補助樹を(典型的には葉ではない)節点に付加(接合)することによって実行される。補助樹の根/脚のラベルは付加する節点のラベルと一致し、この操作で付加対象となる節点を上下に分割する。上方では付加している樹の根と結合し、下方では付加している脚と結合する。これがTAGのもっとも基本となるものである;もっとも一般的なTAGの変異形ではさらに「代入」と呼ばれる書き換え操作が加えられるし、また他の変異形では樹に複数の脚節点を持つ部分樹やさらなる拡張を許している。TAGは、弱生成能力に関してそれ自体を文脈自由文法よりやや強力にするような一定の特徴を備えているが、チョムスキー階層に定義されている文脈依存文法よりは弱いために、よく「やや文脈依存的な」文法であると特徴付けられる。やや文脈依存的な文法は、一般的な場合においてパーザを効率的に保ったまま自然言語のモデル構築としては十分強力である、という予想が提示されている。