/export/starexec/sandbox2/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- WORST_CASE(?, O(n^1)) proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, n^1). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 239 ms] (4) CpxRelTRS (5) NonCtorToCtorProof [UPPER BOUND(ID), 0 ms] (6) CpxRelTRS (7) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxWeightedTrs (9) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (10) CpxTypedWeightedTrs (11) CompletionProof [UPPER BOUND(ID), 0 ms] (12) CpxTypedWeightedCompleteTrs (13) NarrowingProof [BOTH BOUNDS(ID, ID), 321 ms] (14) CpxTypedWeightedCompleteTrs (15) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (16) CpxRNTS (17) InliningProof [UPPER BOUND(ID), 1473 ms] (18) CpxRNTS (19) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxRNTS (21) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (22) CpxRNTS (23) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (24) CpxRNTS (25) IntTrsBoundProof [UPPER BOUND(ID), 2191 ms] (26) CpxRNTS (27) IntTrsBoundProof [UPPER BOUND(ID), 1038 ms] (28) CpxRNTS (29) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (30) CpxRNTS (31) IntTrsBoundProof [UPPER BOUND(ID), 107 ms] (32) CpxRNTS (33) IntTrsBoundProof [UPPER BOUND(ID), 32 ms] (34) CpxRNTS (35) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (36) CpxRNTS (37) IntTrsBoundProof [UPPER BOUND(ID), 143 ms] (38) CpxRNTS (39) IntTrsBoundProof [UPPER BOUND(ID), 52 ms] (40) CpxRNTS (41) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (42) CpxRNTS (43) IntTrsBoundProof [UPPER BOUND(ID), 53 ms] (44) CpxRNTS (45) IntTrsBoundProof [UPPER BOUND(ID), 1 ms] (46) CpxRNTS (47) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (48) CpxRNTS (49) IntTrsBoundProof [UPPER BOUND(ID), 7 ms] (50) CpxRNTS (51) IntTrsBoundProof [UPPER BOUND(ID), 22 ms] (52) CpxRNTS (53) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (54) CpxRNTS (55) IntTrsBoundProof [UPPER BOUND(ID), 116 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 1 ms] (58) CpxRNTS (59) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) IntTrsBoundProof [UPPER BOUND(ID), 1223 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 610 ms] (64) CpxRNTS (65) ResultPropagationProof [UPPER BOUND(ID), 1 ms] (66) CpxRNTS (67) IntTrsBoundProof [UPPER BOUND(ID), 525 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 158 ms] (70) CpxRNTS (71) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) IntTrsBoundProof [UPPER BOUND(ID), 526 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 138 ms] (76) CpxRNTS (77) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (78) CpxRNTS (79) IntTrsBoundProof [UPPER BOUND(ID), 186 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 63 ms] (82) CpxRNTS (83) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (84) CpxRNTS (85) IntTrsBoundProof [UPPER BOUND(ID), 188 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 82 ms] (88) CpxRNTS (89) FinalProof [FINISHED, 0 ms] (90) BOUNDS(1, n^1) ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) g(b) -> c b -> c g(X) -> n__g(X) activate(n__g(X)) -> g(X) activate(X) -> X S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (1) DerivationalComplexityToRuntimeComplexityProof (BOTH BOUNDS(ID, ID)) The following rules have been added to S to convert the given derivational complexity problem to a runtime complexity problem: encArg(n__g(x_1)) -> n__g(encArg(x_1)) encArg(c) -> c encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_g(x_1)) -> g(encArg(x_1)) encArg(cons_b) -> b encArg(cons_activate(x_1)) -> activate(encArg(x_1)) encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encode_n__g(x_1) -> n__g(encArg(x_1)) encode_activate(x_1) -> activate(encArg(x_1)) encode_g(x_1) -> g(encArg(x_1)) encode_b -> b encode_c -> c ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) g(b) -> c b -> c g(X) -> n__g(X) activate(n__g(X)) -> g(X) activate(X) -> X The (relative) TRS S consists of the following rules: encArg(n__g(x_1)) -> n__g(encArg(x_1)) encArg(c) -> c encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_g(x_1)) -> g(encArg(x_1)) encArg(cons_b) -> b encArg(cons_activate(x_1)) -> activate(encArg(x_1)) encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encode_n__g(x_1) -> n__g(encArg(x_1)) encode_activate(x_1) -> activate(encArg(x_1)) encode_g(x_1) -> g(encArg(x_1)) encode_b -> b encode_c -> c Rewrite Strategy: INNERMOST ---------------------------------------- (3) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) g(b) -> c b -> c g(X) -> n__g(X) activate(n__g(X)) -> g(X) activate(X) -> X The (relative) TRS S consists of the following rules: encArg(n__g(x_1)) -> n__g(encArg(x_1)) encArg(c) -> c encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_g(x_1)) -> g(encArg(x_1)) encArg(cons_b) -> b encArg(cons_activate(x_1)) -> activate(encArg(x_1)) encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encode_n__g(x_1) -> n__g(encArg(x_1)) encode_activate(x_1) -> activate(encArg(x_1)) encode_g(x_1) -> g(encArg(x_1)) encode_b -> b encode_c -> c Rewrite Strategy: INNERMOST ---------------------------------------- (5) NonCtorToCtorProof (UPPER BOUND(ID)) transformed non-ctor to ctor-system ---------------------------------------- (6) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) b -> c g(X) -> n__g(X) activate(n__g(X)) -> g(X) activate(X) -> X g(c_b) -> c The (relative) TRS S consists of the following rules: encArg(n__g(x_1)) -> n__g(encArg(x_1)) encArg(c) -> c encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_g(x_1)) -> g(encArg(x_1)) encArg(cons_b) -> b encArg(cons_activate(x_1)) -> activate(encArg(x_1)) encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) encode_n__g(x_1) -> n__g(encArg(x_1)) encode_activate(x_1) -> activate(encArg(x_1)) encode_g(x_1) -> g(encArg(x_1)) encode_b -> b encode_c -> c b -> c_b Rewrite Strategy: INNERMOST ---------------------------------------- (7) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, n^1). The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) [1] b -> c [1] g(X) -> n__g(X) [1] activate(n__g(X)) -> g(X) [1] activate(X) -> X [1] g(c_b) -> c [1] encArg(n__g(x_1)) -> n__g(encArg(x_1)) [0] encArg(c) -> c [0] encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_g(x_1)) -> g(encArg(x_1)) [0] encArg(cons_b) -> b [0] encArg(cons_activate(x_1)) -> activate(encArg(x_1)) [0] encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_n__g(x_1) -> n__g(encArg(x_1)) [0] encode_activate(x_1) -> activate(encArg(x_1)) [0] encode_g(x_1) -> g(encArg(x_1)) [0] encode_b -> b [0] encode_c -> c [0] b -> c_b [0] Rewrite Strategy: INNERMOST ---------------------------------------- (9) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (10) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) [1] b -> c [1] g(X) -> n__g(X) [1] activate(n__g(X)) -> g(X) [1] activate(X) -> X [1] g(c_b) -> c [1] encArg(n__g(x_1)) -> n__g(encArg(x_1)) [0] encArg(c) -> c [0] encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_g(x_1)) -> g(encArg(x_1)) [0] encArg(cons_b) -> b [0] encArg(cons_activate(x_1)) -> activate(encArg(x_1)) [0] encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_n__g(x_1) -> n__g(encArg(x_1)) [0] encode_activate(x_1) -> activate(encArg(x_1)) [0] encode_g(x_1) -> g(encArg(x_1)) [0] encode_b -> b [0] encode_c -> c [0] b -> c_b [0] The TRS has the following type information: f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate c_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encArg :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate cons_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate cons_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate cons_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate cons_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate encode_c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate Rewrite Strategy: INNERMOST ---------------------------------------- (11) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: activate_1 f_3 g_1 encArg_1 encode_f_3 encode_n__g_1 encode_activate_1 encode_g_1 encode_b encode_c b Due to the following rules being added: encArg(v0) -> null_encArg [0] encode_f(v0, v1, v2) -> null_encode_f [0] encode_n__g(v0) -> null_encode_n__g [0] encode_activate(v0) -> null_encode_activate [0] encode_g(v0) -> null_encode_g [0] encode_b -> null_encode_b [0] encode_c -> null_encode_c [0] b -> null_b [0] f(v0, v1, v2) -> null_f [0] And the following fresh constants: null_encArg, null_encode_f, null_encode_n__g, null_encode_activate, null_encode_g, null_encode_b, null_encode_c, null_b, null_f ---------------------------------------- (12) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: f(X, n__g(X), Y) -> f(activate(Y), activate(Y), activate(Y)) [1] b -> c [1] g(X) -> n__g(X) [1] activate(n__g(X)) -> g(X) [1] activate(X) -> X [1] g(c_b) -> c [1] encArg(n__g(x_1)) -> n__g(encArg(x_1)) [0] encArg(c) -> c [0] encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_g(x_1)) -> g(encArg(x_1)) [0] encArg(cons_b) -> b [0] encArg(cons_activate(x_1)) -> activate(encArg(x_1)) [0] encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_n__g(x_1) -> n__g(encArg(x_1)) [0] encode_activate(x_1) -> activate(encArg(x_1)) [0] encode_g(x_1) -> g(encArg(x_1)) [0] encode_b -> b [0] encode_c -> c [0] b -> c_b [0] encArg(v0) -> null_encArg [0] encode_f(v0, v1, v2) -> null_encode_f [0] encode_n__g(v0) -> null_encode_n__g [0] encode_activate(v0) -> null_encode_activate [0] encode_g(v0) -> null_encode_g [0] encode_b -> null_encode_b [0] encode_c -> null_encode_c [0] b -> null_b [0] f(v0, v1, v2) -> null_f [0] The TRS has the following type information: f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f c_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encArg :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encArg :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f Rewrite Strategy: INNERMOST ---------------------------------------- (13) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (14) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: f(X, n__g(X), n__g(X')) -> f(g(X'), g(X'), g(X')) [4] f(X, n__g(X), n__g(X')) -> f(g(X'), g(X'), n__g(X')) [4] f(X, n__g(X), n__g(X')) -> f(g(X'), n__g(X'), g(X')) [4] f(X, n__g(X), n__g(X')) -> f(g(X'), n__g(X'), n__g(X')) [4] f(X, n__g(X), n__g(X'')) -> f(n__g(X''), g(X''), g(X'')) [4] f(X, n__g(X), n__g(X'')) -> f(n__g(X''), g(X''), n__g(X'')) [4] f(X, n__g(X), n__g(X1)) -> f(n__g(X1), n__g(X1), g(X1)) [4] f(X, n__g(X), Y) -> f(Y, Y, Y) [4] b -> c [1] g(X) -> n__g(X) [1] activate(n__g(X)) -> g(X) [1] activate(X) -> X [1] g(c_b) -> c [1] encArg(n__g(x_1)) -> n__g(encArg(x_1)) [0] encArg(c) -> c [0] encArg(cons_f(x_1, x_2, x_3)) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_g(n__g(x_1227))) -> g(n__g(encArg(x_1227))) [0] encArg(cons_g(c)) -> g(c) [0] encArg(cons_g(cons_f(x_1228, x_256, x_356))) -> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) [0] encArg(cons_g(cons_g(x_1229))) -> g(g(encArg(x_1229))) [0] encArg(cons_g(cons_b)) -> g(b) [0] encArg(cons_g(cons_activate(x_1230))) -> g(activate(encArg(x_1230))) [0] encArg(cons_g(x_1)) -> g(null_encArg) [0] encArg(cons_b) -> b [0] encArg(cons_activate(n__g(x_1231))) -> activate(n__g(encArg(x_1231))) [0] encArg(cons_activate(c)) -> activate(c) [0] encArg(cons_activate(cons_f(x_1232, x_257, x_357))) -> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) [0] encArg(cons_activate(cons_g(x_1233))) -> activate(g(encArg(x_1233))) [0] encArg(cons_activate(cons_b)) -> activate(b) [0] encArg(cons_activate(cons_activate(x_1234))) -> activate(activate(encArg(x_1234))) [0] encArg(cons_activate(x_1)) -> activate(null_encArg) [0] encode_f(x_1, x_2, x_3) -> f(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_n__g(x_1) -> n__g(encArg(x_1)) [0] encode_activate(n__g(x_1463)) -> activate(n__g(encArg(x_1463))) [0] encode_activate(c) -> activate(c) [0] encode_activate(cons_f(x_1464, x_2115, x_3115)) -> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) [0] encode_activate(cons_g(x_1465)) -> activate(g(encArg(x_1465))) [0] encode_activate(cons_b) -> activate(b) [0] encode_activate(cons_activate(x_1466)) -> activate(activate(encArg(x_1466))) [0] encode_activate(x_1) -> activate(null_encArg) [0] encode_g(n__g(x_1467)) -> g(n__g(encArg(x_1467))) [0] encode_g(c) -> g(c) [0] encode_g(cons_f(x_1468, x_2116, x_3116)) -> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) [0] encode_g(cons_g(x_1469)) -> g(g(encArg(x_1469))) [0] encode_g(cons_b) -> g(b) [0] encode_g(cons_activate(x_1470)) -> g(activate(encArg(x_1470))) [0] encode_g(x_1) -> g(null_encArg) [0] encode_b -> b [0] encode_c -> c [0] b -> c_b [0] encArg(v0) -> null_encArg [0] encode_f(v0, v1, v2) -> null_encode_f [0] encode_n__g(v0) -> null_encode_n__g [0] encode_activate(v0) -> null_encode_activate [0] encode_g(v0) -> null_encode_g [0] encode_b -> null_encode_b [0] encode_c -> null_encode_c [0] b -> null_b [0] f(v0, v1, v2) -> null_f [0] The TRS has the following type information: f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f c_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encArg :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f cons_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f -> n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f encode_c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encArg :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_n__g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_activate :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_g :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_encode_c :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_b :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f null_f :: n__g:c:c_b:cons_f:cons_g:cons_b:cons_activate:null_encArg:null_encode_f:null_encode_n__g:null_encode_activate:null_encode_g:null_encode_b:null_encode_c:null_b:null_f Rewrite Strategy: INNERMOST ---------------------------------------- (15) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: c => 0 c_b => 1 cons_b => 2 null_encArg => 0 null_encode_f => 0 null_encode_n__g => 0 null_encode_activate => 0 null_encode_g => 0 null_encode_b => 0 null_encode_c => 0 null_b => 0 null_f => 0 ---------------------------------------- (16) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> X :|: X >= 0, z = X activate(z) -{ 1 }-> g(X) :|: z = 1 + X, X >= 0 b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 0 }-> g(g(encArg(x_1229))) :|: x_1229 >= 0, z = 1 + (1 + x_1229) encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(b) :|: z = 1 + 2 encArg(z) -{ 0 }-> g(activate(encArg(x_1230))) :|: z = 1 + (1 + x_1230), x_1230 >= 0 encArg(z) -{ 0 }-> g(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> g(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(x_1227)) :|: z = 1 + (1 + x_1227), x_1227 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> b :|: z = 2 encArg(z) -{ 0 }-> activate(g(encArg(x_1233))) :|: z = 1 + (1 + x_1233), x_1233 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(b) :|: z = 1 + 2 encArg(z) -{ 0 }-> activate(activate(encArg(x_1234))) :|: z = 1 + (1 + x_1234), x_1234 >= 0 encArg(z) -{ 0 }-> activate(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> activate(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(x_1231)) :|: z = 1 + (1 + x_1231), x_1231 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encArg(z) -{ 0 }-> 1 + encArg(x_1) :|: z = 1 + x_1, x_1 >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(x_1465))) :|: x_1465 >= 0, z = 1 + x_1465 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(b) :|: z = 2 encode_activate(z) -{ 0 }-> activate(activate(encArg(x_1466))) :|: x_1466 >= 0, z = 1 + x_1466 encode_activate(z) -{ 0 }-> activate(0) :|: z = 0 encode_activate(z) -{ 0 }-> activate(0) :|: x_1 >= 0, z = x_1 encode_activate(z) -{ 0 }-> activate(1 + encArg(x_1463)) :|: x_1463 >= 0, z = 1 + x_1463 encode_activate(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_b -{ 0 }-> b :|: encode_b -{ 0 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, x_3 >= 0, x_2 >= 0, z = x_1, z' = x_2, z'' = x_3 encode_f(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 encode_g(z) -{ 0 }-> g(g(encArg(x_1469))) :|: x_1469 >= 0, z = 1 + x_1469 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(b) :|: z = 2 encode_g(z) -{ 0 }-> g(activate(encArg(x_1470))) :|: z = 1 + x_1470, x_1470 >= 0 encode_g(z) -{ 0 }-> g(0) :|: z = 0 encode_g(z) -{ 0 }-> g(0) :|: x_1 >= 0, z = x_1 encode_g(z) -{ 0 }-> g(1 + encArg(x_1467)) :|: x_1467 >= 0, z = 1 + x_1467 encode_g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_n__g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_n__g(z) -{ 0 }-> 1 + encArg(x_1) :|: x_1 >= 0, z = x_1 f(z, z', z'') -{ 4 }-> f(Y, Y, Y) :|: Y >= 0, z'' = Y, z' = 1 + X, X >= 0, z = X f(z, z', z'') -{ 4 }-> f(g(X'), g(X'), g(X')) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X' f(z, z', z'') -{ 4 }-> f(g(X'), g(X'), 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X' f(z, z', z'') -{ 4 }-> f(g(X'), 1 + X', g(X')) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X' f(z, z', z'') -{ 4 }-> f(g(X'), 1 + X', 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X' f(z, z', z'') -{ 4 }-> f(1 + X'', g(X''), g(X'')) :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0 f(z, z', z'') -{ 4 }-> f(1 + X'', g(X''), 1 + X'') :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0 f(z, z', z'') -{ 4 }-> f(1 + X1, 1 + X1, g(X1)) :|: X1 >= 0, z' = 1 + X, X >= 0, z = X, z'' = 1 + X1 f(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + X :|: X >= 0, z = X ---------------------------------------- (17) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: b -{ 0 }-> 1 :|: b -{ 0 }-> 0 :|: b -{ 1 }-> 0 :|: g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + X :|: X >= 0, z = X activate(z) -{ 1 }-> g(X) :|: z = 1 + X, X >= 0 activate(z) -{ 1 }-> X :|: X >= 0, z = X ---------------------------------------- (18) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> X :|: X >= 0, z = X activate(z) -{ 2 }-> 0 :|: z = 1 + X, X >= 0, X = 1 activate(z) -{ 2 }-> 1 + X' :|: z = 1 + X, X >= 0, X' >= 0, X = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + x_1, x_1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(x_1229))) :|: x_1229 >= 0, z = 1 + (1 + x_1229) encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(x_1230))) :|: z = 1 + (1 + x_1230), x_1230 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(x_1227)) :|: z = 1 + (1 + x_1227), x_1227 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(x_1233))) :|: z = 1 + (1 + x_1233), x_1233 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(x_1234))) :|: z = 1 + (1 + x_1234), x_1234 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(x_1231)) :|: z = 1 + (1 + x_1231), x_1231 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + x_1, x_1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(x_1) :|: z = 1 + x_1, x_1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: x_1 >= 0, z = x_1, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(x_1465))) :|: x_1465 >= 0, z = 1 + x_1465 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(x_1466))) :|: x_1466 >= 0, z = 1 + x_1466 encode_activate(z) -{ 0 }-> activate(1 + encArg(x_1463)) :|: x_1463 >= 0, z = 1 + x_1463 encode_activate(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, x_3 >= 0, x_2 >= 0, z = x_1, z' = x_2, z'' = x_3 encode_f(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 encode_g(z) -{ 0 }-> g(g(encArg(x_1469))) :|: x_1469 >= 0, z = 1 + x_1469 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(x_1470))) :|: z = 1 + x_1470, x_1470 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(x_1467)) :|: x_1467 >= 0, z = 1 + x_1467 encode_g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: x_1 >= 0, z = x_1, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_n__g(z) -{ 0 }-> 1 + encArg(x_1) :|: x_1 >= 0, z = x_1 f(z, z', z'') -{ 4 }-> f(Y, Y, Y) :|: Y >= 0, z'' = Y, z' = 1 + X, X >= 0, z = X f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1 f(z, z', z'') -{ 6 }-> f(0, 0, 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1, X'' >= 0, X' = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + X', 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1 f(z, z', z'') -{ 5 }-> f(0, 1 + X', 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + X', 1 + X'') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1, X'' >= 0, X' = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1, X'' >= 0, X' = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1, X'' >= 0, X' = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X' = 1, X'' >= 0, X' = X'', X1 >= 0, X' = X1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X' = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 0) :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X'' = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X' = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + X') :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X'' = 1, X' >= 0, X'' = X' f(z, z', z'') -{ 5 }-> f(1 + X'', 0, 1 + X'') :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X'' = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X' = 1, X1 >= 0, X' = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X', 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X' = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X', 0) :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X' >= 0, X'' = X', X'' = 1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + X', 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'' f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + X', 1 + X'') :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X' >= 0, X'' = X' f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X', 1 + X1) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X1 >= 0, X' = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X', 1 + X1) :|: z' = 1 + X, X >= 0, z'' = 1 + X'', z = X, X'' >= 0, X' >= 0, X'' = X', X1 >= 0, X'' = X1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X1 >= 0, X' = X1, X' = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + X') :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X1 >= 0, X' = X1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' = 1 + X, X >= 0, X' >= 0, z = X, z'' = 1 + X', X'' >= 0, X' = X'', X1 >= 0, X' = X1, X2 >= 0, X' = X2 f(z, z', z'') -{ 5 }-> f(1 + X1, 1 + X1, 0) :|: X1 >= 0, z' = 1 + X, X >= 0, z = X, z'' = 1 + X1, X1 = 1 f(z, z', z'') -{ 5 }-> f(1 + X1, 1 + X1, 1 + X') :|: X1 >= 0, z' = 1 + X, X >= 0, z = X, z'' = 1 + X1, X' >= 0, X1 = X' f(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + X :|: X >= 0, z = X ---------------------------------------- (19) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (20) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 4 }-> f(z'', z'', z'') :|: z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 5 }-> f(0, 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 1 + X') :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 1 + X1) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + X', 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 0) :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 1 + X') :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 ---------------------------------------- (21) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { f } { b } { g } { encode_c } { activate } { encode_b } { encArg } { encode_activate } { encode_g } { encode_n__g } { encode_f } ---------------------------------------- (22) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 4 }-> f(z'', z'', z'') :|: z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 5 }-> f(0, 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 1 + X') :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 1 + X1) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + X', 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 0) :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 1 + X') :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {f}, {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} ---------------------------------------- (23) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (24) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 4 }-> f(z'', z'', z'') :|: z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 5 }-> f(0, 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 1 + X') :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 1 + X1) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + X', 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 0) :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 1 + X') :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {f}, {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} ---------------------------------------- (25) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: f after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (26) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 4 }-> f(z'', z'', z'') :|: z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 5 }-> f(0, 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 1 + X') :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 1 + X1) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + X', 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 0) :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 1 + X') :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {f}, {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: ?, size: O(1) [0] ---------------------------------------- (27) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: f after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 162 ---------------------------------------- (28) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 4 }-> f(z'', z'', z'') :|: z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 7 }-> f(0, 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 0, 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 7 }-> f(0, 1 + X'', 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(0, 1 + X'', 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(0, 1 + (z'' - 1), 1 + X'') :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 5 }-> f(0, 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 0, 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 7 }-> f(1 + X'', 1 + X1, 1 + X2) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + X1, 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 0) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + X'', 1 + (z'' - 1), 1 + X1) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + X'', 1 + (z'' - 1), 1 + (z'' - 1)) :|: z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 0, 1 + X') :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 0, 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 0) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 6 }-> f(1 + (z'' - 1), 1 + X', 1 + X1) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + X', 1 + (z'' - 1)) :|: z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 0) :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 5 }-> f(1 + (z'' - 1), 1 + (z'' - 1), 1 + X') :|: z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] ---------------------------------------- (29) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (30) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] ---------------------------------------- (31) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: b after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (32) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {b}, {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: ?, size: O(1) [1] ---------------------------------------- (33) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: b after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (34) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] ---------------------------------------- (35) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (36) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] ---------------------------------------- (37) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: g after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (38) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {g}, {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (39) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: g after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (40) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 1 }-> g(X) :|: z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 1 }-> g(X) :|: z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] ---------------------------------------- (41) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (42) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] ---------------------------------------- (43) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_c after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (44) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_c}, {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: ?, size: O(1) [0] ---------------------------------------- (45) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_c after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (47) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (48) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (49) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: activate after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (50) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {activate}, {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: ?, size: O(n^1) [z] ---------------------------------------- (51) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: activate after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 5 ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] ---------------------------------------- (53) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] ---------------------------------------- (55) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_b after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_b}, {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: ?, size: O(1) [1] ---------------------------------------- (57) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_b after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] ---------------------------------------- (59) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (60) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] ---------------------------------------- (61) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: encArg after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (62) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encArg}, {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: ?, size: O(n^1) [z] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encArg after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + 167*z ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 0 }-> g(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(f(encArg(x_1228), encArg(x_256), encArg(x_356))) :|: z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ 0 }-> g(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> g(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> f(encArg(x_1), encArg(x_2), encArg(x_3)) :|: x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ 0 }-> activate(g(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(f(encArg(x_1232), encArg(x_257), encArg(x_357))) :|: x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ 0 }-> activate(activate(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> activate(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ 0 }-> activate(g(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(f(encArg(x_1464), encArg(x_2115), encArg(x_3115))) :|: x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ 0 }-> activate(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> activate(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 0 }-> f(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ 0 }-> g(g(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(f(encArg(x_1468), encArg(x_2116), encArg(x_3116))) :|: x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ 0 }-> g(activate(encArg(z - 1))) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> g(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] ---------------------------------------- (65) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (66) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] ---------------------------------------- (67) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_activate after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (68) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_activate}, {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: ?, size: O(n^1) [z] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_activate after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 160 + 167*z ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] ---------------------------------------- (71) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (72) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] ---------------------------------------- (73) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_g after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_g}, {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_g after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 164 + 167*z ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] ---------------------------------------- (77) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (78) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] ---------------------------------------- (79) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_n__g after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (80) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_n__g}, {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] encode_n__g: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (81) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_n__g after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + 167*z ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] encode_n__g: runtime: O(n^1) [2 + 167*z], size: O(n^1) [1 + z] ---------------------------------------- (83) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (84) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] encode_n__g: runtime: O(n^1) [2 + 167*z], size: O(n^1) [1 + z] ---------------------------------------- (85) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_f after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (86) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: {encode_f} Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] encode_n__g: runtime: O(n^1) [2 + 167*z], size: O(n^1) [1 + z] encode_f: runtime: ?, size: O(1) [0] ---------------------------------------- (87) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_f after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 168 + 167*z + 167*z' + 167*z'' ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 0 :|: z - 1 >= 0, z - 1 = 1 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' b -{ 0 }-> 1 :|: b -{ 1 }-> 0 :|: b -{ 0 }-> 0 :|: encArg(z) -{ 1 }-> X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> s25 :|: s25 >= 0, s25 <= X + 1, z = 1 + 2, 1 = 1 + X, X >= 0 encArg(z) -{ 168 + 167*x_1 + 167*x_2 + 167*x_3 }-> s31 :|: s28 >= 0, s28 <= x_1, s29 >= 0, s29 <= x_2, s30 >= 0, s30 <= x_3, s31 >= 0, s31 <= 0, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -331 + 167*z }-> s38 :|: s37 >= 0, s37 <= z - 2, s38 >= 0, s38 <= 1 + s37 + 1, z - 2 >= 0 encArg(z) -{ 169 + 167*x_1228 + 167*x_256 + 167*x_356 }-> s43 :|: s39 >= 0, s39 <= x_1228, s40 >= 0, s40 <= x_256, s41 >= 0, s41 <= x_356, s42 >= 0, s42 <= 0, s43 >= 0, s43 <= s42 + 1, z = 1 + (1 + x_1228 + x_256 + x_356), x_256 >= 0, x_1228 >= 0, x_356 >= 0 encArg(z) -{ -330 + 167*z }-> s46 :|: s44 >= 0, s44 <= z - 2, s45 >= 0, s45 <= s44 + 1, s46 >= 0, s46 <= s45 + 1, z - 2 >= 0 encArg(z) -{ -327 + 167*z }-> s58 :|: s57 >= 0, s57 <= z - 2, s58 >= 0, s58 <= 1 + s57, z - 2 >= 0 encArg(z) -{ 173 + 167*x_1232 + 167*x_257 + 167*x_357 }-> s63 :|: s59 >= 0, s59 <= x_1232, s60 >= 0, s60 <= x_257, s61 >= 0, s61 <= x_357, s62 >= 0, s62 <= 0, s63 >= 0, s63 <= s62, x_1232 >= 0, x_357 >= 0, z = 1 + (1 + x_1232 + x_257 + x_357), x_257 >= 0 encArg(z) -{ -322 + 167*z }-> s66 :|: s64 >= 0, s64 <= z - 2, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s79 :|: s77 >= 0, s77 <= z - 2, s78 >= 0, s78 <= s77, s79 >= 0, s79 <= s78 + 1, z - 2 >= 0 encArg(z) -{ -326 + 167*z }-> s82 :|: s80 >= 0, s80 <= z - 2, s81 >= 0, s81 <= s80 + 1, s82 >= 0, s82 <= s81, z - 2 >= 0 encArg(z) -{ 0 }-> 1 :|: z = 2 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 2 encArg(z) -{ 1 }-> 0 :|: z = 1 + 2, 1 = 1 encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z - 1 >= 0, X >= 0, 0 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 1 = X encArg(z) -{ 1 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ 2 }-> 1 + X :|: z = 1 + 2, X >= 0, 0 = X encArg(z) -{ -165 + 167*z }-> 1 + s27 :|: s27 >= 0, s27 <= z - 1, z - 1 >= 0 encode_activate(z) -{ 1 }-> X :|: z = 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z >= 0, X >= 0, 0 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 1 = X encode_activate(z) -{ 1 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> X :|: z = 2, X >= 0, 0 = X encode_activate(z) -{ 2 }-> s26 :|: s26 >= 0, s26 <= X + 1, z = 2, 1 = 1 + X, X >= 0 encode_activate(z) -{ -160 + 167*z }-> s68 :|: s67 >= 0, s67 <= z - 1, s68 >= 0, s68 <= 1 + s67, z - 1 >= 0 encode_activate(z) -{ 173 + 167*x_1464 + 167*x_2115 + 167*x_3115 }-> s73 :|: s69 >= 0, s69 <= x_1464, s70 >= 0, s70 <= x_2115, s71 >= 0, s71 <= x_3115, s72 >= 0, s72 <= 0, s73 >= 0, s73 <= s72, x_3115 >= 0, x_1464 >= 0, x_2115 >= 0, z = 1 + x_1464 + x_2115 + x_3115 encode_activate(z) -{ -155 + 167*z }-> s76 :|: s74 >= 0, s74 <= z - 1, s75 >= 0, s75 <= s74, s76 >= 0, s76 <= s75, z - 1 >= 0 encode_activate(z) -{ -159 + 167*z }-> s85 :|: s83 >= 0, s83 <= z - 1, s84 >= 0, s84 <= s83 + 1, s85 >= 0, s85 <= s84, z - 1 >= 0 encode_activate(z) -{ 0 }-> 0 :|: z >= 0 encode_b -{ 0 }-> 1 :|: encode_b -{ 0 }-> 0 :|: encode_b -{ 1 }-> 0 :|: encode_c -{ 0 }-> 0 :|: encode_f(z, z', z'') -{ 168 + 167*z + 167*z' + 167*z'' }-> s35 :|: s32 >= 0, s32 <= z, s33 >= 0, s33 <= z', s34 >= 0, s34 <= z'', s35 >= 0, s35 <= 0, z >= 0, z'' >= 0, z' >= 0 encode_f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_g(z) -{ -164 + 167*z }-> s48 :|: s47 >= 0, s47 <= z - 1, s48 >= 0, s48 <= 1 + s47 + 1, z - 1 >= 0 encode_g(z) -{ 169 + 167*x_1468 + 167*x_2116 + 167*x_3116 }-> s53 :|: s49 >= 0, s49 <= x_1468, s50 >= 0, s50 <= x_2116, s51 >= 0, s51 <= x_3116, s52 >= 0, s52 <= 0, s53 >= 0, s53 <= s52 + 1, x_3116 >= 0, z = 1 + x_1468 + x_2116 + x_3116, x_2116 >= 0, x_1468 >= 0 encode_g(z) -{ -163 + 167*z }-> s56 :|: s54 >= 0, s54 <= z - 1, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 1 >= 0 encode_g(z) -{ -159 + 167*z }-> s88 :|: s86 >= 0, s86 <= z - 1, s87 >= 0, s87 <= s86, s88 >= 0, s88 <= s87 + 1, z - 1 >= 0 encode_g(z) -{ 0 }-> 0 :|: z >= 0 encode_g(z) -{ 1 }-> 0 :|: z = 2, 1 = 1 encode_g(z) -{ 1 }-> 1 + X :|: z = 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z >= 0, X >= 0, 0 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 1 = X encode_g(z) -{ 1 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_g(z) -{ 2 }-> 1 + X :|: z = 2, X >= 0, 0 = X encode_n__g(z) -{ 0 }-> 0 :|: z >= 0 encode_n__g(z) -{ 2 + 167*z }-> 1 + s36 :|: s36 >= 0, s36 <= z, z >= 0 f(z, z', z'') -{ 166 }-> s :|: s >= 0, s <= 0, z'' >= 0, z' - 1 >= 0, z = z' - 1 f(z, z', z'') -{ 169 }-> s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 169 }-> s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s10 :|: s10 >= 0, s10 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s11 :|: s11 >= 0, s11 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s12 :|: s12 >= 0, s12 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s13 :|: s13 >= 0, s13 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s14 :|: s14 >= 0, s14 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s15 :|: s15 >= 0, s15 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s16 :|: s16 >= 0, s16 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s17 :|: s17 >= 0, s17 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s18 :|: s18 >= 0, s18 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 168 }-> s19 :|: s19 >= 0, s19 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 168 }-> s20 :|: s20 >= 0, s20 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X', X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 167 }-> s21 :|: s21 >= 0, s21 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s22 :|: s22 >= 0, s22 <= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 >= 0, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 167 }-> s23 :|: s23 >= 0, s23 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 167 }-> s24 :|: s24 >= 0, s24 <= 0, z'' - 1 >= 0, z' - 1 >= 0, z = z' - 1, X' >= 0, z'' - 1 = X' f(z, z', z'') -{ 169 }-> s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1, X1 >= 0, z'' - 1 = X1 f(z, z', z'') -{ 169 }-> s5 :|: s5 >= 0, s5 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, z'' - 1 = 1 f(z, z', z'') -{ 169 }-> s6 :|: s6 >= 0, s6 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', X1 >= 0, z'' - 1 = X1, X2 >= 0, z'' - 1 = X2 f(z, z', z'') -{ 168 }-> s7 :|: s7 >= 0, s7 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1 f(z, z', z'') -{ 168 }-> s8 :|: s8 >= 0, s8 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, z'' - 1 = 1, X'' >= 0, z'' - 1 = X'' f(z, z', z'') -{ 168 }-> s9 :|: s9 >= 0, s9 <= 0, z' - 1 >= 0, z'' - 1 >= 0, z = z' - 1, X'' >= 0, z'' - 1 = X'', z'' - 1 = 1 f(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 g(z) -{ 1 }-> 0 :|: z = 1 g(z) -{ 1 }-> 1 + z :|: z >= 0 Function symbols to be analyzed: Previous analysis results are: f: runtime: O(1) [162], size: O(1) [0] b: runtime: O(1) [1], size: O(1) [1] g: runtime: O(1) [1], size: O(n^1) [1 + z] encode_c: runtime: O(1) [0], size: O(1) [0] activate: runtime: O(1) [5], size: O(n^1) [z] encode_b: runtime: O(1) [1], size: O(1) [1] encArg: runtime: O(n^1) [2 + 167*z], size: O(n^1) [z] encode_activate: runtime: O(n^1) [160 + 167*z], size: O(n^1) [z] encode_g: runtime: O(n^1) [164 + 167*z], size: O(n^1) [1 + z] encode_n__g: runtime: O(n^1) [2 + 167*z], size: O(n^1) [1 + z] encode_f: runtime: O(n^1) [168 + 167*z + 167*z' + 167*z''], size: O(1) [0] ---------------------------------------- (89) FinalProof (FINISHED) Computed overall runtime complexity ---------------------------------------- (90) BOUNDS(1, n^1)