* Step 1: Sum WORST_CASE(Omega(n^1),?)
+ Considered Problem:
- Strict TRS:
0() -> n__0()
U101(tt(),M,N) -> U102(isNatKind(activate(M)),activate(M),activate(N))
U102(tt(),M,N) -> U103(isNat(activate(N)),activate(M),activate(N))
U103(tt(),M,N) -> U104(isNatKind(activate(N)),activate(M),activate(N))
U104(tt(),M,N) -> plus(x(activate(N),activate(M)),activate(N))
U11(tt(),V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2))
U12(tt(),V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2))
U13(tt(),V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2))
U14(tt(),V1,V2) -> U15(isNat(activate(V1)),activate(V2))
U15(tt(),V2) -> U16(isNat(activate(V2)))
U16(tt()) -> tt()
U21(tt(),V1) -> U22(isNatKind(activate(V1)),activate(V1))
U22(tt(),V1) -> U23(isNat(activate(V1)))
U23(tt()) -> tt()
U31(tt(),V1,V2) -> U32(isNatKind(activate(V1)),activate(V1),activate(V2))
U32(tt(),V1,V2) -> U33(isNatKind(activate(V2)),activate(V1),activate(V2))
U33(tt(),V1,V2) -> U34(isNatKind(activate(V2)),activate(V1),activate(V2))
U34(tt(),V1,V2) -> U35(isNat(activate(V1)),activate(V2))
U35(tt(),V2) -> U36(isNat(activate(V2)))
U36(tt()) -> tt()
U41(tt(),V2) -> U42(isNatKind(activate(V2)))
U42(tt()) -> tt()
U51(tt()) -> tt()
U61(tt(),V2) -> U62(isNatKind(activate(V2)))
U62(tt()) -> tt()
U71(tt(),N) -> U72(isNatKind(activate(N)),activate(N))
U72(tt(),N) -> activate(N)
U81(tt(),M,N) -> U82(isNatKind(activate(M)),activate(M),activate(N))
U82(tt(),M,N) -> U83(isNat(activate(N)),activate(M),activate(N))
U83(tt(),M,N) -> U84(isNatKind(activate(N)),activate(M),activate(N))
U84(tt(),M,N) -> s(plus(activate(N),activate(M)))
U91(tt(),N) -> U92(isNatKind(activate(N)))
U92(tt()) -> 0()
activate(X) -> X
activate(n__0()) -> 0()
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))
isNat(n__0()) -> tt()
isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2))
isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1))
isNat(n__x(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V1),activate(V2))
isNatKind(n__0()) -> tt()
isNatKind(n__plus(V1,V2)) -> U41(isNatKind(activate(V1)),activate(V2))
isNatKind(n__s(V1)) -> U51(isNatKind(activate(V1)))
isNatKind(n__x(V1,V2)) -> U61(isNatKind(activate(V1)),activate(V2))
plus(N,0()) -> U71(isNat(N),N)
plus(N,s(M)) -> U81(isNat(M),M,N)
plus(X1,X2) -> n__plus(X1,X2)
s(X) -> n__s(X)
x(N,0()) -> U91(isNat(N),N)
x(N,s(M)) -> U101(isNat(M),M,N)
x(X1,X2) -> n__x(X1,X2)
- Signature:
{0/0,U101/3,U102/3,U103/3,U104/3,U11/3,U12/3,U13/3,U14/3,U15/2,U16/1,U21/2,U22/2,U23/1,U31/3,U32/3,U33/3
,U34/3,U35/2,U36/1,U41/2,U42/1,U51/1,U61/2,U62/1,U71/2,U72/2,U81/3,U82/3,U83/3,U84/3,U91/2,U92/1,activate/1
,isNat/1,isNatKind/1,plus/2,s/1,x/2} / {n__0/0,n__plus/2,n__s/1,n__x/2,tt/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {0,U101,U102,U103,U104,U11,U12,U13,U14,U15,U16,U21,U22,U23
,U31,U32,U33,U34,U35,U36,U41,U42,U51,U61,U62,U71,U72,U81,U82,U83,U84,U91,U92,activate,isNat,isNatKind,plus,s
,x} and constructors {n__0,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()
U101(tt(),M,N) -> U102(isNatKind(activate(M)),activate(M),activate(N))
U102(tt(),M,N) -> U103(isNat(activate(N)),activate(M),activate(N))
U103(tt(),M,N) -> U104(isNatKind(activate(N)),activate(M),activate(N))
U104(tt(),M,N) -> plus(x(activate(N),activate(M)),activate(N))
U11(tt(),V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2))
U12(tt(),V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2))
U13(tt(),V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2))
U14(tt(),V1,V2) -> U15(isNat(activate(V1)),activate(V2))
U15(tt(),V2) -> U16(isNat(activate(V2)))
U16(tt()) -> tt()
U21(tt(),V1) -> U22(isNatKind(activate(V1)),activate(V1))
U22(tt(),V1) -> U23(isNat(activate(V1)))
U23(tt()) -> tt()
U31(tt(),V1,V2) -> U32(isNatKind(activate(V1)),activate(V1),activate(V2))
U32(tt(),V1,V2) -> U33(isNatKind(activate(V2)),activate(V1),activate(V2))
U33(tt(),V1,V2) -> U34(isNatKind(activate(V2)),activate(V1),activate(V2))
U34(tt(),V1,V2) -> U35(isNat(activate(V1)),activate(V2))
U35(tt(),V2) -> U36(isNat(activate(V2)))
U36(tt()) -> tt()
U41(tt(),V2) -> U42(isNatKind(activate(V2)))
U42(tt()) -> tt()
U51(tt()) -> tt()
U61(tt(),V2) -> U62(isNatKind(activate(V2)))
U62(tt()) -> tt()
U71(tt(),N) -> U72(isNatKind(activate(N)),activate(N))
U72(tt(),N) -> activate(N)
U81(tt(),M,N) -> U82(isNatKind(activate(M)),activate(M),activate(N))
U82(tt(),M,N) -> U83(isNat(activate(N)),activate(M),activate(N))
U83(tt(),M,N) -> U84(isNatKind(activate(N)),activate(M),activate(N))
U84(tt(),M,N) -> s(plus(activate(N),activate(M)))
U91(tt(),N) -> U92(isNatKind(activate(N)))
U92(tt()) -> 0()
activate(X) -> X
activate(n__0()) -> 0()
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))
isNat(n__0()) -> tt()
isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2))
isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1))
isNat(n__x(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V1),activate(V2))
isNatKind(n__0()) -> tt()
isNatKind(n__plus(V1,V2)) -> U41(isNatKind(activate(V1)),activate(V2))
isNatKind(n__s(V1)) -> U51(isNatKind(activate(V1)))
isNatKind(n__x(V1,V2)) -> U61(isNatKind(activate(V1)),activate(V2))
plus(N,0()) -> U71(isNat(N),N)
plus(N,s(M)) -> U81(isNat(M),M,N)
plus(X1,X2) -> n__plus(X1,X2)
s(X) -> n__s(X)
x(N,0()) -> U91(isNat(N),N)
x(N,s(M)) -> U101(isNat(M),M,N)
x(X1,X2) -> n__x(X1,X2)
- Signature:
{0/0,U101/3,U102/3,U103/3,U104/3,U11/3,U12/3,U13/3,U14/3,U15/2,U16/1,U21/2,U22/2,U23/1,U31/3,U32/3,U33/3
,U34/3,U35/2,U36/1,U41/2,U42/1,U51/1,U61/2,U62/1,U71/2,U72/2,U81/3,U82/3,U83/3,U84/3,U91/2,U92/1,activate/1
,isNat/1,isNatKind/1,plus/2,s/1,x/2} / {n__0/0,n__plus/2,n__s/1,n__x/2,tt/0}
- Obligation:
innermost runtime complexity wrt. defined symbols {0,U101,U102,U103,U104,U11,U12,U13,U14,U15,U16,U21,U22,U23
,U31,U32,U33,U34,U35,U36,U41,U42,U51,U61,U62,U71,U72,U81,U82,U83,U84,U91,U92,activate,isNat,isNatKind,plus,s
,x} and constructors {n__0,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__plus(x,y)} =
activate(n__plus(x,y)) ->^+ plus(activate(x),activate(y))
= C[activate(x) = activate(x){}]
WORST_CASE(Omega(n^1),?)