Problem SK90 2.30

interpretations

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

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

Strict Trs:
  { not(x) -> xor(x, true())
  , implies(x, y) -> xor(and(x, y), xor(x, true()))
  , or(x, y) -> xor(and(x, y), xor(x, y))
  , =(x, y) -> xor(x, xor(y, true())) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,O(n^1))

The following argument positions are usable:
  Uargs(not) = {}, Uargs(xor) = {}, Uargs(implies) = {},
  Uargs(and) = {}, Uargs(or) = {}, Uargs(=) = {}

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

          [not](x1) = [2] x1 + [3]
                                  
      [xor](x1, x2) = [1] x1 + [1] x2 + [0]
                                           
             [true] = [0]
                         
  [implies](x1, x2) = [3] x1 + [1] x2 + [3]
                                           
      [and](x1, x2) = [1] x1 + [0]
                                  
       [or](x1, x2) = [3] x1 + [3] x2 + [3]
                                           
        [=](x1, x2) = [2] x1 + [1] x2 + [3]

This order satisfies following ordering constraints

         [not(x)] = [2] x + [3]                     
                  > [1] x + [0]                     
                  = [xor(x, true())]                
                                                    
  [implies(x, y)] = [3] x + [1] y + [3]             
                  > [2] x + [0]                     
                  = [xor(and(x, y), xor(x, true()))]
                                                    
       [or(x, y)] = [3] x + [3] y + [3]             
                  > [2] x + [1] y + [0]             
                  = [xor(and(x, y), xor(x, y))]     
                                                    
        [=(x, y)] = [2] x + [1] y + [3]             
                  > [1] x + [1] y + [0]             
                  = [xor(x, xor(y, true()))]        
                                                    

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

lmpo

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

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

Strict Trs:
  { not(x) -> xor(x, true())
  , implies(x, y) -> xor(and(x, y), xor(x, true()))
  , or(x, y) -> xor(and(x, y), xor(x, y))
  , =(x, y) -> xor(x, xor(y, true())) }
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(not) = {1}, safe(xor) = {1, 2}, safe(true) = {},
 safe(implies) = {2}, safe(and) = {1, 2}, safe(or) = {1},
 safe(=) = {1}

and precedence

 empty .

Following symbols are considered recursive:

 {}

The recursion depth is 0.

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

 Strict DPs: 
 Weak DPs  : 
 Strict Trs:
   { not(; x) -> xor(; x,  true())
   , implies(x; y) -> xor(; and(; x,  y),  xor(; x,  true()))
   , or(y; x) -> xor(; and(; x,  y),  xor(; x,  y))
   , =(y; x) -> xor(; x,  xor(; y,  true())) }
 Weak Trs  : 

Hurray, we answered YES(?,ELEMENTARY)

mpo

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

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

Strict Trs:
  { not(x) -> xor(x, true())
  , implies(x, y) -> xor(and(x, y), xor(x, true()))
  , or(x, y) -> xor(and(x, y), xor(x, y))
  , =(x, y) -> xor(x, xor(y, true())) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,PRIMREC)

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

 not > xor, not > true, implies > xor, implies > true,
 implies > and, or > xor, or > and, = > xor, = > true .

Hurray, we answered YES(?,PRIMREC)

popstar

Execution Time (secs)
0.159
Answer
YES(?,POLY)
InputSK90 2.30
YES(?,POLY)

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

Strict Trs:
  { not(x) -> xor(x, true())
  , implies(x, y) -> xor(and(x, y), xor(x, true()))
  , or(x, y) -> xor(and(x, y), xor(x, y))
  , =(x, y) -> xor(x, xor(y, true())) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,POLY)

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

 safe(not) = {1}, safe(xor) = {1, 2}, safe(true) = {},
 safe(implies) = {1, 2}, safe(and) = {1, 2}, safe(or) = {1},
 safe(=) = {2}

and precedence

 empty .

Following symbols are considered recursive:

 {}

The recursion depth is 0.

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

 Strict DPs: 
 Weak DPs  : 
 Strict Trs:
   { not(; x) -> xor(; x,  true())
   , implies(; x,  y) -> xor(; and(; x,  y),  xor(; x,  true()))
   , or(y; x) -> xor(; and(; x,  y),  xor(; x,  y))
   , =(x; y) -> xor(; x,  xor(; y,  true())) }
 Weak Trs  : 

Hurray, we answered YES(?,POLY)

popstar-ps

Execution Time (secs)
0.154
Answer
YES(?,POLY)
InputSK90 2.30
YES(?,POLY)

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

Strict Trs:
  { not(x) -> xor(x, true())
  , implies(x, y) -> xor(and(x, y), xor(x, true()))
  , or(x, y) -> xor(and(x, y), xor(x, y))
  , =(x, y) -> xor(x, xor(y, true())) }
Obligation:
  innermost runtime complexity
Answer:
  YES(?,POLY)

The input was oriented with the instance of 'Polynomial Path Order
(PS)' as induced by the safe mapping

 safe(not) = {1}, safe(xor) = {1, 2}, safe(true) = {},
 safe(implies) = {1, 2}, safe(and) = {1, 2}, safe(or) = {1},
 safe(=) = {2}

and precedence

 empty .

Following symbols are considered recursive:

 {}

The recursion depth is 0.

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

 Strict DPs: 
 Weak DPs  : 
 Strict Trs:
   { not(; x) -> xor(; x,  true())
   , implies(; x,  y) -> xor(; and(; x,  y),  xor(; x,  true()))
   , or(y; x) -> xor(; and(; x,  y),  xor(; x,  y))
   , =(x; y) -> xor(; x,  xor(; y,  true())) }
 Weak Trs  : 

Hurray, we answered YES(?,POLY)