An experimental evaluation of the assumption of independence in multiversion programming
IEEE Transactions on Software Engineering
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The Byzantine Generals Problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fault Tolerance: Principles and Practice
Fault Tolerance: Principles and Practice
The Use of Self Checks and Voting in Software Error Detection: An Empirical Study
IEEE Transactions on Software Engineering
Analysis of Faults in an N-Version Software Experiment
IEEE Transactions on Software Engineering
An Empirical Comparison of Software Fault Tolerance and Fault Elimination
IEEE Transactions on Software Engineering
Annals of Software Engineering
Middleware Support for Voting and Data Fusion
DSN '01 Proceedings of the 2001 International Conference on Dependable Systems and Networks (formerly: FTCS)
Safety and Software Intensive Systems: Challenges Old and New
FOSE '07 2007 Future of Software Engineering
Software fault tolerance: an overview
Ada-Europe'03 Proceedings of the 8th Ada-Europe international conference on Reliable software technologies
Proceedings of the 4th international conference on Security of information and networks
Hi-index | 0.00 |
The authors have identified a difficulty in the implementation of N-version programming. The problem, called the consistent comparison problem, arises for applications in which decisions are based on the results of comparing finite-precision numbers. It is shown that when versions make comparisons involving the results of finite-precision calculations, it is impossible to guarantee the consistency of their results. It is therefore possible that correct versions may arrive at completely different outputs for an application that does not apparently have multiple correct solutions. If this problem is not dealt with explicitly, an N-version system may be unable to reach consensus even when none of its component versions falls.