A TGC-generated parser uses four types of edges: pheno-edge, tecto-aedge, tecto-pedge and tecto-fedge. A pheno-edge is a passive edge corresponding to a found phenogrammatical category. Pheno-edges look like the following in the parser:
pheno_edge(L,R,FR,Id)
L and R are for the left and right boundaries of the edge. FR records the field or region found, and Id is the unique ID that each pheno-edge has.
Tecto-aedges are active edges that are predicted either from phenogrammar as a result of a matched_by constraint or predicted in tectogrammar according to some tecto-rule. They hold the following information:
tecto_aedge(Cat,Sponsor,Keys,CanBV,OptBV)
Cat is the category predicted. Sponsor is the ID of the pheno-edge that resulted in the prediction of the active edge. Keys is a list of ID's that belong to inaccessible passive or frozen edges. Taking a key by an active edge means that the active edge has promised to consume all of the daughters of the edge it has taken its keys/ID's from. This is done by adjusting the CanBV and OptBV of the active edge. These respectively stand for a bit vector representing the words that an edge is allowed to take and the words that it may optionally take.
A passive tecto edge (tecto-pedge) records a category that has been found and it contains the following:
tecto_pedge(Cat,Tree,Keys,DtrIds,BV)
Cat is the category that has been found. Tree represents the internal structure of the category. DtrIds is a list of the ID's of the lexical items that a passive edge has consumed. And finally, BV represents the positions of the words consumed by the passive edge as a bit vector.
Frozen edges (tecto-fedge) are introduced by covered_by constraints if any. These are basically active edges that are waiting for a CanBV. The format of a tecto-fedge is as follows:
tecto_fedge(Cat,Id,ReqBV)
Cat is the category predicted. Id is the ID of the pheno-edge that resulted in the prediction of the frozen edge. ReqBV is the bit vector that is required to be consumed for Cat to be made. A frozen edge is unfrozen by an active edge that has access to it.
For more information on the formalism and the working mechanism of a TGC-generated topological parser, refer to Penn and Haji-Abdolhosseini (2002).
Appendix