System and method for providing inferencing services
First Claim
Patent Images
1. A method for providing inferencing services, comprising:
- receiving a plurality of rules for a specified domain;
identifying at least one precondition associated with the rules, each precondition representing an input used in executing the rules;
identifying at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules;
receiving an input value corresponding to the identified preconditions; and
executing at least a portion of the rules using the input value to generate an output value, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed, the output value corresponding to the identified postconditions.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for providing inferencing services includes receiving a plurality of rules for a specified domain. The method also includes identifying a precondition associated with the rules and a postcondition associated with the rules. The precondition represents an input used in executing the rules, and the postcondition represents an output from the execution of the rules. The method further includes receiving an input value corresponding to the precondition. In addition, the method includes executing at least a portion of the rules using the input value to generate an output value. The output value corresponds to the postcondition.
112 Citations
58 Claims
-
1. A method for providing inferencing services, comprising:
-
receiving a plurality of rules for a specified domain; identifying at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identifying at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receiving an input value corresponding to the identified preconditions; and executing at least a portion of the rules using the input value to generate an output value, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed, the output value corresponding to the identified postconditions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A system for providing inferencing services, comprising:
-
a memory operable to store a plurality of rules for a specified domain; and one or more processors collectively operable to; identify a precondition associated with the rules, the precondition representing an input used in executing the rules; identify a postcondition associated with the rules, the postcondition representing an output from the execution of the rules; receive an input value corresponding to the precondition; and execute at least a portion of the rules using the input value to generate an output value, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed, the output value corresponding to the postcondition. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. Logic embodied on at least one computer readable medium and operable when executed to:
-
identify a precondition associated with a plurality of rules for a specified domain, the precondition representing an input used in executing the rules, identify a postcondition associated with the rules, the postcondition representing an output from the execution of the rules; receive an input value corresponding to the precondition; and execute at least a portion of the rules using the input value to generate an output value, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed, the output value corresponding to the postcondition.
-
-
32. A system for providing inferencing services, comprising:
-
means for identifying a precondition associated with a plurality of rules for a specified domain, the precondition representing an input used in executing the rules; means for identifying a postcondition associated with the rules, the postcondition representing an output from the execution of the rules; means for receiving an input value corresponding to the precondition; and means for executing at least a portion of the rules using the input value to generate an output value, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed, the output value corresponding to the postcondition.
-
-
33. A method for providing inferencing services, comprising:
-
communicating a plurality of rules for a specified domain to an inference engine, wherein the inference engine comprises a stateful inference engine, and wherein the rules are associated with a precondition and a postcondition, the precondition representing an input used by the inference engine in executing the rules, the postcondition representing an output from the execution of the rules; communicating an input value corresponding to the precondition to the inference engine; receiving an output value, wherein the output value comprises one of a plurality of output values from the inference engine, the particular output value corresponding to the postcondition; and invoking at least one function in the inference engine, the at least one function operable to at least one of identify one of the output values, identify all of the output values, generate a rule snapshot identifying a current status of one of the rules and any fields associated with the rule that cause the rule to pend, identify the rule that resolved one of the output values, assign a retractable value to a field used by the rules, assign a non-retractable value to a field used by the rules, and retract a value of a field used by the rules. - View Dependent Claims (34, 35, 36)
-
-
37. A method for providing inferencing services, comprising:
-
receiving a plurality of first rules for a specified domain comprising at least a portion of a first rulebase; loading the first rules into a memory; receiving a supplemental rulebase comprising a second rule; combining the second rule with the first rules in the memory; and executing at least a portion of the first and second rules to generate an output value, wherein executing at least a portion of the first and second rules comprises enforcing monotonic reasoning as the rules are executed. - View Dependent Claims (38, 39, 40, 41)
-
-
42. A system for providing inferencing services, comprising:
-
a memory operable to store a plurality of first rules for a specified domain, the plurality of first rules comprising at least a portion of a first rulebase; and one or more processors collectively operable to; receive a supplemental rulebase comprising a second rule; combine the second rule with the first rules in the memory; and execute at least a portion of the first and second rules to generate an output value, wherein executing at least a portion of the first and second rules comprises enforcing monotonic reasoning as the rules are executed. - View Dependent Claims (43, 44, 45)
-
-
46. Logic embodied on at least one computer readable medium and operable when executed to:
-
receive a plurality of first rules for a specified domain, the plurality of first rules comprising at least a portion of a first rulebase; load the first rules into a memory; receive a supplemental rulebase comprising a second rule; combine the second rule with the first rules in the memory; and execute at least a portion of the first and second rules to generate an output value, wherein executing at least a portion of the first and second rules comprises enforcing monotonic reasoning as the rules are executed.
-
-
47. A method for providing inferencing services, comprising:
-
communicating a plurality of first rules for a specified domain, the plurality of first rules comprising at least a portion of a first rulebase to an inference engine; communicating a supplemental rulebase comprising a second rule to the inference engine; allowing the inference engine to combine the second rule with the first rules in the memory; and receiving from the inference engine an output value, the inference engine operable to execute at least a portion of the first and second rules to generate the output value, wherein executing at least a portion of the first and second rules comprises enforcing monotonic reasoning as the rules are executed. - View Dependent Claims (48)
-
-
49. A method for providing inferencing services, comprising:
-
executing at least a portion of a plurality of rules for a specified domain, at least one of the rules comprising an expression; pending one of the rules when a field needed to resolve the expression in the rule has an unknown value; identifying a binary statement associated with the expression that caused the decision tree rule to pend; assigning a known value to the field that caused the rule to pend; unpending the rule; and restarting execution of the rule at the identified binary statement. - View Dependent Claims (50)
-
-
51. A system for providing inferencing services, comprising:
-
a memory operable to store a plurality of rules for a specified domain, at least one of the rules comprising an expression; and one or more processors collectively operable to; execute at least a portion of the rules; pend one of the rules when a field needed to resolve the expression in the rule has an unknown value; identify a binary statement associated with the expression that caused the decision tree rule to pend; assign a known value to the field that caused the rule to pend; unpend the rule; and restart execution of the rule at the identified binary statement. - View Dependent Claims (52)
-
-
53. Logic embodied on at least one computer readable medium and operable when executed to:
-
execute at least a portion of a plurality of rules for a specified domain, at least one of the rules comprising an expression; pend one of the rules when a field needed to resolve the expression in the rule has an unknown value; identify a binary statement associated with the expression that caused the decision tree rule to pend; assign a known value to the field that caused the rule to pend; upend the rule; and restart execution of the rule at the identified binary statement.
-
-
54. Logic for providing inferencing services, the logic embodied on at least one computer readable media and operable when executed to:
-
receive a plurality of rules for a specified domain; identify at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identify at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receive an input value corresponding to the identified preconditions; identify a field as a retractable field; assign a non-retractable value to the retractable field; assign one or more retractable values to the retractable field; retract the retractable field to the non-retractable value; and execute at least a portion of the rules using the input value to generate an output value, the output value corresponding to the identified postconditions, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed.
-
-
55. Logic for providing inferencing services, the logic embodied on at least one computer readable media and operable when executed to:
-
receive a plurality of rules for a specified domain; identify at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identify at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receive an input value corresponding to the identified preconditions; execute at least a portion of the rules using the input value to generate an output value, the output value corresponding to the identified postconditions, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed; receive a second input value using a first communication handler after execution of the rules begins; and communicate the output value using a second communication handler before execution of the rules ends.
-
-
56. Logic for providing inferencing services, the logic embodied on at least one computer readable media and operable when executed to:
-
receive a plurality of rules for a specified domain; receive information identifying a first field; identify a first rule that assigned a final value to the first field; identify a second field that caused the first rule to fire; identify a second rule that assigned a final value to the second field; identify at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identify at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receive an input value corresponding to the identified preconditions; and execute at least a portion of the rules using the input value to generate an output value, the output value corresponding to the identified postconditions, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed.
-
-
57. Logic for providing inferencing services, the logic embodied on at least one computer readable media and operable when executed to:
-
receive a plurality of rules for a specified domain; identify at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identify at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receive an input value corresponding to the identified preconditions; execute at least a portion of the rules using the input value to generate an output value by determining whether to fire, fail, or pend a decision tree rule, the output value corresponding to the identified postconditions, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed; and wherein the decision tree rule comprises identifying a binary statement that caused the decision tree rule to pend and the logic is further operable to unpend the decision tree rule and restart execution at the binary statement that caused the decision tree rule to pend.
-
-
58. Logic for providing inferencing services, the logic embodied on at least one computer readable media and operable when executed to:
-
receive a plurality of rules for a specified domain the rules affecting a final-valued field and wherein multiple values may be assigned to the final-valued field; identify at least one precondition associated with the rules, each precondition representing an input used in executing the rules; identify at least one postcondition associated with the rules, each postcondition representing an output from the execution of the rules; receive an input value corresponding to the identified preconditions; and execute at least a portion of the rules using the input value to generate an output value, the output value corresponding to the identified postconditions, wherein executing at least a portion of the rules comprises enforcing monotonic reasoning as the rules are executed.
-
Specification