reject (John ?item)
:- And ( perishable(?item)
         delivered(?item ?deliverydate)
         scheduled(?item ?scheduledate)
         timediff(?diffdate ?deliverydate ?scheduledate)
         greaterThan(?diffdate 10)
       )

special (?author)
:- Or ( And ( Exists ?buyer (purchase(?buyer
                                      ?seller
                                      book(?author
                                      LeRif)
                              49))
              ?seller = ?author
            )
        And ( ?seller = Rifle
              Forall ?buyer (Neg ?buyer = ?author)
            )
      )
