10. A method comprising: providing logic-programming-based computer system having one or more processors, one or more memories from which instructions and data, including facts, rules, and indexes, are retrieved by the one or more processors and in which instructions and data are stored by the by the one or more processors, a first set of indexes that index facts stored in the one or more memories, a second set of indexes that index rules stored in the one or more memories, and a logic program stored in one of the one or more memories; implementing a gateway rule within the logic program; and implementing a set of fact-rule pairs, within the logic program, each fact-rule pair of which is indexed by one or more indexes of the first set of indexes and, in combination with the gateway rule, implements a rule within the logic program.
10. A method comprising: providing logic-programming-based computer system having one or more processors, one or more memories from which instructions and data, including facts, rules, and indexes, are retrieved by the one or more processors and in which instructions and data are stored by the by the one or more processors, a first set of indexes that index facts stored in the one or more memories, a second set of indexes that index rules stored in the one or more memories, and a logic program stored in one of the one or more memories; implementing a gateway rule within the logic program; and implementing a set of fact-rule pairs, within the logic program, each fact-rule pair of which is indexed by one or more indexes of the first set of indexes and, in combination with the gateway rule, implements a rule within the logic program. 11. The method of claim 10 wherein implementing the gateway rule further comprises: implementing a head predicate having a gateway-rule with a head predicate name identical to the head predicate name of each of the rules implemented by the set of fact-rule pairs and the gateway rule, and a body with at least two terms.