/// <summary>
 /// Negates the specified criteria
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="criteria"></param>
 /// <returns></returns>
 public static ICriteria <T> NOT <T>(ICriteria <T> criteria)
 {
     return(new Criteria <T>(p =>
     {
         return !criteria.IsMet(p);
     }, string.Format("NOT({0})", criteria.Description)));
 }