MAYBE 0.17/0.21 MAYBE 0.17/0.21 0.17/0.21 Problem: 0.17/0.21 U11(tt(),V1,V2) -> U12(isNat(activate(V1)),activate(V2)) 0.17/0.21 U12(tt(),V2) -> U13(isNat(activate(V2))) 0.17/0.21 U13(tt()) -> tt() 0.17/0.21 U21(tt(),V1) -> U22(isNat(activate(V1))) 0.17/0.21 U22(tt()) -> tt() 0.17/0.21 U31(tt(),V1,V2) -> U32(isNat(activate(V1)),activate(V2)) 0.17/0.21 U32(tt(),V2) -> U33(isNat(activate(V2))) 0.17/0.21 U33(tt()) -> tt() 0.17/0.21 U41(tt(),N) -> activate(N) 0.17/0.21 U51(tt(),M,N) -> s(plus(activate(N),activate(M))) 0.17/0.21 U61(tt()) -> 0() 0.17/0.21 U71(tt(),M,N) -> plus(x(activate(N),activate(M)),activate(N)) 0.17/0.21 and(tt(),X) -> activate(X) 0.17/0.21 isNat(n__0()) -> tt() 0.17/0.21 isNat(n__plus(V1,V2)) -> 0.17/0.21 U11(and(isNatKind(activate(V1)),n__isNatKind(activate(V2))),activate(V1),activate(V2)) 0.17/0.21 isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) 0.17/0.21 isNat(n__x(V1,V2)) -> 0.17/0.21 U31(and(isNatKind(activate(V1)),n__isNatKind(activate(V2))),activate(V1),activate(V2)) 0.17/0.21 isNatKind(n__0()) -> tt() 0.17/0.21 isNatKind(n__plus(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2))) 0.17/0.21 isNatKind(n__s(V1)) -> isNatKind(activate(V1)) 0.17/0.21 isNatKind(n__x(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatKind(activate(V2))) 0.17/0.21 plus(N,0()) -> U41(and(isNat(N),n__isNatKind(N)),N) 0.17/0.21 plus(N,s(M)) -> U51(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N) 0.17/0.21 x(N,0()) -> U61(and(isNat(N),n__isNatKind(N))) 0.17/0.21 x(N,s(M)) -> U71(and(and(isNat(M),n__isNatKind(M)),n__and(n__isNat(N),n__isNatKind(N))),M,N) 0.17/0.21 0() -> n__0() 0.17/0.21 plus(X1,X2) -> n__plus(X1,X2) 0.17/0.21 isNatKind(X) -> n__isNatKind(X) 0.17/0.21 s(X) -> n__s(X) 0.17/0.21 x(X1,X2) -> n__x(X1,X2) 0.17/0.21 and(X1,X2) -> n__and(X1,X2) 0.17/0.21 isNat(X) -> n__isNat(X) 0.17/0.21 activate(n__0()) -> 0() 0.17/0.21 activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) 0.17/0.21 activate(n__isNatKind(X)) -> isNatKind(X) 0.17/0.21 activate(n__s(X)) -> s(activate(X)) 0.17/0.21 activate(n__x(X1,X2)) -> x(activate(X1),activate(X2)) 0.17/0.21 activate(n__and(X1,X2)) -> and(activate(X1),X2) 0.17/0.21 activate(n__isNat(X)) -> isNat(X) 0.17/0.21 activate(X) -> X 0.17/0.21 0.17/0.21 Proof: 0.17/0.21 Open 0.17/0.22 EOF