* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
0() -> n__0()
U11(tt(),V1,V2) -> U12(isNat(activate(V1)),activate(V2))
U12(tt(),V2) -> U13(isNat(activate(V2)))
U13(tt()) -> tt()
U21(tt(),V1) -> U22(isNat(activate(V1)))
U22(tt()) -> tt()
U31(tt(),V1,V2) -> U32(isNat(activate(V1)),activate(V2))
U32(tt(),V2) -> U33(isNat(activate(V2)))
U33(tt()) -> tt()
U41(tt(),N) -> activate(N)
U51(tt(),M,N) -> s(plus(activate(N),activate(M)))
U61(tt()) -> 0()
U71(tt(),M,N) -> plus(x(activate(N),activate(M)),activate(N))
activate(X) -> X
activate(n__0()) -> 0()
activate(n__and(X1,X2)) -> and(activate(X1),X2)
activate(n__isNat(X)) -> isNat(X)
activate(n__isNatKind(X)) -> isNatKind(X)
activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2))
activate(n__s(X)) -> s(activate(X))
activate(n__x(X1,X2)) -> x(activate(X1),activate(X2))
and(X1,X2) -> n__and(X1,X2)
and(tt(),X) -> activate(X)
isNat(X) -> n__isNat(X)
isNat(n__0()) -> tt()
isNat(n__plus(V1,V2)) -> U11(and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
,activate(V1)
,activate(V2))
isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1))
isNat(n__x(V1,V2)) -> U31(and(isNatKind(activate(V1)),n__isNatKind(activate(V2))),activate(V1),activate(V2))
isNatKind(X) -> n__isNatKind(X)
isNatKind(n__0()) -> tt()
isNatKind(n__plus(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
isNatKind(n__s(V1)) -> isNatKind(activate(V1))
isNatKind(n__x(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
plus(N,0()) -> U41(and(isNat(N),n__isNatKind(N)),N)
plus(N,s(M)) -> U51(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N)
plus(X1,X2) -> n__plus(X1,X2)
s(X) -> n__s(X)
x(N,0()) -> U61(and(isNat(N),n__isNatKind(N)))
x(N,s(M)) -> U71(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N)
x(X1,X2) -> n__x(X1,X2)
- Signature:
{0/0,U11/3,U12/2,U13/1,U21/2,U22/1,U31/3,U32/2,U33/1,U41/2,U51/3,U61/1,U71/3,activate/1,and/2,isNat/1
,isNatKind/1,plus/2,s/1,x/2} / {n__0/0,n__and/2,n__isNat/1,n__isNatKind/1,n__plus/2,n__s/1,n__x/2,tt/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {0,U11,U12,U13,U21,U22,U31,U32,U33,U41,U51,U61,U71
,activate,and,isNat,isNatKind,plus,s,x} and constructors {n__0,n__and,n__isNat,n__isNatKind,n__plus,n__s
,n__x,tt}
+ Applied Processor:
Sum {left = someStrategy, right = someStrategy}
+ Details:
()
* Step 2: DecreasingLoops WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
0() -> n__0()
U11(tt(),V1,V2) -> U12(isNat(activate(V1)),activate(V2))
U12(tt(),V2) -> U13(isNat(activate(V2)))
U13(tt()) -> tt()
U21(tt(),V1) -> U22(isNat(activate(V1)))
U22(tt()) -> tt()
U31(tt(),V1,V2) -> U32(isNat(activate(V1)),activate(V2))
U32(tt(),V2) -> U33(isNat(activate(V2)))
U33(tt()) -> tt()
U41(tt(),N) -> activate(N)
U51(tt(),M,N) -> s(plus(activate(N),activate(M)))
U61(tt()) -> 0()
U71(tt(),M,N) -> plus(x(activate(N),activate(M)),activate(N))
activate(X) -> X
activate(n__0()) -> 0()
activate(n__and(X1,X2)) -> and(activate(X1),X2)
activate(n__isNat(X)) -> isNat(X)
activate(n__isNatKind(X)) -> isNatKind(X)
activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2))
activate(n__s(X)) -> s(activate(X))
activate(n__x(X1,X2)) -> x(activate(X1),activate(X2))
and(X1,X2) -> n__and(X1,X2)
and(tt(),X) -> activate(X)
isNat(X) -> n__isNat(X)
isNat(n__0()) -> tt()
isNat(n__plus(V1,V2)) -> U11(and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
,activate(V1)
,activate(V2))
isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1))
isNat(n__x(V1,V2)) -> U31(and(isNatKind(activate(V1)),n__isNatKind(activate(V2))),activate(V1),activate(V2))
isNatKind(X) -> n__isNatKind(X)
isNatKind(n__0()) -> tt()
isNatKind(n__plus(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
isNatKind(n__s(V1)) -> isNatKind(activate(V1))
isNatKind(n__x(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2)))
plus(N,0()) -> U41(and(isNat(N),n__isNatKind(N)),N)
plus(N,s(M)) -> U51(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N)
plus(X1,X2) -> n__plus(X1,X2)
s(X) -> n__s(X)
x(N,0()) -> U61(and(isNat(N),n__isNatKind(N)))
x(N,s(M)) -> U71(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N)
x(X1,X2) -> n__x(X1,X2)
- Signature:
{0/0,U11/3,U12/2,U13/1,U21/2,U22/1,U31/3,U32/2,U33/1,U41/2,U51/3,U61/1,U71/3,activate/1,and/2,isNat/1
,isNatKind/1,plus/2,s/1,x/2} / {n__0/0,n__and/2,n__isNat/1,n__isNatKind/1,n__plus/2,n__s/1,n__x/2,tt/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {0,U11,U12,U13,U21,U22,U31,U32,U33,U41,U51,U61,U71
,activate,and,isNat,isNatKind,plus,s,x} and constructors {n__0,n__and,n__isNat,n__isNatKind,n__plus,n__s
,n__x,tt}
+ Applied Processor:
DecreasingLoops {bound = AnyLoop, narrow = 10}
+ Details:
The system has following decreasing Loops:
activate(x){x -> n__and(x,y)} =
activate(n__and(x,y)) ->^+ and(activate(x),y)
= C[activate(x) = activate(x){}]
WORST_CASE(Omega(n^1),?)