/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) DependencyPairsProof [EQUIVALENT, 0 ms] (2) QDP (3) QDPOrderProof [EQUIVALENT, 40 ms] (4) QDP (5) QDPOrderProof [EQUIVALENT, 31 ms] (6) QDP (7) DependencyGraphProof [EQUIVALENT, 0 ms] (8) QDP (9) QDPOrderProof [EQUIVALENT, 0 ms] (10) QDP (11) PisEmptyProof [EQUIVALENT, 0 ms] (12) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) 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: A__F(g(X), Y) -> A__F(mark(X), f(g(X), Y)) A__F(g(X), Y) -> MARK(X) MARK(f(X1, X2)) -> A__F(mark(X1), X2) MARK(f(X1, X2)) -> MARK(X1) MARK(g(X)) -> MARK(X) The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (3) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. MARK(g(X)) -> MARK(X) The remaining pairs can at least be oriented weakly. Used ordering: Combined order from the following AFS and order. A__F(x1, x2) = x1 g(x1) = g(x1) mark(x1) = mark(x1) f(x1, x2) = x1 MARK(x1) = MARK(x1) a__f(x1, x2) = x1 Recursive path order with status [RPO]. Quasi-Precedence: [g_1, mark_1, MARK_1] Status: g_1: multiset status mark_1: multiset status MARK_1: multiset status The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) ---------------------------------------- (4) Obligation: Q DP problem: The TRS P consists of the following rules: A__F(g(X), Y) -> A__F(mark(X), f(g(X), Y)) A__F(g(X), Y) -> MARK(X) MARK(f(X1, X2)) -> A__F(mark(X1), X2) MARK(f(X1, X2)) -> MARK(X1) The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (5) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. A__F(g(X), Y) -> MARK(X) MARK(f(X1, X2)) -> MARK(X1) The remaining pairs can at least be oriented weakly. Used ordering: Combined order from the following AFS and order. A__F(x1, x2) = A__F(x1) g(x1) = x1 mark(x1) = x1 f(x1, x2) = f(x1) MARK(x1) = x1 a__f(x1, x2) = a__f(x1) Recursive path order with status [RPO]. Quasi-Precedence: [A__F_1, f_1, a__f_1] Status: A__F_1: [1] f_1: [1] a__f_1: [1] The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) ---------------------------------------- (6) Obligation: Q DP problem: The TRS P consists of the following rules: A__F(g(X), Y) -> A__F(mark(X), f(g(X), Y)) MARK(f(X1, X2)) -> A__F(mark(X1), X2) The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (7) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (8) Obligation: Q DP problem: The TRS P consists of the following rules: A__F(g(X), Y) -> A__F(mark(X), f(g(X), Y)) The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (9) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. A__F(g(X), Y) -> A__F(mark(X), f(g(X), Y)) The remaining pairs can at least be oriented weakly. Used ordering: Combined order from the following AFS and order. A__F(x1, x2) = x1 g(x1) = g(x1) mark(x1) = mark(x1) f(x1, x2) = f a__f(x1, x2) = a__f Knuth-Bendix order [KBO] with precedence:a__f > f mark_1 > g_1 and weight map: a__f=1 g_1=2 f=1 mark_1=1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) a__f(X1, X2) -> f(X1, X2) ---------------------------------------- (10) Obligation: Q DP problem: P is empty. The TRS R consists of the following rules: a__f(g(X), Y) -> a__f(mark(X), f(g(X), Y)) mark(f(X1, X2)) -> a__f(mark(X1), X2) mark(g(X)) -> g(mark(X)) a__f(X1, X2) -> f(X1, X2) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (11) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (12) YES