/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: c69e44bd14796315568835c1ffa2502984884775 mhark 20210624 unpublished Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) FlatCCProof [EQUIVALENT, 0 ms] (2) QTRS (3) RootLabelingProof [EQUIVALENT, 0 ms] (4) QTRS (5) QTRSRRRProof [EQUIVALENT, 46 ms] (6) QTRS (7) DependencyPairsProof [EQUIVALENT, 0 ms] (8) QDP (9) DependencyGraphProof [EQUIVALENT, 0 ms] (10) QDP (11) QDPOrderProof [EQUIVALENT, 0 ms] (12) QDP (13) DependencyGraphProof [EQUIVALENT, 0 ms] (14) TRUE ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a(x1) -> x1 a(a(x1)) -> a(b(a(c(a(x1))))) c(b(x1)) -> a(c(x1)) Q is empty. ---------------------------------------- (1) FlatCCProof (EQUIVALENT) We used flat context closure [ROOTLAB] As Q is empty the flat context closure was sound AND complete. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a(a(x1)) -> a(b(a(c(a(x1))))) a(a(x1)) -> a(x1) b(a(x1)) -> b(x1) c(a(x1)) -> c(x1) a(c(b(x1))) -> a(a(c(x1))) b(c(b(x1))) -> b(a(c(x1))) c(c(b(x1))) -> c(a(c(x1))) Q is empty. ---------------------------------------- (3) RootLabelingProof (EQUIVALENT) We used plain root labeling [ROOTLAB] with the following heuristic: LabelAll: All function symbols get labeled As Q is empty the root labeling was sound AND complete. ---------------------------------------- (4) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) a_{a_1}(a_{a_1}(x1)) -> a_{a_1}(x1) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(x1) a_{a_1}(a_{c_1}(x1)) -> a_{c_1}(x1) b_{a_1}(a_{a_1}(x1)) -> b_{a_1}(x1) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) c_{a_1}(a_{a_1}(x1)) -> c_{a_1}(x1) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) b_{c_1}(c_{b_1}(b_{a_1}(x1))) -> b_{a_1}(a_{c_1}(c_{a_1}(x1))) b_{c_1}(c_{b_1}(b_{b_1}(x1))) -> b_{a_1}(a_{c_1}(c_{b_1}(x1))) b_{c_1}(c_{b_1}(b_{c_1}(x1))) -> b_{a_1}(a_{c_1}(c_{c_1}(x1))) c_{c_1}(c_{b_1}(b_{a_1}(x1))) -> c_{a_1}(a_{c_1}(c_{a_1}(x1))) c_{c_1}(c_{b_1}(b_{b_1}(x1))) -> c_{a_1}(a_{c_1}(c_{b_1}(x1))) c_{c_1}(c_{b_1}(b_{c_1}(x1))) -> c_{a_1}(a_{c_1}(c_{c_1}(x1))) Q is empty. ---------------------------------------- (5) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(a_{a_1}(x_1)) = 1 + x_1 POL(a_{b_1}(x_1)) = 1 + x_1 POL(a_{c_1}(x_1)) = x_1 POL(b_{a_1}(x_1)) = x_1 POL(b_{b_1}(x_1)) = 1 + x_1 POL(b_{c_1}(x_1)) = x_1 POL(c_{a_1}(x_1)) = x_1 POL(c_{b_1}(x_1)) = 1 + x_1 POL(c_{c_1}(x_1)) = x_1 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: a_{a_1}(a_{a_1}(x1)) -> a_{a_1}(x1) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(x1) a_{a_1}(a_{c_1}(x1)) -> a_{c_1}(x1) b_{a_1}(a_{a_1}(x1)) -> b_{a_1}(x1) c_{a_1}(a_{a_1}(x1)) -> c_{a_1}(x1) b_{c_1}(c_{b_1}(b_{a_1}(x1))) -> b_{a_1}(a_{c_1}(c_{a_1}(x1))) b_{c_1}(c_{b_1}(b_{b_1}(x1))) -> b_{a_1}(a_{c_1}(c_{b_1}(x1))) b_{c_1}(c_{b_1}(b_{c_1}(x1))) -> b_{a_1}(a_{c_1}(c_{c_1}(x1))) c_{c_1}(c_{b_1}(b_{a_1}(x1))) -> c_{a_1}(a_{c_1}(c_{a_1}(x1))) c_{c_1}(c_{b_1}(b_{b_1}(x1))) -> c_{a_1}(a_{c_1}(c_{b_1}(x1))) c_{c_1}(c_{b_1}(b_{c_1}(x1))) -> c_{a_1}(a_{c_1}(c_{c_1}(x1))) ---------------------------------------- (6) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) Q is empty. ---------------------------------------- (7) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (8) Obligation: Q DP problem: The TRS P consists of the following rules: A_{A_1}(a_{a_1}(x1)) -> B_{A_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1)))) A_{A_1}(a_{a_1}(x1)) -> A_{C_1}(c_{a_1}(a_{a_1}(x1))) A_{A_1}(a_{a_1}(x1)) -> C_{A_1}(a_{a_1}(x1)) A_{A_1}(a_{b_1}(x1)) -> B_{A_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1)))) A_{A_1}(a_{b_1}(x1)) -> A_{C_1}(c_{a_1}(a_{b_1}(x1))) A_{A_1}(a_{b_1}(x1)) -> C_{A_1}(a_{b_1}(x1)) A_{A_1}(a_{c_1}(x1)) -> B_{A_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1)))) A_{A_1}(a_{c_1}(x1)) -> A_{C_1}(c_{a_1}(a_{c_1}(x1))) A_{A_1}(a_{c_1}(x1)) -> C_{A_1}(a_{c_1}(x1)) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{A_1}(a_{c_1}(c_{a_1}(x1))) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{C_1}(c_{a_1}(x1)) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> C_{A_1}(x1) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{A_1}(a_{c_1}(c_{b_1}(x1))) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{C_1}(c_{b_1}(x1)) A_{C_1}(c_{b_1}(b_{c_1}(x1))) -> A_{A_1}(a_{c_1}(c_{c_1}(x1))) A_{C_1}(c_{b_1}(b_{c_1}(x1))) -> A_{C_1}(c_{c_1}(x1)) The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (9) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 8 less nodes. ---------------------------------------- (10) Obligation: Q DP problem: The TRS P consists of the following rules: A_{A_1}(a_{a_1}(x1)) -> A_{C_1}(c_{a_1}(a_{a_1}(x1))) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{A_1}(a_{c_1}(c_{a_1}(x1))) A_{A_1}(a_{b_1}(x1)) -> A_{C_1}(c_{a_1}(a_{b_1}(x1))) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{C_1}(c_{a_1}(x1)) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{A_1}(a_{c_1}(c_{b_1}(x1))) A_{A_1}(a_{c_1}(x1)) -> A_{C_1}(c_{a_1}(a_{c_1}(x1))) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{C_1}(c_{b_1}(x1)) A_{C_1}(c_{b_1}(b_{c_1}(x1))) -> A_{A_1}(a_{c_1}(c_{c_1}(x1))) The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (11) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{A_1}(a_{c_1}(c_{a_1}(x1))) A_{C_1}(c_{b_1}(b_{a_1}(x1))) -> A_{C_1}(c_{a_1}(x1)) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{A_1}(a_{c_1}(c_{b_1}(x1))) A_{C_1}(c_{b_1}(b_{b_1}(x1))) -> A_{C_1}(c_{b_1}(x1)) A_{C_1}(c_{b_1}(b_{c_1}(x1))) -> A_{A_1}(a_{c_1}(c_{c_1}(x1))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(A_{A_1}(x_1)) = 1 + x_1 POL(A_{C_1}(x_1)) = 1 + x_1 POL(a_{a_1}(x_1)) = 1 + x_1 POL(a_{b_1}(x_1)) = x_1 POL(a_{c_1}(x_1)) = x_1 POL(b_{a_1}(x_1)) = 1 + x_1 POL(b_{b_1}(x_1)) = 1 + x_1 POL(b_{c_1}(x_1)) = 1 + x_1 POL(c_{a_1}(x_1)) = x_1 POL(c_{b_1}(x_1)) = x_1 POL(c_{c_1}(x_1)) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: A_{A_1}(a_{a_1}(x1)) -> A_{C_1}(c_{a_1}(a_{a_1}(x1))) A_{A_1}(a_{b_1}(x1)) -> A_{C_1}(c_{a_1}(a_{b_1}(x1))) A_{A_1}(a_{c_1}(x1)) -> A_{C_1}(c_{a_1}(a_{c_1}(x1))) The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{b_1}(x1))))) a_{a_1}(a_{c_1}(x1)) -> a_{b_1}(b_{a_1}(a_{c_1}(c_{a_1}(a_{c_1}(x1))))) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{c_1}(x1)) -> b_{c_1}(x1) c_{a_1}(a_{b_1}(x1)) -> c_{b_1}(x1) c_{a_1}(a_{c_1}(x1)) -> c_{c_1}(x1) a_{c_1}(c_{b_1}(b_{a_1}(x1))) -> a_{a_1}(a_{c_1}(c_{a_1}(x1))) a_{c_1}(c_{b_1}(b_{b_1}(x1))) -> a_{a_1}(a_{c_1}(c_{b_1}(x1))) a_{c_1}(c_{b_1}(b_{c_1}(x1))) -> a_{a_1}(a_{c_1}(c_{c_1}(x1))) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 3 less nodes. ---------------------------------------- (14) TRUE