YES proof of /export/starexec/sandbox2/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, 6 ms] (8) QTRS (9) QTRSRRRProof [EQUIVALENT, 2 ms] (10) QTRS (11) RisEmptyProof [EQUIVALENT, 0 ms] (12) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: b(b(b(x1))) -> a(x1) a(a(x1)) -> a(b(a(x1))) a(a(a(x1))) -> b(a(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: b(b(b(x1))) -> a(x1) a(a(x1)) -> a(b(a(x1))) a(a(a(x1))) -> a(a(b(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(b(a(x1))) a(a(a(x1))) -> a(a(b(x1))) b(b(b(b(x1)))) -> b(a(x1)) a(b(b(b(x1)))) -> a(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_{b_1}(b_{a_1}(a_{a_1}(x1))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{b_1}(x1))) a_{a_1}(a_{a_1}(a_{a_1}(x1))) -> a_{a_1}(a_{b_1}(b_{a_1}(x1))) a_{a_1}(a_{a_1}(a_{b_1}(x1))) -> a_{a_1}(a_{b_1}(b_{b_1}(x1))) 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}(x1)))) -> b_{a_1}(a_{b_1}(x1)) a_{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}(x1)))) -> a_{a_1}(a_{b_1}(x1)) Q is empty. ---------------------------------------- (7) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(a_{a_1}(x_1)) = 3 + x_1 POL(a_{b_1}(x_1)) = x_1 POL(b_{a_1}(x_1)) = 3 + x_1 POL(b_{b_1}(x_1)) = 2 + 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}(a_{a_1}(x1))) -> a_{a_1}(a_{b_1}(b_{a_1}(x1))) a_{a_1}(a_{a_1}(a_{b_1}(x1))) -> a_{a_1}(a_{b_1}(b_{b_1}(x1))) 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}(x1)))) -> b_{a_1}(a_{b_1}(x1)) a_{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}(x1)))) -> a_{a_1}(a_{b_1}(x1)) ---------------------------------------- (8) 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_{a_1}(x1))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{b_1}(x1))) Q is empty. ---------------------------------------- (9) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(a_{a_1}(x_1)) = 1 + x_1 POL(a_{b_1}(x_1)) = x_1 POL(b_{a_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_{b_1}(b_{a_1}(a_{a_1}(x1))) a_{a_1}(a_{b_1}(x1)) -> a_{b_1}(b_{a_1}(a_{b_1}(x1))) ---------------------------------------- (10) Obligation: Q restricted rewrite system: R is empty. Q is empty. ---------------------------------------- (11) RisEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (12) YES