/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: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) QTRS Reverse [SOUND, 0 ms] (2) QTRS (3) RFCMatchBoundsTRSProof [EQUIVALENT, 4 ms] (4) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: active(f(f(X))) -> mark(c(f(g(f(X))))) active(c(X)) -> mark(d(X)) active(h(X)) -> mark(c(d(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(c(X)) -> c(proper(X)) proper(g(X)) -> g(proper(X)) proper(d(X)) -> d(proper(X)) proper(h(X)) -> h(proper(X)) f(ok(X)) -> ok(f(X)) c(ok(X)) -> ok(c(X)) g(ok(X)) -> ok(g(X)) d(ok(X)) -> ok(d(X)) h(ok(X)) -> ok(h(X)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) The set Q consists of the following terms: active(c(x0)) active(h(x0)) active(f(x0)) f(mark(x0)) h(mark(x0)) proper(f(x0)) proper(c(x0)) proper(g(x0)) proper(d(x0)) proper(h(x0)) f(ok(x0)) c(ok(x0)) g(ok(x0)) d(ok(x0)) h(ok(x0)) top(mark(x0)) top(ok(x0)) ---------------------------------------- (1) QTRS Reverse (SOUND) We applied the QTRS Reverse Processor [REVERSE]. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: f(f(active(X))) -> f(g(f(c(mark(X))))) c(active(X)) -> d(mark(X)) h(active(X)) -> d(c(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)) c(proper(X)) -> proper(c(X)) g(proper(X)) -> proper(g(X)) d(proper(X)) -> proper(d(X)) h(proper(X)) -> proper(h(X)) ok(f(X)) -> f(ok(X)) ok(c(X)) -> c(ok(X)) ok(g(X)) -> g(ok(X)) ok(d(X)) -> d(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(f(active(X))) -> f(g(f(c(mark(X))))) c(active(X)) -> d(mark(X)) h(active(X)) -> d(c(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)) c(proper(X)) -> proper(c(X)) g(proper(X)) -> proper(g(X)) d(proper(X)) -> proper(d(X)) h(proper(X)) -> proper(h(X)) ok(f(X)) -> f(ok(X)) ok(c(X)) -> c(ok(X)) ok(g(X)) -> g(ok(X)) ok(d(X)) -> d(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: 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, 74, 75, 76, 77, 78, 82, 83, 84, 85, 89, 90, 91 Node 27 is start node and node 28 is final node. Those nodes are connected through the following edges: * 27 to 29 labelled f_1(0), c_1(0), g_1(0), d_1(0), h_1(0)* 27 to 32 labelled d_1(0), f_1(0), h_1(0)* 27 to 31 labelled d_1(0)* 27 to 33 labelled active_1(0), proper_1(0)* 27 to 42 labelled active_1(1), proper_1(1)* 27 to 43 labelled d_1(1)* 27 to 44 labelled d_1(1)* 27 to 46 labelled proper_1(1)* 27 to 62 labelled f_1(1)* 27 to 70 labelled proper_1(2)* 28 to 28 labelled #_1(0)* 29 to 30 labelled g_1(0)* 29 to 28 labelled ok_1(0)* 29 to 34 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)* 29 to 35 labelled active_1(1)* 29 to 55 labelled active_1(2)* 29 to 56 labelled d_1(2)* 29 to 57 labelled d_1(2)* 29 to 66 labelled f_1(2)* 29 to 71 labelled proper_1(1)* 29 to 75 labelled proper_1(3)* 29 to 82 labelled proper_1(2)* 30 to 31 labelled f_1(0)* 30 to 54 labelled proper_1(1)* 31 to 32 labelled c_1(0)* 31 to 47 labelled proper_1(1)* 32 to 28 labelled mark_1(0)* 32 to 36 labelled f_1(1), h_1(1)* 32 to 35 labelled proper_1(1)* 32 to 55 labelled proper_1(2)* 33 to 28 labelled f_1(0), h_1(0), c_1(0), g_1(0), d_1(0), top_1(0)* 33 to 37 labelled f_1(1)* 33 to 41 labelled active_1(1), proper_1(1)* 33 to 39 labelled d_1(1)* 33 to 36 labelled d_1(1)* 33 to 59 labelled proper_1(2)* 34 to 28 labelled ok_1(1)* 34 to 34 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)* 34 to 35 labelled active_1(1)* 34 to 55 labelled active_1(2)* 34 to 56 labelled d_1(2)* 34 to 57 labelled d_1(2)* 34 to 66 labelled f_1(2)* 34 to 75 labelled proper_1(3)* 34 to 82 labelled proper_1(2)* 35 to 28 labelled top_1(1)* 36 to 28 labelled mark_1(1)* 36 to 36 labelled f_1(1), h_1(1)* 36 to 35 labelled proper_1(1)* 36 to 55 labelled proper_1(2)* 37 to 38 labelled g_1(1)* 37 to 76 labelled proper_1(2)* 38 to 39 labelled f_1(1)* 38 to 73 labelled proper_1(2)* 39 to 40 labelled c_1(1)* 39 to 60 labelled proper_1(2)* 40 to 28 labelled mark_1(1)* 40 to 36 labelled f_1(1), h_1(1)* 40 to 35 labelled proper_1(1)* 40 to 55 labelled proper_1(2)* 41 to 28 labelled f_1(1), h_1(1), c_1(1), g_1(1), d_1(1)* 41 to 37 labelled f_1(1)* 41 to 41 labelled active_1(1), proper_1(1)* 41 to 39 labelled d_1(1)* 41 to 36 labelled d_1(1)* 41 to 59 labelled proper_1(2)* 42 to 35 labelled f_1(1), h_1(1)* 42 to 47 labelled d_1(1)* 42 to 55 labelled f_1(1), h_1(1), d_1(1)* 42 to 71 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)* 42 to 75 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)* 42 to 82 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)* 43 to 35 labelled mark_1(1)* 43 to 61 labelled proper_1(2)* 43 to 55 labelled mark_1(1)* 43 to 56 labelled f_1(2), h_1(2)* 43 to 83 labelled proper_1(3)* 44 to 45 labelled c_1(1)* 44 to 74 labelled proper_1(2)* 45 to 35 labelled mark_1(1)* 45 to 61 labelled proper_1(2)* 45 to 55 labelled mark_1(1)* 45 to 56 labelled f_1(2), h_1(2)* 45 to 83 labelled proper_1(3)* 46 to 35 labelled d_1(1)* 47 to 35 labelled c_1(1)* 47 to 55 labelled c_1(1)* 54 to 47 labelled f_1(1)* 55 to 35 labelled f_1(2), h_1(2)* 55 to 55 labelled f_1(2), h_1(2)* 56 to 35 labelled mark_1(2)* 56 to 55 labelled mark_1(2)* 56 to 61 labelled proper_1(2)* 56 to 77 labelled f_1(3), h_1(3)* 56 to 83 labelled proper_1(3)* 56 to 91 labelled proper_1(4)* 57 to 58 labelled c_1(2)* 57 to 78 labelled proper_1(3)* 58 to 35 labelled mark_1(2)* 58 to 55 labelled mark_1(2)* 58 to 61 labelled proper_1(2)* 58 to 77 labelled f_1(3), h_1(3)* 58 to 83 labelled proper_1(3)* 58 to 91 labelled proper_1(4)* 59 to 35 labelled d_1(2)* 59 to 55 labelled d_1(2)* 59 to 60 labelled d_1(2)* 59 to 76 labelled f_1(2)* 60 to 35 labelled c_1(2)* 60 to 55 labelled c_1(2)* 61 to 28 labelled top_1(2)* 62 to 63 labelled g_1(1)* 62 to 89 labelled proper_1(2)* 63 to 64 labelled f_1(1)* 63 to 84 labelled proper_1(2)* 64 to 65 labelled c_1(1)* 64 to 74 labelled proper_1(2)* 65 to 35 labelled mark_1(1)* 65 to 61 labelled proper_1(2)* 65 to 55 labelled mark_1(1)* 65 to 56 labelled f_1(2), h_1(2)* 65 to 83 labelled proper_1(3)* 66 to 67 labelled g_1(2)* 66 to 90 labelled proper_1(3)* 67 to 68 labelled f_1(2)* 67 to 85 labelled proper_1(3)* 68 to 69 labelled c_1(2)* 68 to 78 labelled proper_1(3)* 69 to 35 labelled mark_1(2)* 69 to 61 labelled proper_1(2)* 69 to 55 labelled mark_1(2)* 69 to 77 labelled f_1(3), h_1(3)* 69 to 83 labelled proper_1(3)* 69 to 91 labelled proper_1(4)* 70 to 61 labelled d_1(2)* 70 to 74 labelled d_1(2)* 70 to 83 labelled d_1(2)* 70 to 89 labelled f_1(2)* 71 to 54 labelled g_1(1)* 73 to 60 labelled f_1(2)* 74 to 61 labelled c_1(2)* 74 to 83 labelled c_1(2)* 75 to 61 labelled d_1(3)* 75 to 78 labelled d_1(3)* 75 to 83 labelled d_1(3)* 75 to 90 labelled f_1(3)* 75 to 91 labelled d_1(3)* 76 to 73 labelled g_1(2)* 77 to 35 labelled mark_1(3)* 77 to 55 labelled mark_1(3)* 77 to 77 labelled f_1(3), h_1(3)* 77 to 61 labelled proper_1(2)* 77 to 83 labelled proper_1(3)* 77 to 91 labelled proper_1(4)* 78 to 61 labelled c_1(3)* 78 to 83 labelled c_1(3)* 78 to 91 labelled c_1(3)* 82 to 75 labelled f_1(2), c_1(2), g_1(2), d_1(2), h_1(2)* 82 to 82 labelled f_1(2), c_1(2), g_1(2), d_1(2), h_1(2)* 83 to 61 labelled f_1(3), h_1(3)* 83 to 83 labelled f_1(3), h_1(3)* 83 to 91 labelled f_1(3), h_1(3)* 84 to 74 labelled f_1(2)* 85 to 78 labelled f_1(3)* 89 to 84 labelled g_1(2)* 90 to 85 labelled g_1(3)* 91 to 83 labelled f_1(4), h_1(4)* 91 to 91 labelled f_1(4), h_1(4) ---------------------------------------- (4) YES