# Lesson 16 - Module 6 Knowledge Representation and...

This preview shows pages 1–5. Sign up to view the full content.

Module 6 Knowledge Representation and Logic – (First Order Logic) Version 1 CSE IIT, Kharagpur

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Lesson 16 Inference in FOL - II Version 1 CSE IIT, Kharagpur
6.2.9 Proof as Search Up to now we have exhibited proofs as if they were found miraculously. We gave formulae and showed proofs of the intended results. We did not exhibit how the proofs were derived. We now examine how proofs can actually be found. In so doing we stress the close ties between theorem proving and search. A General Proof Procedure We use binary resolution [we represent clauses as sets] and we represent the proof as a tree, the Proof Tree . In this tree nodes represent clauses. We start with two disjoint sets of clauses INITIAL and OTHERS. 1. We create a node START and introduce a hyperarc from START to new nodes, each representing a distinct element of INITIAL. We put in a set OPEN all these new nodes. These nodes are called AND Nodes . 2. If OPEN is empty, we terminate. Otherwise we remove an element N from OPEN using a selection function SELECT. 3. If N is an AND node, we connect N with a single hyperarc to new nodes N1 ... Nm, one for each literal in the clause C represented at N. These nodes are also labeled with C and are called OR Nodes . All of these nodes are placed into OPEN. [NOTE 1: In the case that C consists of a single literal, we can just say that N is now an OR node.] [NOTE 2: One may decide not to create all the nodes N1 .. Nm in a single action and instead to choose one of the literals of C and to create a node Ni to represent C with this choice of literal. Ni is inserted into OPEN. N also goes back into OPEN if not all of its literals have been considered. The rule used to choose the literal in C is called a Selection Rule ] Repeat from 2. 4. If N is an OR node, say, corresponding to the ith literal of a clause C, we consider all the possible ways of applying binary resolution between C and clauses from the set OTHERS, resolving on the ith literal of C. Let D1 .. Dp be the resulting clauses. We represent each of these clauses Dj by an AND node N(Dj) as in 1. above. We put an arc from N to N(Dj). We set OPEN to NEXT-OPEN(OPEN, C, {D1, .., Dp}). We set OTHERS to NEXT- OTHERS(OTHERS, C, {D1, .., Dp}). If in the proof tree we have, starting at START, a hyperpath (i.e. a path that may include hyperarcs) whose leaves have all label {}, we terminate with success. Version 1 CSE IIT, Kharagpur

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document