code: def compatible(self, a, b):
          
          return len(set([a] + self.descendants(a))
                     .intersection([b] + self.descendants(b))) > 0
docs: Return `True` if type *a* is compatible with type *b*.