I am currently reading Bob Carpenter's Type-Logical Semantics, which goes over the Type-Logical approach to natural language semantics. I understand that categorial grammar is technically different from this, but I'd still personally lump these two into the same category of "Variations/extensions of the Lambek Calculus".

On the other hand, I am also reading "Computational Semantics with Function Programming", which takes an approach to semantic parsing based on context-free grammars.

I understand that the type-logical/categorial approach is "radically lexicalized" -- all of the information for how words act grammatically is encoded in the type of individual lexical entries, built up from a small number of basic categories and connectives, rather than having to have outside rules specific to the grammar (i.e. production rules).

However, I wonder what this distinction means is practice? Are there any ways that this radically lexicalized framework provides advantages over an approach based on context-free (or I guess more generally phrase-structure grammar) based parsers?

For instance, the approach in "Computational Semantics with Functional Programming" for dealing with relative clauses seems to me much simpler from an implementation standpoint than Carpenter's treatment, which I understand is basically based on the "Discontinuous Lambek Calculus", and involved introducing an entirely new connective, whereas in the other approach one just has to add more rules for the handling of relative clauses, and it is straightforward to see how to build a parser for any context-free grammar in Haskell by the standard "parser combinators" technique. However, with the Discontinuous Lambek Calculus, it is much less clear to me how one would build a practical parser.

The authors of "Computational Semantics" admit that their approach is designed to be as easy as possible for educational purposes, so maybe their approach is somehow incomplete, and a more "proper" treatment would end up being just as complex as the Discontinuous Lambek Calculus? (For one thing, most languages are not context free, but rather mildly context sensitive, so to be fully faithful to natural languages I imagine we need to go beyond pure context-free-based parsers, for instance)

However, this makes me wonder more generally what the practical differences between these two different approaches are with respect to actually building semantic parsers. Which approach (if there is even a clear winner) has had the most success in this regard? Or (given that "success" can be quantified over many different aspects), what are the disadvantages and advantages of these two approaches when it comes to semantic parsing in particular?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.