/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) DependencyPairsProof [EQUIVALENT, 0 ms] (2) QDP (3) DependencyGraphProof [EQUIVALENT, 0 ms] (4) AND (5) QDP (6) UsableRulesProof [EQUIVALENT, 1 ms] (7) QDP (8) QDPSizeChangeProof [EQUIVALENT, 0 ms] (9) YES (10) QDP (11) UsableRulesProof [EQUIVALENT, 0 ms] (12) QDP (13) QDPSizeChangeProof [EQUIVALENT, 0 ms] (14) YES (15) QDP (16) UsableRulesProof [EQUIVALENT, 0 ms] (17) QDP (18) QDPSizeChangeProof [EQUIVALENT, 0 ms] (19) YES (20) QDP (21) TransformationProof [EQUIVALENT, 0 ms] (22) QDP (23) QDPOrderProof [EQUIVALENT, 189 ms] (24) QDP (25) QDPOrderProof [EQUIVALENT, 105 ms] (26) QDP (27) QDPOrderProof [EQUIVALENT, 25 ms] (28) QDP (29) QDPOrderProof [EQUIVALENT, 2404 ms] (30) QDP (31) PisEmptyProof [EQUIVALENT, 0 ms] (32) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. ---------------------------------------- (1) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (2) Obligation: Q DP problem: The TRS P consists of the following rules: .^1(.(x, y), z) -> .^1(x, .(y, z)) .^1(.(x, y), z) -> .^1(y, z) A(f(x)) -> F(a(x)) A(f(x)) -> A(x) A(.(x, y)) -> .^1(a(x), y) A(.(x, y)) -> A(x) A(b1(x)) -> B1(a(x)) A(b1(x)) -> A(x) F(b(x)) -> F(x) .^1(b(x), y) -> .^1(x, y) A(f(.(0, x))) -> B1(.(f(.(0, x)), .(0, f(x)))) A(f(.(0, x))) -> .^1(f(.(0, x)), .(0, f(x))) A(f(.(0, x))) -> .^1(0, f(x)) A(f(.(0, x))) -> F(x) A(f(0)) -> B1(.(f(0), 0)) A(f(0)) -> .^1(f(0), 0) F(.(0, x)) -> .^1(0, f(x)) F(.(0, x)) -> F(x) C(b(x)) -> C(a(x)) C(b(x)) -> A(x) A(b(x)) -> A(x) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (3) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs with 11 less nodes. ---------------------------------------- (4) Complex Obligation (AND) ---------------------------------------- (5) Obligation: Q DP problem: The TRS P consists of the following rules: .^1(.(x, y), z) -> .^1(y, z) .^1(.(x, y), z) -> .^1(x, .(y, z)) .^1(b(x), y) -> .^1(x, y) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (6) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (7) Obligation: Q DP problem: The TRS P consists of the following rules: .^1(.(x, y), z) -> .^1(y, z) .^1(.(x, y), z) -> .^1(x, .(y, z)) .^1(b(x), y) -> .^1(x, y) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) .(b(x), y) -> b(.(x, y)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (8) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *.^1(.(x, y), z) -> .^1(y, z) The graph contains the following edges 1 > 1, 2 >= 2 *.^1(.(x, y), z) -> .^1(x, .(y, z)) The graph contains the following edges 1 > 1 *.^1(b(x), y) -> .^1(x, y) The graph contains the following edges 1 > 1, 2 >= 2 ---------------------------------------- (9) YES ---------------------------------------- (10) Obligation: Q DP problem: The TRS P consists of the following rules: F(.(0, x)) -> F(x) F(b(x)) -> F(x) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (11) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: F(.(0, x)) -> F(x) F(b(x)) -> F(x) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *F(.(0, x)) -> F(x) The graph contains the following edges 1 > 1 *F(b(x)) -> F(x) The graph contains the following edges 1 > 1 ---------------------------------------- (14) YES ---------------------------------------- (15) Obligation: Q DP problem: The TRS P consists of the following rules: A(.(x, y)) -> A(x) A(f(x)) -> A(x) A(b1(x)) -> A(x) A(b(x)) -> A(x) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (16) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (17) Obligation: Q DP problem: The TRS P consists of the following rules: A(.(x, y)) -> A(x) A(f(x)) -> A(x) A(b1(x)) -> A(x) A(b(x)) -> A(x) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (18) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *A(.(x, y)) -> A(x) The graph contains the following edges 1 > 1 *A(f(x)) -> A(x) The graph contains the following edges 1 > 1 *A(b1(x)) -> A(x) The graph contains the following edges 1 > 1 *A(b(x)) -> A(x) The graph contains the following edges 1 > 1 ---------------------------------------- (19) YES ---------------------------------------- (20) Obligation: Q DP problem: The TRS P consists of the following rules: C(b(x)) -> C(a(x)) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (21) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule C(b(x)) -> C(a(x)) at position [0] we obtained the following new rules [LPAR04]: (C(b(f(x0))) -> C(f(a(x0))),C(b(f(x0))) -> C(f(a(x0)))) (C(b(.(x0, x1))) -> C(.(a(x0), x1)),C(b(.(x0, x1))) -> C(.(a(x0), x1))) (C(b(b1(x0))) -> C(b1(a(x0))),C(b(b1(x0))) -> C(b1(a(x0)))) (C(b(f(.(0, x0)))) -> C(b1(.(f(.(0, x0)), .(0, f(x0))))),C(b(f(.(0, x0)))) -> C(b1(.(f(.(0, x0)), .(0, f(x0)))))) (C(b(f(0))) -> C(b1(.(f(0), 0))),C(b(f(0))) -> C(b1(.(f(0), 0)))) (C(b(b(x0))) -> C(b(a(x0))),C(b(b(x0))) -> C(b(a(x0)))) ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: C(b(f(x0))) -> C(f(a(x0))) C(b(.(x0, x1))) -> C(.(a(x0), x1)) C(b(b1(x0))) -> C(b1(a(x0))) C(b(f(.(0, x0)))) -> C(b1(.(f(.(0, x0)), .(0, f(x0))))) C(b(f(0))) -> C(b1(.(f(0), 0))) C(b(b(x0))) -> C(b(a(x0))) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. C(b(f(0))) -> C(b1(.(f(0), 0))) The remaining pairs can at least be oriented weakly. Used ordering: Combined order from the following AFS and order. C(x1) = C(x1) b(x1) = x1 f(x1) = x1 a(x1) = x1 .(x1, x2) = . b1(x1) = x1 0 = 0 Recursive path order with status [RPO]. Quasi-Precedence: C_1 > 0 > . Status: C_1: [1] .: [] 0: multiset status The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) a(b(x)) -> b(a(x)) f(b(x)) -> b(f(x)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) .(.(x, y), z) -> .(x, .(y, z)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) ---------------------------------------- (24) Obligation: Q DP problem: The TRS P consists of the following rules: C(b(f(x0))) -> C(f(a(x0))) C(b(.(x0, x1))) -> C(.(a(x0), x1)) C(b(b1(x0))) -> C(b1(a(x0))) C(b(f(.(0, x0)))) -> C(b1(.(f(.(0, x0)), .(0, f(x0))))) C(b(b(x0))) -> C(b(a(x0))) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (25) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. C(b(f(.(0, x0)))) -> C(b1(.(f(.(0, x0)), .(0, f(x0))))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: POL( ._2(x_1, x_2) ) = 0 POL( C_1(x_1) ) = 2x_1 POL( b_1(x_1) ) = x_1 POL( b1_1(x_1) ) = x_1 POL( f_1(x_1) ) = 2 POL( a_1(x_1) ) = x_1 POL( 0 ) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) a(b(x)) -> b(a(x)) f(b(x)) -> b(f(x)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) .(.(x, y), z) -> .(x, .(y, z)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) ---------------------------------------- (26) Obligation: Q DP problem: The TRS P consists of the following rules: C(b(f(x0))) -> C(f(a(x0))) C(b(.(x0, x1))) -> C(.(a(x0), x1)) C(b(b1(x0))) -> C(b1(a(x0))) C(b(b(x0))) -> C(b(a(x0))) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (27) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. C(b(b1(x0))) -> C(b1(a(x0))) The remaining pairs can at least be oriented weakly. Used ordering: Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : <<< POL(C(x_1)) = [[0]] + [[1, 0]] * x_1 >>> <<< POL(b(x_1)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 >>> <<< POL(f(x_1)) = [[1], [0]] + [[1, 0], [0, 1]] * x_1 >>> <<< POL(a(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 >>> <<< POL(.(x_1, x_2)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 + [[0, 0], [0, 0]] * x_2 >>> <<< POL(b1(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 >>> <<< POL(0) = [[0], [1]] >>> The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) a(b(x)) -> b(a(x)) f(b(x)) -> b(f(x)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) .(.(x, y), z) -> .(x, .(y, z)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) ---------------------------------------- (28) Obligation: Q DP problem: The TRS P consists of the following rules: C(b(f(x0))) -> C(f(a(x0))) C(b(.(x0, x1))) -> C(.(a(x0), x1)) C(b(b(x0))) -> C(b(a(x0))) The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (29) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. C(b(f(x0))) -> C(f(a(x0))) C(b(.(x0, x1))) -> C(.(a(x0), x1)) C(b(b(x0))) -> C(b(a(x0))) The remaining pairs can at least be oriented weakly. Used ordering: Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : <<< POL(C(x_1)) = [[0]] + [[0, 1]] * x_1 >>> <<< POL(b(x_1)) = [[0], [1]] + [[0, 1], [0, 2]] * x_1 >>> <<< POL(f(x_1)) = [[0], [0]] + [[1, 1], [0, 3]] * x_1 >>> <<< POL(a(x_1)) = [[1], [0]] + [[2, 0], [0, 2]] * x_1 >>> <<< POL(.(x_1, x_2)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 + [[0, 0], [0, 0]] * x_2 >>> <<< POL(b1(x_1)) = [[1], [2]] + [[2, 0], [2, 1]] * x_1 >>> <<< POL(0) = [[0], [3]] >>> The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) a(b(x)) -> b(a(x)) f(b(x)) -> b(f(x)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) .(.(x, y), z) -> .(x, .(y, z)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) ---------------------------------------- (30) Obligation: Q DP problem: P is empty. The TRS R consists of the following rules: .(.(x, y), z) -> .(x, .(y, z)) a(f(x)) -> f(a(x)) a(.(x, y)) -> .(a(x), y) a(b1(x)) -> b1(a(x)) f(b(x)) -> b(f(x)) .(b(x), y) -> b(.(x, y)) b1(b(x)) -> b(b(x)) a(f(.(0, x))) -> b1(.(f(.(0, x)), .(0, f(x)))) a(f(0)) -> b1(.(f(0), 0)) f(.(0, x)) -> b(.(0, f(x))) f(0) -> b(0) c(b(x)) -> c(a(x)) a(b(x)) -> b(a(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (31) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (32) YES