% % Synapse N+1 - DMC Code [Delzanno 2003] % Nov 12, 2007 :-dynamic r/4. :-dynamic info/4. info(1,[p],4,[i,v,d]). r(init,p(s_s,I,V,D),{I>=0,V=0,D=0},1). %initial state r(p(s_s,I,V,D),p(s_s,I,V,D),{I>=0,V>=0,D>=1},2). %rh1 r(p(s_s,I,V,D),p(s_s,I,V,D),{I>=0,V>=1,D>=0},3). %rh2 r(p(s_s,I,V,D),p(s_s,I1,V1,D1), {I>=1,D>=0,V>=0,I1=I+D-1,V1=V+1,D1=0},4). %rm r(p(s_s,I,V,D),p(s_s,I,V,D),{I>=0,V>=0,D>=1},5). %wh1 r(p(s_s,I,V,D),p(s_s,I1,V1,D1), {V>=1,I>=0,D>=0,I1=I+D+V-1,V1=0,D1=1},6). %wh2 r(p(s_s,I,V,D),p(s_s,I1,V1,D1), {I>=1,V>=0,D>=0,I1=I+D+V-1,V1=0,D1=1},7). %wm %unsafe12 prop(unsafe,p:s * (i>=0) * (v>=1) * (d>=1) + p:s * (i>=0) * (v>=0) * (d>=2) ).