In logic, sufficiency defines a relationship between two logical statements in which knowing that one statement is true is enough to conclude that the other statement is true as well. If we say that “*p* is sufficient for *q*,” we mean that knowing that statement *p* is true is enough to say that statement *q* is, too. Note, however, that *q* can be true even if *p* is false. We can write this as an implication: *p*→*q*.

As an example, consider the statement “Being an ape is sufficient for being a mammal.” In other words being an ape implies being a mammal, but something can be a mammal without being an ape, *a*→*m*.