Problem SK90 2.40

interpretations

Execution Time (secs)
-
Answer
YES(?,O(n^1))
InputSK90 2.40
YES(?,O(n^1))

We are left with following problem, upon which TcT provides the
certificate YES(?,O(n^1)).

Strict Trs:
  { or(x, true()) -> true()
  , or(true(), y) -> true()
  , or(false(), false()) -> false()
  , mem(x, nil()) -> false()
  , mem(x, set(y)) -> =(x, y)
  , mem(x, union(y, z)) -> or(mem(x, y), mem(x, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,O(n^1))

The following argument positions are usable:
  Uargs(or) = {1, 2}, Uargs(mem) = {}, Uargs(set) = {},
  Uargs(=) = {}, Uargs(union) = {}

TcT has computed following constructor-based matrix interpretation
satisfying not(EDA).

     [or](x1, x2) = [1] x1 + [1] x2 + [1]
                                         
           [true] = [0]
                       
          [false] = [0]
                       
    [mem](x1, x2) = [2] x2 + [0]
                                
            [nil] = [2]
                       
        [set](x1) = [3]
                       
      [=](x1, x2) = [0]
                       
  [union](x1, x2) = [1] x1 + [1] x2 + [2]

This order satisfies following ordering constraints

         [or(x, true())] = [1] x + [1]               
                         > [0]                       
                         = [true()]                  
                                                     
         [or(true(), y)] = [1] y + [1]               
                         > [0]                       
                         = [true()]                  
                                                     
  [or(false(), false())] = [1]                       
                         > [0]                       
                         = [false()]                 
                                                     
         [mem(x, nil())] = [4]                       
                         > [0]                       
                         = [false()]                 
                                                     
        [mem(x, set(y))] = [6]                       
                         > [0]                       
                         = [=(x, y)]                 
                                                     
   [mem(x, union(y, z))] = [2] y + [2] z + [4]       
                         > [2] y + [2] z + [1]       
                         = [or(mem(x, y), mem(x, z))]
                                                     

Hurray, we answered YES(?,O(n^1))

lmpo

Execution Time (secs)
-
Answer
YES(?,ELEMENTARY)
InputSK90 2.40
YES(?,ELEMENTARY)

We are left with following problem, upon which TcT provides the
certificate YES(?,ELEMENTARY).

Strict Trs:
  { or(true(), y) -> true()
  , or(x, true()) -> true()
  , or(false(), false()) -> false()
  , mem(x, nil()) -> false()
  , mem(x, set(y)) -> =(x, y)
  , mem(x, union(y, z)) -> or(mem(x, y), mem(x, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,ELEMENTARY)

The input was oriented with the instance of 'Lightweight Multiset
Path Order' as induced by the safe mapping

 safe(or) = {1, 2}, safe(true) = {}, safe(false) = {},
 safe(mem) = {1}, safe(nil) = {}, safe(set) = {1}, safe(=) = {1, 2},
 safe(union) = {1, 2}

and precedence

 mem > or .

Following symbols are considered recursive:

 {or, mem}

The recursion depth is 2.

For your convenience, here are the oriented rules in predicative
notation, possibly applying argument filtering:

 Strict DPs: 
 Weak DPs  : 
 Strict Trs:
   { or(; true(),  y) -> true()
   , or(; x,  true()) -> true()
   , or(; false(),  false()) -> false()
   , mem(nil(); x) -> false()
   , mem(set(; y); x) -> =(; x,  y)
   , mem(union(; y,  z); x) -> or(; mem(y; x),  mem(z; x)) }
 Weak Trs  : 

Hurray, we answered YES(?,ELEMENTARY)

mpo

Execution Time (secs)
-
Answer
YES(?,PRIMREC)
InputSK90 2.40
YES(?,PRIMREC)

We are left with following problem, upon which TcT provides the
certificate YES(?,PRIMREC).

Strict Trs:
  { or(true(), y) -> true()
  , or(x, true()) -> true()
  , or(false(), false()) -> false()
  , mem(x, nil()) -> false()
  , mem(x, set(y)) -> =(x, y)
  , mem(x, union(y, z)) -> or(mem(x, y), mem(x, z)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,PRIMREC)

The input was oriented with the instance of'multiset path orders'
as induced by the precedence

 mem > or, mem > =, nil > false, mem ~ union .

Hurray, we answered YES(?,PRIMREC)

popstar

Execution Time (secs)
0.119
Answer
MAYBE
InputSK90 2.40
MAYBE

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

Strict Trs:
  { or(true(), y) -> true()
  , or(x, true()) -> true()
  , or(false(), false()) -> false()
  , mem(x, nil()) -> false()
  , mem(x, set(y)) -> =(x, y)
  , mem(x, union(y, z)) -> or(mem(x, y), mem(x, z)) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

The input cannot be shown compatible

Arrrr..

popstar-ps

Execution Time (secs)
0.137
Answer
MAYBE
InputSK90 2.40
MAYBE

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

Strict Trs:
  { or(true(), y) -> true()
  , or(x, true()) -> true()
  , or(false(), false()) -> false()
  , mem(x, nil()) -> false()
  , mem(x, set(y)) -> =(x, y)
  , mem(x, union(y, z)) -> or(mem(x, y), mem(x, z)) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

The input cannot be shown compatible

Arrrr..