Course Home | Assignments | Schedule | Submit

Saint Louis University

Computer Science 462
Artificial Intelligence

Michael Goldwasser

Spring 2010

Dept. of Math & Computer Science

Assignment 06

Logic


Overview

Topic: Logic
Related Reading: Ch. 7
Due: Monday, 19 April 2010, 12:01pm
Wednesday, 21 April 2010, 12:01pm

Please make sure you adhere to the policies on academic integrity.


Problems to be Submitted (50 points)

  1. (20 points)

    A propositional 2-CNF expression is a conjunction of clauses, each containing exactly 2 literals, e.g.,

    (A ∨ B) ∧ (¬A ∨ C) ∧ (¬B ∨ D) ∧ (¬C ∨ G) ∧ (¬D ∨ G)
    	
    1. Prove, using resolution, that the above sentence entails G.
    2. Two clauses are semantically distinct if they are not logically equivalent. How many semantically distinct 2-CNF clauses can be constructed from n proposition symbols?
    3. Using your answer to (b), prove that propositional resolution always terminates in time polynomial in n given a 2-CNF sentence containing no more than n distinct symbols.
    4. Explain why your argument in (c) does not apply to 3-CNF
  2. (30 points)

    A sentence is in disjunctive normal form (DNF) if it is the disjunction of conjunctions of literals. For example, the sentence

    	(A ∧ B ∧ ¬C) ∨ (¬A ∧ C) ∨ (B ∧ ¬C)
    	
    is in DNF.
    1. Any propositional logic sentence is logically equivalent to the assertion that some possible world in which it would be true is in fact the case. From this observation, prove that any sentence can be written in DNF
    2. Construct an algorithm that converts any sentence in propositional logic into DNF (Hint: The algorithm is similar to the algorithm for conversion to CNF)
    3. Construct a simple example algorithm that takes as input a sentence in DNF and returns a satisfying assignment if one exists, or reports that no satisfying assignment exists.
    4. Apply the algorithms in (b) and (c) to the following set of sentences:
      A ⇒ B
      B ⇒ C	    
      C ⇒ ¬A
      
    5. Since the algorithm in (b) is very similar to the algorithm for conversion to CNF, and since the algorithm in (c) is much simpler than any algorithm for solving a set of sentences in CNF, why is this technique not used in automated reasoning?

    Michael Goldwasser
    CSCI 462, Spring 2010
    Last modified: Sunday, 02 May 2010
    Course Home | Assignments | Schedule | Submit