YES proof of /export/starexec/sandbox/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) RFCMatchBoundsTRSProof [EQUIVALENT, 26 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: 21, 22, 23, 24, 25, 26, 29, 31, 32, 35, 36, 37, 38, 39, 40, 41, 42, 43, 47, 48, 49, 50, 51, 52, 53, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 73, 74 Node 21 is start node and node 22 is final node. Those nodes are connected through the following edges: * 21 to 23 labelled f_1(0), g_1(0), h_1(0)* 21 to 26 labelled active_1(0), proper_1(0)* 21 to 25 labelled f_1(0), h_1(0)* 21 to 39 labelled f_1(1)* 21 to 42 labelled active_1(1), proper_1(1)* 21 to 65 labelled proper_1(2)* 22 to 22 labelled #_1(0)* 23 to 24 labelled h_1(0)* 23 to 22 labelled ok_1(0)* 23 to 29 labelled f_1(1), g_1(1), h_1(1)* 23 to 31 labelled active_1(1)* 23 to 47 labelled proper_1(1)* 23 to 48 labelled f_1(2)* 23 to 51 labelled active_1(2)* 23 to 68 labelled proper_1(3)* 23 to 73 labelled proper_1(2)* 24 to 25 labelled g_1(0)* 24 to 43 labelled proper_1(1)* 25 to 22 labelled mark_1(0)* 25 to 32 labelled f_1(1), h_1(1)* 25 to 31 labelled proper_1(1)* 25 to 51 labelled proper_1(2)* 26 to 22 labelled f_1(0), h_1(0), g_1(0), top_1(0)* 26 to 35 labelled f_1(1)* 26 to 38 labelled active_1(1), proper_1(1)* 26 to 61 labelled proper_1(2)* 29 to 22 labelled ok_1(1)* 29 to 29 labelled f_1(1), g_1(1), h_1(1)* 29 to 31 labelled active_1(1)* 29 to 48 labelled f_1(2)* 29 to 51 labelled active_1(2)* 29 to 68 labelled proper_1(3)* 29 to 73 labelled proper_1(2)* 31 to 22 labelled top_1(1)* 32 to 22 labelled mark_1(1)* 32 to 32 labelled f_1(1), h_1(1)* 32 to 31 labelled proper_1(1)* 32 to 51 labelled proper_1(2)* 35 to 36 labelled h_1(1)* 35 to 59 labelled proper_1(2)* 36 to 37 labelled g_1(1)* 36 to 52 labelled proper_1(2)* 37 to 22 labelled mark_1(1)* 37 to 32 labelled f_1(1), h_1(1)* 37 to 31 labelled proper_1(1)* 37 to 51 labelled proper_1(2)* 38 to 22 labelled f_1(1), h_1(1), g_1(1)* 38 to 35 labelled f_1(1)* 38 to 38 labelled active_1(1), proper_1(1)* 38 to 61 labelled proper_1(2)* 39 to 40 labelled h_1(1)* 39 to 62 labelled proper_1(2)* 40 to 41 labelled g_1(1)* 40 to 60 labelled proper_1(2)* 41 to 31 labelled mark_1(1)* 41 to 53 labelled proper_1(2)* 41 to 51 labelled mark_1(1)* 41 to 50 labelled f_1(2), h_1(2)* 41 to 66 labelled proper_1(3)* 42 to 31 labelled f_1(1), h_1(1)* 42 to 47 labelled f_1(1), g_1(1), h_1(1)* 42 to 51 labelled f_1(1), h_1(1)* 42 to 68 labelled f_1(1), g_1(1), h_1(1)* 42 to 73 labelled f_1(1), g_1(1), h_1(1)* 43 to 31 labelled g_1(1)* 43 to 51 labelled g_1(1)* 47 to 43 labelled h_1(1)* 48 to 49 labelled h_1(2)* 48 to 67 labelled proper_1(3)* 49 to 50 labelled g_1(2)* 49 to 64 labelled proper_1(3)* 50 to 31 labelled mark_1(2)* 50 to 51 labelled mark_1(2)* 50 to 53 labelled proper_1(2)* 50 to 63 labelled f_1(3), h_1(3)* 50 to 66 labelled proper_1(3)* 50 to 74 labelled proper_1(4)* 51 to 31 labelled f_1(2), h_1(2)* 51 to 51 labelled f_1(2), h_1(2)* 52 to 31 labelled g_1(2)* 52 to 51 labelled g_1(2)* 53 to 22 labelled top_1(2)* 59 to 52 labelled h_1(2)* 60 to 53 labelled g_1(2)* 60 to 66 labelled g_1(2)* 61 to 59 labelled f_1(2)* 62 to 60 labelled h_1(2)* 63 to 31 labelled mark_1(3)* 63 to 51 labelled mark_1(3)* 63 to 53 labelled proper_1(2)* 63 to 63 labelled f_1(3), h_1(3)* 63 to 66 labelled proper_1(3)* 63 to 74 labelled proper_1(4)* 64 to 53 labelled g_1(3)* 64 to 66 labelled g_1(3)* 64 to 74 labelled g_1(3)* 65 to 62 labelled f_1(2)* 66 to 53 labelled f_1(3), h_1(3)* 66 to 66 labelled f_1(3), h_1(3)* 66 to 74 labelled f_1(3), h_1(3)* 67 to 64 labelled h_1(3)* 68 to 67 labelled f_1(3)* 73 to 68 labelled f_1(2), g_1(2), h_1(2)* 73 to 73 labelled f_1(2), g_1(2), h_1(2)* 74 to 66 labelled f_1(4), h_1(4)* 74 to 74 labelled f_1(4), h_1(4) ---------------------------------------- (4) YES