Logical_not<T> is a function object; specifically, it is an
Adaptable Predicate, which means it is a function
object that tests the truth or falsehood of some condition.
If f is an object of class logical_not<T>
and x is an object of class T (where T is convertible
to bool) then f(x) returns true if and only if x
is false.
Example
Transforms a vector of bool into its logical complement.