We propose a Petri net formalism for the verification of rule based systems. Typical structural errors in a rule based system are redundancy, inconsistency, incompleteness, and circularity. Since our verification is based on Petri nets and their incidence matrix, we need to transform rules into a Petri net first, then derive an incidence matrix from the net. In order to allow a rule based system to be immune from the above described structural errors, we have observed that for all columns in the matrix, all positive entries must be above all negative entries; and for all rows in the matrix, all positive entries must be to the right of all negative entries. If this is not the case, the rule based system may commit errors. Based on this concept, we have developed a tool consisting of the following four phases: rule normalization, rule ordering, rule-to-Petri-net transformation, and rule verification. In phase one, we normalize the rules into Horn clauses. We rearrange the ordering of these normalized rules in phase two, then transform the reordered rules into a Petri net and its corresponding incidence matrix in phase three. In phase four, we perform the rule verification based on the incidence matrix.