15. A method comprising: receiving, by one or more query processors, a question from a computing device; converting, by one or more query processors, the question into one or more intermediate logical subqueries that abstract over the syntactic form of the question; wherein the conversion of the question into the intermediate logical subqueries by the one or more query processors comprises one or more of: parsing the question into a parse tree; converting the parse tree into a declarative form; identifying explicit and implicit query variables in the parse tree; replacing relative pronouns in the parse tree with corresponding referents; replacing entity mentions including pronouns and definite nominals in the parse tree statements with canonical mentions; identifying intermediate logical subqueries from at least one of verbs, verbals, appositives, event nouns, possessives, and special constructs in the parse tree; identifying, for each intermediate logical subquery, corresponding logical subjects, logical objects, prepositional phrases, and other modifiers from the parse tree; converting possessives from the parse tree into prepositional forms; converting indirect objects from the parse tree into prepositional forms; and distributing over conjunctions in the parse tree; and substituting variables for subordinate clauses in the parse tree; converting, by the one or more query processors, each intermediate logical subquery into a semantic subquery in a representation that equates intermediate logical subqueries having equivalent meanings; sending, by one or more query processors, the semantic query to the database, the semantic query being one or more semantic subqueries joined together; retrieving, by one or more database processors, facts from the database that match the semantic subqueries; joining, by one or more database processors, the facts when necessary to generate one or more answers to the question; returning by one or more database processors, the joined facts to the one or more query processors; and sending, by one or more query processors, the one or more answers to the computing device.
15. A method comprising: receiving, by one or more query processors, a question from a computing device; converting, by one or more query processors, the question into one or more intermediate logical subqueries that abstract over the syntactic form of the question; wherein the conversion of the question into the intermediate logical subqueries by the one or more query processors comprises one or more of: parsing the question into a parse tree; converting the parse tree into a declarative form; identifying explicit and implicit query variables in the parse tree; replacing relative pronouns in the parse tree with corresponding referents; replacing entity mentions including pronouns and definite nominals in the parse tree statements with canonical mentions; identifying intermediate logical subqueries from at least one of verbs, verbals, appositives, event nouns, possessives, and special constructs in the parse tree; identifying, for each intermediate logical subquery, corresponding logical subjects, logical objects, prepositional phrases, and other modifiers from the parse tree; converting possessives from the parse tree into prepositional forms; converting indirect objects from the parse tree into prepositional forms; and distributing over conjunctions in the parse tree; and substituting variables for subordinate clauses in the parse tree; converting, by the one or more query processors, each intermediate logical subquery into a semantic subquery in a representation that equates intermediate logical subqueries having equivalent meanings; sending, by one or more query processors, the semantic query to the database, the semantic query being one or more semantic subqueries joined together; retrieving, by one or more database processors, facts from the database that match the semantic subqueries; joining, by one or more database processors, the facts when necessary to generate one or more answers to the question; returning by one or more database processors, the joined facts to the one or more query processors; and sending, by one or more query processors, the one or more answers to the computing device. 17. The method of claim 15 , wherein the computing device executes a graphical user interface that displays the one or more answers to the question.