Location of checkpoints in fault-tolerant software

Information reduction throughout a program is studied, identifying its impact on the effectiveness of checkpoints. The discussion covers failure masking, function classes that reduce information, the impact of information reduction on failure dependence, information reduction for binary values, and location of checkpoints. The conclusions reported and the strategy suggested are intended to support decision-making during the development of fault-tolerant software by identifying which internal variables or intermediate results should be checked by means of diversity in order to optimize fault-tolerance achievement.<<ETX>>