An Efficient Implementation of the Head-Corner Parser
<|reference_start|>An Efficient Implementation of the Head-Corner Parser: This paper describes an efficient and robust implementation of a bi-directional, head-driven parser for constraint-based grammars. This parser is developed for the OVIS system: a Dutch spoken dialogue system in which information about public transport can be obtained by telephone.   After a review of the motivation for head-driven parsing strategies, and head-corner parsing in particular, a non-deterministic version of the head-corner parser is presented. A memoization technique is applied to obtain a fast parser. A goal-weakening technique is introduced which greatly improves average case efficiency, both in terms of speed and space requirements.   I argue in favor of such a memoization strategy with goal-weakening in comparison with ordinary chart-parsers because such a strategy can be applied selectively and therefore enormously reduces the space requirements of the parser, while no practical loss in time-efficiency is observed. On the contrary, experiments are described in which head-corner and left-corner parsers implemented with selective memoization and goal weakening outperform `standard' chart parsers. The experiments include the grammar of the OVIS system and the Alvey NL Tools grammar.   Head-corner parsing is a mix of bottom-up and top-down processing. Certain approaches towards robust parsing require purely bottom-up processing. Therefore, it seems that head-corner parsing is unsuitable for such robust parsing techniques. However, it is shown how underspecification (which arises very naturally in a logic programming environment) can be used in the head-corner parser to allow such robust parsing techniques. A particular robust parsing model is described which is implemented in OVIS.<|reference_end|>
@article{van noord1997an,
    title={An Efficient Implementation of the Head-Corner Parser},
    author={Gertjan van Noord (Alfa-informatica, BCN, University of Groningen)},
    journal={arXiv preprint arXiv:cmp-lg/9701004},
    year={1997},
    archivePrefix={arXiv},
    eprint={cmp-lg/9701004},
    primaryClass={cmp-lg cs.CL}
}