Como determinar se um tipo implementa um tipo de interface genérica específico

Suponha as seguintes definições de tipo:

public interface IFoo<T> : IBar<T> {}
public class Foo<T> : IFoo<T> {}

Como descubro se o tipoFoo&nbsp;implementa a interface genéricaIBar<T>&nbsp;quando apenas o tipo mutilado está disponível?