MAYBE

We are left with following problem, upon which TcT provides the
certificate MAYBE.

Strict Trs:
  { active(app(X1, X2)) -> app(X1, active(X2))
  , active(app(X1, X2)) -> app(active(X1), X2)
  , active(app(nil(), YS)) -> mark(YS)
  , active(app(cons(X, XS), YS)) -> mark(cons(X, app(XS, YS)))
  , active(cons(X1, X2)) -> cons(active(X1), X2)
  , active(from(X)) -> mark(cons(X, from(s(X))))
  , active(from(X)) -> from(active(X))
  , active(s(X)) -> s(active(X))
  , active(zWadr(X1, X2)) -> zWadr(X1, active(X2))
  , active(zWadr(X1, X2)) -> zWadr(active(X1), X2)
  , active(zWadr(XS, nil())) -> mark(nil())
  , active(zWadr(nil(), YS)) -> mark(nil())
  , active(zWadr(cons(X, XS), cons(Y, YS))) ->
    mark(cons(app(Y, cons(X, nil())), zWadr(XS, YS)))
  , active(prefix(L)) -> mark(cons(nil(), zWadr(L, prefix(L))))
  , active(prefix(X)) -> prefix(active(X))
  , app(X1, mark(X2)) -> mark(app(X1, X2))
  , app(mark(X1), X2) -> mark(app(X1, X2))
  , app(ok(X1), ok(X2)) -> ok(app(X1, X2))
  , cons(mark(X1), X2) -> mark(cons(X1, X2))
  , cons(ok(X1), ok(X2)) -> ok(cons(X1, X2))
  , from(mark(X)) -> mark(from(X))
  , from(ok(X)) -> ok(from(X))
  , s(mark(X)) -> mark(s(X))
  , s(ok(X)) -> ok(s(X))
  , zWadr(X1, mark(X2)) -> mark(zWadr(X1, X2))
  , zWadr(mark(X1), X2) -> mark(zWadr(X1, X2))
  , zWadr(ok(X1), ok(X2)) -> ok(zWadr(X1, X2))
  , prefix(mark(X)) -> mark(prefix(X))
  , prefix(ok(X)) -> ok(prefix(X))
  , proper(app(X1, X2)) -> app(proper(X1), proper(X2))
  , proper(nil()) -> ok(nil())
  , proper(cons(X1, X2)) -> cons(proper(X1), proper(X2))
  , proper(from(X)) -> from(proper(X))
  , proper(s(X)) -> s(proper(X))
  , proper(zWadr(X1, X2)) -> zWadr(proper(X1), proper(X2))
  , proper(prefix(X)) -> prefix(proper(X))
  , top(mark(X)) -> top(proper(X))
  , top(ok(X)) -> top(active(X)) }
Obligation:
  runtime complexity
Answer:
  MAYBE

None of the processors succeeded.

Details of failed attempt(s):
-----------------------------
1) 'WithProblem (timeout of 60 seconds)' failed due to the
   following reason:
   
   Computation stopped due to timeout after 60.0 seconds.

2) 'Best' failed due to the following reason:
   
   None of the processors succeeded.
   
   Details of failed attempt(s):
   -----------------------------
   1) 'WithProblem (timeout of 30 seconds) (timeout of 60 seconds)'
      failed due to the following reason:
      
      Computation stopped due to timeout after 30.0 seconds.
   
   2) 'Best' failed due to the following reason:
      
      None of the processors succeeded.
      
      Details of failed attempt(s):
      -----------------------------
      1) 'bsearch-popstar (timeout of 60 seconds)' failed due to the
         following reason:
         
         The processor is inapplicable, reason:
           Processor only applicable for innermost runtime complexity analysis
      
      2) 'Polynomial Path Order (PS) (timeout of 60 seconds)' failed due
         to the following reason:
         
         The processor is inapplicable, reason:
           Processor only applicable for innermost runtime complexity analysis
      
   
   3) 'Fastest (timeout of 5 seconds) (timeout of 60 seconds)' failed
      due to the following reason:
      
      None of the processors succeeded.
      
      Details of failed attempt(s):
      -----------------------------
      1) 'Bounds with perSymbol-enrichment and initial automaton 'match''
         failed due to the following reason:
         
         match-boundness of the problem could not be verified.
      
      2) 'Bounds with minimal-enrichment and initial automaton 'match''
         failed due to the following reason:
         
         match-boundness of the problem could not be verified.
      
   

