In order to play the game of set, a player needs to match up three cards so that for each of the 4 characteristics of the cards (shape, color, number of objects, and shading) the cards are either all the same, or all different. For a human player, the tricky part is finding matches. For the computer, which can simply remember all the attributes and run an exhaustive search rather quickly, the tricky part is figuring out the attributes of the cards.

And here are some screenshots of our code at work.

It got that one right.

And this one. Life is easy when you have a limited number of pictures the code must work for.

And it actually plays Set! properly now, although for a while there were some strange errors.

Although it can't detect matches if there aren't any there.