/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- NO ** BEGIN proof argument ** The following rule was generated while unfolding the analyzed TRS: [iteration = 11] mark(f(mark(a),mark(b),c)) -> mark(f(mark(a),mark(b),c)) Let l be the left-hand side and r be the right-hand side of this rule. Let p = epsilon, theta1 = {} and theta2 = {}. We have r|p = mark(f(mark(a),mark(b),c)) and theta2(theta1(l)) = theta1(r|p). Hence, the term theta1(l) = mark(f(mark(a),mark(b),c)) loops w.r.t. the analyzed TRS. ** END proof argument ** ** BEGIN proof description ** ## Searching for a generalized rewrite rule (a rule whose right-hand side contains a variable that does not occur in the left-hand side)... No generalized rewrite rule found! ## Applying the DP framework... ## 2 initial DP problems to solve. ## First, we try to decompose these problems into smaller problems. ## Round 1 [2 DP problems]: ## DP problem: Dependency pairs = [active^#(f(a,b,_0)) -> mark^#(f(_0,_0,_0)), mark^#(f(_0,_1,_2)) -> active^#(f(mark(_0),_1,mark(_2))), mark^#(f(_0,_1,_2)) -> mark^#(_0), mark^#(f(_0,_1,_2)) -> mark^#(_2)] TRS = {active(f(a,b,_0)) -> mark(f(_0,_0,_0)), active(c) -> mark(a), active(c) -> mark(b), mark(f(_0,_1,_2)) -> active(f(mark(_0),_1,mark(_2))), mark(a) -> active(a), mark(b) -> active(b), mark(c) -> active(c), f(mark(_0),_1,_2) -> f(_0,_1,_2), f(_0,mark(_1),_2) -> f(_0,_1,_2), f(_0,_1,mark(_2)) -> f(_0,_1,_2), f(active(_0),_1,_2) -> f(_0,_1,_2), f(_0,active(_1),_2) -> f(_0,_1,_2), f(_0,_1,active(_2)) -> f(_0,_1,_2)} ## Trying with homeomorphic embeddings... Failed! ## Trying with polynomial interpretations... This DP problem is too complex! Aborting! ## Trying with lexicographic path orders... Failed! ## Trying with Knuth-Bendix orders... Failed! Don't know whether this DP problem is finite. ## DP problem: Dependency pairs = [f^#(mark(_0),_1,_2) -> f^#(_0,_1,_2), f^#(_0,mark(_1),_2) -> f^#(_0,_1,_2), f^#(_0,_1,mark(_2)) -> f^#(_0,_1,_2), f^#(active(_0),_1,_2) -> f^#(_0,_1,_2), f^#(_0,active(_1),_2) -> f^#(_0,_1,_2), f^#(_0,_1,active(_2)) -> f^#(_0,_1,_2)] TRS = {active(f(a,b,_0)) -> mark(f(_0,_0,_0)), active(c) -> mark(a), active(c) -> mark(b), mark(f(_0,_1,_2)) -> active(f(mark(_0),_1,mark(_2))), mark(a) -> active(a), mark(b) -> active(b), mark(c) -> active(c), f(mark(_0),_1,_2) -> f(_0,_1,_2), f(_0,mark(_1),_2) -> f(_0,_1,_2), f(_0,_1,mark(_2)) -> f(_0,_1,_2), f(active(_0),_1,_2) -> f(_0,_1,_2), f(_0,active(_1),_2) -> f(_0,_1,_2), f(_0,_1,active(_2)) -> f(_0,_1,_2)} ## Trying with homeomorphic embeddings... Success! This DP problem is finite. ## A DP problem could not be proved finite. ## Now, we try to prove that this problem is infinite. ## Trying to find a loop (forward=true, backward=false, max=-1) # max_depth=3, unfold_variables=false: # Iteration 0: no loop found, 4 unfolded rules generated. # Iteration 1: no loop found, 15 unfolded rules generated. # Iteration 2: no loop found, 19 unfolded rules generated. # Iteration 3: no loop found, 49 unfolded rules generated. # Iteration 4: no loop found, 221 unfolded rules generated. # Iteration 5: no loop found, 1021 unfolded rules generated. # Iteration 6: no loop found, 3900 unfolded rules generated. # Iteration 7: no loop found, 11108 unfolded rules generated. # Iteration 8: no loop found, 27936 unfolded rules generated. # Iteration 9: no loop found, 64334 unfolded rules generated. # Iteration 10: no loop found, 136928 unfolded rules generated. # Iteration 11: success, found a loop, 1010 unfolded rules generated. Here is the successful unfolding. Let IR be the TRS under analysis. L0 = mark^#(f(_0,_1,_2)) -> active^#(f(mark(_0),_1,mark(_2))) [trans] is in U_IR^0. D = active^#(f(a,b,_0)) -> mark^#(f(_0,_0,_0)) is a dependency pair of IR. We build a composed triple from L0 and D. ==> L1 = [mark^#(f(_0,_1,_2)) -> active^#(f(mark(_0),_1,mark(_2))), active^#(f(a,b,_3)) -> mark^#(f(_3,_3,_3))] [comp] is in U_IR^1. Let p1 = [0]. We unfold the first rule of L1 forwards at position p1 with the rule f(mark(_0),_1,_2) -> f(_0,_1,_2). ==> L2 = [mark^#(f(_0,_1,_2)) -> active^#(f(_0,_1,mark(_2))), active^#(f(a,b,_3)) -> mark^#(f(_3,_3,_3))] [comp] is in U_IR^2. Let p2 = [0]. We unfold the first rule of L2 forwards at position p2 with the rule f(mark(_0),_1,_2) -> f(_0,_1,_2). ==> L3 = [mark^#(f(mark(_0),_1,_2)) -> active^#(f(_0,_1,mark(_2))), active^#(f(a,b,_3)) -> mark^#(f(_3,_3,_3))] [comp] is in U_IR^3. Let p3 = [0]. We unfold the first rule of L3 forwards at position p3 with the rule f(_0,mark(_1),_2) -> f(_0,_1,_2). ==> L4 = mark^#(f(mark(a),mark(b),_0)) -> mark^#(f(mark(_0),mark(_0),mark(_0))) [trans] is in U_IR^4. D = mark^#(f(_0,_1,_2)) -> mark^#(_0) is a dependency pair of IR. We build a composed triple from L4 and D. ==> L5 = [mark^#(f(mark(a),mark(b),_0)) -> mark^#(f(mark(_0),mark(_0),mark(_0))), mark^#(f(_1,_2,_3)) -> mark^#(_1)] [comp] is in U_IR^5. Let p5 = [0, 0]. The subterm at position p5 in the right-hand side of the first rule of L5 unifies with the subterm at position p5 in the left-hand side of the second rule of L5. ==> L6 = [mark^#(f(mark(a),mark(b),_0)) -> mark^#(f(mark(_0),mark(_0),mark(_0))), mark^#(f(mark(_0),_1,_2)) -> mark^#(mark(_0))] [comp] is in U_IR^6. Let p6 = [0, 1]. We unfold the first rule of L6 forwards at position p6 with the rule mark(c) -> active(c). ==> L7 = [mark^#(f(mark(a),mark(b),c)) -> mark^#(f(mark(c),active(c),mark(c))), mark^#(f(mark(_0),_1,_2)) -> mark^#(mark(_0))] [comp] is in U_IR^7. Let p7 = [0, 0]. We unfold the first rule of L7 forwards at position p7 with the rule mark(c) -> active(c). ==> L8 = [mark^#(f(mark(a),mark(b),c)) -> mark^#(f(active(c),active(c),mark(c))), mark^#(f(mark(_0),_1,_2)) -> mark^#(mark(_0))] [comp] is in U_IR^8. Let p8 = [0, 0]. We unfold the first rule of L8 forwards at position p8 with the rule active(c) -> mark(a). ==> L9 = [mark^#(f(mark(a),mark(b),c)) -> mark^#(f(mark(a),active(c),mark(c))), mark^#(f(mark(a),_0,_1)) -> mark^#(mark(a))] [comp] is in U_IR^9. Let p9 = [0, 1]. We unfold the first rule of L9 forwards at position p9 with the rule active(c) -> mark(b). ==> L10 = [mark^#(f(mark(a),mark(b),c)) -> mark^#(f(mark(a),mark(b),mark(c))), mark^#(f(mark(a),_0,_1)) -> mark^#(mark(a))] [comp] is in U_IR^10. Let p10 = [0]. We unfold the first rule of L10 forwards at position p10 with the rule f(_0,_1,mark(_2)) -> f(_0,_1,_2). ==> L11 = [mark^#(f(mark(a),mark(b),c)) -> mark^#(f(mark(a),mark(b),c)), mark^#(f(mark(a),_0,_1)) -> mark^#(mark(a))] [comp] is in U_IR^11. This DP problem is infinite. Proof run on Linux version 3.10.0-1160.25.1.el7.x86_64 for amd64 using Java version 1.8.0_292 ** END proof description ** Total number of generated unfolded rules = 688745