/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: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) RFCMatchBoundsTRSProof [EQUIVALENT, 36 ms] (2) 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)) The set Q consists of the following terms: active(f(f(a))) active(g(x0)) g(mark(x0)) proper(f(x0)) proper(a) proper(g(x0)) f(ok(x0)) g(ok(x0)) top(mark(x0)) top(ok(x0)) ---------------------------------------- (1) RFCMatchBoundsTRSProof (EQUIVALENT) Termination of the TRS R could be shown with a Match Bound [MATCHBOUNDS1,MATCHBOUNDS2] of 7. This implies Q-termination of R. The following rules were used to construct the certificate: 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)) The certificate found is represented by the following graph. The certificate consists of the following enumerated nodes: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 35, 36, 37, 38, 39, 40, 41, 42, 44, 45, 46, 47, 60, 61, 62, 63, 68, 69, 70, 71, 72, 73, 74, 91, 92, 94, 95, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107 Node 1 is start node and node 2 is final node. Those nodes are connected through the following edges: * 1 to 3 labelled mark_1(0), ok_1(0)* 1 to 7 labelled g_1(0), top_1(0)* 1 to 8 labelled f_1(0), g_1(0), top_1(0)* 1 to 6 labelled ok_1(0)* 1 to 17 labelled mark_1(1)* 1 to 18 labelled top_1(1)* 1 to 13 labelled ok_1(1)* 1 to 44 labelled top_1(2)* 1 to 101 labelled top_1(3)* 2 to 2 labelled #_1(0)* 3 to 4 labelled f_1(0)* 3 to 2 labelled g_1(0)* 3 to 9 labelled mark_1(1), ok_1(1)* 4 to 5 labelled g_1(0)* 4 to 20 labelled ok_1(1)* 5 to 6 labelled f_1(0)* 5 to 19 labelled ok_1(1)* 6 to 2 labelled a(0), f_1(0)* 6 to 10 labelled ok_1(1)* 7 to 2 labelled active_1(0)* 7 to 11 labelled mark_1(1)* 7 to 15 labelled g_1(1)* 7 to 21 labelled mark_1(2)* 8 to 2 labelled proper_1(0)* 8 to 16 labelled f_1(1), g_1(1)* 8 to 14 labelled ok_1(1)* 8 to 22 labelled ok_1(2)* 9 to 2 labelled g_1(1)* 9 to 9 labelled mark_1(1), ok_1(1)* 9 to 20 labelled f_1(1)* 9 to 35 labelled ok_1(2)* 10 to 2 labelled f_1(1)* 10 to 10 labelled ok_1(1)* 11 to 12 labelled f_1(1)* 12 to 13 labelled g_1(1)* 13 to 14 labelled f_1(1), g_1(1)* 13 to 22 labelled f_1(1), g_1(1)* 14 to 2 labelled a(1)* 15 to 2 labelled active_1(1)* 15 to 11 labelled mark_1(1)* 15 to 15 labelled g_1(1)* 15 to 21 labelled mark_1(2)* 16 to 2 labelled proper_1(1)* 16 to 16 labelled f_1(1), g_1(1)* 16 to 14 labelled ok_1(1)* 16 to 22 labelled ok_1(2)* 17 to 11 labelled g_1(1)* 17 to 21 labelled g_1(1)* 18 to 11 labelled proper_1(1)* 18 to 14 labelled active_1(1)* 18 to 23 labelled f_1(2)* 18 to 21 labelled proper_1(1)* 18 to 22 labelled active_1(1)* 18 to 36 labelled g_1(2)* 18 to 39 labelled mark_1(2)* 18 to 60 labelled mark_1(3)* 18 to 70 labelled ok_1(3)* 19 to 10 labelled f_1(1)* 19 to 24 labelled ok_1(2)* 20 to 19 labelled g_1(1)* 20 to 25 labelled ok_1(2)* 21 to 11 labelled g_1(2)* 21 to 21 labelled g_1(2)* 22 to 14 labelled f_1(2), g_1(2)* 22 to 22 labelled f_1(2), g_1(2)* 23 to 12 labelled proper_1(2)* 23 to 26 labelled g_1(2)* 23 to 68 labelled ok_1(3)* 24 to 10 labelled f_1(2)* 24 to 24 labelled ok_1(2)* 25 to 24 labelled g_1(2)* 25 to 37 labelled ok_1(3)* 26 to 13 labelled proper_1(2)* 26 to 38 labelled f_1(2), g_1(2)* 26 to 61 labelled ok_1(3)* 26 to 68 labelled ok_1(3)* 35 to 25 labelled f_1(2)* 35 to 47 labelled ok_1(3)* 36 to 11 labelled proper_1(2)* 36 to 21 labelled proper_1(2)* 36 to 14 labelled active_1(2)* 36 to 22 labelled active_1(2)* 36 to 23 labelled f_1(2)* 36 to 45 labelled g_1(3)* 36 to 39 labelled mark_1(2)* 36 to 60 labelled mark_1(3)* 36 to 70 labelled ok_1(3)* 36 to 71 labelled mark_1(4)* 36 to 91 labelled ok_1(4)* 37 to 24 labelled g_1(3)* 37 to 37 labelled ok_1(3)* 38 to 14 labelled proper_1(2)* 38 to 22 labelled proper_1(2)* 38 to 46 labelled f_1(3), g_1(3)* 38 to 42 labelled ok_1(2)* 38 to 61 labelled ok_1(3)* 38 to 72 labelled ok_1(4)* 39 to 40 labelled f_1(2)* 40 to 41 labelled g_1(2)* 41 to 42 labelled f_1(2)* 42 to 2 labelled a(2)* 44 to 39 labelled proper_1(2)* 44 to 62 labelled f_1(3)* 44 to 60 labelled proper_1(2)* 44 to 73 labelled g_1(3)* 44 to 70 labelled active_1(2)* 44 to 100 labelled ok_1(4)* 45 to 11 labelled proper_1(3)* 45 to 21 labelled proper_1(3)* 45 to 14 labelled active_1(3)* 45 to 22 labelled active_1(3)* 45 to 23 labelled f_1(2)* 45 to 45 labelled g_1(3)* 45 to 39 labelled mark_1(2)* 45 to 60 labelled mark_1(3)* 45 to 70 labelled ok_1(3)* 45 to 71 labelled mark_1(4)* 45 to 91 labelled ok_1(4)* 46 to 14 labelled proper_1(3)* 46 to 22 labelled proper_1(3)* 46 to 46 labelled f_1(3), g_1(3)* 46 to 42 labelled ok_1(2)* 46 to 61 labelled ok_1(3)* 46 to 72 labelled ok_1(4)* 47 to 37 labelled f_1(3)* 47 to 63 labelled ok_1(4)* 60 to 39 labelled g_1(3)* 60 to 60 labelled g_1(3)* 60 to 71 labelled g_1(3)* 61 to 42 labelled f_1(3), g_1(3)* 61 to 61 labelled f_1(3)* 61 to 72 labelled f_1(3), g_1(3)* 62 to 40 labelled proper_1(3)* 62 to 69 labelled g_1(3)* 62 to 98 labelled ok_1(4)* 63 to 37 labelled f_1(4)* 63 to 63 labelled ok_1(4)* 68 to 61 labelled g_1(3)* 68 to 68 labelled g_1(3)* 69 to 41 labelled proper_1(3)* 69 to 74 labelled f_1(3)* 69 to 95 labelled ok_1(4)* 70 to 68 labelled f_1(3)* 70 to 70 labelled g_1(3)* 70 to 91 labelled g_1(3)* 71 to 60 labelled g_1(4)* 71 to 71 labelled g_1(4)* 72 to 61 labelled f_1(4), g_1(4)* 72 to 72 labelled f_1(4), g_1(4)* 73 to 39 labelled proper_1(3)* 73 to 62 labelled f_1(3)* 73 to 60 labelled proper_1(3)* 73 to 94 labelled g_1(4)* 73 to 71 labelled proper_1(3)* 73 to 70 labelled active_1(3)* 73 to 91 labelled active_1(3)* 73 to 100 labelled ok_1(4)* 73 to 102 labelled ok_1(5)* 74 to 42 labelled proper_1(3)* 74 to 92 labelled ok_1(3)* 91 to 70 labelled g_1(4)* 91 to 91 labelled g_1(4)* 92 to 2 labelled a(3)* 94 to 39 labelled proper_1(4)* 94 to 60 labelled proper_1(4)* 94 to 71 labelled proper_1(4)* 94 to 62 labelled f_1(3)* 94 to 94 labelled g_1(4)* 94 to 70 labelled active_1(4)* 94 to 91 labelled active_1(4)* 94 to 99 labelled g_1(5)* 94 to 100 labelled ok_1(4)* 94 to 102 labelled ok_1(5)* 94 to 103 labelled ok_1(6)* 95 to 92 labelled f_1(4)* 98 to 95 labelled g_1(4)* 99 to 60 labelled proper_1(5)* 99 to 71 labelled proper_1(5)* 99 to 94 labelled g_1(4)* 99 to 99 labelled g_1(5)* 99 to 70 labelled active_1(5)* 99 to 91 labelled active_1(5)* 99 to 102 labelled ok_1(5)* 99 to 103 labelled ok_1(6)* 100 to 98 labelled f_1(4)* 100 to 100 labelled g_1(4)* 100 to 102 labelled g_1(4)* 101 to 100 labelled active_1(3)* 101 to 104 labelled g_1(4)* 102 to 100 labelled g_1(5)* 102 to 102 labelled g_1(5)* 102 to 103 labelled g_1(5)* 103 to 102 labelled g_1(6)* 103 to 103 labelled g_1(6)* 104 to 100 labelled active_1(4)* 104 to 105 labelled g_1(5)* 104 to 102 labelled active_1(4)* 105 to 100 labelled active_1(5)* 105 to 102 labelled active_1(5)* 105 to 105 labelled g_1(5)* 105 to 106 labelled g_1(6)* 105 to 103 labelled active_1(5)* 106 to 100 labelled active_1(6)* 106 to 102 labelled active_1(6)* 106 to 103 labelled active_1(6)* 106 to 105 labelled g_1(5)* 106 to 106 labelled g_1(6)* 106 to 107 labelled g_1(7)* 107 to 102 labelled active_1(7)* 107 to 103 labelled active_1(7)* 107 to 106 labelled g_1(6)* 107 to 107 labelled g_1(7) ---------------------------------------- (2) YES