def without(remove)
      r = remove.is_a?(Array) ? remove : [remove]
      obj = dup
      r.each { |fact| obj.remove_fact_from_list(fact) }
      obj
    end
def without(remove)
      r = remove.is_a?(Array) ? remove : [remove]
      obj = dup
      r.each { |fact| obj.remove_fact_from_list(fact) }
      obj
    end
Facts - remove one or more facts from the list.
 @param remove [String|Array<String>] Fact(s) to remove
 @return self