3) 'Innermost Weak Dependency Pairs (timeout of 60 seconds)' failed
   due to the following reason:
   
   We add the following weak dependency pairs:
   
   Strict DPs:
     { active^#(app(X1, X2)) -> c_1(app^#(X1, active(X2)))
     , active^#(app(X1, X2)) -> c_2(app^#(active(X1), X2))
     , active^#(app(nil(), YS)) -> c_3(YS)
     , active^#(app(cons(X, XS), YS)) -> c_4(cons^#(X, app(XS, YS)))
     , active^#(cons(X1, X2)) -> c_5(cons^#(active(X1), X2))
     , active^#(from(X)) -> c_6(cons^#(X, from(s(X))))
     , active^#(from(X)) -> c_7(from^#(active(X)))
     , active^#(s(X)) -> c_8(s^#(active(X)))
     , active^#(zWadr(X1, X2)) -> c_9(zWadr^#(X1, active(X2)))
     , active^#(zWadr(X1, X2)) -> c_10(zWadr^#(active(X1), X2))
     , active^#(zWadr(XS, nil())) -> c_11()
     , active^#(zWadr(nil(), YS)) -> c_12()
     , active^#(zWadr(cons(X, XS), cons(Y, YS))) ->
       c_13(cons^#(app(Y, cons(X, nil())), zWadr(XS, YS)))
     , active^#(prefix(L)) -> c_14(cons^#(nil(), zWadr(L, prefix(L))))
     , active^#(prefix(X)) -> c_15(prefix^#(active(X)))
     , app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
     , app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
     , app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
     , cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
     , cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
     , from^#(mark(X)) -> c_21(from^#(X))
     , from^#(ok(X)) -> c_22(from^#(X))
     , s^#(mark(X)) -> c_23(s^#(X))
     , s^#(ok(X)) -> c_24(s^#(X))
     , zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
     , zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
     , zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
     , prefix^#(mark(X)) -> c_28(prefix^#(X))
     , prefix^#(ok(X)) -> c_29(prefix^#(X))
     , proper^#(app(X1, X2)) -> c_30(app^#(proper(X1), proper(X2)))
     , proper^#(nil()) -> c_31()
     , proper^#(cons(X1, X2)) -> c_32(cons^#(proper(X1), proper(X2)))
     , proper^#(from(X)) -> c_33(from^#(proper(X)))
     , proper^#(s(X)) -> c_34(s^#(proper(X)))
     , proper^#(zWadr(X1, X2)) -> c_35(zWadr^#(proper(X1), proper(X2)))
     , proper^#(prefix(X)) -> c_36(prefix^#(proper(X)))
     , top^#(mark(X)) -> c_37(top^#(proper(X)))
     , top^#(ok(X)) -> c_38(top^#(active(X))) }
   
   and mark the set of starting terms.
   
   We are left with following problem, upon which TcT provides the
   certificate MAYBE.
   
   Strict DPs:
     { active^#(app(X1, X2)) -> c_1(app^#(X1, active(X2)))
     , active^#(app(X1, X2)) -> c_2(app^#(active(X1), X2))
     , active^#(app(nil(), YS)) -> c_3(YS)
     , active^#(app(cons(X, XS), YS)) -> c_4(cons^#(X, app(XS, YS)))
     , active^#(cons(X1, X2)) -> c_5(cons^#(active(X1), X2))
     , active^#(from(X)) -> c_6(cons^#(X, from(s(X))))
     , active^#(from(X)) -> c_7(from^#(active(X)))
     , active^#(s(X)) -> c_8(s^#(active(X)))
     , active^#(zWadr(X1, X2)) -> c_9(zWadr^#(X1, active(X2)))
     , active^#(zWadr(X1, X2)) -> c_10(zWadr^#(active(X1), X2))
     , active^#(zWadr(XS, nil())) -> c_11()
     , active^#(zWadr(nil(), YS)) -> c_12()
     , active^#(zWadr(cons(X, XS), cons(Y, YS))) ->
       c_13(cons^#(app(Y, cons(X, nil())), zWadr(XS, YS)))
     , active^#(prefix(L)) -> c_14(cons^#(nil(), zWadr(L, prefix(L))))
     , active^#(prefix(X)) -> c_15(prefix^#(active(X)))
     , app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
     , app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
     , app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
     , cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
     , cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
     , from^#(mark(X)) -> c_21(from^#(X))
     , from^#(ok(X)) -> c_22(from^#(X))
     , s^#(mark(X)) -> c_23(s^#(X))
     , s^#(ok(X)) -> c_24(s^#(X))
     , zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
     , zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
     , zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
     , prefix^#(mark(X)) -> c_28(prefix^#(X))
     , prefix^#(ok(X)) -> c_29(prefix^#(X))
     , proper^#(app(X1, X2)) -> c_30(app^#(proper(X1), proper(X2)))
     , proper^#(nil()) -> c_31()
     , proper^#(cons(X1, X2)) -> c_32(cons^#(proper(X1), proper(X2)))
     , proper^#(from(X)) -> c_33(from^#(proper(X)))
     , proper^#(s(X)) -> c_34(s^#(proper(X)))
     , proper^#(zWadr(X1, X2)) -> c_35(zWadr^#(proper(X1), proper(X2)))
     , proper^#(prefix(X)) -> c_36(prefix^#(proper(X)))
     , top^#(mark(X)) -> c_37(top^#(proper(X)))
     , top^#(ok(X)) -> c_38(top^#(active(X))) }
   Strict Trs:
     { active(app(X1, X2)) -> app(X1, active(X2))
     , active(app(X1, X2)) -> app(active(X1), X2)
     , active(app(nil(), YS)) -> mark(YS)
     , active(app(cons(X, XS), YS)) -> mark(cons(X, app(XS, YS)))
     , active(cons(X1, X2)) -> cons(active(X1), X2)
     , active(from(X)) -> mark(cons(X, from(s(X))))
     , active(from(X)) -> from(active(X))
     , active(s(X)) -> s(active(X))
     , active(zWadr(X1, X2)) -> zWadr(X1, active(X2))
     , active(zWadr(X1, X2)) -> zWadr(active(X1), X2)
     , active(zWadr(XS, nil())) -> mark(nil())
     , active(zWadr(nil(), YS)) -> mark(nil())
     , active(zWadr(cons(X, XS), cons(Y, YS))) ->
       mark(cons(app(Y, cons(X, nil())), zWadr(XS, YS)))
     , active(prefix(L)) -> mark(cons(nil(), zWadr(L, prefix(L))))
     , active(prefix(X)) -> prefix(active(X))
     , app(X1, mark(X2)) -> mark(app(X1, X2))
     , app(mark(X1), X2) -> mark(app(X1, X2))
     , app(ok(X1), ok(X2)) -> ok(app(X1, X2))
     , cons(mark(X1), X2) -> mark(cons(X1, X2))
     , cons(ok(X1), ok(X2)) -> ok(cons(X1, X2))
     , from(mark(X)) -> mark(from(X))
     , from(ok(X)) -> ok(from(X))
     , s(mark(X)) -> mark(s(X))
     , s(ok(X)) -> ok(s(X))
     , zWadr(X1, mark(X2)) -> mark(zWadr(X1, X2))
     , zWadr(mark(X1), X2) -> mark(zWadr(X1, X2))
     , zWadr(ok(X1), ok(X2)) -> ok(zWadr(X1, X2))
     , prefix(mark(X)) -> mark(prefix(X))
     , prefix(ok(X)) -> ok(prefix(X))
     , proper(app(X1, X2)) -> app(proper(X1), proper(X2))
     , proper(nil()) -> ok(nil())
     , proper(cons(X1, X2)) -> cons(proper(X1), proper(X2))
     , proper(from(X)) -> from(proper(X))
     , proper(s(X)) -> s(proper(X))
     , proper(zWadr(X1, X2)) -> zWadr(proper(X1), proper(X2))
     , proper(prefix(X)) -> prefix(proper(X))
     , top(mark(X)) -> top(proper(X))
     , top(ok(X)) -> top(active(X)) }
   Obligation:
     runtime complexity
   Answer:
     MAYBE
   
   Consider the dependency graph:
   
     1: active^#(app(X1, X2)) -> c_1(app^#(X1, active(X2)))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     2: active^#(app(X1, X2)) -> c_2(app^#(active(X1), X2))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     3: active^#(app(nil(), YS)) -> c_3(YS)
        -->_1 top^#(ok(X)) -> c_38(top^#(active(X))) :38
        -->_1 top^#(mark(X)) -> c_37(top^#(proper(X))) :37
        -->_1 proper^#(prefix(X)) -> c_36(prefix^#(proper(X))) :36
        -->_1 proper^#(zWadr(X1, X2)) ->
              c_35(zWadr^#(proper(X1), proper(X2))) :35
        -->_1 proper^#(s(X)) -> c_34(s^#(proper(X))) :34
        -->_1 proper^#(from(X)) -> c_33(from^#(proper(X))) :33
        -->_1 proper^#(cons(X1, X2)) ->
              c_32(cons^#(proper(X1), proper(X2))) :32
        -->_1 proper^#(app(X1, X2)) ->
              c_30(app^#(proper(X1), proper(X2))) :30
        -->_1 prefix^#(ok(X)) -> c_29(prefix^#(X)) :29
        -->_1 prefix^#(mark(X)) -> c_28(prefix^#(X)) :28
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
        -->_1 s^#(ok(X)) -> c_24(s^#(X)) :24
        -->_1 s^#(mark(X)) -> c_23(s^#(X)) :23
        -->_1 from^#(ok(X)) -> c_22(from^#(X)) :22
        -->_1 from^#(mark(X)) -> c_21(from^#(X)) :21
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
        -->_1 active^#(prefix(X)) -> c_15(prefix^#(active(X))) :15
        -->_1 active^#(zWadr(cons(X, XS), cons(Y, YS))) ->
              c_13(cons^#(app(Y, cons(X, nil())), zWadr(XS, YS))) :13
        -->_1 active^#(zWadr(X1, X2)) -> c_10(zWadr^#(active(X1), X2)) :10
        -->_1 active^#(zWadr(X1, X2)) -> c_9(zWadr^#(X1, active(X2))) :9
        -->_1 active^#(s(X)) -> c_8(s^#(active(X))) :8
        -->_1 active^#(from(X)) -> c_7(from^#(active(X))) :7
        -->_1 active^#(from(X)) -> c_6(cons^#(X, from(s(X)))) :6
        -->_1 active^#(cons(X1, X2)) -> c_5(cons^#(active(X1), X2)) :5
        -->_1 active^#(app(cons(X, XS), YS)) ->
              c_4(cons^#(X, app(XS, YS))) :4
        -->_1 proper^#(nil()) -> c_31() :31
        -->_1 active^#(prefix(L)) ->
              c_14(cons^#(nil(), zWadr(L, prefix(L)))) :14
        -->_1 active^#(zWadr(nil(), YS)) -> c_12() :12
        -->_1 active^#(zWadr(XS, nil())) -> c_11() :11
        -->_1 active^#(app(nil(), YS)) -> c_3(YS) :3
        -->_1 active^#(app(X1, X2)) -> c_2(app^#(active(X1), X2)) :2
        -->_1 active^#(app(X1, X2)) -> c_1(app^#(X1, active(X2))) :1
     
     4: active^#(app(cons(X, XS), YS)) -> c_4(cons^#(X, app(XS, YS)))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     5: active^#(cons(X1, X2)) -> c_5(cons^#(active(X1), X2))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     6: active^#(from(X)) -> c_6(cons^#(X, from(s(X))))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     7: active^#(from(X)) -> c_7(from^#(active(X)))
        -->_1 from^#(ok(X)) -> c_22(from^#(X)) :22
        -->_1 from^#(mark(X)) -> c_21(from^#(X)) :21
     
     8: active^#(s(X)) -> c_8(s^#(active(X)))
        -->_1 s^#(ok(X)) -> c_24(s^#(X)) :24
        -->_1 s^#(mark(X)) -> c_23(s^#(X)) :23
     
     9: active^#(zWadr(X1, X2)) -> c_9(zWadr^#(X1, active(X2)))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     10: active^#(zWadr(X1, X2)) -> c_10(zWadr^#(active(X1), X2))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     11: active^#(zWadr(XS, nil())) -> c_11()
     
     12: active^#(zWadr(nil(), YS)) -> c_12()
     
     13: active^#(zWadr(cons(X, XS), cons(Y, YS))) ->
         c_13(cons^#(app(Y, cons(X, nil())), zWadr(XS, YS)))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     14: active^#(prefix(L)) -> c_14(cons^#(nil(), zWadr(L, prefix(L))))
     
     15: active^#(prefix(X)) -> c_15(prefix^#(active(X)))
        -->_1 prefix^#(ok(X)) -> c_29(prefix^#(X)) :29
        -->_1 prefix^#(mark(X)) -> c_28(prefix^#(X)) :28
     
     16: app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     17: app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     18: app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     19: cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     20: cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     21: from^#(mark(X)) -> c_21(from^#(X))
        -->_1 from^#(ok(X)) -> c_22(from^#(X)) :22
        -->_1 from^#(mark(X)) -> c_21(from^#(X)) :21
     
     22: from^#(ok(X)) -> c_22(from^#(X))
        -->_1 from^#(ok(X)) -> c_22(from^#(X)) :22
        -->_1 from^#(mark(X)) -> c_21(from^#(X)) :21
     
     23: s^#(mark(X)) -> c_23(s^#(X))
        -->_1 s^#(ok(X)) -> c_24(s^#(X)) :24
        -->_1 s^#(mark(X)) -> c_23(s^#(X)) :23
     
     24: s^#(ok(X)) -> c_24(s^#(X))
        -->_1 s^#(ok(X)) -> c_24(s^#(X)) :24
        -->_1 s^#(mark(X)) -> c_23(s^#(X)) :23
     
     25: zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     26: zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     27: zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     28: prefix^#(mark(X)) -> c_28(prefix^#(X))
        -->_1 prefix^#(ok(X)) -> c_29(prefix^#(X)) :29
        -->_1 prefix^#(mark(X)) -> c_28(prefix^#(X)) :28
     
     29: prefix^#(ok(X)) -> c_29(prefix^#(X))
        -->_1 prefix^#(ok(X)) -> c_29(prefix^#(X)) :29
        -->_1 prefix^#(mark(X)) -> c_28(prefix^#(X)) :28
     
     30: proper^#(app(X1, X2)) -> c_30(app^#(proper(X1), proper(X2)))
        -->_1 app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2)) :18
        -->_1 app^#(mark(X1), X2) -> c_17(app^#(X1, X2)) :17
        -->_1 app^#(X1, mark(X2)) -> c_16(app^#(X1, X2)) :16
     
     31: proper^#(nil()) -> c_31()
     
     32: proper^#(cons(X1, X2)) -> c_32(cons^#(proper(X1), proper(X2)))
        -->_1 cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2)) :20
        -->_1 cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2)) :19
     
     33: proper^#(from(X)) -> c_33(from^#(proper(X)))
        -->_1 from^#(ok(X)) -> c_22(from^#(X)) :22
        -->_1 from^#(mark(X)) -> c_21(from^#(X)) :21
     
     34: proper^#(s(X)) -> c_34(s^#(proper(X)))
        -->_1 s^#(ok(X)) -> c_24(s^#(X)) :24
        -->_1 s^#(mark(X)) -> c_23(s^#(X)) :23
     
     35: proper^#(zWadr(X1, X2)) ->
         c_35(zWadr^#(proper(X1), proper(X2)))
        -->_1 zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2)) :27
        -->_1 zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2)) :26
        -->_1 zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2)) :25
     
     36: proper^#(prefix(X)) -> c_36(prefix^#(proper(X)))
        -->_1 prefix^#(ok(X)) -> c_29(prefix^#(X)) :29
        -->_1 prefix^#(mark(X)) -> c_28(prefix^#(X)) :28
     
     37: top^#(mark(X)) -> c_37(top^#(proper(X)))
        -->_1 top^#(ok(X)) -> c_38(top^#(active(X))) :38
        -->_1 top^#(mark(X)) -> c_37(top^#(proper(X))) :37
     
     38: top^#(ok(X)) -> c_38(top^#(active(X)))
        -->_1 top^#(ok(X)) -> c_38(top^#(active(X))) :38
        -->_1 top^#(mark(X)) -> c_37(top^#(proper(X))) :37
     
   
   Only the nodes {16,18,17,19,20,21,22,23,24,25,27,26,28,29,31,37,38}
   are reachable from nodes
   {16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,37,38} that start
   derivation from marked basic terms. The nodes not reachable are
   removed from the problem.
   
   We are left with following problem, upon which TcT provides the
   certificate MAYBE.
   
   Strict DPs:
     { app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
     , app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
     , app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
     , cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
     , cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
     , from^#(mark(X)) -> c_21(from^#(X))
     , from^#(ok(X)) -> c_22(from^#(X))
     , s^#(mark(X)) -> c_23(s^#(X))
     , s^#(ok(X)) -> c_24(s^#(X))
     , zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
     , zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
     , zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
     , prefix^#(mark(X)) -> c_28(prefix^#(X))
     , prefix^#(ok(X)) -> c_29(prefix^#(X))
     , proper^#(nil()) -> c_31()
     , top^#(mark(X)) -> c_37(top^#(proper(X)))
     , top^#(ok(X)) -> c_38(top^#(active(X))) }
   Strict Trs:
     { active(app(X1, X2)) -> app(X1, active(X2))
     , active(app(X1, X2)) -> app(active(X1), X2)
     , active(app(nil(), YS)) -> mark(YS)
     , active(app(cons(X, XS), YS)) -> mark(cons(X, app(XS, YS)))
     , active(cons(X1, X2)) -> cons(active(X1), X2)
     , active(from(X)) -> mark(cons(X, from(s(X))))
     , active(from(X)) -> from(active(X))
     , active(s(X)) -> s(active(X))
     , active(zWadr(X1, X2)) -> zWadr(X1, active(X2))
     , active(zWadr(X1, X2)) -> zWadr(active(X1), X2)
     , active(zWadr(XS, nil())) -> mark(nil())
     , active(zWadr(nil(), YS)) -> mark(nil())
     , active(zWadr(cons(X, XS), cons(Y, YS))) ->
       mark(cons(app(Y, cons(X, nil())), zWadr(XS, YS)))
     , active(prefix(L)) -> mark(cons(nil(), zWadr(L, prefix(L))))
     , active(prefix(X)) -> prefix(active(X))
     , app(X1, mark(X2)) -> mark(app(X1, X2))
     , app(mark(X1), X2) -> mark(app(X1, X2))
     , app(ok(X1), ok(X2)) -> ok(app(X1, X2))
     , cons(mark(X1), X2) -> mark(cons(X1, X2))
     , cons(ok(X1), ok(X2)) -> ok(cons(X1, X2))
     , from(mark(X)) -> mark(from(X))
     , from(ok(X)) -> ok(from(X))
     , s(mark(X)) -> mark(s(X))
     , s(ok(X)) -> ok(s(X))
     , zWadr(X1, mark(X2)) -> mark(zWadr(X1, X2))
     , zWadr(mark(X1), X2) -> mark(zWadr(X1, X2))
     , zWadr(ok(X1), ok(X2)) -> ok(zWadr(X1, X2))
     , prefix(mark(X)) -> mark(prefix(X))
     , prefix(ok(X)) -> ok(prefix(X))
     , proper(app(X1, X2)) -> app(proper(X1), proper(X2))
     , proper(nil()) -> ok(nil())
     , proper(cons(X1, X2)) -> cons(proper(X1), proper(X2))
     , proper(from(X)) -> from(proper(X))
     , proper(s(X)) -> s(proper(X))
     , proper(zWadr(X1, X2)) -> zWadr(proper(X1), proper(X2))
     , proper(prefix(X)) -> prefix(proper(X))
     , top(mark(X)) -> top(proper(X))
     , top(ok(X)) -> top(active(X)) }
   Obligation:
     runtime complexity
   Answer:
     MAYBE
   
   We estimate the number of application of {15} by applications of
   Pre({15}) = {}. Here rules are labeled as follows:
   
     DPs:
       { 1: app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
       , 2: app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
       , 3: app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
       , 4: cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
       , 5: cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
       , 6: from^#(mark(X)) -> c_21(from^#(X))
       , 7: from^#(ok(X)) -> c_22(from^#(X))
       , 8: s^#(mark(X)) -> c_23(s^#(X))
       , 9: s^#(ok(X)) -> c_24(s^#(X))
       , 10: zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
       , 11: zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
       , 12: zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
       , 13: prefix^#(mark(X)) -> c_28(prefix^#(X))
       , 14: prefix^#(ok(X)) -> c_29(prefix^#(X))
       , 15: proper^#(nil()) -> c_31()
       , 16: top^#(mark(X)) -> c_37(top^#(proper(X)))
       , 17: top^#(ok(X)) -> c_38(top^#(active(X))) }
   
   We are left with following problem, upon which TcT provides the
   certificate MAYBE.
   
   Strict DPs:
     { app^#(X1, mark(X2)) -> c_16(app^#(X1, X2))
     , app^#(mark(X1), X2) -> c_17(app^#(X1, X2))
     , app^#(ok(X1), ok(X2)) -> c_18(app^#(X1, X2))
     , cons^#(mark(X1), X2) -> c_19(cons^#(X1, X2))
     , cons^#(ok(X1), ok(X2)) -> c_20(cons^#(X1, X2))
     , from^#(mark(X)) -> c_21(from^#(X))
     , from^#(ok(X)) -> c_22(from^#(X))
     , s^#(mark(X)) -> c_23(s^#(X))
     , s^#(ok(X)) -> c_24(s^#(X))
     , zWadr^#(X1, mark(X2)) -> c_25(zWadr^#(X1, X2))
     , zWadr^#(mark(X1), X2) -> c_26(zWadr^#(X1, X2))
     , zWadr^#(ok(X1), ok(X2)) -> c_27(zWadr^#(X1, X2))
     , prefix^#(mark(X)) -> c_28(prefix^#(X))
     , prefix^#(ok(X)) -> c_29(prefix^#(X))
     , top^#(mark(X)) -> c_37(top^#(proper(X)))
     , top^#(ok(X)) -> c_38(top^#(active(X))) }
   Strict Trs:
     { active(app(X1, X2)) -> app(X1, active(X2))
     , active(app(X1, X2)) -> app(active(X1), X2)
     , active(app(nil(), YS)) -> mark(YS)
     , active(app(cons(X, XS), YS)) -> mark(cons(X, app(XS, YS)))
     , active(cons(X1, X2)) -> cons(active(X1), X2)
     , active(from(X)) -> mark(cons(X, from(s(X))))
     , active(from(X)) -> from(active(X))
     , active(s(X)) -> s(active(X))
     , active(zWadr(X1, X2)) -> zWadr(X1, active(X2))
     , active(zWadr(X1, X2)) -> zWadr(active(X1), X2)
     , active(zWadr(XS, nil())) -> mark(nil())
     , active(zWadr(nil(), YS)) -> mark(nil())
     , active(zWadr(cons(X, XS), cons(Y, YS))) ->
       mark(cons(app(Y, cons(X, nil())), zWadr(XS, YS)))
     , active(prefix(L)) -> mark(cons(nil(), zWadr(L, prefix(L))))
     , active(prefix(X)) -> prefix(active(X))
     , app(X1, mark(X2)) -> mark(app(X1, X2))
     , app(mark(X1), X2) -> mark(app(X1, X2))
     , app(ok(X1), ok(X2)) -> ok(app(X1, X2))
     , cons(mark(X1), X2) -> mark(cons(X1, X2))
     , cons(ok(X1), ok(X2)) -> ok(cons(X1, X2))
     , from(mark(X)) -> mark(from(X))
     , from(ok(X)) -> ok(from(X))
     , s(mark(X)) -> mark(s(X))
     , s(ok(X)) -> ok(s(X))
     , zWadr(X1, mark(X2)) -> mark(zWadr(X1, X2))
     , zWadr(mark(X1), X2) -> mark(zWadr(X1, X2))
     , zWadr(ok(X1), ok(X2)) -> ok(zWadr(X1, X2))
     , prefix(mark(X)) -> mark(prefix(X))
     , prefix(ok(X)) -> ok(prefix(X))
     , proper(app(X1, X2)) -> app(proper(X1), proper(X2))
     , proper(nil()) -> ok(nil())
     , proper(cons(X1, X2)) -> cons(proper(X1), proper(X2))
     , proper(from(X)) -> from(proper(X))
     , proper(s(X)) -> s(proper(X))
     , proper(zWadr(X1, X2)) -> zWadr(proper(X1), proper(X2))
     , proper(prefix(X)) -> prefix(proper(X))
     , top(mark(X)) -> top(proper(X))
     , top(ok(X)) -> top(active(X)) }
   Weak DPs: { proper^#(nil()) -> c_31() }
   Obligation:
     runtime complexity
   Answer:
     MAYBE
   
   Empty strict component of the problem is NOT empty.


Arrrr..