- : unit = () - : unit = () h : heuristic = - : unit = () APPLY CRITERIA (Marked dependency pairs) TRS termination of: [1] active(zeros) -> mark(cons(0,zeros)) [2] active(U11(tt,L)) -> mark(s(length(L))) [3] active(U21(tt)) -> mark(nil) [4] active(U31(tt,IL,M,N)) -> mark(cons(N,take(M,IL))) [5] active(and(tt,X)) -> mark(X) [6] active(isNat(0)) -> mark(tt) [7] active(isNat(length(V1))) -> mark(isNatList(V1)) [8] active(isNat(s(V1))) -> mark(isNat(V1)) [9] active(isNatIList(V)) -> mark(isNatList(V)) [10] active(isNatIList(zeros)) -> mark(tt) [11] active(isNatIList(cons(V1,V2))) -> mark(and(isNat(V1),isNatIList(V2))) [12] active(isNatList(nil)) -> mark(tt) [13] active(isNatList(cons(V1,V2))) -> mark(and(isNat(V1),isNatList(V2))) [14] active(isNatList(take(V1,V2))) -> mark(and(isNat(V1),isNatIList(V2))) [15] active(length(nil)) -> mark(0) [16] active(length(cons(N,L))) -> mark(U11(and(isNatList(L),isNat(N)),L)) [17] active(take(0,IL)) -> mark(U21(isNatIList(IL))) [18] active(take(s(M),cons(N,IL))) -> mark(U31(and(isNatIList(IL),and(isNat(M),isNat(N))),IL,M,N)) [19] active(cons(X1,X2)) -> cons(active(X1),X2) [20] active(U11(X1,X2)) -> U11(active(X1),X2) [21] active(s(X)) -> s(active(X)) [22] active(length(X)) -> length(active(X)) [23] active(U21(X)) -> U21(active(X)) [24] active(U31(X1,X2,X3,X4)) -> U31(active(X1),X2,X3,X4) [25] active(take(X1,X2)) -> take(active(X1),X2) [26] active(take(X1,X2)) -> take(X1,active(X2)) [27] active(and(X1,X2)) -> and(active(X1),X2) [28] cons(mark(X1),X2) -> mark(cons(X1,X2)) [29] U11(mark(X1),X2) -> mark(U11(X1,X2)) [30] s(mark(X)) -> mark(s(X)) [31] length(mark(X)) -> mark(length(X)) [32] U21(mark(X)) -> mark(U21(X)) [33] U31(mark(X1),X2,X3,X4) -> mark(U31(X1,X2,X3,X4)) [34] take(mark(X1),X2) -> mark(take(X1,X2)) [35] take(X1,mark(X2)) -> mark(take(X1,X2)) [36] and(mark(X1),X2) -> mark(and(X1,X2)) [37] proper(zeros) -> ok(zeros) [38] proper(cons(X1,X2)) -> cons(proper(X1),proper(X2)) [39] proper(0) -> ok(0) [40] proper(U11(X1,X2)) -> U11(proper(X1),proper(X2)) [41] proper(tt) -> ok(tt) [42] proper(s(X)) -> s(proper(X)) [43] proper(length(X)) -> length(proper(X)) [44] proper(U21(X)) -> U21(proper(X)) [45] proper(nil) -> ok(nil) [46] proper(U31(X1,X2,X3,X4)) -> U31(proper(X1),proper(X2),proper(X3),proper(X4)) [47] proper(take(X1,X2)) -> take(proper(X1),proper(X2)) [48] proper(and(X1,X2)) -> and(proper(X1),proper(X2)) [49] proper(isNat(X)) -> isNat(proper(X)) [50] proper(isNatList(X)) -> isNatList(proper(X)) [51] proper(isNatIList(X)) -> isNatIList(proper(X)) [52] cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) [53] U11(ok(X1),ok(X2)) -> ok(U11(X1,X2)) [54] s(ok(X)) -> ok(s(X)) [55] length(ok(X)) -> ok(length(X)) [56] U21(ok(X)) -> ok(U21(X)) [57] U31(ok(X1),ok(X2),ok(X3),ok(X4)) -> ok(U31(X1,X2,X3,X4)) [58] take(ok(X1),ok(X2)) -> ok(take(X1,X2)) [59] and(ok(X1),ok(X2)) -> ok(and(X1,X2)) [60] isNat(ok(X)) -> ok(isNat(X)) [61] isNatList(ok(X)) -> ok(isNatList(X)) [62] isNatIList(ok(X)) -> ok(isNatIList(X)) [63] top(mark(X)) -> top(proper(X)) [64] top(ok(X)) -> top(active(X)) Sub problem: guided: DP termination of: END GUIDED APPLY CRITERIA (Graph splitting) Found 14 components: { --> --> --> --> } { --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> } { --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> } { --> } { --> } { --> } { --> --> --> --> } { --> --> --> --> } { --> --> --> --> } { --> --> --> --> } { --> --> --> --> } { --> --> --> --> } { --> --> --> --> --> --> --> --> --> } { --> --> --> --> } APPLY CRITERIA (Subterm criterion) APPLY CRITERIA (Choosing graph) Trying to solve the following constraints: { cons(mark(X1),X2) >= mark(cons(X1,X2)) ; cons(ok(X1),ok(X2)) >= ok(cons(X1,X2)) ; active(cons(X1,X2)) >= cons(active(X1),X2) ; active(zeros) >= mark(cons(0,zeros)) ; active(s(X)) >= s(active(X)) ; active(length(cons(N,L))) >= mark(U11(and(isNatList(L),isNat(N)),L)) ; active(length(nil)) >= mark(0) ; active(length(X)) >= length(active(X)) ; active(U11(tt,L)) >= mark(s(length(L))) ; active(U11(X1,X2)) >= U11(active(X1),X2) ; active(U21(tt)) >= mark(nil) ; active(U21(X)) >= U21(active(X)) ; active(take(0,IL)) >= mark(U21(isNatIList(IL))) ; active(take(s(M),cons(N,IL))) >= mark(U31(and(isNatIList(IL), and(isNat(M),isNat(N))), IL,M,N)) ; active(take(X1,X2)) >= take(active(X1),X2) ; active(take(X1,X2)) >= take(X1,active(X2)) ; active(U31(tt,IL,M,N)) >= mark(cons(N,take(M,IL))) ; active(U31(X1,X2,X3,X4)) >= U31(active(X1),X2,X3,X4) ; active(and(tt,X)) >= mark(X) ; active(and(X1,X2)) >= and(active(X1),X2) ; active(isNat(0)) >= mark(tt) ; active(isNat(s(V1))) >= mark(isNat(V1)) ; active(isNat(length(V1))) >= mark(isNatList(V1)) ; active(isNatList(cons(V1,V2))) >= mark(and(isNat(V1),isNatList(V2))) ; active(isNatList(nil)) >= mark(tt) ; active(isNatList(take(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(cons(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(zeros)) >= mark(tt) ; active(isNatIList(V)) >= mark(isNatList(V)) ; s(mark(X)) >= mark(s(X)) ; s(ok(X)) >= ok(s(X)) ; length(mark(X)) >= mark(length(X)) ; length(ok(X)) >= ok(length(X)) ; U11(mark(X1),X2) >= mark(U11(X1,X2)) ; U11(ok(X1),ok(X2)) >= ok(U11(X1,X2)) ; U21(mark(X)) >= mark(U21(X)) ; U21(ok(X)) >= ok(U21(X)) ; take(mark(X1),X2) >= mark(take(X1,X2)) ; take(ok(X1),ok(X2)) >= ok(take(X1,X2)) ; take(X1,mark(X2)) >= mark(take(X1,X2)) ; U31(mark(X1),X2,X3,X4) >= mark(U31(X1,X2,X3,X4)) ; U31(ok(X1),ok(X2),ok(X3),ok(X4)) >= ok(U31(X1,X2,X3,X4)) ; and(mark(X1),X2) >= mark(and(X1,X2)) ; and(ok(X1),ok(X2)) >= ok(and(X1,X2)) ; isNat(ok(X)) >= ok(isNat(X)) ; isNatList(ok(X)) >= ok(isNatList(X)) ; isNatIList(ok(X)) >= ok(isNatIList(X)) ; proper(cons(X1,X2)) >= cons(proper(X1),proper(X2)) ; proper(0) >= ok(0) ; proper(zeros) >= ok(zeros) ; proper(s(X)) >= s(proper(X)) ; proper(length(X)) >= length(proper(X)) ; proper(U11(X1,X2)) >= U11(proper(X1),proper(X2)) ; proper(tt) >= ok(tt) ; proper(nil) >= ok(nil) ; proper(U21(X)) >= U21(proper(X)) ; proper(take(X1,X2)) >= take(proper(X1),proper(X2)) ; proper(U31(X1,X2,X3,X4)) >= U31(proper(X1),proper(X2),proper(X3),proper(X4)) ; proper(and(X1,X2)) >= and(proper(X1),proper(X2)) ; proper(isNat(X)) >= isNat(proper(X)) ; proper(isNatList(X)) >= isNatList(proper(X)) ; proper(isNatIList(X)) >= isNatIList(proper(X)) ; top(mark(X)) >= top(proper(X)) ; top(ok(X)) >= top(active(X)) ; Marked_top(mark(X)) >= Marked_top(proper(X)) ; Marked_top(ok(X)) >= Marked_top(active(X)) ; } + Disjunctions:{ { Marked_top(mark(X)) > Marked_top(proper(X)) ; } { Marked_top(ok(X)) > Marked_top(active(X)) ; } } === 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 === === TIMER virtual : 25.000000 === Search parameters: AFS type: 2 ; time limit: 25.. === STOPING TIMER virtual === === 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 timeout reached === STOPING TIMER virtual === No solution found for these parameters. No solution found for these constraints. APPLY CRITERIA (Simple graph) Found the following constraints: { cons(mark(X1),X2) >= mark(cons(X1,X2)) ; cons(ok(X1),ok(X2)) >= ok(cons(X1,X2)) ; active(cons(X1,X2)) >= cons(active(X1),X2) ; active(zeros) >= mark(cons(0,zeros)) ; active(s(X)) >= s(active(X)) ; active(length(cons(N,L))) >= mark(U11(and(isNatList(L),isNat(N)),L)) ; active(length(nil)) >= mark(0) ; active(length(X)) >= length(active(X)) ; active(U11(tt,L)) >= mark(s(length(L))) ; active(U11(X1,X2)) >= U11(active(X1),X2) ; active(U21(tt)) >= mark(nil) ; active(U21(X)) >= U21(active(X)) ; active(take(0,IL)) >= mark(U21(isNatIList(IL))) ; active(take(s(M),cons(N,IL))) >= mark(U31(and(isNatIList(IL), and(isNat(M),isNat(N))), IL,M,N)) ; active(take(X1,X2)) >= take(active(X1),X2) ; active(take(X1,X2)) >= take(X1,active(X2)) ; active(U31(tt,IL,M,N)) >= mark(cons(N,take(M,IL))) ; active(U31(X1,X2,X3,X4)) >= U31(active(X1),X2,X3,X4) ; active(and(tt,X)) >= mark(X) ; active(and(X1,X2)) >= and(active(X1),X2) ; active(isNat(0)) >= mark(tt) ; active(isNat(s(V1))) >= mark(isNat(V1)) ; active(isNat(length(V1))) >= mark(isNatList(V1)) ; active(isNatList(cons(V1,V2))) >= mark(and(isNat(V1),isNatList(V2))) ; active(isNatList(nil)) >= mark(tt) ; active(isNatList(take(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(cons(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(zeros)) >= mark(tt) ; active(isNatIList(V)) >= mark(isNatList(V)) ; s(mark(X)) >= mark(s(X)) ; s(ok(X)) >= ok(s(X)) ; length(mark(X)) >= mark(length(X)) ; length(ok(X)) >= ok(length(X)) ; U11(mark(X1),X2) >= mark(U11(X1,X2)) ; U11(ok(X1),ok(X2)) >= ok(U11(X1,X2)) ; U21(mark(X)) >= mark(U21(X)) ; U21(ok(X)) >= ok(U21(X)) ; take(mark(X1),X2) >= mark(take(X1,X2)) ; take(ok(X1),ok(X2)) >= ok(take(X1,X2)) ; take(X1,mark(X2)) >= mark(take(X1,X2)) ; U31(mark(X1),X2,X3,X4) >= mark(U31(X1,X2,X3,X4)) ; U31(ok(X1),ok(X2),ok(X3),ok(X4)) >= ok(U31(X1,X2,X3,X4)) ; and(mark(X1),X2) >= mark(and(X1,X2)) ; and(ok(X1),ok(X2)) >= ok(and(X1,X2)) ; isNat(ok(X)) >= ok(isNat(X)) ; isNatList(ok(X)) >= ok(isNatList(X)) ; isNatIList(ok(X)) >= ok(isNatIList(X)) ; proper(cons(X1,X2)) >= cons(proper(X1),proper(X2)) ; proper(0) >= ok(0) ; proper(zeros) >= ok(zeros) ; proper(s(X)) >= s(proper(X)) ; proper(length(X)) >= length(proper(X)) ; proper(U11(X1,X2)) >= U11(proper(X1),proper(X2)) ; proper(tt) >= ok(tt) ; proper(nil) >= ok(nil) ; proper(U21(X)) >= U21(proper(X)) ; proper(take(X1,X2)) >= take(proper(X1),proper(X2)) ; proper(U31(X1,X2,X3,X4)) >= U31(proper(X1),proper(X2),proper(X3),proper(X4)) ; proper(and(X1,X2)) >= and(proper(X1),proper(X2)) ; proper(isNat(X)) >= isNat(proper(X)) ; proper(isNatList(X)) >= isNatList(proper(X)) ; proper(isNatIList(X)) >= isNatIList(proper(X)) ; top(mark(X)) >= top(proper(X)) ; top(ok(X)) >= top(active(X)) ; Marked_top(mark(X)) > Marked_top(proper(X)) ; Marked_top(ok(X)) > Marked_top(active(X)) ; } APPLY CRITERIA (SOLVE_ORD) Trying to solve the following constraints: { cons(mark(X1),X2) >= mark(cons(X1,X2)) ; cons(ok(X1),ok(X2)) >= ok(cons(X1,X2)) ; active(cons(X1,X2)) >= cons(active(X1),X2) ; active(zeros) >= mark(cons(0,zeros)) ; active(s(X)) >= s(active(X)) ; active(length(cons(N,L))) >= mark(U11(and(isNatList(L),isNat(N)),L)) ; active(length(nil)) >= mark(0) ; active(length(X)) >= length(active(X)) ; active(U11(tt,L)) >= mark(s(length(L))) ; active(U11(X1,X2)) >= U11(active(X1),X2) ; active(U21(tt)) >= mark(nil) ; active(U21(X)) >= U21(active(X)) ; active(take(0,IL)) >= mark(U21(isNatIList(IL))) ; active(take(s(M),cons(N,IL))) >= mark(U31(and(isNatIList(IL), and(isNat(M),isNat(N))), IL,M,N)) ; active(take(X1,X2)) >= take(active(X1),X2) ; active(take(X1,X2)) >= take(X1,active(X2)) ; active(U31(tt,IL,M,N)) >= mark(cons(N,take(M,IL))) ; active(U31(X1,X2,X3,X4)) >= U31(active(X1),X2,X3,X4) ; active(and(tt,X)) >= mark(X) ; active(and(X1,X2)) >= and(active(X1),X2) ; active(isNat(0)) >= mark(tt) ; active(isNat(s(V1))) >= mark(isNat(V1)) ; active(isNat(length(V1))) >= mark(isNatList(V1)) ; active(isNatList(cons(V1,V2))) >= mark(and(isNat(V1),isNatList(V2))) ; active(isNatList(nil)) >= mark(tt) ; active(isNatList(take(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(cons(V1,V2))) >= mark(and(isNat(V1),isNatIList(V2))) ; active(isNatIList(zeros)) >= mark(tt) ; active(isNatIList(V)) >= mark(isNatList(V)) ; s(mark(X)) >= mark(s(X)) ; s(ok(X)) >= ok(s(X)) ; length(mark(X)) >= mark(length(X)) ; length(ok(X)) >= ok(length(X)) ; U11(mark(X1),X2) >= mark(U11(X1,X2)) ; U11(ok(X1),ok(X2)) >= ok(U11(X1,X2)) ; U21(mark(X)) >= mark(U21(X)) ; U21(ok(X)) >= ok(U21(X)) ; take(mark(X1),X2) >= mark(take(X1,X2)) ; take(ok(X1),ok(X2)) >= ok(take(X1,X2)) ; take(X1,mark(X2)) >= mark(take(X1,X2)) ; U31(mark(X1),X2,X3,X4) >= mark(U31(X1,X2,X3,X4)) ; U31(ok(X1),ok(X2),ok(X3),ok(X4)) >= ok(U31(X1,X2,X3,X4)) ; and(mark(X1),X2) >= mark(and(X1,X2)) ; and(ok(X1),ok(X2)) >= ok(and(X1,X2)) ; isNat(ok(X)) >= ok(isNat(X)) ; isNatList(ok(X)) >= ok(isNatList(X)) ; isNatIList(ok(X)) >= ok(isNatIList(X)) ; proper(cons(X1,X2)) >= cons(proper(X1),proper(X2)) ; proper(0) >= ok(0) ; proper(zeros) >= ok(zeros) ; proper(s(X)) >= s(proper(X)) ; proper(length(X)) >= length(proper(X)) ; proper(U11(X1,X2)) >= U11(proper(X1),proper(X2)) ; proper(tt) >= ok(tt) ; proper(nil) >= ok(nil) ; proper(U21(X)) >= U21(proper(X)) ; proper(take(X1,X2)) >= take(proper(X1),proper(X2)) ; proper(U31(X1,X2,X3,X4)) >= U31(proper(X1),proper(X2),proper(X3),proper(X4)) ; proper(and(X1,X2)) >= and(proper(X1),proper(X2)) ; proper(isNat(X)) >= isNat(proper(X)) ; proper(isNatList(X)) >= isNatList(proper(X)) ; proper(isNatIList(X)) >= isNatIList(proper(X)) ; top(mark(X)) >= top(proper(X)) ; top(ok(X)) >= top(active(X)) ; Marked_top(mark(X)) > Marked_top(proper(X)) ; Marked_top(ok(X)) > Marked_top(active(X)) ; } + Disjunctions:{ } === 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 === No solution found for these parameters.(10229 bt (13999) [130]) === 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 timeout reached === 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 134.129443 seconds (real time) Cime Exit Status: 0