-- Job shop scheduling problem -- non interrupted scheduling var j1m1, j1m2, j1m3, j1m4, j2m1, j2m2, j2m3, j2m4; define j1flow as ([!j1m1 && !j1m2 && !j1m3 && !j1m4] || pt)^ ([!j1m1 && !j1m2 && j1m3 && !j1m4] && slen=12)^ ([!j1m1 && !j1m2 && !j1m3 && !j1m4] || pt)^ ([j1m1 && !j1m2 && !j1m3 && !j1m4] && slen=3)^ ([!j1m1 && !j1m2 && !j1m3 && !j1m4] || pt)^ ([!j1m1 && j1m2 && !j1m3 && !j1m4] && slen=6)^ ([!j1m1 && !j1m2 && !j1m3 && !j1m4] || pt)^ ([!j1m1 && !j1m2 && !j1m3 && j1m4] && slen=7)^ ([[!j1m1 && !j1m2 && !j1m3 && !j1m4]]) ; define j2flow as ([!j2m1 && !j2m2 && !j2m3 && !j2m4] || pt)^ ([!j2m1 && j2m2 && !j2m3 && !j2m4] && slen=3)^ ([!j2m1 && !j2m2 && !j2m3 && !j2m4] || pt)^ ([!j2m1 && !j2m2 && j2m3 && !j2m4] && slen=5)^ ([!j2m1 && !j2m2 && !j2m3 && !j2m4] || pt)^ ([j2m1 && !j2m2 && !j2m3 && !j2m4] && slen=10)^ ([!j2m1 && !j2m2 && !j2m3 && !j2m4] || pt)^ ([!j2m1 && !j2m2 && !j2m3 && j2m4] && slen=4)^ ([[!j2m1 && !j2m2 && !j2m3 && !j2m4]]) ; define mutexjobs as [[ !( (j1m1 && j2m1) || (j1m2 && j2m2) || (j1m3 && j2m3) || (j1m4 && j2m4)) ]] ; infer (j1flow) && mutexjobs && (j2flow) .