Automated Synthesis of Multitolerance

  • Authors:
  • Sandeep S. Kulkarni;Ali Ebnenasir

  • Affiliations:
  • Michigan State University, East Lansing;Michigan State University, East Lansing

  • Venue:
  • DSN '04 Proceedings of the 2004 International Conference on Dependable Systems and Networks
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

We concentrate on automated synthesis of multitolerant programs,i.e., programs that tolerate multiple classes of faultsand provide a (possibly) different level of fault-tolerance toeach class. We consider three levels of fault-tolerance: (1)failsafe, where in the presence of faults, the synthesized programguarantees safety, (2) nonmasking, where in the presenceof faults, the synthesized program recovers to states fromwhere its safety and liveness are satisfied, and (3) maskingwhere in the presence of faults the synthesized program satisfiessafety and recovers to states from where its safety andliveness are satisfied.We focus on the automated synthesis of finite-state multitolerantprograms in high atomicity model where the programcan read and write all its variables in an atomic step. Weshow that if one needs to add failsafe (respectively, nonmasking)fault-tolerance to one class of faults and masking fault-toleranceto another class of faults then such addition canbe done in polynomial time in the state space of the fault-intolerantprogram. However, if one needs to add failsafefault-tolerance to one class of faults and nonmasking fault-toleranceto another class of faults then the resulting problemis NP-complete. We find this result to be counterintuitivesince adding failsafe and nonmasking fault-tolerance to thesame class of faults (which is equivalent to adding maskingfault-tolerance to that class of faults) can be done in polynomialtime, whereas adding failsafe fault-tolerance to oneclass of faults and nonmasking fault-tolerance to a differentclass of faults is NP-complete.