Apparatus and method for data processing and/or for control
First Claim
1. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, said abducer being operable to define in said record facts or other statements whose presence in the knowledge base has been relied upon in said reasoning operations and to prohibit hypothesized or actual removal from said knowledge base of said defined facts or other statements during subsequent processing.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer implemented abductive reasoner checks for contradictions in the reasoning operations during processing and determines subsequent processing dependent upon the results of the checking. Constraints on variables may be imposed to permit proofs to be pursued which otherwise would involve contradictions. Different types of abductive reasoning step may be assigned different costs and proofs or future processing steps selected dependent upon the costing. Alternatively or in addition, reasoning operations and the resulting proofs, if any, may be grouped according to the types of reasoning steps involved and provision may be included for pursuing operations involving less costly reasoning steps in preference or prior to operations which may be more costly. Where successive goals are to be proved, the proof of each successive goal may be performed by reference to hypotheses established in proofs of previous goals. In applications involving the production of control signals, commands defining required control signals may be provided in the form of premises in rules contained in a knowledge base with which the abducer operates and means may be provided for outputting said commands and converting them to the required control signals.
23 Citations
67 Claims
-
1. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, said abducer being operable to define in said record facts or other statements whose presence in the knowledge base has been relied upon in said reasoning operations and to prohibit hypothesized or actual removal from said knowledge base of said defined facts or other statements during subsequent processing.
- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
37. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform deductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide in said memory means a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, said abducer being operable to define in said record facts whose unprovability has been relied upon in said reasoning operations and to prohibit abductive addition to said knowledge base of said defined unprovable facts during subsequent processing.
-
38. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing,
wherein, upon detection of a contradiction in a partially completed reasoning operation, processing of said partially completed reasoning operation is terminated or suspended, and wherein said abducer is operable to perform said abductive reasoning operations by a process which includes a plurality of choice points from each of which processing may continue along any of a number of processing paths, and wherein upon a said termination or suspension of a reasoning operation, processing backtracks to a previous choice point and continues from said choice point along a processing path not previously used in said reasoning operation.
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing,
-
39. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesised changes in the knowledge base, wherein said abducer is operable to test for predetermined contradictions during said reasoning operation and, upon detection of a said predetermined contradiction in a partially completed reasoning operation, to determine whether processing of said partially completed reasoning operation may continue without contradiction by constraining variables in said data and/or in said goals, and to continue said processing with constraints on said variables to avoid said contradictions.
- View Dependent Claims (40)
-
41. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation,
wherein said abducer is operable to calculate the cumulative cost of the reasoning operation at intervals during said reasoning operation, and wherein said abducer is operable at each said interval to compare the cumulative cost of the partially completed reasoning operation currently being processed to the cumulative cost of the least costly of any previously completed reasoning operations, and to terminate or suspend said partially completed reasoning operation if its cumulative cost has reached the cumulative cost of said least costly of said previously completed reasoning operations. - View Dependent Claims (42, 43)
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation,
-
44. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesised changes in the knowledge base, wherein said abducer is operable, when performing reasoning operations involving said second reasoning steps;
(a) to pursue in a first phase reasoning operations wherein hypothesised changes consisting of adding facts are permitted but hypothesised changes consisting of removing facts or rules are not permitted, said first phase comprising a plurality of sub-phases in each of which reasoning operations involving only said first reasoning steps are first permitted and thereafter hypothesised changes consisting of adding facts are permitted but removing facts and rules is not permitted; (b) thereafter to pursue in a second phase reasoning operations wherein hypothesised changes consisting of adding facts and removing facts are permitted but hypothesised changes consisting of removing rules are not permitted, said second phase comprising a plurality of sub-phases in each of which, firstly, reasoning operations involving only said first reasoning steps are permitted, then, hypothesised changes consisting of adding facts are permitted but removing facts and rules is not permitted, and thereafter hypothesised changes consisting of adding facts and removing facts are permitted but removing rules is not permitted; and (c) subsequently to pursue in a third phase reasoning operations wherein hypothesised changes consisting of adding and removing facts and removing rules are permitted, said third phase comprising a plurality of sub-phases in each of which, firstly, reasoning operations involving only said first reasoning steps are permitted, then hypothesised changes involving the addition of facts are permitted but removing facts and rules is not permitted, thereafter hypothesised changes involving the addition or removal of facts are permitted but the removal of rules is not permitted, and subsequently hypothesised changes involving adding and removing facts and removing rules are permitted.
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesised changes in the knowledge base, wherein said abducer is operable, when performing reasoning operations involving said second reasoning steps;
-
45. Apparatus for producing control signals relating to a predetermined process or system, comprising:
-
(a) input means for receiving input signals from said process or system and for converting said signals into goals; (b) data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and rules relating to said process or system, and an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) output means arranged to receive from said data processing apparatus said output data and operable to convert said commands to said control signals, wherein said input means comprises a look-up table containing a list of goals which may be supplied to the data processing apparatus, said input means being operable to apply said input signals to said look-up table to obtain therefrom a corresponding goal. - View Dependent Claims (46, 47, 48)
-
-
49. Apparatus for producing control signals relating to a predetermined process or system, comprising:
-
(a) input means for receiving input signals from said process or system and for converting said signals into goals; (b) data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and rules relating to said process or system, and an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) output means arranged to receive from said data processing apparatus said output data and operable to convert said commands to said control signals, wherein said output means comprises a look-up table defining control signals to be output dependent upon the output data from said data processing apparatus, said output means being operable to apply said output data to said look-up table for obtaining said control signals.
-
-
50. Apparatus for producing control signals relating to a predetermined process or system, in combination with a machine controlled thereby, said apparatus comprising:
-
(a) input means for receiving input signals from said process or system and for converting said signals into goals; (b) data processing apparatus comprising means for storing a knowledge base containing base defining a plurality of facts and rules relating to said process or system, and an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) output means arranged to receive from said data processing apparatus said output data and operable to convert said commands to said control signals, and said machine including means for generating signals indicative of the status of at least a part or parts thereof and supplying said signals to said input means for conversion to goals, and control means arranged to receive said control signals from said control signal generating apparatus and operable to control said machine in accordance with said control signals.
-
-
51. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein, upon detection of a contradiction in a partially completed reasoning operation, processing of said partially completed reasoning operation is terminated or suspended.
-
52. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein, upon detection of a contradiction in a partially completed reasoning operation, said abducer is operable to determine whether processing of said partially completed reasoning operation may continue without contradiction by constraining variables in said data and/or in said goals, and to continue said processing with constraints on said variables to avoid said contradictions.
-
53. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation, wherein said abducer is operable to calculate the cumulative cost of the reasoning operation at intervals during said reasoning operation, and
wherein said abducer is operable at each said interval to compare the cumulative cost of the partially completed reasoning operation currently being processed to the cumulative cost of the least costly of any previously completed reasoning operations, and to terminate or suspend said partially completed reasoning operation if its cumulative cost has reached the cumulative cost of said least costly of said previously completed reasoning operations.
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation, wherein said abducer is operable to calculate the cumulative cost of the reasoning operation at intervals during said reasoning operation, and
-
54. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to seek said proof of a goal by pursuing reasoning operations involving only said first reasoning steps before seeking a said proof of a goal by pursuing reasoning operations involving said second reasoning steps.
-
55. Data processing apparatus comprising means for storing a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to refer to data identifying non-abduceable facts and in response thereto to avoid providing proofs relying upon said non-abduceable facts.
-
56. A computer-readable memory medium storing instructions for causing a programmable apparatus to store a knowledge base containing data defining a plurality of facts and/or rules;
- and to act as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, said abducer being operable to define in said record facts or other statements whose presence in the knowledge base has been relied upon in said reasoning operations and to prohibit hypothesized or actual removal from said knowledge base of said defined facts or other statements during subsequent processing.
-
57. A computer-readable memory medium storing instructions for causing a programmable apparatus to store a knowledge base containing data defining a plurality of facts and/or rules;
- and to act as an abducer operable to perform deductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide in said memory means a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, said abducer being operable to define in said record facts whose unprovability has been relied upon in said reasoning operations and to prohibit abductive addition to said knowledge base of said defined unprovable facts during subsequent processing.
-
58. A computer-readable memory medium storing instructions for causing a programmable apparatus to store a knowledge base containing data defining a plurality of facts and/or rules;
- and to act as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing,
wherein, upon detection of a contradiction in a partially completed reasoning operation, processing of said partially contemplated reasoning operation is terminated or suspended, and wherein said abducer is operable to perform said abductive reasoning operations by a process which includes a plurality of choice points from each of which processing may continue along any of a number of processing paths, and wherein upon a said termination or suspension of a reasoning operation, processing backtracks to a previous choice point and continues from said choice point along a processing path not previously used in said reasoning operation.
- and to act as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing,
-
59. A computer-readable member memory medium storing instructions for causing a programmable apparatus to store a knowledge base containing data defining a plurality of facts and/or rules;
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation,
wherein said abducer is operable to calculate the cumulative cost of the reasoning operation at intervals during said reasoning operation, and wherein said abducer is operable at each said interval to compare the cumulative cost of the partially completed reasoning operation currently being processed to the cumulative cost of the least costly of any previously completed reasoning operations, and to terminate or suspend said partially completed reasoning operation if its cumulative cost has reached the cumulative cost of said least costly of said previously completed reasoning operations.
- and an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation,
-
60. A computer-readable memory medium storing instructions for causing a programmable apparatus to produce control signals relating to a predetermined process or system, by performing a method comprising the steps of:
-
(a) receiving input signals from said process or system and for converting said signals into goals by referring to a look-up table containing a list of goals; (b) storing a knowledge base containing data defining a plurality of facts and rules relating to said process or system, and acting as an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) receiving said output data and converting said commands to said control signals.
-
-
61. A computer-readable memory medium storing instructions for causing a programmable apparatus to produce control signals relating to a predetermined process or system, and to perform a method comprising the steps of:
-
(a) receiving input signals from said process or system and for converting said signals into goals; (b) storing a knowledge base containing data defining a plurality of facts and rules relating to said process or system, and acting as an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) receiving said output data and operable to convert said commands to said control signals, by applying said output data to a look-up table defining control signals to be output dependent upon the output data.
-
-
62. A computer-readable memory medium storing instructions for causing a programmable apparatus to produce control signals relating to a predetermined process or system, and to perform, in combination with a machine controlled thereby, a method comprising the steps of:
-
(a) receiving input signals from said process or system and for converting said signals into goals; (b) storing a knowledge base containing data defining a plurality of facts and rules relating to said process or system, and acting as an abducer operable to perform abductive reasoning operations for providing a proof of a said goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said rules containing premises in the form of commands defining control signals to be produced and said abducer being operable to provide said commands in output data dependent upon proof of a said goal; and (c) receiving said output data and converting said commands to said control signals, and said machine including means for generating signals indicative of the status of at least a part or parts thereof and supplying said signals for conversion to goals, and control means arranged to receive said control signals and operable to control said machine in accordance with said control signals.
-
-
63. A computer-readable memory medium storing instructions for causing a programmable apparatus to perform a method comprising the steps of:
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
acting as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein, upon detection of a contradiction in a partially completed reasoning operation, processing of said partially completed reasoning operation is terminated or suspended.
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
-
64. A computer-readable memory medium storing instructions for causing a programmable apparatus to perform a method comprising the steps of:
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
acting as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein, upon detection of a contradiction in a partially completed reasoning operation, said abducer is operable to determine whether processing of said partially completed reasoning operation may continue without contradiction by constraining variables in said data and/or in said goals, and to continue said processing with constraints on said variables to avoid said contradictions.
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
-
65. A computer-readable memory medium storing instructions for causing a programmable apparatus to perform a method comprising the steps of:
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
acting as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to assign a cost to said reasoning steps and to determine on the basis of said assigned cost, a total cost for a reasoning operation, wherein said abducer is operable to calculate the cumulative cost of the reasoning operation at intervals during said reasoning operation, andwherein said abducer is operable at each said interval to compare the cumulative cost of the partially completed reasoning operation currently being processed to the cumulative cost of the least costly of any previously completed reasoning operations, and to terminate or suspend said partially completed reasoning operation if its cumulative cost has reached the cumulative cost of said least costly of said previously completed reasoning operations.
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
-
66. A computer-readable memory medium storing instructions for causing a programmable apparatus to perform a method comprising the steps of:
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
acting as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to seek said proof of a goal by pursuing reasoning operations involving only said first reasoning steps before seeking a said proof of a goal by pursuing reasoning operations involving said second reasoning steps.
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
-
67. A computer-readable memory medium storing instructions for causing a programmable apparatus to perform a method comprising the steps of:
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
acting as an abducer operable to perform abductive reasoning operations for providing a proof of a goal, said reasoning operations including first reasoning steps relying upon the data in the knowledge base and second reasoning steps relying upon data representing hypothesized changes in the knowledge base, said abducer being operable to provide a record defining the data relied on in the reasoning steps, to test for contradictions in said reasoning operation utilizing said record, and to determine subsequent processing dependent on the result of the testing, wherein said abducer is operable to refer to data identifying non-abduceable facts and in response thereto to avoid providing proofs relying upon said non-abduceable facts.
- storing a knowledge base containing data defining a plurality of facts and/or rules; and
Specification