YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) QTRS Reverse [EQUIVALENT, 0 ms] (2) QTRS (3) FlatCCProof [EQUIVALENT, 0 ms] (4) QTRS (5) RootLabelingProof [EQUIVALENT, 0 ms] (6) QTRS (7) QTRSRRRProof [EQUIVALENT, 19 ms] (8) QTRS (9) DependencyPairsProof [EQUIVALENT, 1 ms] (10) QDP (11) DependencyGraphProof [EQUIVALENT, 0 ms] (12) QDP (13) QDPOrderProof [EQUIVALENT, 58 ms] (14) QDP (15) PisEmptyProof [EQUIVALENT, 0 ms] (16) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a(x1) -> x1 a(a(x1)) -> a(b(a(b(x1)))) b(b(b(b(x1)))) -> a(x1) Q is empty. ---------------------------------------- (1) QTRS Reverse (EQUIVALENT) We applied the QTRS Reverse Processor [REVERSE]. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a(x1) -> x1 a(a(x1)) -> b(a(b(a(x1)))) b(b(b(b(x1)))) -> a(x1) Q is empty. ---------------------------------------- (3) FlatCCProof (EQUIVALENT) We used flat context closure [ROOTLAB] As Q is empty the flat context closure was sound AND complete. ---------------------------------------- (4) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a(a(x1)) -> a(x1) b(a(x1)) -> b(x1) a(a(a(x1))) -> a(b(a(b(a(x1))))) b(a(a(x1))) -> b(b(a(b(a(x1))))) a(b(b(b(b(x1))))) -> a(a(x1)) b(b(b(b(b(x1))))) -> b(a(x1)) Q is empty. ---------------------------------------- (5) 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. ---------------------------------------- (6) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a_{a_1}(a_{a_1}(x1)) -> a_{a_1}(x1) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(x1) b_{a_1}(a_{a_1}(x1)) -> b_{a_1}(x1) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) a_{a_1}(a_{a_1}(a_{a_1}(x1))) -> a_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{a_1}(a_{b_1}(x1))) -> a_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{a_1}(a_{b_1}(x1)) b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{a_1}(a_{a_1}(x1)) b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{a_1}(a_{b_1}(x1)) Q is empty. ---------------------------------------- (7) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(a_{a_1}(x_1)) = 2 + x_1 POL(a_{b_1}(x_1)) = x_1 POL(b_{a_1}(x_1)) = 1 + x_1 POL(b_{b_1}(x_1)) = 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) b_{a_1}(a_{a_1}(x1)) -> b_{a_1}(x1) a_{a_1}(a_{a_1}(a_{a_1}(x1))) -> a_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) a_{a_1}(a_{a_1}(a_{b_1}(x1))) -> a_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{a_1}(a_{b_1}(x1)) b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{a_1}(a_{a_1}(x1)) b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{a_1}(a_{b_1}(x1)) ---------------------------------------- (8) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) Q is empty. ---------------------------------------- (9) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (10) Obligation: Q DP problem: The TRS P consists of the following rules: B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> A_{B_1}(b_{a_1}(a_{a_1}(x1))) B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{a_1}(x1)) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> A_{B_1}(b_{a_1}(a_{b_1}(x1))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(x1)) The TRS R consists of the following rules: b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (11) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{a_1}(x1)) B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(x1)) The TRS R consists of the following rules: b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{a_1}(x1)) B_{A_1}(a_{a_1}(a_{a_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) B_{A_1}(a_{a_1}(a_{b_1}(x1))) -> B_{A_1}(a_{b_1}(x1)) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: POL( B_{A_1}_1(x_1) ) = max{0, x_1 - 2} POL( a_{b_1}_1(x_1) ) = x_1 + 2 POL( b_{a_1}_1(x_1) ) = max{0, x_1 - 1} POL( a_{a_1}_1(x_1) ) = x_1 + 2 POL( b_{b_1}_1(x_1) ) = x_1 + 1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) ---------------------------------------- (14) Obligation: Q DP problem: P is empty. The TRS R consists of the following rules: b_{a_1}(a_{b_1}(x1)) -> b_{b_1}(x1) b_{a_1}(a_{a_1}(a_{a_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1))))) b_{a_1}(a_{a_1}(a_{b_1}(x1))) -> b_{b_1}(b_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1))))) a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{a_1}(a_{a_1}(x1)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (15) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (16) YES