PULC Texts and Applications

The Kinds of Texts Considered in the PULC Project

As explained here, precise understanding of language is impossible if we allow arbitrary texts on arbitrary topics. The PULC project therefore concentrates on texts that can be understood precisely, where all (or almost all) people agree about their meaning and about the correct answers to questions about them. The answers to the questions usually do not explicitly appear in the text and require inference based on the information in the text.

Examples of such texts appear below. The comprehension exams are various tasks designed to test the computer’s level of understanding of a NL sentence or text (just as they test humans’ understanding). The second list gives a few examples of real applications that would be very valuable to people, and which crucially rely on a high level of understanding of text meaning.

Comprehension Exams

  1. Identifying logical entailment and contradiction relations between the meanings of two sentences.
    • A good example of such entailments is the list compiled during the FRACAS project — see chapter 3 of Deliverable 16.
    • The “Recognizing Textual Entailment” task contains pairs of sentences that are related by all kinds of ways, including analogies and similarities, and identifying entailments between them requires an unrestricted amount of general world knowledge, so it is not the kind of comprehension exam we aim at solving. Still, this task would greatly benefit from the knowledge developed in the PULC project, because the calculation of entailments would rely on a precise logical framework rather than on ad-hoc pattern-matching.
  2. Logic puzzles, such as those on LSAT and GRE exams.
  3. Math puzzles, such as those on SAT exams. (Solving such puzzles given their English description was one of the tasks that was suggested for the next DARPA Grand Challenge.)
  4. Solving Advanced Placement (AP) tests. (See e.g. Project Halo which works on the knowledge representation of such a task, but not yet on the language comprehension part).

Real World Applications

  1. NL interface to databases: expressing a query by a NL question rather than an SQL query. (Look here for a survey.)
  2. NL interface to a computational law system: Transforming texts that describe precise regulations to representations that the computer could reason with in order to determine whether a given case complies with the regulations (e.g.: which courses a college student must take in order to fulfil the requirements of a study program. Example text: look here).
  3. Understanding manuals and other documents written in a restricted subset of NL, like those used by the aircraft industry (e.g. the Boeing company: see this page and some papers on this page).
  4. Answering questions based on information given in a text drawn from a restricted class of texts.