Precise Understanding of Language by Computers

Short Project Description

The PULC project aims at building computer programs that can precisely understand the meaning of certain kinds of Natural Language texts. "Precise understanding" is defined as: correctly solving tasks that require reasoning with and inferring conclusions from the information conveyed in the text, answering questions about it, and detecting inconsistencies, redundancies, and incompleteness in the text.

Example applications include: natural language interfaces to databases and knowledge bases; automatic understanding and verification of technical specification and regulation texts; controlled natural language; and solving comprehension exams (GRE/LSAT logic and math puzzles, and even chemistry/physics AP tests). Beyond the practical applications, the research confers long-term benefits for improving the quality and precision of semantic understanding in other NLP applications such as question-answering, by providing the necessary research in computational semantics that precedes corpus annotation efforts.

Call for People

The PULC project is seeking interested parties in academia, research centers, and industry, who would like to collaborate on this research direction. The collaboration could be as simple as being inspired by the project's direction and an occasional exchanging of information, to actively contributing ideas and computer code to the system. In particular, I would like to find computer science and linguistics students who would like to work on this project. It is possible to do so as part of a workshop where the student will contribute code to the project, and also as part of research for M.Sc. and Ph.D. degrees (there are lots of interesting research questions to work on!). If you believe that we need to work on making computers understand precisely the meaning and information in natural language texts, please contact iddolev [at] cs [dot] stanford [dot] edu for information on how you could contribute to the project.