Uniquely Parsable Unification Grammars and Their Parser Implemented in Prolog

A uniquely parsable grammar (UPG) introduced by Morita and coworkers is a formal grammar with a restricted type of rewriting rules, where parsing can be performed without backtracking. By extending a UPG, we introduce a uniquely parsable unification grammar (UPUG), and we investigate its applicability to parsing. A unification grammar (UG) is a system such that a sequence of terms is rewritten by a set of rules, and the rewriting process accompanies unification of terms as in Prolog. We first define a general framework of a UG and then give a UPUG-condition so that it has the property of unique parsability. Since the class of UPGs is a subclass of UPUGs and is known to be universal in language generating ability, the class of UPUGs is also universal. We then show a simple parsing method for UPUGs. Based on it, we give a Prolog implementation of a parser which will be useful for natural language analysis and other applications.