ically reducing error conditions, lend themselves well to convergence envelope techniques. In other problems it is difficult to establish bounds on the convergence rate and, although tests to assure that positive progress towards convergence exists, the determination of sufficient progress may not be possible, and timeout using upper bounds may be all that you can do. The feasibility predicate implies constraints which are apparent from the nature of the problem on which the processor is operating. Contained within this notion is the property of boundary conditions as constraints from which to generate a good predicate; testable results must be within the solution space of the problem as defined by the boundary conditions. Certain problems have boundary conditions which are known a priori; they do not vary as the solution progresses, and may be readily used in error detection. For some problems the feasibility constraints may be SO loose as to be virtually of no use at all; the problem simply contains insufficient natural constraints from which to generate a good predicate. Consistency conditions imply the ability to infer validity in intermediate or final results from input variables and previous intermediate or final process results. This is usually the case in black box testing in which the internal details of process and implementation are not known, but consistency of results can be discerned at an individual process step based upon previous process steps, or previous executions of the entire process block. Consistency tests are a powerful technique; entire constraint predicates have been developed using only consistency conditions. 6.5.2 Algorithm Based Fault Tolerant (ABFT) [Blaquiere95] One specialized utilization of information redundancy is algorithm based fault tolerance (ABFT). In this approach, some attribute of the function being performed is exploited with the use of information or time redundancy to achieve error detection, correction, or recovery. Adding fault tolerance provisions to a particular