% % FIREFLY - DMC Code % :-dynamic r/4. :-dynamic info/4. info(1,[p],4,[i,d,s,e]). r(init,p(s_s,I,D,S,E),{I>=1,D=0,S=0,E=0},1). r(p(s_s,I,D,S,E),p(s_s,I,D,S,E), {I>=0,D>=0,S>=0,E>=0, D+S+E>=1},2). r(p(s_s,I,D,S,E),p(s_s,I1,D,S,E1), {I>=1,D=0,S=0,E=0,I1=I-1,E1=E+1},3). r(p(s_s,I,D,S,E),p(s_s,I1,D1,S1,E), {I>=1,D>=1,S>=0,E>=0,I1=I-1,D1=D-1,S1=S+2},4). r(p(s_s,I,D,S,E),p(s_s,I1,D,S1,E1), {I>=1,S>=0,D>=0,E>=0, S+E>=1, I1=I-1,S1=S+E+1,E1=0},5). r(p(s_s,I,D,S,E),p(s_s,I,D,S,E), {I>=0,D>=1,S>=0,E>=0},6). r(p(s_s,I,D,S,E),p(s_s,I,D1,S,E1), {I>=0,D>=0,S>=0,E>=1, D1=D+1,E1=E-1},7). r(p(s_s,I,D,S,E),p(s_s,I,D,S1,E1), {I>=0,D>=0,S=1,E>=0, E1=E+1,S1=S-1},8). r(p(s_s,I,D,S,E),p(s_s,I,D,S,E), {I>=0,D>=0,S>=2,E>=0},9). r(p(s_s,I,D,S,E),p(s_s,I1,D1,S,E), {I>=1,D=0,S=0,E=0, I1=I-1,D1=D+1},10). r(p(s_s,I,D,S,E),p(s_s,I1,D1,S1,E), {I>=1,D>=1,S>=0,E>=0, I1=I-1,D1=D-1, S1=S+2},11). r(p(s_s,I,D,S,E),p(s_s,I1,D,S1,E1), {I>=1,D>=0,S>=0,E>=0, S+E>=1, I1=I-1,S1=S+E+1,E1=0},12). r(p(s_s,I,D,S,E),p(s_s,I1,D1,S,E), {I>=0,D>=1,S>=0,E>=0,I1=I+1,D1=D-1},13). r(p(s_s,I,D,S,E),p(s_s,I1,D,S1,E), {I>=0,D>=0,S>=1,E>=0,I1=I+1,S1=S-1},14). r(p(s_s,I,D,S,E),p(s_s,I1,D,S,E1), {I>=0,D>=0,S>=0,E>=1,I1=I+1,E1=E-1},15). prop(unsafe,p:s * (s>=1) * (i>=0) * (d>=1) * (e>=0)). %prop(unsafe,p:s * (s>=0) * (i>=0) * (d>=2) * (e>=0)).