- : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] a__natsFrom(N) -> cons(mark(N),natsFrom(s(N))) [2] a__fst(pair(XS,YS)) -> mark(XS) [3] a__snd(pair(XS,YS)) -> mark(YS) [4] a__splitAt(0,XS) -> pair(nil,mark(XS)) [5] a__splitAt(s(N),cons(X,XS)) -> a__u(a__splitAt(mark(N),mark(XS)),N,X,XS) [6] a__u(pair(YS,ZS),N,X,XS) -> pair(cons(mark(X),YS),mark(ZS)) [7] a__head(cons(N,XS)) -> mark(N) [8] a__tail(cons(N,XS)) -> mark(XS) [9] a__sel(N,XS) -> a__head(a__afterNth(mark(N),mark(XS))) [10] a__take(N,XS) -> a__fst(a__splitAt(mark(N),mark(XS))) [11] a__afterNth(N,XS) -> a__snd(a__splitAt(mark(N),mark(XS))) [12] mark(natsFrom(X)) -> a__natsFrom(mark(X)) [13] mark(fst(X)) -> a__fst(mark(X)) [14] mark(snd(X)) -> a__snd(mark(X)) [15] mark(splitAt(X1,X2)) -> a__splitAt(mark(X1),mark(X2)) [16] mark(u(X1,X2,X3,X4)) -> a__u(mark(X1),X2,X3,X4) [17] mark(head(X)) -> a__head(mark(X)) [18] mark(tail(X)) -> a__tail(mark(X)) [19] mark(sel(X1,X2)) -> a__sel(mark(X1),mark(X2)) [20] mark(afterNth(X1,X2)) -> a__afterNth(mark(X1),mark(X2)) [21] mark(take(X1,X2)) -> a__take(mark(X1),mark(X2)) [22] mark(cons(X1,X2)) -> cons(mark(X1),X2) [23] mark(s(X)) -> s(mark(X)) [24] mark(pair(X1,X2)) -> pair(mark(X1),mark(X2)) [25] mark(0) -> 0 [26] mark(nil) -> nil [27] a__natsFrom(X) -> natsFrom(X) [28] a__fst(X) -> fst(X) [29] a__snd(X) -> snd(X) [30] a__splitAt(X1,X2) -> splitAt(X1,X2) [31] a__u(X1,X2,X3,X4) -> u(X1,X2,X3,X4) [32] a__head(X) -> head(X) [33] a__tail(X) -> tail(X) [34] a__sel(X1,X2) -> sel(X1,X2) [35] a__afterNth(X1,X2) -> afterNth(X1,X2) [36] a__take(X1,X2) -> take(X1,X2) Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 1 components: { --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> } APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { mark(cons(X1,X2)) >= cons(mark(X1),X2) ; mark(natsFrom(X)) >= a__natsFrom(mark(X)) ; mark(s(X)) >= s(mark(X)) ; mark(pair(X1,X2)) >= pair(mark(X1),mark(X2)) ; mark(nil) >= nil ; mark(0) >= 0 ; mark(fst(X)) >= a__fst(mark(X)) ; mark(snd(X)) >= a__snd(mark(X)) ; mark(splitAt(X1,X2)) >= a__splitAt(mark(X1),mark(X2)) ; mark(u(X1,X2,X3,X4)) >= a__u(mark(X1),X2,X3,X4) ; mark(head(X)) >= a__head(mark(X)) ; mark(tail(X)) >= a__tail(mark(X)) ; mark(sel(X1,X2)) >= a__sel(mark(X1),mark(X2)) ; mark(afterNth(X1,X2)) >= a__afterNth(mark(X1),mark(X2)) ; mark(take(X1,X2)) >= a__take(mark(X1),mark(X2)) ; a__natsFrom(N) >= cons(mark(N),natsFrom(s(N))) ; a__natsFrom(X) >= natsFrom(X) ; a__fst(pair(XS,YS)) >= mark(XS) ; a__fst(X) >= fst(X) ; a__snd(pair(XS,YS)) >= mark(YS) ; a__snd(X) >= snd(X) ; a__splitAt(s(N),cons(X,XS)) >= a__u(a__splitAt(mark(N),mark(XS)),N,X,XS) ; a__splitAt(0,XS) >= pair(nil,mark(XS)) ; a__splitAt(X1,X2) >= splitAt(X1,X2) ; a__u(pair(YS,ZS),N,X,XS) >= pair(cons(mark(X),YS),mark(ZS)) ; a__u(X1,X2,X3,X4) >= u(X1,X2,X3,X4) ; a__head(cons(N,XS)) >= mark(N) ; a__head(X) >= head(X) ; a__tail(cons(N,XS)) >= mark(XS) ; a__tail(X) >= tail(X) ; a__afterNth(N,XS) >= a__snd(a__splitAt(mark(N),mark(XS))) ; a__afterNth(X1,X2) >= afterNth(X1,X2) ; a__sel(N,XS) >= a__head(a__afterNth(mark(N),mark(XS))) ; a__sel(X1,X2) >= sel(X1,X2) ; a__take(N,XS) >= a__fst(a__splitAt(mark(N),mark(XS))) ; a__take(X1,X2) >= take(X1,X2) ; Marked_a__take(N,XS) >= Marked_a__splitAt(mark(N),mark(XS)) ; Marked_a__take(N,XS) >= Marked_a__fst(a__splitAt(mark(N),mark(XS))) ; Marked_a__take(N,XS) >= Marked_mark(N) ; Marked_a__take(N,XS) >= Marked_mark(XS) ; Marked_a__afterNth(N,XS) >= Marked_a__splitAt(mark(N),mark(XS)) ; Marked_a__afterNth(N,XS) >= Marked_a__snd(a__splitAt(mark(N),mark(XS))) ; Marked_a__afterNth(N,XS) >= Marked_mark(N) ; Marked_a__afterNth(N,XS) >= Marked_mark(XS) ; Marked_a__sel(N,XS) >= Marked_a__afterNth(mark(N),mark(XS)) ; Marked_a__sel(N,XS) >= Marked_a__head(a__afterNth(mark(N),mark(XS))) ; Marked_a__sel(N,XS) >= Marked_mark(N) ; Marked_a__sel(N,XS) >= Marked_mark(XS) ; Marked_a__tail(cons(N,XS)) >= Marked_mark(XS) ; Marked_a__head(cons(N,XS)) >= Marked_mark(N) ; Marked_a__u(pair(YS,ZS),N,X,XS) >= Marked_mark(X) ; Marked_a__u(pair(YS,ZS),N,X,XS) >= Marked_mark(ZS) ; Marked_a__splitAt(s(N),cons(X,XS)) >= Marked_a__u(a__splitAt(mark(N), mark(XS)),N,X,XS) ; Marked_a__splitAt(s(N),cons(X,XS)) >= Marked_a__splitAt(mark(N),mark(XS)) ; Marked_a__splitAt(s(N),cons(X,XS)) >= Marked_mark(N) ; Marked_a__splitAt(s(N),cons(X,XS)) >= Marked_mark(XS) ; Marked_a__splitAt(0,XS) >= Marked_mark(XS) ; Marked_a__snd(pair(XS,YS)) >= Marked_mark(YS) ; Marked_a__fst(pair(XS,YS)) >= Marked_mark(XS) ; Marked_a__natsFrom(N) >= Marked_mark(N) ; Marked_mark(cons(X1,X2)) >= Marked_mark(X1) ; Marked_mark(natsFrom(X)) >= Marked_a__natsFrom(mark(X)) ; Marked_mark(natsFrom(X)) >= Marked_mark(X) ; Marked_mark(s(X)) >= Marked_mark(X) ; Marked_mark(pair(X1,X2)) >= Marked_mark(X1) ; Marked_mark(pair(X1,X2)) >= Marked_mark(X2) ; Marked_mark(fst(X)) >= Marked_a__fst(mark(X)) ; Marked_mark(fst(X)) >= Marked_mark(X) ; Marked_mark(snd(X)) >= Marked_a__snd(mark(X)) ; Marked_mark(snd(X)) >= Marked_mark(X) ; Marked_mark(splitAt(X1,X2)) >= Marked_a__splitAt(mark(X1),mark(X2)) ; Marked_mark(splitAt(X1,X2)) >= Marked_mark(X1) ; Marked_mark(splitAt(X1,X2)) >= Marked_mark(X2) ; Marked_mark(u(X1,X2,X3,X4)) >= Marked_a__u(mark(X1),X2,X3,X4) ; Marked_mark(u(X1,X2,X3,X4)) >= Marked_mark(X1) ; Marked_mark(head(X)) >= Marked_a__head(mark(X)) ; Marked_mark(head(X)) >= Marked_mark(X) ; Marked_mark(tail(X)) >= Marked_a__tail(mark(X)) ; Marked_mark(tail(X)) >= Marked_mark(X) ; Marked_mark(sel(X1,X2)) >= Marked_a__sel(mark(X1),mark(X2)) ; Marked_mark(sel(X1,X2)) >= Marked_mark(X1) ; Marked_mark(sel(X1,X2)) >= Marked_mark(X2) ; Marked_mark(afterNth(X1,X2)) >= Marked_a__afterNth(mark(X1),mark(X2)) ; Marked_mark(afterNth(X1,X2)) >= Marked_mark(X1) ; Marked_mark(afterNth(X1,X2)) >= Marked_mark(X2) ; Marked_mark(take(X1,X2)) >= Marked_a__take(mark(X1),mark(X2)) ; Marked_mark(take(X1,X2)) >= Marked_mark(X1) ; Marked_mark(take(X1,X2)) >= Marked_mark(X2) ; } + Disjunctions:{ { Marked_a__take(N,XS) > Marked_a__splitAt(mark(N),mark(XS)) ; } { Marked_a__take(N,XS) > Marked_a__fst(a__splitAt(mark(N),mark(XS))) ; } { Marked_a__take(N,XS) > Marked_mark(N) ; } { Marked_a__take(N,XS) > Marked_mark(XS) ; } { Marked_a__afterNth(N,XS) > Marked_a__splitAt(mark(N),mark(XS)) ; } { Marked_a__afterNth(N,XS) > Marked_a__snd(a__splitAt(mark(N),mark(XS))) ; } { Marked_a__afterNth(N,XS) > Marked_mark(N) ; } { Marked_a__afterNth(N,XS) > Marked_mark(XS) ; } { Marked_a__sel(N,XS) > Marked_a__afterNth(mark(N),mark(XS)) ; } { Marked_a__sel(N,XS) > Marked_a__head(a__afterNth(mark(N),mark(XS))) ; } { Marked_a__sel(N,XS) > Marked_mark(N) ; } { Marked_a__sel(N,XS) > Marked_mark(XS) ; } { Marked_a__tail(cons(N,XS)) > Marked_mark(XS) ; } { Marked_a__head(cons(N,XS)) > Marked_mark(N) ; } { Marked_a__u(pair(YS,ZS),N,X,XS) > Marked_mark(X) ; } { Marked_a__u(pair(YS,ZS),N,X,XS) > Marked_mark(ZS) ; } { Marked_a__splitAt(s(N),cons(X,XS)) > Marked_a__u(a__splitAt(mark(N),mark(XS)), N,X,XS) ; } { Marked_a__splitAt(s(N),cons(X,XS)) > Marked_a__splitAt(mark(N),mark(XS)) ; } { Marked_a__splitAt(s(N),cons(X,XS)) > Marked_mark(N) ; } { Marked_a__splitAt(s(N),cons(X,XS)) > Marked_mark(XS) ; } { Marked_a__splitAt(0,XS) > Marked_mark(XS) ; } { Marked_a__snd(pair(XS,YS)) > Marked_mark(YS) ; } { Marked_a__fst(pair(XS,YS)) > Marked_mark(XS) ; } { Marked_a__natsFrom(N) > Marked_mark(N) ; } { Marked_mark(cons(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(natsFrom(X)) > Marked_a__natsFrom(mark(X)) ; } { Marked_mark(natsFrom(X)) > Marked_mark(X) ; } { Marked_mark(s(X)) > Marked_mark(X) ; } { Marked_mark(pair(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(pair(X1,X2)) > Marked_mark(X2) ; } { Marked_mark(fst(X)) > Marked_a__fst(mark(X)) ; } { Marked_mark(fst(X)) > Marked_mark(X) ; } { Marked_mark(snd(X)) > Marked_a__snd(mark(X)) ; } { Marked_mark(snd(X)) > Marked_mark(X) ; } { Marked_mark(splitAt(X1,X2)) > Marked_a__splitAt(mark(X1),mark(X2)) ; } { Marked_mark(splitAt(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(splitAt(X1,X2)) > Marked_mark(X2) ; } { Marked_mark(u(X1,X2,X3,X4)) > Marked_a__u(mark(X1),X2,X3,X4) ; } { Marked_mark(u(X1,X2,X3,X4)) > Marked_mark(X1) ; } { Marked_mark(head(X)) > Marked_a__head(mark(X)) ; } { Marked_mark(head(X)) > Marked_mark(X) ; } { Marked_mark(tail(X)) > Marked_a__tail(mark(X)) ; } { Marked_mark(tail(X)) > Marked_mark(X) ; } { Marked_mark(sel(X1,X2)) > Marked_a__sel(mark(X1),mark(X2)) ; } { Marked_mark(sel(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(sel(X1,X2)) > Marked_mark(X2) ; } { Marked_mark(afterNth(X1,X2)) > Marked_a__afterNth(mark(X1),mark(X2)) ; } { Marked_mark(afterNth(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(afterNth(X1,X2)) > Marked_mark(X2) ; } { Marked_mark(take(X1,X2)) > Marked_a__take(mark(X1),mark(X2)) ; } { Marked_mark(take(X1,X2)) > Marked_mark(X1) ; } { Marked_mark(take(X1,X2)) > Marked_mark(X2) ; } } === TIMER virtual : 10.000000 === Entering poly_solver Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 10.000000 === === STOPING TIMER real === Sat solver returned === STOPING TIMER real === === STOPING TIMER virtual === No solution found for these parameters. Entering rpo_solver === TIMER virtual : 25.000000 === Search parameters: AFS type: 2 ; time limit: 25.. === STOPING TIMER virtual === Time out for these parameters. === TIMER virtual : 15.000000 === Entering poly_solver Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 15.000000 === === STOPING TIMER real === Sat solver returned === STOPING TIMER real === === STOPING TIMER virtual === No solution found for these parameters. === TIMER virtual : 50.000000 === trying sub matrices of size: 1 Matrix interpretation constraints generated. Search parameters: LINEAR MATRIX 3x3 (strict=1x1) ; time limit: 50.. Termination constraints generated. Starting Sat solver initialization Calling Sat solver... === STOPING TIMER virtual === === TIMER real : 50.000000 === === STOPING TIMER real === Sat solver returned === STOPING TIMER real === === STOPING TIMER virtual === No solution found for these parameters. No solution found for these constraints. APPLY CRITERIA (ID_CRIT) NOT SOLVED No proof found Cime worked for 33.270028 seconds (real time) Cime Exit Status: 0