const double T;
label "fail_sensors" = i=2&s<MIN_SENSORS;
label "fail_actuators" = o=2&a<MIN_ACTUATORS;
label "fail_io" = count=MAX_COUNT+1;
label "fail_main" = m=0;
label "down" = (i=2&s<MIN_SENSORS)|(count=MAX_COUNT+1)|(o=2&a<MIN_ACTUATORS)|(m=0);
label "danger" = !down & (i=1 | o=1);
label "up" = !down & !danger;
P=? [ true U<=T*3600 "down" ]
P=? [ !"down" U<=T*3600 "fail_sensors" ]
P=? [ !"down" U<=T*3600 "fail_actuators" ]
P=? [ !"down" U<=T*3600 "fail_io" ]
P=? [ !"down" U<=T*3600 "fail_main" ]
P=? [ !"down" U<=T*3600*24 "fail_sensors" ]
P=? [ !"down" U<=T*3600*24 "fail_actuators" ]
P=? [ !"down" U<=T*3600*24 "fail_io" ]
P=? [ !"down" U<=T*3600*24 "fail_main" ]
P=? [ true U<=T*3600*24 "down" ]
P=? [ !"down" U "fail_sensors" ]
P=? [ !"down" U "fail_actuators" ]
P=? [ !"down" U "fail_io" ]
P=? [ !"down" U "fail_main" ]
R{"up"}=? [ C<=T*3600 ]
R{"danger"}=? [ C<=T*3600 ]
R{"down"}=? [ C<=T*3600 ]
R{"up"}=? [ F "down" ]
R{"danger"}=? [ F "down" ]