17.04/5.22 YES 17.04/5.22 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 17.04/5.22 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 17.04/5.22 17.04/5.22 17.04/5.22 Termination w.r.t. Q of the given QTRS could be proven: 17.04/5.22 17.04/5.22 (0) QTRS 17.04/5.22 (1) QTRS Reverse [EQUIVALENT, 0 ms] 17.04/5.22 (2) QTRS 17.04/5.22 (3) FlatCCProof [EQUIVALENT, 0 ms] 17.04/5.22 (4) QTRS 17.04/5.22 (5) RootLabelingProof [EQUIVALENT, 0 ms] 17.04/5.22 (6) QTRS 17.04/5.22 (7) DependencyPairsProof [EQUIVALENT, 31 ms] 17.04/5.22 (8) QDP 17.04/5.22 (9) QDPOrderProof [EQUIVALENT, 117 ms] 17.04/5.22 (10) QDP 17.04/5.22 (11) DependencyGraphProof [EQUIVALENT, 0 ms] 17.04/5.22 (12) TRUE 17.04/5.22 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (0) 17.04/5.22 Obligation: 17.04/5.22 Q restricted rewrite system: 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 b(a(a(a(x1)))) -> b(b(a(a(x1)))) 17.04/5.22 a(b(a(a(x1)))) -> b(b(b(a(x1)))) 17.04/5.22 b(b(b(a(x1)))) -> a(a(a(b(x1)))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (1) QTRS Reverse (EQUIVALENT) 17.04/5.22 We applied the QTRS Reverse Processor [REVERSE]. 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (2) 17.04/5.22 Obligation: 17.04/5.22 Q restricted rewrite system: 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 a(a(a(b(x1)))) -> a(a(b(b(x1)))) 17.04/5.22 a(a(b(a(x1)))) -> a(b(b(b(x1)))) 17.04/5.22 a(b(b(b(x1)))) -> b(a(a(a(x1)))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (3) FlatCCProof (EQUIVALENT) 17.04/5.22 We used flat context closure [ROOTLAB] 17.04/5.22 As Q is empty the flat context closure was sound AND complete. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (4) 17.04/5.22 Obligation: 17.04/5.22 Q restricted rewrite system: 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 a(a(a(b(x1)))) -> a(a(b(b(x1)))) 17.04/5.22 a(a(b(a(x1)))) -> a(b(b(b(x1)))) 17.04/5.22 a(a(b(b(b(x1))))) -> a(b(a(a(a(x1))))) 17.04/5.22 b(a(b(b(b(x1))))) -> b(b(a(a(a(x1))))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (5) RootLabelingProof (EQUIVALENT) 17.04/5.22 We used plain root labeling [ROOTLAB] with the following heuristic: 17.04/5.22 LabelAll: All function symbols get labeled 17.04/5.22 17.04/5.22 As Q is empty the root labeling was sound AND complete. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (6) 17.04/5.22 Obligation: 17.04/5.22 Q restricted rewrite system: 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (7) DependencyPairsProof (EQUIVALENT) 17.04/5.22 Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (8) 17.04/5.22 Obligation: 17.04/5.22 Q DP problem: 17.04/5.22 The TRS P consists of the following rules: 17.04/5.22 17.04/5.22 A_{A_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> A_{A_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 A_{A_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> B_{A_1}(x1) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1)))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{a_1}(x1))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(x1)) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(x1) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1)))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{b_1}(x1))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{b_1}(x1)) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1)))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{a_1}(x1))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(x1)) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(x1) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1)))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{b_1}(x1))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{b_1}(x1)) 17.04/5.22 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 We have to consider all minimal (P,Q,R)-chains. 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (9) QDPOrderProof (EQUIVALENT) 17.04/5.22 We use the reduction pair processor [LPAR04,JAR06]. 17.04/5.22 17.04/5.22 17.04/5.22 The following pairs can be oriented strictly and are deleted. 17.04/5.22 17.04/5.22 A_{A_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> B_{A_1}(x1) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1)))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{a_1}(x1))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(x1)) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(x1) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1)))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{b_1}(x1))) 17.04/5.22 A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{b_1}(x1)) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1)))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{a_1}(x1))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(a_{a_1}(x1)) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> A_{A_1}(x1) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> B_{A_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1)))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{a_1}(a_{b_1}(x1))) 17.04/5.22 B_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> A_{A_1}(a_{b_1}(x1)) 17.04/5.22 The remaining pairs can at least be oriented weakly. 17.04/5.22 Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: 17.04/5.22 17.04/5.22 POL( A_{A_1}_1(x_1) ) = 2x_1 + 2 17.04/5.22 POL( a_{b_1}_1(x_1) ) = x_1 + 2 17.04/5.22 POL( B_{A_1}_1(x_1) ) = max{0, 2x_1 - 2} 17.04/5.22 POL( b_{a_1}_1(x_1) ) = x_1 + 2 17.04/5.22 POL( b_{b_1}_1(x_1) ) = x_1 + 2 17.04/5.22 POL( a_{a_1}_1(x_1) ) = x_1 + 2 17.04/5.22 17.04/5.22 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 17.04/5.22 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 17.04/5.22 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (10) 17.04/5.22 Obligation: 17.04/5.22 Q DP problem: 17.04/5.22 The TRS P consists of the following rules: 17.04/5.22 17.04/5.22 A_{A_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> A_{A_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 A_{A_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> A_{A_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 17.04/5.22 The TRS R consists of the following rules: 17.04/5.22 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{a_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{a_1}(a_{b_1}(b_{b_1}(x1)))) -> a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{a_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{a_1}(a_{b_1}(x1)))) -> a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1)))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 a_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> a_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{a_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{a_1}(x1))))) 17.04/5.22 b_{a_1}(a_{b_1}(b_{b_1}(b_{b_1}(b_{b_1}(x1))))) -> b_{b_1}(b_{a_1}(a_{a_1}(a_{a_1}(a_{b_1}(x1))))) 17.04/5.22 17.04/5.22 Q is empty. 17.04/5.22 We have to consider all minimal (P,Q,R)-chains. 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (11) DependencyGraphProof (EQUIVALENT) 17.04/5.22 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes. 17.04/5.22 ---------------------------------------- 17.04/5.22 17.04/5.22 (12) 17.04/5.22 TRUE 17.35/5.33 EOF