- Convert to Clausal Form: The first step is to convert the theorem or problem statement into clausal form. Clausal form represents logical formulas as a set of clauses, where each clause is a disjunction (OR) of literals. If the statement is not already in clausal form, it needs to be converted using standard logical equivalences and transformations.
- Negate the Conclusion: To apply resolution refutation, the negation of the theorem or problem conclusion needs to be introduced. This negation is typically done by converting the conclusion into its negated form.
- Create Initial Set of Clauses: Combine the clauses obtained from the clausal form conversion of the original statement with the negated conclusion. This forms the initial set of clauses that will be used in the resolution refutation process.
- Select Two Clauses: Choose any two clauses from the current set of clauses to perform the resolution step. The clauses can be selected randomly or using specific heuristics to improve efficiency.
- Resolve and Generate New Clauses: Apply the resolution rule, which states that if there is a pair of complementary literals (one positive and one negative) in the selected clauses, the literals can be resolved to generate a new clause. The new clause is obtained by taking the union of the remaining literals from both clauses, excluding the complementary literals.
- Add New Clauses: If new clauses are generated from the resolution step, add them to the current set of clauses.
- Repeat Resolution and Clause Addition: Repeat steps 4 to 6, performing resolution and adding new clauses until one of the following conditions is met:
- A contradiction is derived, meaning an empty clause (containing no literals) is obtained. In this case, the resolution refutation is successful, and the theorem or problem is proven.
- No new clauses can be generated, and the resolution process reaches a saturation point. In this case, the theorem or problem is not proven within the given set of clauses.
- Termination and Conclusion: Analyze the final set of clauses obtained after the resolution process. If the set contains an empty clause, it signifies a contradiction and proves the theorem or problem false. If the set does not contain an empty clause, it indicates that the theorem or problem cannot be refuted within the given set of clauses, thus implying its truth.
Resolution refutation provides a systematic and sound method for proving theorems or solving problems using logic-based reasoning. It leverages the power of logical resolution to derive new clauses from existing ones, gradually reducing the problem space until a contradiction is reached or a conclusion is drawn.