/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) QTRS Reverse [EQUIVALENT, 0 ms] (2) QTRS (3) RFCMatchBoundsTRSProof [EQUIVALENT, 19 ms] (4) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: active(f(f(a))) -> mark(f(g(f(a)))) active(g(X)) -> g(active(X)) g(mark(X)) -> mark(g(X)) proper(f(X)) -> f(proper(X)) proper(a) -> ok(a) proper(g(X)) -> g(proper(X)) f(ok(X)) -> ok(f(X)) g(ok(X)) -> ok(g(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: a'(f(f(active(x)))) -> a'(f(g(f(mark(x))))) g(active(X)) -> active(g(X)) mark(g(X)) -> g(mark(X)) f(proper(X)) -> proper(f(X)) a'(proper(x)) -> a'(ok(x)) g(proper(X)) -> proper(g(X)) ok(f(X)) -> f(ok(X)) ok(g(X)) -> g(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 6. This implies Q-termination of R. The following rules were used to construct the certificate: a'(f(f(active(x)))) -> a'(f(g(f(mark(x))))) g(active(X)) -> active(g(X)) mark(g(X)) -> g(mark(X)) f(proper(X)) -> proper(f(X)) a'(proper(x)) -> a'(ok(x)) g(proper(X)) -> proper(g(X)) ok(f(X)) -> f(ok(X)) ok(g(X)) -> g(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: 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 30, 31, 40, 41, 42, 43, 44, 45, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 61, 62, 63, 64, 65, 66, 76, 81, 82, 85, 93, 94, 95 Node 9 is start node and node 10 is final node. Those nodes are connected through the following edges: * 9 to 11 labelled a'_1(0), f_1(0), g_1(0)* 9 to 15 labelled active_1(0), proper_1(0)* 9 to 14 labelled g_1(0)* 9 to 16 labelled proper_1(0)* 9 to 30 labelled active_1(1), proper_1(1)* 9 to 42 labelled a'_1(1)* 9 to 61 labelled a'_1(2)* 10 to 10 labelled #_1(0)* 11 to 12 labelled f_1(0)* 11 to 10 labelled ok_1(0)* 11 to 18 labelled f_1(1), g_1(1)* 11 to 19 labelled active_1(1)* 11 to 40 labelled active_1(2)* 11 to 48 labelled proper_1(1)* 12 to 13 labelled g_1(0)* 12 to 41 labelled proper_1(1)* 13 to 14 labelled f_1(0)* 13 to 31 labelled proper_1(1)* 14 to 10 labelled mark_1(0)* 14 to 20 labelled g_1(1)* 14 to 19 labelled proper_1(1)* 14 to 40 labelled proper_1(2)* 15 to 10 labelled g_1(0), top_1(0)* 15 to 21 labelled active_1(1), proper_1(1)* 16 to 10 labelled f_1(0)* 16 to 22 labelled proper_1(1)* 18 to 10 labelled ok_1(1)* 18 to 18 labelled f_1(1), g_1(1)* 18 to 19 labelled active_1(1)* 18 to 40 labelled active_1(2)* 19 to 10 labelled top_1(1)* 20 to 10 labelled mark_1(1)* 20 to 20 labelled g_1(1)* 20 to 19 labelled proper_1(1)* 20 to 40 labelled proper_1(2)* 21 to 10 labelled g_1(1)* 21 to 21 labelled active_1(1), proper_1(1)* 22 to 10 labelled f_1(1)* 22 to 22 labelled proper_1(1)* 30 to 19 labelled g_1(1)* 30 to 40 labelled g_1(1)* 30 to 48 labelled f_1(1), g_1(1)* 31 to 19 labelled f_1(1)* 31 to 40 labelled f_1(1)* 40 to 19 labelled g_1(2)* 40 to 40 labelled g_1(2)* 41 to 31 labelled g_1(1)* 42 to 43 labelled f_1(1)* 42 to 48 labelled ok_1(1)* 42 to 52 labelled f_1(2)* 42 to 55 labelled proper_1(2)* 43 to 44 labelled g_1(1)* 43 to 53 labelled proper_1(2)* 44 to 45 labelled f_1(1)* 44 to 50 labelled proper_1(2)* 45 to 19 labelled mark_1(1)* 45 to 49 labelled proper_1(2)* 45 to 40 labelled mark_1(1)* 45 to 51 labelled g_1(2)* 45 to 56 labelled proper_1(3)* 48 to 41 labelled f_1(1)* 49 to 10 labelled top_1(2)* 50 to 49 labelled f_1(2)* 50 to 56 labelled f_1(2)* 51 to 19 labelled mark_1(2)* 51 to 40 labelled mark_1(2)* 51 to 49 labelled proper_1(2)* 51 to 54 labelled g_1(3)* 51 to 56 labelled proper_1(3)* 51 to 64 labelled proper_1(4)* 52 to 41 labelled ok_1(2)* 52 to 57 labelled g_1(2)* 53 to 50 labelled g_1(2)* 54 to 19 labelled mark_1(3)* 54 to 40 labelled mark_1(3)* 54 to 49 labelled proper_1(2)* 54 to 54 labelled g_1(3)* 54 to 56 labelled proper_1(3)* 54 to 64 labelled proper_1(4)* 55 to 53 labelled f_1(2)* 56 to 49 labelled g_1(3)* 56 to 56 labelled g_1(3)* 56 to 64 labelled g_1(3)* 57 to 31 labelled ok_1(2)* 57 to 62 labelled f_1(2)* 61 to 55 labelled ok_1(2)* 61 to 65 labelled f_1(3)* 62 to 19 labelled ok_1(2)* 62 to 40 labelled ok_1(2)* 62 to 49 labelled active_1(2)* 62 to 63 labelled g_1(3)* 62 to 56 labelled active_1(3)* 62 to 64 labelled active_1(4)* 63 to 19 labelled ok_1(3)* 63 to 40 labelled ok_1(3)* 63 to 49 labelled active_1(2)* 63 to 63 labelled g_1(3)* 63 to 56 labelled active_1(3)* 63 to 64 labelled active_1(4)* 64 to 56 labelled g_1(4)* 64 to 64 labelled g_1(4)* 65 to 53 labelled ok_1(3)* 65 to 66 labelled g_1(3)* 66 to 50 labelled ok_1(3)* 66 to 76 labelled f_1(3)* 76 to 49 labelled ok_1(3)* 76 to 56 labelled ok_1(3)* 76 to 81 labelled active_1(3)* 76 to 82 labelled g_1(4)* 76 to 93 labelled active_1(4)* 76 to 94 labelled active_1(5)* 81 to 10 labelled top_1(3)* 82 to 49 labelled ok_1(4)* 82 to 56 labelled ok_1(4)* 82 to 64 labelled ok_1(4)* 82 to 81 labelled active_1(3)* 82 to 82 labelled g_1(4)* 82 to 85 labelled g_1(5)* 82 to 93 labelled active_1(4)* 82 to 94 labelled active_1(5)* 82 to 95 labelled active_1(6)* 85 to 56 labelled ok_1(5)* 85 to 64 labelled ok_1(5)* 85 to 82 labelled g_1(4)* 85 to 85 labelled g_1(5)* 85 to 93 labelled active_1(4)* 85 to 94 labelled active_1(5)* 85 to 95 labelled active_1(6)* 93 to 81 labelled g_1(4)* 94 to 93 labelled g_1(5)* 94 to 94 labelled g_1(5)* 94 to 95 labelled g_1(5)* 95 to 94 labelled g_1(6)* 95 to 95 labelled g_1(6) ---------------------------------------- (4) YES