An efficient context-free parsing algorithm
Communications of the ACM
Parsing Schemata: A Framework for Specification and Analysis of Parsing Algorithms
Parsing Schemata: A Framework for Specification and Analysis of Parsing Algorithms
Construction of Efficient Generalized LR Parsers
WIA '97 Revised Papers from the Second International Workshop on Implementing Automata
Dyna: a declarative language for implementing dynamic programs
ACLdemo '04 Proceedings of the ACL 2004 on Interactive poster and demonstration sessions
Deterministic left corner parsing
SWAT '70 Proceedings of the 11th Annual Symposium on Switching and Automata Theory (swat 1970)
Automatic Generation of Natural Language Parsers from Declarative Specifications
Proceedings of the 2006 conference on STAIRS 2006: Proceedings of the Third Starting AI Researchers' Symposium
Generating XTAG parsers from algebraic specifications
TAGRF '06 Proceedings of the Eighth International Workshop on Tree Adjoining Grammar and Related Formalisms
Compiling declarative specifications of parsing algorithms
DEXA'07 Proceedings of the 18th international conference on Database and Expert Systems Applications
Hi-index | 0.00 |
Parsing schemata provide a formal, simple and uniform way to describe, analyze and compare different parsing algorithms. The notion of a parsing schema comes from considering parsing as a deduction process which generates intermediate results called items. An initial set of items is directly obtained from the input sentence, and the parsing process consists of the application of inference rules (called deductive steps) which produce new items from existing ones. Each item contains a piece of information about the sentence's structure, and a successful parsing process will produce at least one final item containing a full parse tree for the sentence or guaranteeing its existence. Their abstraction of low-level details makes parsing schemata useful to define parsers in a simple and straightforward way. Comparing parsers, or considering aspects such as their correction and completeness or their computational complexity, also becomes easier if we think in terms of schemata. However, when we want to actually use a parser by running it on a computer, we need to implement it in a programming language, so we have to abandon the high level of abstraction and worry about implementation details that were irrelevant at the schema level. In particular, we study in this article how the source parsing schema should be analysed to decide what kind of indexes need to be generated in order to obtain an efficient parser.