Activity: Talk or presentation › Lecture and oral contribution
Constraint Handling Rules (CHR) is an extension of Prolog and is a declarative language for
writing constraint solvers. While originally designed for traditional constraints domains
such as finite domains and real or rational arithmetic, the language has gained increasing
popularity as a general programming languages due to its high flexibility and expressibility.
In our own work, we have applied CHR for language processing and developed a system
called CHR Grammars, analogous to the way Definite Clause Grammars are defined and
implemented on top of Prolog. These grammars execute as robust bottom-up parsers with an
inherent treatment of ambiguity and a high flexibility to model various linguistic phenomena.
Interesting features are a form of context-sensitive rules and the possibility to work with
extra-grammatical (e.g., semantic or contextual) hypotheses which may result in an
automatic interleaving and cooperation of the different phases of linguistic analysis.
Another interesting application is that Abductive Logic Programming can be implemented
in a strikingly simple and efficient way in CHR.