There are a large number of possible errors that could be overlooked and cause a simulator to produce incorrect results . Our first priority should be to ensure the correctness of our results Avoiding Duplication . Avoiding duplication means writing less code. It is easy to forget to update all copies of duplicated code. The resulting inconsistency makes it very hard to assess the correctness of results. .
Assertions represent formal constraints on the behavior of software systems .
They have been recognized as a powerful tool for the detection of runtime faults . More recently as a permanent defensive mechanism . In practice, assertions often help catch errors at their source, rather than later on when effects of the errors show up . Redundant and Reverse Algorithms . The conversion from the pole zero format to the weights can be reversed. .