# Contravariant Functor
A contravariant functor is a type `E<a>` that has an operator `contramap` with the following signature:
```
contramap : E<b> -> f : (a -> b) -> E<a>
```
A .NET `Predicate<T>` is a contravariant functor.
For a regular functors see [[Covariant Functor|Covariant Functor]].