/export/starexec/sandbox2/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- WORST_CASE(Omega(n^1), O(n^3)) 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(n^1, n^3). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 292 ms] (4) CpxRelTRS (5) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (6) CpxWeightedTrs (7) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxTypedWeightedTrs (9) CompletionProof [UPPER BOUND(ID), 0 ms] (10) CpxTypedWeightedCompleteTrs (11) NarrowingProof [BOTH BOUNDS(ID, ID), 9148 ms] (12) CpxTypedWeightedCompleteTrs (13) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (14) CpxRNTS (15) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (16) CpxRNTS (17) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (18) CpxRNTS (19) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (20) CpxRNTS (21) IntTrsBoundProof [UPPER BOUND(ID), 145 ms] (22) CpxRNTS (23) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (24) CpxRNTS (25) ResultPropagationProof [UPPER BOUND(ID), 3 ms] (26) CpxRNTS (27) IntTrsBoundProof [UPPER BOUND(ID), 87 ms] (28) CpxRNTS (29) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (30) CpxRNTS (31) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (32) CpxRNTS (33) IntTrsBoundProof [UPPER BOUND(ID), 222 ms] (34) CpxRNTS (35) IntTrsBoundProof [UPPER BOUND(ID), 115 ms] (36) CpxRNTS (37) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (38) CpxRNTS (39) IntTrsBoundProof [UPPER BOUND(ID), 85 ms] (40) CpxRNTS (41) IntTrsBoundProof [UPPER BOUND(ID), 23 ms] (42) CpxRNTS (43) ResultPropagationProof [UPPER BOUND(ID), 3 ms] (44) CpxRNTS (45) IntTrsBoundProof [UPPER BOUND(ID), 67 ms] (46) CpxRNTS (47) IntTrsBoundProof [UPPER BOUND(ID), 21 ms] (48) CpxRNTS (49) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (50) CpxRNTS (51) IntTrsBoundProof [UPPER BOUND(ID), 76 ms] (52) CpxRNTS (53) IntTrsBoundProof [UPPER BOUND(ID), 21 ms] (54) CpxRNTS (55) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 421 ms] (58) CpxRNTS (59) IntTrsBoundProof [UPPER BOUND(ID), 125 ms] (60) CpxRNTS (61) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 1501 ms] (64) CpxRNTS (65) IntTrsBoundProof [UPPER BOUND(ID), 1295 ms] (66) CpxRNTS (67) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 229 ms] (70) CpxRNTS (71) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 219 ms] (76) CpxRNTS (77) IntTrsBoundProof [UPPER BOUND(ID), 2 ms] (78) CpxRNTS (79) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 5082 ms] (82) CpxRNTS (83) IntTrsBoundProof [UPPER BOUND(ID), 1305 ms] (84) CpxRNTS (85) ResultPropagationProof [UPPER BOUND(ID), 9 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 860 ms] (88) CpxRNTS (89) IntTrsBoundProof [UPPER BOUND(ID), 490 ms] (90) CpxRNTS (91) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (92) CpxRNTS (93) IntTrsBoundProof [UPPER BOUND(ID), 319 ms] (94) CpxRNTS (95) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (96) CpxRNTS (97) ResultPropagationProof [UPPER BOUND(ID), 1 ms] (98) CpxRNTS (99) IntTrsBoundProof [UPPER BOUND(ID), 187 ms] (100) CpxRNTS (101) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (102) CpxRNTS (103) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (104) CpxRNTS (105) IntTrsBoundProof [UPPER BOUND(ID), 198 ms] (106) CpxRNTS (107) IntTrsBoundProof [UPPER BOUND(ID), 2 ms] (108) CpxRNTS (109) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (110) CpxRNTS (111) IntTrsBoundProof [UPPER BOUND(ID), 839 ms] (112) CpxRNTS (113) IntTrsBoundProof [UPPER BOUND(ID), 390 ms] (114) CpxRNTS (115) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (116) CpxRNTS (117) IntTrsBoundProof [UPPER BOUND(ID), 176 ms] (118) CpxRNTS (119) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (120) CpxRNTS (121) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (122) CpxRNTS (123) IntTrsBoundProof [UPPER BOUND(ID), 188 ms] (124) CpxRNTS (125) IntTrsBoundProof [UPPER BOUND(ID), 3 ms] (126) CpxRNTS (127) FinalProof [FINISHED, 0 ms] (128) BOUNDS(1, n^3) (129) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (130) CpxRelTRS (131) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (132) typed CpxTrs (133) OrderProof [LOWER BOUND(ID), 0 ms] (134) typed CpxTrs (135) RewriteLemmaProof [LOWER BOUND(ID), 296 ms] (136) BEST (137) proven lower bound (138) LowerBoundPropagationProof [FINISHED, 0 ms] (139) BOUNDS(n^1, INF) (140) typed CpxTrs (141) RewriteLemmaProof [LOWER BOUND(ID), 74 ms] (142) typed CpxTrs (143) RewriteLemmaProof [LOWER BOUND(ID), 1750 ms] (144) BOUNDS(1, INF) ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(n^1, n^3). The TRS R consists of the following rules: lt(0, s(x)) -> true lt(x, 0) -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0, x), x) ifa(true, x) -> help(x, 1) ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(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(0) -> 0 encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1) -> 1 encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1 encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, n^3). The TRS R consists of the following rules: lt(0, s(x)) -> true lt(x, 0) -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0, x), x) ifa(true, x) -> help(x, 1) ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1) -> 1 encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1 encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) 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(n^1, n^3). The TRS R consists of the following rules: lt(0, s(x)) -> true lt(x, 0) -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0, x), x) ifa(true, x) -> help(x, 1) ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1) -> 1 encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1 encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (5) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (6) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, n^3). The TRS R consists of the following rules: lt(0, s(x)) -> true [1] lt(x, 0) -> false [1] lt(s(x), s(y)) -> lt(x, y) [1] logarithm(x) -> ifa(lt(0, x), x) [1] ifa(true, x) -> help(x, 1) [1] ifa(false, x) -> logZeroError [1] help(x, y) -> ifb(lt(y, x), x, y) [1] ifb(true, x, y) -> help(half(x), s(y)) [1] ifb(false, x, y) -> y [1] half(0) -> 0 [1] half(s(0)) -> 0 [1] half(s(s(x))) -> s(half(x)) [1] encArg(0) -> 0 [0] encArg(s(x_1)) -> s(encArg(x_1)) [0] encArg(true) -> true [0] encArg(false) -> false [0] encArg(1) -> 1 [0] encArg(logZeroError) -> logZeroError [0] encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) [0] encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) [0] encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) [0] encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) [0] encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_half(x_1)) -> half(encArg(x_1)) [0] encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_true -> true [0] encode_false -> false [0] encode_logarithm(x_1) -> logarithm(encArg(x_1)) [0] encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) [0] encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) [0] encode_1 -> 1 [0] encode_logZeroError -> logZeroError [0] encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_half(x_1) -> half(encArg(x_1)) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (7) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (8) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: lt(0, s(x)) -> true [1] lt(x, 0) -> false [1] lt(s(x), s(y)) -> lt(x, y) [1] logarithm(x) -> ifa(lt(0, x), x) [1] ifa(true, x) -> help(x, 1) [1] ifa(false, x) -> logZeroError [1] help(x, y) -> ifb(lt(y, x), x, y) [1] ifb(true, x, y) -> help(half(x), s(y)) [1] ifb(false, x, y) -> y [1] half(0) -> 0 [1] half(s(0)) -> 0 [1] half(s(s(x))) -> s(half(x)) [1] encArg(0) -> 0 [0] encArg(s(x_1)) -> s(encArg(x_1)) [0] encArg(true) -> true [0] encArg(false) -> false [0] encArg(1) -> 1 [0] encArg(logZeroError) -> logZeroError [0] encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) [0] encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) [0] encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) [0] encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) [0] encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_half(x_1)) -> half(encArg(x_1)) [0] encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_true -> true [0] encode_false -> false [0] encode_logarithm(x_1) -> logarithm(encArg(x_1)) [0] encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) [0] encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) [0] encode_1 -> 1 [0] encode_logZeroError -> logZeroError [0] encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_half(x_1) -> half(encArg(x_1)) [0] The TRS has the following type information: lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half Rewrite Strategy: INNERMOST ---------------------------------------- (9) 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: half_1 lt_2 logarithm_1 help_2 ifa_2 ifb_3 encArg_1 encode_lt_2 encode_0 encode_s_1 encode_true encode_false encode_logarithm_1 encode_ifa_2 encode_help_2 encode_1 encode_logZeroError encode_ifb_3 encode_half_1 Due to the following rules being added: encArg(v0) -> null_encArg [0] encode_lt(v0, v1) -> null_encode_lt [0] encode_0 -> null_encode_0 [0] encode_s(v0) -> null_encode_s [0] encode_true -> null_encode_true [0] encode_false -> null_encode_false [0] encode_logarithm(v0) -> null_encode_logarithm [0] encode_ifa(v0, v1) -> null_encode_ifa [0] encode_help(v0, v1) -> null_encode_help [0] encode_1 -> null_encode_1 [0] encode_logZeroError -> null_encode_logZeroError [0] encode_ifb(v0, v1, v2) -> null_encode_ifb [0] encode_half(v0) -> null_encode_half [0] half(v0) -> null_half [0] lt(v0, v1) -> null_lt [0] ifa(v0, v1) -> null_ifa [0] ifb(v0, v1, v2) -> null_ifb [0] And the following fresh constants: null_encArg, null_encode_lt, null_encode_0, null_encode_s, null_encode_true, null_encode_false, null_encode_logarithm, null_encode_ifa, null_encode_help, null_encode_1, null_encode_logZeroError, null_encode_ifb, null_encode_half, null_half, null_lt, null_ifa, null_ifb ---------------------------------------- (10) 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: lt(0, s(x)) -> true [1] lt(x, 0) -> false [1] lt(s(x), s(y)) -> lt(x, y) [1] logarithm(x) -> ifa(lt(0, x), x) [1] ifa(true, x) -> help(x, 1) [1] ifa(false, x) -> logZeroError [1] help(x, y) -> ifb(lt(y, x), x, y) [1] ifb(true, x, y) -> help(half(x), s(y)) [1] ifb(false, x, y) -> y [1] half(0) -> 0 [1] half(s(0)) -> 0 [1] half(s(s(x))) -> s(half(x)) [1] encArg(0) -> 0 [0] encArg(s(x_1)) -> s(encArg(x_1)) [0] encArg(true) -> true [0] encArg(false) -> false [0] encArg(1) -> 1 [0] encArg(logZeroError) -> logZeroError [0] encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) [0] encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) [0] encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) [0] encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) [0] encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_half(x_1)) -> half(encArg(x_1)) [0] encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_true -> true [0] encode_false -> false [0] encode_logarithm(x_1) -> logarithm(encArg(x_1)) [0] encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) [0] encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) [0] encode_1 -> 1 [0] encode_logZeroError -> logZeroError [0] encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_half(x_1) -> half(encArg(x_1)) [0] encArg(v0) -> null_encArg [0] encode_lt(v0, v1) -> null_encode_lt [0] encode_0 -> null_encode_0 [0] encode_s(v0) -> null_encode_s [0] encode_true -> null_encode_true [0] encode_false -> null_encode_false [0] encode_logarithm(v0) -> null_encode_logarithm [0] encode_ifa(v0, v1) -> null_encode_ifa [0] encode_help(v0, v1) -> null_encode_help [0] encode_1 -> null_encode_1 [0] encode_logZeroError -> null_encode_logZeroError [0] encode_ifb(v0, v1, v2) -> null_encode_ifb [0] encode_half(v0) -> null_encode_half [0] half(v0) -> null_half [0] lt(v0, v1) -> null_lt [0] ifa(v0, v1) -> null_ifa [0] ifb(v0, v1, v2) -> null_ifb [0] The TRS has the following type information: lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb 0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb 1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encArg :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encArg :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb Rewrite Strategy: INNERMOST ---------------------------------------- (11) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (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: lt(0, s(x)) -> true [1] lt(x, 0) -> false [1] lt(s(x), s(y)) -> lt(x, y) [1] logarithm(s(x')) -> ifa(true, s(x')) [2] logarithm(0) -> ifa(false, 0) [2] logarithm(x) -> ifa(null_lt, x) [1] ifa(true, x) -> help(x, 1) [1] ifa(false, x) -> logZeroError [1] help(s(x''), 0) -> ifb(true, s(x''), 0) [2] help(0, y) -> ifb(false, 0, y) [2] help(s(y'), s(x1)) -> ifb(lt(x1, y'), s(y'), s(x1)) [2] help(x, y) -> ifb(null_lt, x, y) [1] ifb(true, 0, y) -> help(0, s(y)) [2] ifb(true, s(0), y) -> help(0, s(y)) [2] ifb(true, s(s(x2)), y) -> help(s(half(x2)), s(y)) [2] ifb(true, x, y) -> help(null_half, s(y)) [1] ifb(false, x, y) -> y [1] half(0) -> 0 [1] half(s(0)) -> 0 [1] half(s(s(x))) -> s(half(x)) [1] encArg(0) -> 0 [0] encArg(s(x_1)) -> s(encArg(x_1)) [0] encArg(true) -> true [0] encArg(false) -> false [0] encArg(1) -> 1 [0] encArg(logZeroError) -> logZeroError [0] encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) [0] encArg(cons_logarithm(0)) -> logarithm(0) [0] encArg(cons_logarithm(s(x_197))) -> logarithm(s(encArg(x_197))) [0] encArg(cons_logarithm(true)) -> logarithm(true) [0] encArg(cons_logarithm(false)) -> logarithm(false) [0] encArg(cons_logarithm(1)) -> logarithm(1) [0] encArg(cons_logarithm(logZeroError)) -> logarithm(logZeroError) [0] encArg(cons_logarithm(cons_lt(x_198, x_255))) -> logarithm(lt(encArg(x_198), encArg(x_255))) [0] encArg(cons_logarithm(cons_logarithm(x_199))) -> logarithm(logarithm(encArg(x_199))) [0] encArg(cons_logarithm(cons_ifa(x_1100, x_256))) -> logarithm(ifa(encArg(x_1100), encArg(x_256))) [0] encArg(cons_logarithm(cons_help(x_1101, x_257))) -> logarithm(help(encArg(x_1101), encArg(x_257))) [0] encArg(cons_logarithm(cons_ifb(x_1102, x_258, x_313))) -> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) [0] encArg(cons_logarithm(cons_half(x_1103))) -> logarithm(half(encArg(x_1103))) [0] encArg(cons_logarithm(x_1)) -> logarithm(null_encArg) [0] encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) [0] encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) [0] encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encArg(cons_half(0)) -> half(0) [0] encArg(cons_half(s(x_11581))) -> half(s(encArg(x_11581))) [0] encArg(cons_half(true)) -> half(true) [0] encArg(cons_half(false)) -> half(false) [0] encArg(cons_half(1)) -> half(1) [0] encArg(cons_half(logZeroError)) -> half(logZeroError) [0] encArg(cons_half(cons_lt(x_11582, x_2903))) -> half(lt(encArg(x_11582), encArg(x_2903))) [0] encArg(cons_half(cons_logarithm(x_11583))) -> half(logarithm(encArg(x_11583))) [0] encArg(cons_half(cons_ifa(x_11584, x_2904))) -> half(ifa(encArg(x_11584), encArg(x_2904))) [0] encArg(cons_half(cons_help(x_11585, x_2905))) -> half(help(encArg(x_11585), encArg(x_2905))) [0] encArg(cons_half(cons_ifb(x_11586, x_2906, x_3225))) -> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) [0] encArg(cons_half(cons_half(x_11587))) -> half(half(encArg(x_11587))) [0] encArg(cons_half(x_1)) -> half(null_encArg) [0] encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_true -> true [0] encode_false -> false [0] encode_logarithm(0) -> logarithm(0) [0] encode_logarithm(s(x_11686)) -> logarithm(s(encArg(x_11686))) [0] encode_logarithm(true) -> logarithm(true) [0] encode_logarithm(false) -> logarithm(false) [0] encode_logarithm(1) -> logarithm(1) [0] encode_logarithm(logZeroError) -> logarithm(logZeroError) [0] encode_logarithm(cons_lt(x_11687, x_2963)) -> logarithm(lt(encArg(x_11687), encArg(x_2963))) [0] encode_logarithm(cons_logarithm(x_11688)) -> logarithm(logarithm(encArg(x_11688))) [0] encode_logarithm(cons_ifa(x_11689, x_2964)) -> logarithm(ifa(encArg(x_11689), encArg(x_2964))) [0] encode_logarithm(cons_help(x_11690, x_2965)) -> logarithm(help(encArg(x_11690), encArg(x_2965))) [0] encode_logarithm(cons_ifb(x_11691, x_2966, x_3240)) -> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) [0] encode_logarithm(cons_half(x_11692)) -> logarithm(half(encArg(x_11692))) [0] encode_logarithm(x_1) -> logarithm(null_encArg) [0] encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) [0] encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) [0] encode_1 -> 1 [0] encode_logZeroError -> logZeroError [0] encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) [0] encode_half(0) -> half(0) [0] encode_half(s(x_13170)) -> half(s(encArg(x_13170))) [0] encode_half(true) -> half(true) [0] encode_half(false) -> half(false) [0] encode_half(1) -> half(1) [0] encode_half(logZeroError) -> half(logZeroError) [0] encode_half(cons_lt(x_13171, x_21811)) -> half(lt(encArg(x_13171), encArg(x_21811))) [0] encode_half(cons_logarithm(x_13172)) -> half(logarithm(encArg(x_13172))) [0] encode_half(cons_ifa(x_13173, x_21812)) -> half(ifa(encArg(x_13173), encArg(x_21812))) [0] encode_half(cons_help(x_13174, x_21813)) -> half(help(encArg(x_13174), encArg(x_21813))) [0] encode_half(cons_ifb(x_13175, x_21814, x_3452)) -> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) [0] encode_half(cons_half(x_13176)) -> half(half(encArg(x_13176))) [0] encode_half(x_1) -> half(null_encArg) [0] encArg(v0) -> null_encArg [0] encode_lt(v0, v1) -> null_encode_lt [0] encode_0 -> null_encode_0 [0] encode_s(v0) -> null_encode_s [0] encode_true -> null_encode_true [0] encode_false -> null_encode_false [0] encode_logarithm(v0) -> null_encode_logarithm [0] encode_ifa(v0, v1) -> null_encode_ifa [0] encode_help(v0, v1) -> null_encode_help [0] encode_1 -> null_encode_1 [0] encode_logZeroError -> null_encode_logZeroError [0] encode_ifb(v0, v1, v2) -> null_encode_ifb [0] encode_half(v0) -> null_encode_half [0] half(v0) -> null_half [0] lt(v0, v1) -> null_lt [0] ifa(v0, v1) -> null_ifa [0] ifb(v0, v1, v2) -> null_ifb [0] The TRS has the following type information: lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb 0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb 1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encArg :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb cons_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb encode_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb -> 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encArg :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_0 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_s :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_true :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_false :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_logarithm :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_help :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_1 :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_logZeroError :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_encode_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_half :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_lt :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_ifa :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb null_ifb :: 0:s:true:false:1:logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half:null_encArg:null_encode_lt:null_encode_0:null_encode_s:null_encode_true:null_encode_false:null_encode_logarithm:null_encode_ifa:null_encode_help:null_encode_1:null_encode_logZeroError:null_encode_ifb:null_encode_half:null_half:null_lt:null_ifa:null_ifb Rewrite Strategy: INNERMOST ---------------------------------------- (13) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 true => 4 false => 2 1 => 1 logZeroError => 3 null_encArg => 0 null_encode_lt => 0 null_encode_0 => 0 null_encode_s => 0 null_encode_true => 0 null_encode_false => 0 null_encode_logarithm => 0 null_encode_ifa => 0 null_encode_help => 0 null_encode_1 => 0 null_encode_logZeroError => 0 null_encode_ifb => 0 null_encode_half => 0 null_half => 0 null_lt => 0 null_ifa => 0 null_ifb => 0 ---------------------------------------- (14) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(x_199))) :|: z = 1 + (1 + x_199), x_199 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(x_1103))) :|: z = 1 + (1 + x_1103), x_1103 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(x_197)) :|: x_197 >= 0, z = 1 + (1 + x_197) encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(x_11583))) :|: x_11583 >= 0, z = 1 + (1 + x_11583) encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(x_11587))) :|: z = 1 + (1 + x_11587), x_11587 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(x_11581)) :|: z = 1 + (1 + x_11581), x_11581 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 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_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(x_13172))) :|: z = 1 + x_13172, x_13172 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(x_13176))) :|: z = 1 + x_13176, x_13176 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: x_1 >= 0, z = x_1 encode_half(z) -{ 0 }-> half(1 + encArg(x_13170)) :|: x_13170 >= 0, z = 1 + x_13170 encode_half(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_help(z, z') -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_help(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_ifa(z, z') -{ 0 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_ifa(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_ifb(z, z', z'') -{ 0 }-> ifb(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_ifb(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(x_11688))) :|: z = 1 + x_11688, x_11688 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(x_11692))) :|: z = 1 + x_11692, x_11692 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: x_1 >= 0, z = x_1 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(x_11686)) :|: z = 1 + x_11686, x_11686 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_lt(z, z') -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_lt(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_s(z) -{ 0 }-> 1 + encArg(x_1) :|: x_1 >= 0, z = x_1 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 half(z) -{ 1 }-> 1 + half(x) :|: x >= 0, z = 1 + (1 + x) help(z, z') -{ 2 }-> ifb(lt(x1, y'), 1 + y', 1 + x1) :|: x1 >= 0, z = 1 + y', y' >= 0, z' = 1 + x1 help(z, z') -{ 2 }-> ifb(4, 1 + x'', 0) :|: z = 1 + x'', x'' >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, y) :|: y >= 0, z = 0, z' = y help(z, z') -{ 1 }-> ifb(0, x, y) :|: x >= 0, y >= 0, z = x, z' = y ifa(z, z') -{ 1 }-> help(x, 1) :|: z' = x, x >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' = x, x >= 0 ifa(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 ifb(z, z', z'') -{ 1 }-> y :|: z = 2, z' = x, z'' = y, x >= 0, y >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + y) :|: z'' = y, y >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + y) :|: z'' = y, y >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + y) :|: z' = x, z'' = y, x >= 0, y >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(x2), 1 + y) :|: z'' = y, z' = 1 + (1 + x2), y >= 0, z = 4, x2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + x') :|: z = 1 + x', x' >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, x) :|: x >= 0, z = x lt(z, z') -{ 1 }-> lt(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x lt(z, z') -{ 1 }-> 4 :|: z' = 1 + x, x >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: x >= 0, z = x, z' = 0 lt(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 ---------------------------------------- (15) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (16) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ---------------------------------------- (17) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { encode_logZeroError } { encode_true } { half } { encode_0 } { encode_1 } { encode_false } { lt } { help, ifb } { ifa } { logarithm } { encArg } { encode_half } { encode_ifb } { encode_help } { encode_ifa } { encode_logarithm } { encode_s } { encode_lt } ---------------------------------------- (18) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logZeroError}, {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} ---------------------------------------- (19) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (20) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logZeroError}, {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} ---------------------------------------- (21) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_logZeroError after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 3 ---------------------------------------- (22) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logZeroError}, {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: ?, size: O(1) [3] ---------------------------------------- (23) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_logZeroError after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (24) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (25) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (26) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] ---------------------------------------- (27) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_true after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 4 ---------------------------------------- (28) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_true}, {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: ?, size: O(1) [4] ---------------------------------------- (29) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_true after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (30) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] ---------------------------------------- (31) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (32) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] ---------------------------------------- (33) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: half after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (34) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {half}, {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: ?, size: O(n^1) [z] ---------------------------------------- (35) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: half after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z ---------------------------------------- (36) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> half(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> half(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> half(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> half(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> half(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(4) :|: z = 4 encode_half(z) -{ 0 }-> half(3) :|: z = 3 encode_half(z) -{ 0 }-> half(2) :|: z = 2 encode_half(z) -{ 0 }-> half(1) :|: z = 1 encode_half(z) -{ 0 }-> half(0) :|: z = 0 encode_half(z) -{ 0 }-> half(0) :|: z >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 }-> 1 + half(z - 2) :|: z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 }-> help(1 + half(z' - 2), 1 + z'') :|: z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] ---------------------------------------- (37) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (38) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] ---------------------------------------- (39) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_0 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (40) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: ?, size: O(1) [0] ---------------------------------------- (41) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_0 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (42) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (43) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (44) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (45) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_1}, {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: ?, size: O(1) [1] ---------------------------------------- (47) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_1 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (48) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] ---------------------------------------- (49) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (50) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] ---------------------------------------- (51) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_false after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 2 ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_false}, {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: ?, size: O(1) [2] ---------------------------------------- (53) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_false after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (55) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] ---------------------------------------- (57) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: lt after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 4 ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {lt}, {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: ?, size: O(1) [4] ---------------------------------------- (59) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: lt after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z' ---------------------------------------- (60) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 2 }-> ifb(lt(z' - 1, z - 1), 1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 1 }-> lt(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] ---------------------------------------- (61) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (62) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 3 + z }-> ifb(s13, 1 + (z - 1), 1 + (z' - 1)) :|: s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: help after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z + z' Computed SIZE bound using CoFloCo for: ifb after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + z' + z'' ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 3 + z }-> ifb(s13, 1 + (z - 1), 1 + (z' - 1)) :|: s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {help,ifb}, {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: ?, size: O(n^1) [2 + z + z'] ifb: runtime: ?, size: O(n^1) [3 + z' + z''] ---------------------------------------- (65) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: help after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 19 + 11*z + 2*z^2 Computed RUNTIME bound using KoAT for: ifb after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 75 + 8*z' + 2*z'^2 ---------------------------------------- (66) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 3 + z }-> ifb(s13, 1 + (z - 1), 1 + (z' - 1)) :|: s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 2 }-> ifb(4, 1 + (z - 1), 0) :|: z - 1 >= 0, z' = 0 help(z, z') -{ 2 }-> ifb(2, 0, z') :|: z' >= 0, z = 0 help(z, z') -{ 1 }-> ifb(0, z, z') :|: z >= 0, z' >= 0 ifa(z, z') -{ 1 }-> help(z', 1) :|: z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 2 }-> help(0, 1 + z'') :|: z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 1 }-> help(0, 1 + z'') :|: z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 2 + z' }-> help(1 + s, 1 + z'') :|: s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ---------------------------------------- (67) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (68) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: ifa after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + z' ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {ifa}, {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: ?, size: O(n^1) [3 + z'] ---------------------------------------- (71) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: ifa after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 21 + 11*z' + 2*z'^2 ---------------------------------------- (72) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 2 }-> ifa(4, 1 + (z - 1)) :|: z - 1 >= 0 logarithm(z) -{ 2 }-> ifa(2, 0) :|: z = 0 logarithm(z) -{ 1 }-> ifa(0, z) :|: z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] ---------------------------------------- (73) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: logarithm after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + z ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {logarithm}, {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: ?, size: O(n^1) [3 + z] ---------------------------------------- (77) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: logarithm after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 68 + 22*z + 4*z^2 ---------------------------------------- (78) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(4) :|: z = 1 + 4 encArg(z) -{ 0 }-> logarithm(3) :|: z = 1 + 3 encArg(z) -{ 0 }-> logarithm(2) :|: z = 1 + 2 encArg(z) -{ 0 }-> logarithm(1) :|: z = 1 + 1 encArg(z) -{ 0 }-> logarithm(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> logarithm(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(4) :|: z = 4 encode_logarithm(z) -{ 0 }-> logarithm(3) :|: z = 3 encode_logarithm(z) -{ 0 }-> logarithm(2) :|: z = 2 encode_logarithm(z) -{ 0 }-> logarithm(1) :|: z = 1 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z = 0 encode_logarithm(z) -{ 0 }-> logarithm(0) :|: z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] ---------------------------------------- (79) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (80) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] ---------------------------------------- (81) 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: 111 + 222*z ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: ?, size: O(n^1) [111 + 222*z] ---------------------------------------- (83) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encArg after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 ---------------------------------------- (84) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> lt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> logarithm(lt(encArg(x_198), encArg(x_255))) :|: x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 0 }-> logarithm(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(ifb(encArg(x_1102), encArg(x_258), encArg(x_313))) :|: x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ 0 }-> logarithm(ifa(encArg(x_1100), encArg(x_256))) :|: x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 0 }-> logarithm(help(encArg(x_1101), encArg(x_257))) :|: x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 0 }-> logarithm(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> logarithm(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> ifb(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 }-> ifa(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> help(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> half(lt(encArg(x_11582), encArg(x_2903))) :|: x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ 0 }-> half(logarithm(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(ifb(encArg(x_11586), encArg(x_2906), encArg(x_3225))) :|: x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> half(ifa(encArg(x_11584), encArg(x_2904))) :|: x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 0 }-> half(help(encArg(x_11585), encArg(x_2905))) :|: x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 0 }-> half(half(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> half(1 + encArg(z - 2)) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 1 + encArg(z - 1) :|: z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> half(lt(encArg(x_13171), encArg(x_21811))) :|: x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ 0 }-> half(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(ifb(encArg(x_13175), encArg(x_21814), encArg(x_3452))) :|: x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ 0 }-> half(ifa(encArg(x_13173), encArg(x_21812))) :|: z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 0 }-> half(help(encArg(x_13174), encArg(x_21813))) :|: x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 0 }-> half(half(encArg(z - 1))) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> half(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 0 }-> help(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> ifa(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> ifb(encArg(z), encArg(z'), encArg(z'')) :|: z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> logarithm(lt(encArg(x_11687), encArg(x_2963))) :|: x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ 0 }-> logarithm(logarithm(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifb(encArg(x_11691), encArg(x_2966), encArg(x_3240))) :|: x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(ifa(encArg(x_11689), encArg(x_2964))) :|: z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(help(encArg(x_11690), encArg(x_2965))) :|: x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(half(encArg(z - 1))) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> logarithm(1 + encArg(z - 1)) :|: z - 1 >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 0 }-> lt(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 1 + encArg(z) :|: z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] ---------------------------------------- (85) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (86) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] ---------------------------------------- (87) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: encode_half after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 225*z ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_half}, {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: ?, size: O(n^1) [225*z] ---------------------------------------- (89) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_half after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3 ---------------------------------------- (90) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] ---------------------------------------- (91) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (92) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] ---------------------------------------- (93) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_ifb after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 225 + 222*z' + 222*z'' ---------------------------------------- (94) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifb}, {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: ?, size: O(n^1) [225 + 222*z' + 222*z''] ---------------------------------------- (95) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_ifb after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 ---------------------------------------- (96) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] ---------------------------------------- (97) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (98) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] ---------------------------------------- (99) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_help after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 224 + 222*z + 222*z' ---------------------------------------- (100) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_help}, {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: ?, size: O(n^1) [224 + 222*z + 222*z'] ---------------------------------------- (101) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_help after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 ---------------------------------------- (102) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] ---------------------------------------- (103) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (104) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] ---------------------------------------- (105) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_ifa after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 114 + 222*z' ---------------------------------------- (106) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_ifa}, {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: ?, size: O(n^1) [114 + 222*z'] ---------------------------------------- (107) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_ifa after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3 ---------------------------------------- (108) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] ---------------------------------------- (109) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (110) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] ---------------------------------------- (111) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_logarithm after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 6 + 222*z ---------------------------------------- (112) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_logarithm}, {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: ?, size: O(n^1) [6 + 222*z] ---------------------------------------- (113) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_logarithm after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3 ---------------------------------------- (114) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] ---------------------------------------- (115) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (116) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] ---------------------------------------- (117) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_s after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 112 + 222*z ---------------------------------------- (118) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_s}, {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] encode_s: runtime: ?, size: O(n^1) [112 + 222*z] ---------------------------------------- (119) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_s after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 ---------------------------------------- (120) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] encode_s: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [112 + 222*z] ---------------------------------------- (121) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (122) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] encode_s: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [112 + 222*z] ---------------------------------------- (123) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_lt after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 4 ---------------------------------------- (124) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_lt} Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] encode_s: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [112 + 222*z] encode_lt: runtime: ?, size: O(1) [4] ---------------------------------------- (125) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: encode_lt after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 5744309 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347782*z' + 11840814*z'^2 + 10941048*z'^3 ---------------------------------------- (126) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 2 }-> s'' :|: s'' >= 0, s'' <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s1 :|: s1 >= 0, s1 <= 4, z = 1 + 4 encArg(z) -{ -59988146 + s100 + s99 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s101 :|: s99 >= 0, s99 <= 222 * (z - 2) + 111, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= s100, z - 2 >= 0 encArg(z) -{ 4 }-> s2 :|: s2 >= 0, s2 <= 2, z = 1 + 2 encArg(z) -{ 68 }-> s26 :|: s26 >= 0, s26 <= 0 + 3, z = 1 + 0 encArg(z) -{ 220 }-> s27 :|: s27 >= 0, s27 <= 4 + 3, z = 1 + 4 encArg(z) -{ 128 }-> s28 :|: s28 >= 0, s28 <= 2 + 3, z = 1 + 2 encArg(z) -{ 94 }-> s29 :|: s29 >= 0, s29 <= 1 + 3, z = 1 + 1 encArg(z) -{ 3 }-> s3 :|: s3 >= 0, s3 <= 1, z = 1 + 1 encArg(z) -{ 170 }-> s30 :|: s30 >= 0, s30 <= 3 + 3, z = 1 + 3 encArg(z) -{ 68 }-> s31 :|: s31 >= 0, s31 <= 0 + 3, z - 1 >= 0 encArg(z) -{ 5 }-> s4 :|: s4 >= 0, s4 <= 3, z = 1 + 3 encArg(z) -{ 5744198 + s40 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s41 :|: s39 >= 0, s39 <= 222 * x_1 + 111, s40 >= 0, s40 <= 222 * x_2 + 111, s41 >= 0, s41 <= 4, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ -59988056 + 30*s42 + 4*s42^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s43 :|: s42 >= 0, s42 <= 222 * (z - 2) + 111, s43 >= 0, s43 <= 1 + s42 + 3, z - 2 >= 0 encArg(z) -{ 5744266 + s45 + 22*s46 + 4*s46^2 + 11347560*x_198 + 11840814*x_198^2 + 10941048*x_198^3 + 11347560*x_255 + 11840814*x_255^2 + 10941048*x_255^3 }-> s47 :|: s44 >= 0, s44 <= 222 * x_198 + 111, s45 >= 0, s45 <= 222 * x_255 + 111, s46 >= 0, s46 <= 4, s47 >= 0, s47 <= s46 + 3, x_255 >= 0, z = 1 + (1 + x_198 + x_255), x_198 >= 0 encArg(z) -{ 2 }-> s5 :|: s5 >= 0, s5 <= 0, z - 1 >= 0 encArg(z) -{ -59988014 + 22*s48 + 4*s48^2 + 22*s49 + 4*s49^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s50 :|: s48 >= 0, s48 <= 222 * (z - 2) + 111, s49 >= 0, s49 <= s48 + 3, s50 >= 0, s50 <= s49 + 3, z - 2 >= 0 encArg(z) -{ 5744285 + 11*s52 + 2*s52^2 + 22*s53 + 4*s53^2 + 11347560*x_1100 + 11840814*x_1100^2 + 10941048*x_1100^3 + 11347560*x_256 + 11840814*x_256^2 + 10941048*x_256^3 }-> s54 :|: s51 >= 0, s51 <= 222 * x_1100 + 111, s52 >= 0, s52 <= 222 * x_256 + 111, s53 >= 0, s53 <= s52 + 3, s54 >= 0, s54 <= s53 + 3, x_1100 >= 0, x_256 >= 0, z = 1 + (1 + x_1100 + x_256) encArg(z) -{ 5744283 + 11*s55 + 2*s55^2 + 22*s57 + 4*s57^2 + 11347560*x_1101 + 11840814*x_1101^2 + 10941048*x_1101^3 + 11347560*x_257 + 11840814*x_257^2 + 10941048*x_257^3 }-> s58 :|: s55 >= 0, s55 <= 222 * x_1101 + 111, s56 >= 0, s56 <= 222 * x_257 + 111, s57 >= 0, s57 <= s56 + 2 + s55, s58 >= 0, s58 <= s57 + 3, x_1101 >= 0, x_257 >= 0, z = 1 + (1 + x_1101 + x_257) encArg(z) -{ 8616437 + 8*s60 + 2*s60^2 + 22*s62 + 4*s62^2 + 11347560*x_1102 + 11840814*x_1102^2 + 10941048*x_1102^3 + 11347560*x_258 + 11840814*x_258^2 + 10941048*x_258^3 + 11347560*x_313 + 11840814*x_313^2 + 10941048*x_313^3 }-> s63 :|: s59 >= 0, s59 <= 222 * x_1102 + 111, s60 >= 0, s60 <= 222 * x_258 + 111, s61 >= 0, s61 <= 222 * x_313 + 111, s62 >= 0, s62 <= s60 + s61 + 3, s63 >= 0, s63 <= s62 + 3, x_258 >= 0, x_1102 >= 0, z = 1 + (1 + x_1102 + x_258 + x_313), x_313 >= 0 encArg(z) -{ -59988080 + s64 + 22*s65 + 4*s65^2 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s66 :|: s64 >= 0, s64 <= 222 * (z - 2) + 111, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= s65 + 3, z - 2 >= 0 encArg(z) -{ 5744217 + 11*s68 + 2*s68^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s69 :|: s67 >= 0, s67 <= 222 * x_1 + 111, s68 >= 0, s68 <= 222 * x_2 + 111, s69 >= 0, s69 <= s68 + 3, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 5744215 + 11*s70 + 2*s70^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 }-> s72 :|: s70 >= 0, s70 <= 222 * x_1 + 111, s71 >= 0, s71 <= 222 * x_2 + 111, s72 >= 0, s72 <= s71 + 2 + s70, x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 8616369 + 8*s74 + 2*s74^2 + 11347560*x_1 + 11840814*x_1^2 + 10941048*x_1^3 + 11347560*x_2 + 11840814*x_2^2 + 10941048*x_2^3 + 11347560*x_3 + 11840814*x_3^2 + 10941048*x_3^3 }-> s76 :|: s73 >= 0, s73 <= 222 * x_1 + 111, s74 >= 0, s74 <= 222 * x_2 + 111, s75 >= 0, s75 <= 222 * x_3 + 111, s76 >= 0, s76 <= s74 + s75 + 3, x_1 >= 0, z = 1 + x_1 + x_2 + x_3, x_3 >= 0, x_2 >= 0 encArg(z) -{ -59988147 + s77 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s78 :|: s77 >= 0, s77 <= 222 * (z - 2) + 111, s78 >= 0, s78 <= 1 + s77, z - 2 >= 0 encArg(z) -{ 5744200 + s80 + s81 + 11347560*x_11582 + 11840814*x_11582^2 + 10941048*x_11582^3 + 11347560*x_2903 + 11840814*x_2903^2 + 10941048*x_2903^3 }-> s82 :|: s79 >= 0, s79 <= 222 * x_11582 + 111, s80 >= 0, s80 <= 222 * x_2903 + 111, s81 >= 0, s81 <= 4, s82 >= 0, s82 <= s81, x_2903 >= 0, z = 1 + (1 + x_11582 + x_2903), x_11582 >= 0 encArg(z) -{ -59988080 + 22*s83 + 4*s83^2 + s84 + 95276880*z + -53805474*z^2 + 10941048*z^3 }-> s85 :|: s83 >= 0, s83 <= 222 * (z - 2) + 111, s84 >= 0, s84 <= s83 + 3, s85 >= 0, s85 <= s84, z - 2 >= 0 encArg(z) -{ 5744219 + 11*s87 + 2*s87^2 + s88 + 11347560*x_11584 + 11840814*x_11584^2 + 10941048*x_11584^3 + 11347560*x_2904 + 11840814*x_2904^2 + 10941048*x_2904^3 }-> s89 :|: s86 >= 0, s86 <= 222 * x_11584 + 111, s87 >= 0, s87 <= 222 * x_2904 + 111, s88 >= 0, s88 <= s87 + 3, s89 >= 0, s89 <= s88, x_11584 >= 0, x_2904 >= 0, z = 1 + (1 + x_11584 + x_2904) encArg(z) -{ 5744217 + 11*s90 + 2*s90^2 + s92 + 11347560*x_11585 + 11840814*x_11585^2 + 10941048*x_11585^3 + 11347560*x_2905 + 11840814*x_2905^2 + 10941048*x_2905^3 }-> s93 :|: s90 >= 0, s90 <= 222 * x_11585 + 111, s91 >= 0, s91 <= 222 * x_2905 + 111, s92 >= 0, s92 <= s91 + 2 + s90, s93 >= 0, s93 <= s92, x_11585 >= 0, z = 1 + (1 + x_11585 + x_2905), x_2905 >= 0 encArg(z) -{ 8616371 + 8*s95 + 2*s95^2 + s97 + 11347560*x_11586 + 11840814*x_11586^2 + 10941048*x_11586^3 + 11347560*x_2906 + 11840814*x_2906^2 + 10941048*x_2906^3 + 11347560*x_3225 + 11840814*x_3225^2 + 10941048*x_3225^3 }-> s98 :|: s94 >= 0, s94 <= 222 * x_11586 + 111, s95 >= 0, s95 <= 222 * x_2906 + 111, s96 >= 0, s96 <= 222 * x_3225 + 111, s97 >= 0, s97 <= s95 + s96 + 3, s98 >= 0, s98 <= s97, x_3225 >= 0, z = 1 + (1 + x_11586 + x_2906 + x_3225), x_11586 >= 0, x_2906 >= 0 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ -7575696 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> 1 + s38 :|: s38 >= 0, s38 <= 222 * (z - 1) + 111, z - 1 >= 0 encode_0 -{ 0 }-> 0 :|: encode_1 -{ 0 }-> 1 :|: encode_1 -{ 0 }-> 0 :|: encode_false -{ 0 }-> 2 :|: encode_false -{ 0 }-> 0 :|: encode_half(z) -{ 5 }-> s10 :|: s10 >= 0, s10 <= 3, z = 3 encode_half(z) -{ 2 }-> s11 :|: s11 >= 0, s11 <= 0, z >= 0 encode_half(z) -{ -7575693 + s141 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s142 :|: s141 >= 0, s141 <= 222 * (z - 1) + 111, s142 >= 0, s142 <= 1 + s141, z - 1 >= 0 encode_half(z) -{ 5744200 + s144 + s145 + 11347560*x_13171 + 11840814*x_13171^2 + 10941048*x_13171^3 + 11347560*x_21811 + 11840814*x_21811^2 + 10941048*x_21811^3 }-> s146 :|: s143 >= 0, s143 <= 222 * x_13171 + 111, s144 >= 0, s144 <= 222 * x_21811 + 111, s145 >= 0, s145 <= 4, s146 >= 0, s146 <= s145, x_13171 >= 0, z = 1 + x_13171 + x_21811, x_21811 >= 0 encode_half(z) -{ -7575626 + 22*s147 + 4*s147^2 + s148 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s149 :|: s147 >= 0, s147 <= 222 * (z - 1) + 111, s148 >= 0, s148 <= s147 + 3, s149 >= 0, s149 <= s148, z - 1 >= 0 encode_half(z) -{ 5744219 + 11*s151 + 2*s151^2 + s152 + 11347560*x_13173 + 11840814*x_13173^2 + 10941048*x_13173^3 + 11347560*x_21812 + 11840814*x_21812^2 + 10941048*x_21812^3 }-> s153 :|: s150 >= 0, s150 <= 222 * x_13173 + 111, s151 >= 0, s151 <= 222 * x_21812 + 111, s152 >= 0, s152 <= s151 + 3, s153 >= 0, s153 <= s152, z = 1 + x_13173 + x_21812, x_13173 >= 0, x_21812 >= 0 encode_half(z) -{ 5744217 + 11*s154 + 2*s154^2 + s156 + 11347560*x_13174 + 11840814*x_13174^2 + 10941048*x_13174^3 + 11347560*x_21813 + 11840814*x_21813^2 + 10941048*x_21813^3 }-> s157 :|: s154 >= 0, s154 <= 222 * x_13174 + 111, s155 >= 0, s155 <= 222 * x_21813 + 111, s156 >= 0, s156 <= s155 + 2 + s154, s157 >= 0, s157 <= s156, x_13174 >= 0, x_21813 >= 0, z = 1 + x_13174 + x_21813 encode_half(z) -{ 8616371 + 8*s159 + 2*s159^2 + s161 + 11347560*x_13175 + 11840814*x_13175^2 + 10941048*x_13175^3 + 11347560*x_21814 + 11840814*x_21814^2 + 10941048*x_21814^3 + 11347560*x_3452 + 11840814*x_3452^2 + 10941048*x_3452^3 }-> s162 :|: s158 >= 0, s158 <= 222 * x_13175 + 111, s159 >= 0, s159 <= 222 * x_21814 + 111, s160 >= 0, s160 <= 222 * x_3452 + 111, s161 >= 0, s161 <= s159 + s160 + 3, s162 >= 0, s162 <= s161, x_13175 >= 0, x_21814 >= 0, x_3452 >= 0, z = 1 + x_13175 + x_21814 + x_3452 encode_half(z) -{ -7575692 + s163 + s164 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s165 :|: s163 >= 0, s163 <= 222 * (z - 1) + 111, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s164, z - 1 >= 0 encode_half(z) -{ 2 }-> s6 :|: s6 >= 0, s6 <= 0, z = 0 encode_half(z) -{ 6 }-> s7 :|: s7 >= 0, s7 <= 4, z = 4 encode_half(z) -{ 4 }-> s8 :|: s8 >= 0, s8 <= 2, z = 2 encode_half(z) -{ 3 }-> s9 :|: s9 >= 0, s9 <= 1, z = 1 encode_half(z) -{ 0 }-> 0 :|: z >= 0 encode_help(z, z') -{ 5744215 + 11*s134 + 2*s134^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s136 :|: s134 >= 0, s134 <= 222 * z + 111, s135 >= 0, s135 <= 222 * z' + 111, s136 >= 0, s136 <= s135 + 2 + s134, z >= 0, z' >= 0 encode_help(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifa(z, z') -{ 5744217 + 11*s132 + 2*s132^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s133 :|: s131 >= 0, s131 <= 222 * z + 111, s132 >= 0, s132 <= 222 * z' + 111, s133 >= 0, s133 <= s132 + 3, z >= 0, z' >= 0 encode_ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 8616369 + 8*s138 + 2*s138^2 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3 }-> s140 :|: s137 >= 0, s137 <= 222 * z + 111, s138 >= 0, s138 <= 222 * z' + 111, s139 >= 0, s139 <= 222 * z'' + 111, s140 >= 0, s140 <= s138 + s139 + 3, z >= 0, z'' >= 0, z' >= 0 encode_ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 encode_logZeroError -{ 0 }-> 3 :|: encode_logZeroError -{ 0 }-> 0 :|: encode_logarithm(z) -{ -7575602 + 30*s106 + 4*s106^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s107 :|: s106 >= 0, s106 <= 222 * (z - 1) + 111, s107 >= 0, s107 <= 1 + s106 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744266 + s109 + 22*s110 + 4*s110^2 + 11347560*x_11687 + 11840814*x_11687^2 + 10941048*x_11687^3 + 11347560*x_2963 + 11840814*x_2963^2 + 10941048*x_2963^3 }-> s111 :|: s108 >= 0, s108 <= 222 * x_11687 + 111, s109 >= 0, s109 <= 222 * x_2963 + 111, s110 >= 0, s110 <= 4, s111 >= 0, s111 <= s110 + 3, x_11687 >= 0, x_2963 >= 0, z = 1 + x_11687 + x_2963 encode_logarithm(z) -{ -7575560 + 22*s112 + 4*s112^2 + 22*s113 + 4*s113^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s114 :|: s112 >= 0, s112 <= 222 * (z - 1) + 111, s113 >= 0, s113 <= s112 + 3, s114 >= 0, s114 <= s113 + 3, z - 1 >= 0 encode_logarithm(z) -{ 5744285 + 11*s116 + 2*s116^2 + 22*s117 + 4*s117^2 + 11347560*x_11689 + 11840814*x_11689^2 + 10941048*x_11689^3 + 11347560*x_2964 + 11840814*x_2964^2 + 10941048*x_2964^3 }-> s118 :|: s115 >= 0, s115 <= 222 * x_11689 + 111, s116 >= 0, s116 <= 222 * x_2964 + 111, s117 >= 0, s117 <= s116 + 3, s118 >= 0, s118 <= s117 + 3, z = 1 + x_11689 + x_2964, x_11689 >= 0, x_2964 >= 0 encode_logarithm(z) -{ 5744283 + 11*s119 + 2*s119^2 + 22*s121 + 4*s121^2 + 11347560*x_11690 + 11840814*x_11690^2 + 10941048*x_11690^3 + 11347560*x_2965 + 11840814*x_2965^2 + 10941048*x_2965^3 }-> s122 :|: s119 >= 0, s119 <= 222 * x_11690 + 111, s120 >= 0, s120 <= 222 * x_2965 + 111, s121 >= 0, s121 <= s120 + 2 + s119, s122 >= 0, s122 <= s121 + 3, x_11690 >= 0, z = 1 + x_11690 + x_2965, x_2965 >= 0 encode_logarithm(z) -{ 8616437 + 8*s124 + 2*s124^2 + 22*s126 + 4*s126^2 + 11347560*x_11691 + 11840814*x_11691^2 + 10941048*x_11691^3 + 11347560*x_2966 + 11840814*x_2966^2 + 10941048*x_2966^3 + 11347560*x_3240 + 11840814*x_3240^2 + 10941048*x_3240^3 }-> s127 :|: s123 >= 0, s123 <= 222 * x_11691 + 111, s124 >= 0, s124 <= 222 * x_2966 + 111, s125 >= 0, s125 <= 222 * x_3240 + 111, s126 >= 0, s126 <= s124 + s125 + 3, s127 >= 0, s127 <= s126 + 3, x_2966 >= 0, z = 1 + x_11691 + x_2966 + x_3240, x_11691 >= 0, x_3240 >= 0 encode_logarithm(z) -{ -7575626 + s128 + 22*s129 + 4*s129^2 + 20489076*z + -20982330*z^2 + 10941048*z^3 }-> s130 :|: s128 >= 0, s128 <= 222 * (z - 1) + 111, s129 >= 0, s129 <= s128, s130 >= 0, s130 <= s129 + 3, z - 1 >= 0 encode_logarithm(z) -{ 68 }-> s32 :|: s32 >= 0, s32 <= 0 + 3, z = 0 encode_logarithm(z) -{ 220 }-> s33 :|: s33 >= 0, s33 <= 4 + 3, z = 4 encode_logarithm(z) -{ 128 }-> s34 :|: s34 >= 0, s34 <= 2 + 3, z = 2 encode_logarithm(z) -{ 94 }-> s35 :|: s35 >= 0, s35 <= 1 + 3, z = 1 encode_logarithm(z) -{ 170 }-> s36 :|: s36 >= 0, s36 <= 3 + 3, z = 3 encode_logarithm(z) -{ 68 }-> s37 :|: s37 >= 0, s37 <= 0 + 3, z >= 0 encode_logarithm(z) -{ 0 }-> 0 :|: z >= 0 encode_lt(z, z') -{ 5744198 + s103 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3 }-> s104 :|: s102 >= 0, s102 <= 222 * z + 111, s103 >= 0, s103 <= 222 * z' + 111, s104 >= 0, s104 <= 4, z >= 0, z' >= 0 encode_lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3 }-> 1 + s105 :|: s105 >= 0, s105 <= 222 * z + 111, z >= 0 encode_true -{ 0 }-> 4 :|: encode_true -{ 0 }-> 0 :|: half(z) -{ 1 }-> 0 :|: z = 0 half(z) -{ 1 }-> 0 :|: z = 1 + 0 half(z) -{ 0 }-> 0 :|: z >= 0 half(z) -{ 1 + z }-> 1 + s' :|: s' >= 0, s' <= z - 2, z - 2 >= 0 help(z, z') -{ 77 + 8*z + 2*z^2 }-> s15 :|: s15 >= 0, s15 <= 1 + (z - 1) + 0 + 3, z - 1 >= 0, z' = 0 help(z, z') -{ 77 }-> s16 :|: s16 >= 0, s16 <= 0 + z' + 3, z' >= 0, z = 0 help(z, z') -{ 78 + 9*z + 2*z^2 }-> s17 :|: s17 >= 0, s17 <= 1 + (z - 1) + (1 + (z' - 1)) + 3, s13 >= 0, s13 <= 4, z' - 1 >= 0, z - 1 >= 0 help(z, z') -{ 76 + 8*z + 2*z^2 }-> s18 :|: s18 >= 0, s18 <= z + z' + 3, z >= 0, z' >= 0 ifa(z, z') -{ 20 + 11*z' + 2*z'^2 }-> s14 :|: s14 >= 0, s14 <= 1 + 2 + z', z' >= 0, z = 4 ifa(z, z') -{ 1 }-> 3 :|: z = 2, z' >= 0 ifa(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ifb(z, z', z'') -{ 21 }-> s19 :|: s19 >= 0, s19 <= 1 + z'' + 2 + 0, z'' >= 0, z = 4, z' = 0 ifb(z, z', z'') -{ 21 }-> s20 :|: s20 >= 0, s20 <= 1 + z'' + 2 + 0, z'' >= 0, z' = 1 + 0, z = 4 ifb(z, z', z'') -{ 34 + 15*s + 2*s^2 + z' }-> s21 :|: s21 >= 0, s21 <= 1 + z'' + 2 + (1 + s), s >= 0, s <= z' - 2, z'' >= 0, z = 4, z' - 2 >= 0 ifb(z, z', z'') -{ 20 }-> s22 :|: s22 >= 0, s22 <= 1 + z'' + 2 + 0, z' >= 0, z'' >= 0, z = 4 ifb(z, z', z'') -{ 1 }-> z'' :|: z = 2, z' >= 0, z'' >= 0 ifb(z, z', z'') -{ 0 }-> 0 :|: z >= 0, z' >= 0, z'' >= 0 logarithm(z) -{ 23 + 11*z + 2*z^2 }-> s23 :|: s23 >= 0, s23 <= 1 + (z - 1) + 3, z - 1 >= 0 logarithm(z) -{ 23 }-> s24 :|: s24 >= 0, s24 <= 0 + 3, z = 0 logarithm(z) -{ 22 + 11*z + 2*z^2 }-> s25 :|: s25 >= 0, s25 <= z + 3, z >= 0 lt(z, z') -{ 2 + z' }-> s12 :|: s12 >= 0, s12 <= 4, z - 1 >= 0, z' - 1 >= 0 lt(z, z') -{ 1 }-> 4 :|: z' - 1 >= 0, z = 0 lt(z, z') -{ 1 }-> 2 :|: z >= 0, z' = 0 lt(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: Previous analysis results are: encode_logZeroError: runtime: O(1) [0], size: O(1) [3] encode_true: runtime: O(1) [0], size: O(1) [4] half: runtime: O(n^1) [2 + z], size: O(n^1) [z] encode_0: runtime: O(1) [0], size: O(1) [0] encode_1: runtime: O(1) [0], size: O(1) [1] encode_false: runtime: O(1) [0], size: O(1) [2] lt: runtime: O(n^1) [2 + z'], size: O(1) [4] help: runtime: O(n^2) [19 + 11*z + 2*z^2], size: O(n^1) [2 + z + z'] ifb: runtime: O(n^2) [75 + 8*z' + 2*z'^2], size: O(n^1) [3 + z' + z''] ifa: runtime: O(n^2) [21 + 11*z' + 2*z'^2], size: O(n^1) [3 + z'] logarithm: runtime: O(n^2) [68 + 22*z + 4*z^2], size: O(n^1) [3 + z] encArg: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [111 + 222*z] encode_half: runtime: O(n^3) [25926408 + 163904736*z + 106863030*z^2 + 131292576*z^3], size: O(n^1) [225*z] encode_ifb: runtime: O(n^3) [8641899 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11447904*z' + 11939382*z'^2 + 10941048*z'^3 + 11347560*z'' + 11840814*z''^2 + 10941048*z''^3], size: O(n^1) [225 + 222*z' + 222*z''] encode_help: runtime: O(n^3) [5770078 + 11448570*z + 11939382*z^2 + 10941048*z^3 + 11347560*z' + 11840814*z'^2 + 10941048*z'^3], size: O(n^1) [224 + 222*z + 222*z'] encode_ifa: runtime: O(n^3) [5770080 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11448570*z' + 11939382*z'^2 + 10941048*z'^3], size: O(n^1) [114 + 222*z'] encode_logarithm: runtime: O(n^3) [25927802 + 163966896*z + 108637254*z^2 + 131292576*z^3], size: O(n^1) [6 + 222*z] encode_s: runtime: O(n^3) [2872098 + 11347560*z + 11840814*z^2 + 10941048*z^3], size: O(n^1) [112 + 222*z] encode_lt: runtime: O(n^3) [5744309 + 11347560*z + 11840814*z^2 + 10941048*z^3 + 11347782*z' + 11840814*z'^2 + 10941048*z'^3], size: O(1) [4] ---------------------------------------- (127) FinalProof (FINISHED) Computed overall runtime complexity ---------------------------------------- (128) BOUNDS(1, n^3) ---------------------------------------- (129) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (130) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) The (relative) TRS S consists of the following rules: encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (131) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (132) Obligation: Innermost TRS: Rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Types: lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half hole_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half1_4 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4 :: Nat -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ---------------------------------------- (133) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: lt, help, ifb, half, encArg They will be analysed ascendingly in the following order: lt < help lt < encArg help = ifb help < encArg half < ifb ifb < encArg half < encArg ---------------------------------------- (134) Obligation: Innermost TRS: Rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Types: lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half hole_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half1_4 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4 :: Nat -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half Generator Equations: gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0) <=> 0' gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(x, 1)) <=> s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(x)) The following defined symbols remain to be analysed: lt, help, ifb, half, encArg They will be analysed ascendingly in the following order: lt < help lt < encArg help = ifb help < encArg half < ifb ifb < encArg half < encArg ---------------------------------------- (135) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n4_4), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, n4_4))) -> true, rt in Omega(1 + n4_4) Induction Base: lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, 0))) ->_R^Omega(1) true Induction Step: lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(n4_4, 1)), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, +(n4_4, 1)))) ->_R^Omega(1) lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n4_4), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, n4_4))) ->_IH true We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (136) Complex Obligation (BEST) ---------------------------------------- (137) Obligation: Proved the lower bound n^1 for the following obligation: Innermost TRS: Rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Types: lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half hole_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half1_4 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4 :: Nat -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half Generator Equations: gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0) <=> 0' gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(x, 1)) <=> s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(x)) The following defined symbols remain to be analysed: lt, help, ifb, half, encArg They will be analysed ascendingly in the following order: lt < help lt < encArg help = ifb help < encArg half < ifb ifb < encArg half < encArg ---------------------------------------- (138) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (139) BOUNDS(n^1, INF) ---------------------------------------- (140) Obligation: Innermost TRS: Rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Types: lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half hole_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half1_4 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4 :: Nat -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half Lemmas: lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n4_4), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, n4_4))) -> true, rt in Omega(1 + n4_4) Generator Equations: gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0) <=> 0' gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(x, 1)) <=> s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(x)) The following defined symbols remain to be analysed: half, help, ifb, encArg They will be analysed ascendingly in the following order: help = ifb help < encArg half < ifb ifb < encArg half < encArg ---------------------------------------- (141) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: half(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(*(2, n622_4))) -> gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n622_4), rt in Omega(1 + n622_4) Induction Base: half(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(*(2, 0))) ->_R^Omega(1) 0' Induction Step: half(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(*(2, +(n622_4, 1)))) ->_R^Omega(1) s(half(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(*(2, n622_4)))) ->_IH s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(c623_4)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (142) Obligation: Innermost TRS: Rules: lt(0', s(x)) -> true lt(x, 0') -> false lt(s(x), s(y)) -> lt(x, y) logarithm(x) -> ifa(lt(0', x), x) ifa(true, x) -> help(x, 1') ifa(false, x) -> logZeroError help(x, y) -> ifb(lt(y, x), x, y) ifb(true, x, y) -> help(half(x), s(y)) ifb(false, x, y) -> y half(0') -> 0' half(s(0')) -> 0' half(s(s(x))) -> s(half(x)) encArg(0') -> 0' encArg(s(x_1)) -> s(encArg(x_1)) encArg(true) -> true encArg(false) -> false encArg(1') -> 1' encArg(logZeroError) -> logZeroError encArg(cons_lt(x_1, x_2)) -> lt(encArg(x_1), encArg(x_2)) encArg(cons_logarithm(x_1)) -> logarithm(encArg(x_1)) encArg(cons_ifa(x_1, x_2)) -> ifa(encArg(x_1), encArg(x_2)) encArg(cons_help(x_1, x_2)) -> help(encArg(x_1), encArg(x_2)) encArg(cons_ifb(x_1, x_2, x_3)) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encArg(cons_half(x_1)) -> half(encArg(x_1)) encode_lt(x_1, x_2) -> lt(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_s(x_1) -> s(encArg(x_1)) encode_true -> true encode_false -> false encode_logarithm(x_1) -> logarithm(encArg(x_1)) encode_ifa(x_1, x_2) -> ifa(encArg(x_1), encArg(x_2)) encode_help(x_1, x_2) -> help(encArg(x_1), encArg(x_2)) encode_1 -> 1' encode_logZeroError -> logZeroError encode_ifb(x_1, x_2, x_3) -> ifb(encArg(x_1), encArg(x_2), encArg(x_3)) encode_half(x_1) -> half(encArg(x_1)) Types: lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 0' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half 1' :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encArg :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half cons_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_lt :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_0 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_s :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_true :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_false :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logarithm :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifa :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_help :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_1 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_logZeroError :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_ifb :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half encode_half :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half hole_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half1_4 :: 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4 :: Nat -> 0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half Lemmas: lt(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n4_4), gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(1, n4_4))) -> true, rt in Omega(1 + n4_4) half(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(*(2, n622_4))) -> gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n622_4), rt in Omega(1 + n622_4) Generator Equations: gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0) <=> 0' gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(x, 1)) <=> s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(x)) The following defined symbols remain to be analysed: ifb, help, encArg They will be analysed ascendingly in the following order: help = ifb help < encArg ifb < encArg ---------------------------------------- (143) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: encArg(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n2247_4)) -> gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n2247_4), rt in Omega(0) Induction Base: encArg(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(0)) ->_R^Omega(0) 0' Induction Step: encArg(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(+(n2247_4, 1))) ->_R^Omega(0) s(encArg(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(n2247_4))) ->_IH s(gen_0':s:true:false:1':logZeroError:cons_lt:cons_logarithm:cons_ifa:cons_help:cons_ifb:cons_half2_4(c2248_4)) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (144) BOUNDS(1, INF)