Learning using  decision trees
Without looking at specifics, growing a tree using information gain is a greedy procedure and won't always get you to the smallest tree consistent with the data, even if one exists.  If there are ties among attributes, you break them arbitrarily.