Rule-based inference 

The rule-based engine draws legal consequences by applying forward rea-
soning to legal rules. As there are many legal rules, a fast rule-based engine 
is needed. Moreover, legal rules sometimes have exceptional rules, the rule-
based engine has to include some mechanism to handle nonmonotonic reason-
ing. The rule-based engine is based on the parallel theorem prover MGTP 
(Model Generation Theorem Prover). Given a set of non-Horn clauses, MGTP 
generates models which satisfy all input clauses by parallel inference. To use 
MGTP as a rule-based engine for legal rules, and to obtain high performance 
by the pipeline effect, we added the following extended functions to the orig-
inal MGTP. 
  1. Realization of "negation as failure": Legal rules contain two types of negations (logical negation and negation as failure). As the original MGTP could treat only logical negation, we enabled the new MGTP to treat negation as failure.
  2. Realization of the multiple context: The rule-based engine uses both original facts (a new case) and results from the case-based engine as its initial model. The case-based engine may generate data which conflicts with each other, such as the opinions of plaintiffs and defendants. Therefore, we developed a function to split the model when such predicates reach the rule-based engine so that models don't contain conflict.
Case-based inference A judicial precedent (old case) consists of the arguments of both sides, the opinion of the judges and a final conclusion. We represent an old case as a situation and some case rules. A situation contains information on the occur- rences of the case and represents a set of events/objects and their temporal relations. Arguments by both sides are represented as a set of case rules. The case-based engine generates legal concepts by referring to similar old cases. In the first stage, the engine searches for similar cases from the case base. In the second stage, new arguments are constructed by applying the case rules of selected cases to the new case. Each case rule is fired by similarity based matching. - 91 -