/export/starexec/sandbox/solver/bin/starexec_run_complexity /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- WORST_CASE(Omega(n^1), ?) proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). (0) CpxTRS (1) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxTRS (3) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (4) typed CpxTrs (5) OrderProof [LOWER BOUND(ID), 0 ms] (6) typed CpxTrs (7) RewriteLemmaProof [LOWER BOUND(ID), 1049 ms] (8) BEST (9) proven lower bound (10) LowerBoundPropagationProof [FINISHED, 0 ms] (11) BOUNDS(n^1, INF) (12) typed CpxTrs ---------------------------------------- (0) Obligation: The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0 U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0) -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0) -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0 -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0 activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X S is empty. Rewrite Strategy: FULL ---------------------------------------- (1) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (2) Obligation: The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0' U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0') -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0') -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0' -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0' activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X S is empty. Rewrite Strategy: FULL ---------------------------------------- (3) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (4) Obligation: TRS: Rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0' U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0') -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0') -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0' -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0' activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X Types: U11 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x tt :: tt:n__0:n__plus:n__isNat:n__s:n__x activate :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U21 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U31 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x 0' :: tt:n__0:n__plus:n__isNat:n__s:n__x U41 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x and :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__0 :: tt:n__0:n__plus:n__isNat:n__s:n__x n__plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x hole_tt:n__0:n__plus:n__isNat:n__s:n__x1_3 :: tt:n__0:n__plus:n__isNat:n__s:n__x gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3 :: Nat -> tt:n__0:n__plus:n__isNat:n__s:n__x ---------------------------------------- (5) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: U11, activate, plus, x, and, isNat They will be analysed ascendingly in the following order: U11 = activate U11 = plus U11 = x U11 = and U11 = isNat activate = plus activate = x activate = and activate = isNat plus = x plus = and plus = isNat x = and x = isNat and = isNat ---------------------------------------- (6) Obligation: TRS: Rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0' U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0') -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0') -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0' -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0' activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X Types: U11 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x tt :: tt:n__0:n__plus:n__isNat:n__s:n__x activate :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U21 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U31 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x 0' :: tt:n__0:n__plus:n__isNat:n__s:n__x U41 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x and :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__0 :: tt:n__0:n__plus:n__isNat:n__s:n__x n__plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x hole_tt:n__0:n__plus:n__isNat:n__s:n__x1_3 :: tt:n__0:n__plus:n__isNat:n__s:n__x gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3 :: Nat -> tt:n__0:n__plus:n__isNat:n__s:n__x Generator Equations: gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(0) <=> tt gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(x, 1)) <=> n__plus(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(x), tt) The following defined symbols remain to be analysed: activate, U11, plus, x, and, isNat They will be analysed ascendingly in the following order: U11 = activate U11 = plus U11 = x U11 = and U11 = isNat activate = plus activate = x activate = and activate = isNat plus = x plus = and plus = isNat x = and x = isNat and = isNat ---------------------------------------- (7) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: isNat(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, n361_3))) -> *3_3, rt in Omega(n361_3) Induction Base: isNat(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, 0))) Induction Step: isNat(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, +(n361_3, 1)))) ->_R^Omega(1) and(isNat(activate(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, n361_3)))), n__isNat(activate(tt))) ->_R^Omega(1) and(isNat(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, n361_3))), n__isNat(activate(tt))) ->_IH and(*3_3, n__isNat(activate(tt))) ->_R^Omega(1) and(*3_3, n__isNat(tt)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (8) Complex Obligation (BEST) ---------------------------------------- (9) Obligation: Proved the lower bound n^1 for the following obligation: TRS: Rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0' U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0') -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0') -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0' -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0' activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X Types: U11 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x tt :: tt:n__0:n__plus:n__isNat:n__s:n__x activate :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U21 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U31 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x 0' :: tt:n__0:n__plus:n__isNat:n__s:n__x U41 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x and :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__0 :: tt:n__0:n__plus:n__isNat:n__s:n__x n__plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x hole_tt:n__0:n__plus:n__isNat:n__s:n__x1_3 :: tt:n__0:n__plus:n__isNat:n__s:n__x gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3 :: Nat -> tt:n__0:n__plus:n__isNat:n__s:n__x Generator Equations: gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(0) <=> tt gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(x, 1)) <=> n__plus(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(x), tt) The following defined symbols remain to be analysed: isNat, x, and They will be analysed ascendingly in the following order: U11 = activate U11 = plus U11 = x U11 = and U11 = isNat activate = plus activate = x activate = and activate = isNat plus = x plus = and plus = isNat x = and x = isNat and = isNat ---------------------------------------- (10) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (11) BOUNDS(n^1, INF) ---------------------------------------- (12) Obligation: TRS: Rules: U11(tt, N) -> activate(N) U21(tt, M, N) -> s(plus(activate(N), activate(M))) U31(tt) -> 0' U41(tt, M, N) -> plus(x(activate(N), activate(M)), activate(N)) and(tt, X) -> activate(X) isNat(n__0) -> tt isNat(n__plus(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) isNat(n__s(V1)) -> isNat(activate(V1)) isNat(n__x(V1, V2)) -> and(isNat(activate(V1)), n__isNat(activate(V2))) plus(N, 0') -> U11(isNat(N), N) plus(N, s(M)) -> U21(and(isNat(M), n__isNat(N)), M, N) x(N, 0') -> U31(isNat(N)) x(N, s(M)) -> U41(and(isNat(M), n__isNat(N)), M, N) 0' -> n__0 plus(X1, X2) -> n__plus(X1, X2) isNat(X) -> n__isNat(X) s(X) -> n__s(X) x(X1, X2) -> n__x(X1, X2) activate(n__0) -> 0' activate(n__plus(X1, X2)) -> plus(X1, X2) activate(n__isNat(X)) -> isNat(X) activate(n__s(X)) -> s(X) activate(n__x(X1, X2)) -> x(X1, X2) activate(X) -> X Types: U11 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x tt :: tt:n__0:n__plus:n__isNat:n__s:n__x activate :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U21 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x U31 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x 0' :: tt:n__0:n__plus:n__isNat:n__s:n__x U41 :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x and :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__0 :: tt:n__0:n__plus:n__isNat:n__s:n__x n__plus :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__isNat :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__s :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x n__x :: tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x -> tt:n__0:n__plus:n__isNat:n__s:n__x hole_tt:n__0:n__plus:n__isNat:n__s:n__x1_3 :: tt:n__0:n__plus:n__isNat:n__s:n__x gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3 :: Nat -> tt:n__0:n__plus:n__isNat:n__s:n__x Lemmas: isNat(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(1, n361_3))) -> *3_3, rt in Omega(n361_3) Generator Equations: gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(0) <=> tt gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(+(x, 1)) <=> n__plus(gen_tt:n__0:n__plus:n__isNat:n__s:n__x2_3(x), tt) The following defined symbols remain to be analysed: and, U11, activate, plus, x They will be analysed ascendingly in the following order: U11 = activate U11 = plus U11 = x U11 = and U11 = isNat activate = plus activate = x activate = and activate = isNat plus = x plus = and plus = isNat x = and x = isNat and = isNat