/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/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) QTRS Reverse [EQUIVALENT, 0 ms] (2) QTRS (3) RFCMatchBoundsTRSProof [EQUIVALENT, 0 ms] (4) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: active(f(X)) -> mark(g(h(f(X)))) active(f(X)) -> f(active(X)) active(h(X)) -> h(active(X)) f(mark(X)) -> mark(f(X)) h(mark(X)) -> mark(h(X)) proper(f(X)) -> f(proper(X)) proper(g(X)) -> g(proper(X)) proper(h(X)) -> h(proper(X)) f(ok(X)) -> ok(f(X)) g(ok(X)) -> ok(g(X)) h(ok(X)) -> ok(h(X)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) 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: f(active(X)) -> f(h(g(mark(X)))) f(active(X)) -> active(f(X)) h(active(X)) -> active(h(X)) mark(f(X)) -> f(mark(X)) mark(h(X)) -> h(mark(X)) f(proper(X)) -> proper(f(X)) g(proper(X)) -> proper(g(X)) h(proper(X)) -> proper(h(X)) ok(f(X)) -> f(ok(X)) ok(g(X)) -> g(ok(X)) ok(h(X)) -> h(ok(X)) mark(top(X)) -> proper(top(X)) ok(top(X)) -> active(top(X)) Q is empty. ---------------------------------------- (3) RFCMatchBoundsTRSProof (EQUIVALENT) Termination of the TRS R could be shown with a Match Bound [MATCHBOUNDS1,MATCHBOUNDS2] of 4. This implies Q-termination of R. The following rules were used to construct the certificate: f(active(X)) -> f(h(g(mark(X)))) f(active(X)) -> active(f(X)) h(active(X)) -> active(h(X)) mark(f(X)) -> f(mark(X)) mark(h(X)) -> h(mark(X)) f(proper(X)) -> proper(f(X)) g(proper(X)) -> proper(g(X)) h(proper(X)) -> proper(h(X)) ok(f(X)) -> f(ok(X)) ok(g(X)) -> g(ok(X)) ok(h(X)) -> h(ok(X)) mark(top(X)) -> proper(top(X)) ok(top(X)) -> active(top(X)) The certificate found is represented by the following graph. The certificate consists of the following enumerated nodes: 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115 Node 78 is start node and node 79 is final node. Those nodes are connected through the following edges: * 78 to 80 labelled f_1(0), g_1(0), h_1(0)* 78 to 83 labelled active_1(0), proper_1(0)* 78 to 82 labelled f_1(0), h_1(0)* 78 to 91 labelled f_1(1)* 78 to 94 labelled active_1(1), proper_1(1)* 78 to 110 labelled proper_1(2)* 79 to 79 labelled #_1(0)* 80 to 81 labelled h_1(0)* 80 to 79 labelled ok_1(0)* 80 to 84 labelled f_1(1), g_1(1), h_1(1)* 80 to 85 labelled active_1(1)* 80 to 97 labelled proper_1(1)* 80 to 98 labelled f_1(2)* 80 to 101 labelled active_1(2)* 80 to 113 labelled proper_1(3)* 80 to 114 labelled proper_1(2)* 81 to 82 labelled g_1(0)* 81 to 95 labelled proper_1(1)* 82 to 79 labelled mark_1(0)* 82 to 86 labelled f_1(1), h_1(1)* 82 to 85 labelled proper_1(1)* 82 to 101 labelled proper_1(2)* 83 to 79 labelled f_1(0), h_1(0), g_1(0), top_1(0)* 83 to 87 labelled f_1(1)* 83 to 90 labelled active_1(1), proper_1(1)* 83 to 106 labelled proper_1(2)* 84 to 79 labelled ok_1(1)* 84 to 84 labelled f_1(1), g_1(1), h_1(1)* 84 to 85 labelled active_1(1)* 84 to 98 labelled f_1(2)* 84 to 101 labelled active_1(2)* 84 to 113 labelled proper_1(3)* 84 to 114 labelled proper_1(2)* 85 to 79 labelled top_1(1)* 86 to 79 labelled mark_1(1)* 86 to 86 labelled f_1(1), h_1(1)* 86 to 85 labelled proper_1(1)* 86 to 101 labelled proper_1(2)* 87 to 88 labelled h_1(1)* 87 to 104 labelled proper_1(2)* 88 to 89 labelled g_1(1)* 88 to 102 labelled proper_1(2)* 89 to 79 labelled mark_1(1)* 89 to 86 labelled f_1(1), h_1(1)* 89 to 85 labelled proper_1(1)* 89 to 101 labelled proper_1(2)* 90 to 79 labelled f_1(1), h_1(1), g_1(1)* 90 to 87 labelled f_1(1)* 90 to 90 labelled active_1(1), proper_1(1)* 90 to 106 labelled proper_1(2)* 91 to 92 labelled h_1(1)* 91 to 107 labelled proper_1(2)* 92 to 93 labelled g_1(1)* 92 to 105 labelled proper_1(2)* 93 to 85 labelled mark_1(1)* 93 to 103 labelled proper_1(2)* 93 to 101 labelled mark_1(1)* 93 to 100 labelled f_1(2), h_1(2)* 93 to 111 labelled proper_1(3)* 94 to 85 labelled f_1(1), h_1(1)* 94 to 97 labelled f_1(1), g_1(1), h_1(1)* 94 to 101 labelled f_1(1), h_1(1)* 94 to 113 labelled f_1(1), g_1(1), h_1(1)* 94 to 114 labelled f_1(1), g_1(1), h_1(1)* 95 to 85 labelled g_1(1)* 95 to 101 labelled g_1(1)* 97 to 95 labelled h_1(1)* 98 to 99 labelled h_1(2)* 98 to 112 labelled proper_1(3)* 99 to 100 labelled g_1(2)* 99 to 109 labelled proper_1(3)* 100 to 85 labelled mark_1(2)* 100 to 101 labelled mark_1(2)* 100 to 103 labelled proper_1(2)* 100 to 108 labelled f_1(3), h_1(3)* 100 to 111 labelled proper_1(3)* 100 to 115 labelled proper_1(4)* 101 to 85 labelled f_1(2), h_1(2)* 101 to 101 labelled f_1(2), h_1(2)* 102 to 85 labelled g_1(2)* 102 to 101 labelled g_1(2)* 103 to 79 labelled top_1(2)* 104 to 102 labelled h_1(2)* 105 to 103 labelled g_1(2)* 105 to 111 labelled g_1(2)* 106 to 104 labelled f_1(2)* 107 to 105 labelled h_1(2)* 108 to 85 labelled mark_1(3)* 108 to 101 labelled mark_1(3)* 108 to 103 labelled proper_1(2)* 108 to 108 labelled f_1(3), h_1(3)* 108 to 111 labelled proper_1(3)* 108 to 115 labelled proper_1(4)* 109 to 103 labelled g_1(3)* 109 to 111 labelled g_1(3)* 109 to 115 labelled g_1(3)* 110 to 107 labelled f_1(2)* 111 to 103 labelled f_1(3), h_1(3)* 111 to 111 labelled f_1(3), h_1(3)* 111 to 115 labelled f_1(3), h_1(3)* 112 to 109 labelled h_1(3)* 113 to 112 labelled f_1(3)* 114 to 113 labelled f_1(2), g_1(2), h_1(2)* 114 to 114 labelled f_1(2), g_1(2), h_1(2)* 115 to 111 labelled f_1(4), h_1(4)* 115 to 115 labelled f_1(4), h_1(4) ---------------------------------------- (4) YES