Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
207 words
A method for coalescing changes to objects in a working memory, the method being invoked prior to processing said changes through a matching structure used in conflict set resolution, said resolution occurring during the recognize-act cycle of a rule-based, artificial intelligence production system, said system including a rule set and an inference engine cooperating with said rule set and working memory for executing a succession of recognize-act cycles, each rule having pattern indication and action specifying parts thereof, the action specifying part of a rule including procedures for effecting changes to said objects, said method comprising the steps of: responsive to a first change to an object resulting from execution of a first rule, creating a control block (CB) internal to the inference engine and recording said first change in the created CB; enqueueing said CB in a queue; in the event of a second change to said object subsequent to said first change and prior to the selection of the next rule following said first rule, maintaining said CB unaltered in said queue, without passing either said first or said second changes through said matching mechanism; and upon completing said execution of said first rule, passing the change recorded in said CB through said matching mechanism.
Claim 2
Independent Claim
207 words
A method for coalescing changes to objects in a working memory, the method being invoked prior to processing said changes through a matching structure used in conflict set resolution, said resolution occurring during the recognize-act cycle of a rule-based, artificial intelligence production system, said system including a rule set and an inference engine cooperating with said rule set and working memory for executing a succession of recognize-act cycles, each rule having pattern indication and action specifying parts thereof, the action specifying part of a rule including procedures for effecting changes to said objects, said method comprising the steps of: responsive to a first change to an object resulting from execution of a first rule, creating a control block (CB) internal to the inference engine and recording said first change in the created CB; enqueueing said CB in a queue; in the event of a second change to said object subsequent to said first change and prior to the selection of the next rule following said first rule, maintaining said CB unaltered in said queue, without passing either said first or said second changes through said matching mechanism; and upon completing said execution of said first rule, passing the change recorded in said CB through said matching mechanism.
Claim 3
Dependent Claim
26 words
The method of claim 1, wherein said first change is a creation of said object, said enqueueing step including enqueueing said CB in a make queue.
Claim 4
Dependent Claim
26 words
The method of claim 1, wherein said first change is an update of said object, said enqueueing step including enqueueing said CB in an update queue.
Claim 5
Dependent Claim
21 words
The method of claim 1 wherein said enqueueing step includes enqueueing said CB in either a make or an update queue.
Claim 6
Dependent Claim
64 words
The method of claim 4, further including the steps of: responsive to said passing step, enqueueing said CB in a changed queue; and, then, upon selection of a second rule following said first rule, recording a third change to said object occurring before selection of the next rule following said second rule by moving said CB from said changed queue to said update queue.
Claim 7
Dependent Claim
79 words
The method of claim 5 further including the step of: in the event of a fourth change to said object subsequent to said third change and prior to the selection of the next rule following said second rule, maintaining said CB unaltered in said update queue, without passing either said first or said second changes through said matching mechanism; and upon completing said execution of said second rule, passing the change recorded in said CB through said matching mechanism.
Claim 8
Independent Claim
347 words
A method for coalescing changes to objects in a working memory, the method being invoked prior to processing said changes through a matching structure used in conflict set resolution, said resolution occuring during the recognize-act cycle of a rule-based, artificial intelligence, production system, said system including a rule set and an inference engine cooperating with said rule set and working memory for executing a succession of recognize-act cycles, each rule having a pattern indication and an action specifying part, the action specifying part of the rule including procedures for making changes to said objects, said method including the steps of: creating a first queue for a production system calling routine, and selecting and executing a first rule during said calling routine; in an action-specifiying part of said first rule, calling and executing a rule-driven, production system subroutine including a subroutine rule set, a subroutine working memory with working memory objects which said subroutine cares about, and a subroutine matching structure used in subroutine conflict set resolution; creating a second queue for said subroutine; responsive to a first change to an object in said subroutine working memory resulting from execution of a rule in said subroutine working set, creating a first control block (CB) for said object and recording said first change in said CB; enqueueing said first CB in said second queue; in the event of a second change to said object occurring during the execution of said rule of said subroutine working set, maintaining said first CB unaltered in said second queue, without passing either said first or said second change through said subroutine matching structure; upon completing said execution of said rule in said subroutine rule set, passing said first and second changes through said subroutine matching mechanism in response to said CB; and after return to said calling routine: if said calling routine cares about said object, moving said first CB to said first queue if said first queue contains no second CB for said object, and passing said first and second changes through said matching structure; otherwise, dequeueing and destroying said first CB.
Claim 9
Independent Claim
347 words
A method for coalescing changes to objects in a working memory, the method being invoked prior to processing said changes through a matching structure used in conflict set resolution, said resolution occuring during the recognize-act cycle of a rule-based, artificial intelligence, production system, said system including a rule set and an inference engine cooperating with said rule set and working memory for executing a succession of recognize-act cycles, each rule having a pattern indication and an action specifying part, the action specifying part of the rule including procedures for making changes to said objects, said method including the steps of: creating a first queue for a production system calling routine, and selecting and executing a first rule during said calling routine; in an action-specifiying part of said first rule, calling and executing a rule-driven, production system subroutine including a subroutine rule set, a subroutine working memory with working memory objects which said subroutine cares about, and a subroutine matching structure used in subroutine conflict set resolution; creating a second queue for said subroutine; responsive to a first change to an object in said subroutine working memory resulting from execution of a rule in said subroutine working set, creating a first control block (CB) for said object and recording said first change in said CB; enqueueing said first CB in said second queue; in the event of a second change to said object occurring during the execution of said rule of said subroutine working set, maintaining said first CB unaltered in said second queue, without passing either said first or said second change through said subroutine matching structure; upon completing said execution of said rule in said subroutine rule set, passing said first and second changes through said subroutine matching mechanism in response to said CB; and after return to said calling routine: if said calling routine cares about said object, moving said first CB to said first queue if said first queue contains no second CB for said object, and passing said first and second changes through said matching structure; otherwise, dequeueing and destroying said first CB.
Claim 10
Dependent Claim
65 words
The method of claim 7, further including the step of creating a third queue for said calling routine, and if said first queue includes a second CB for said object, moving said second CB from said first to said third queue and passing said first and second changes through said matching structure in response to the inclusion of said second CB in said third queue.