title: Understanding candidate elimination algorithm
body: <p>I am trying to get to grips with how to do the candidate elimination algorithm by hand. I know the answer, but I dont the steps on how to get there. Can anyone guide me or point me in the right direction. Here is the question that I am working on:</p>
  
  <pre><code>Consider a concept description language with three attributes predened as follows:
  
  attribute1      attribute2       attribute3
  ----------      ------------     ------------
  |        |      |    |     |     |          |
  a        b      c    d     e     f          g
  
  Demonstrate version space learning using the following positive and negative training     examples:
  
  1. ( a c f ) +)
  2. ( b c f ) +)
  3. ( a e g ) -)
  4. ( a c g ) -)
  5. ( b d f ) -)
  
  Show how the candidate elimination algorithm changes the boundary sets after
  processing each example.
  </code></pre>
  
  <p>This is what I have so far:</p>
  
  <pre><code>1. ( a c f ) +) Generalize..
  G:(???)
  S:(acf)
  
  2. ( b c f ) +) Generalize...
  G:(a??), (?e?), (?d?), (??g) - Not even sure if this is correct
  S:(?cf)
  </code></pre>
  
  <p>Can someone guide me or give me advice please? Thanks</p>