In many situations humans have to reason with inconsistent knowledge. These inconsistencies may occur due to not fully reliable sources of information. In order to reason with inconsistent knowledge, it is not possible to view a set of premisses as absolute truths as is done in predicate logic. Viewing the set of premisses as a set of assumptions, however, it is possible to deduce useful conclusions from an inconsistent set of premisses. In this paper a logic for reasoning with inconsistent knowledge is described. This logic is a generalization of the work of rescher . In the logic a reliability relation is used to choose between incompatible assumptions. These choices are only made when a contradiction is derived. As long as no contradiction is derived, the knowledge is assumed to be consistent. This makes it possible to define an executable deduction process for the logic. For the logic a semantics based on the ideas of shoham [14,15] is defined. It turns out that the semantics for the logic is a preferential semantics according to the definition of kraus, lehmann and magidor . Therefore the logic is a logic of system p and possesses all the properties of an ideal nonmonotonic logic.